Code Monkey home page Code Monkey logo

cinder-wmfmoviewriter's Introduction

Cinder-WMFMovieWriter

Simple movie recorder for Cinder using the Windows Media foundation.

This clocks was made by hacking Tutorial: Using the Sink Writer to Encode Video. IT is not meant to be seen as a professional library nor will I be giving any kind of support.

For now it just writes h264 and WMV3 files, but you can modified it to suit your needs. This fork added h265 support (but you need to have the HVEC plugin installed on your machine) and HardAccerlation option which fixes the compression issue with h265.

This fork only accepts Surface8uRef as the input and removed the support for texture2d. Below is the sample code to add a surface:

auto source		  = fbo->getColorTexture()->createSource();
auto constrain	= gl::SurfaceConstraintsGLTexture();
auto surf		    = Surface8u::create(source, constrain, true);
recorder->addFrame(*surf);

Where fbo has RGBA channels.

The WMF expects a unsigned char * array, so a surface is the perfect choice but if the data of a surface is passed, the color red a blue are swaped. The fastest solution found was to render to a FBO and swap the color in a shader.

cinder-wmfmoviewriter's People

Contributors

xumo avatar seph14 avatar

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.