Analysis
Overview
Currently the JMF media library is used for audio and video playback and for audio recording. JMF is outdated and doesn't support much of the new codecs that exist. As an alternative FFmpeg C library is supported on all platforms targeted by Sophie and is a live project. It can encode/decode most of the existing formats/encodings with few exceptions.
Task requirements
Media will be designed to work with the FFmpeg (http://ffmpeg.org/) and within timelines.
A C wrapper for capturing video will be created to work with FFmpeg for Linux, Windows and Mac OS X as well as for their 64bit versions.
A C wrapper for playing back audio will be created to work with SDL or PortAudio for all platforms.
A protocol has to be defined for communication between the FFmpeg wrappers and Sophie.
Task result
Demo, usage wiki page for the C wrapper.
Implementation idea
Use FFmpeg.
Change the logic of media in author to manipulate the media timeline.
Related
How to demo
- Insert a video frame.
- Play it to see if it is ok.
- Insert audio frame.
- Play the video and audio frames.
- Start some audio playback in a system player.
- Check that sound is mixed correctly.
Design
(Describe your design here.)
Implementation
(Describe and link the implementation results here (from the wiki or the repository).)
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)