Code Monkey home page Code Monkey logo

projects's Introduction

HDR10Capture project : HDR10 Image Viewer / video Capture app

Enable HDR on Windows Display Settings to display images with HDR10. HDR10 PQ Image is displayed on HDR10 monitor connected to Windows PC.

Image displaying functionality: supports 24bit/32bit/48bit BMP, 24bit/48bit PNG and Half float OpenEXR files. Drop image file to App to display it.

Video capture functionality: App works with DeckLink devices. Tested on DeckLink Mini recorder 4K. Captured video is saved as Uncompressed AVI. Screenshot can be saved as OpenEXR image.

About AVI file output of HDR10Capture

Tested input video format is RGB 10bit r210, RGB 12bit R12B, and YUV422 10bit v210.

  • RGB video is saved as r210 AVI.
  • YUV video is saved as v210 AVI.

Output AVI file does not have index chunk and not completed. Mencoder can fix the index. Example:

mencoder output.avi -ovc copy -oac copy -o fixed.avi

r210 or v210 AVI can be converted to OpenEXR image sequence using AviToExrSequence.

How to build

Decklink SDK 11.7 is necessary to build. Copy Blackmagic DeckLink SDK 11.7\Win\include* to MLDecklinkCapture\Decklink directory. Open MLDX12VideoCapture\MLDX12VideoCapture.sln using Visual Studio 2019 and build.

AviToExrSequence project

Read Uncompressed RGB 10bit "r210" AVI, extract HDR10 image and write OpenEXR image sequence.

How to build

Open AviToExrSequence.sln using Visual Studio 2019 and build.

HDR10Viewer2 project

Sends HDR10 image to HDR10 display using DirectX12 API.

How to build

Open HDR10Viewer2.sln with Visual Studio 2019 and build.

  • Note 1: The following screenshot image is converted to SDR and brighter part is saturated to white.
  • Note 2: The OpenEXR image is generated with Blender, the scene file is "Class room By Christophe Seux" https://www.blender.org/download/demo-files/#cycles ScreenShot

MLDX12VideoCapture project

Video capture program using DirectX12 and Decklink Mini recorder 4K.

It can preview Raw SDI stream of Blackmagic Micro Studio Camera 4K. Please use BMRawAVIv210ToDng to convert from recorded Raw SDI yuv v210 AVI file to Cinema DNG.

How to build

Decklink SDK 10.11.4 is necessary to build. Copy Blackmagic DeckLink SDK 10.11.4\Win\include* to MLDecklinkCapture\Decklink directory. Open MLDX12VideoCapture\MLDX12VideoCapture.sln using Visual Studio 2019 and build.

About output AVI file of MLDX12VideoCapture

Currently only YUV 10bit v210 format can be recorded.

Output AVI file does not have index chunk and not completed. Mencoder can fix the index. Example:

mencoder -idx output.avi -ovc copy -oac copy -o fixed.avi

ScreenShot

How to build ImageToDng, DngHeaderDump etc.

Use cmake-gui to create Visual Studio solution and projects. Open solution file using Visual Studio and build. right click project and select set as startup projects and run.

ImageToDng project

Windows program to convert image to 8bit RAW CFA(Color Filter Array) DNG format.

Conversion is lossy process: Bayer pattern is applied to the image, green channel resolution is reduced by โˆš2 x, red and blue channel resolution is reduced by 2x. Please refer this document: https://en.wikipedia.org/wiki/Bayer_filter

Also low-pass prefilter that should be applied before applying Bayer pattern is omitted, so aliasing artifact may appear.

To show this image, it is necessary to demosaic it to recover RGB image. Dng image can be opened by RAW image development software such as RawTherapee.

Following Bayer patterns are available:

  • RG/GB
  • BG/GR
  • GR/BG
  • GB/RG

Bugs:

  • Thumbnail image is wrong.

DngHeaderDump project

DngHeaderDump is a console app to read and show all IFD header info of the specified DNG file.

It shows your camera name, camera serial number, image number, lens name, exposure settings, battery level, GPS location, GPS time and so on.

DNG (Digital Negative) file can be created from digital camera Raw files (CR2, NEF, ARW ...), by converting to DNG file using free Adobe DNG Converter.

BMRawYuv422p10ToDng project

Reads Blackmagic Micro Studio Camera 4k 12bit raw image data encoded in yuv422p10le file and writes it as 12bit Raw DNG file.

yuv422p10le file can be created using ffmpeg.

projects's People

Contributors

manoreken2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

draekko xinfushe

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.