Category Archive: News & Updates

x264 profile option added in MediaCoder build 4065 (Stanley posted on March 5th, 2008 )

The x264 profile option changes to the encoder settings to let the encoded bit stream comforted to specified H.264 profile (baseline, main, high).

TAGS:, ,

MediaCoder 0.6.1 released (Stanley posted on January 10th, 2008 )

Finally a new version number in the new year. You may easily find out some changes from the screenshot if you have used MediaCoder for some time.

Read the rest of this entry >>

Enhanced 3GPP AAC+ encoder updated and patched (Stanley posted on December 25th, 2007 )

MediaCoder (build 3999) can now encode with the Enhanced 3GPP AAC+ encoder again. The encoder is updated (with the latest 3GPP AAC+ encoder reference code) and patched with some minor optimizations and AAC/ADTS container support by me. The Enhanced 3GPP AAC+ encoder is able to produce low-bitrate (16kbps to 48kbps) AAC+ with Parametric Stereo optionally.

The 0.6.0.3999 update contains the encoder. The x64 update contains the 64-bit version of the encoder which has an approximate 30% speedup than the 32-bit version.

TAGS:

Current progress of MediaCoder transcoding farm (Stanley posted on December 8th, 2007 )

Right I am spending day and night on the implementation of the transcoding farm (multiple computer transcoding). As the initial goal is to improve HDTV transcoding speed effectively, I started from implementing the farm for x264. The MiniWeb project which I registered on SF.net in 2004 became active again this time as it will act a quite important role in the new transcoding system.
The idea is straight-forward. Assuming there are 3 computers in the LAN. PC1 acts like a controller and PC2 and PC3 work as agents. Both controller and agent have MiniWeb built in. For controller, MiniWeb is for collecting encoded data from agents as well as serving original file for agents. For agent, MiniWeb is for receiving and responding to controller commands. Now a huge 1080i HDTV file is to be transcoded. PC1 connects to PC2 and PC3 telling them they need to transcode part of a file. It will serve the file with MiniWeb through HTTP protcol. On getting the command, PC2 and PC3 start to process the file via HTTP from different given positions. During the procedure, their output will be posted back via HTTP to PC1. PC1 is also processing part of the whole file. After the 3 parts are transcoded, they are joined on PC1. PC2 and PC3 don’t need to have any temporary storage and all they need to have is a fast CPU.
Up to now I have finished following tasks:

  1. add file uploading feature to MiniWeb
  2. patch x264 to give it the ability to push data to web server instead of writing to local file
  3. implementing MediaCoder agent (a CLI program, more like a standalone web server which can respond to HTTP requests and doing transcoding)
  4. add controller features to current MediaCoder so that it can send commands, serve streams and collect encoded data.

A usable prototype will come out by the end of this year. Please stay tuned.

About the next version of MediaCoder (Stanley posted on November 17th, 2007 )

As you may know, the version number of 0.6.0 has been kept for nearly one year’s time though MediaCoder has been improved consistently during this period of time. I admit that I am quite conservative on the increase of version number of MediaCoder. Anyway after one year, I finally decided to increase the version number soon. Once a most stable 0.6.0 is released, let’s leave 0.6.0 in its best condition and steps towards 0.7.0.

Here I list some of my thoughts about the major new features of the next version:

  • Adding batch image conversion/processing feature (base on ImageMagick)
  • Implementing multi-segment simultaneous transcoding (this will optimize speed for multi-core processors even if the encoder doesn’t support multi-threading and no doubt 4-core will have a significant speed-up)
  • Implementing multi-computer transcoding / transcoding farm (will adopt controller/agent mode, agent will run on Linux natively).
  • x64 version
  • Fully XUL-based user interface (the classic user interface will be kept of course)
  • New graphics

Of course these new features won’t come suddenly in a release. They will be implemented gradually. If you have suggestions, please just tell me.

View frame being encoded (Stanley posted on November 17th, 2007 )

In 0.6.0.3980, frames being encoded can be viewed. The frame is rendered with SDL at a specified interval so it won’t slow down the encoding speed noticeably and can be switched on/off instantly.

Please note that in some combinations (when video source is “default”, in this case, frames are not passing through MediaCoder), this feature won’t work.

In this build, several serious bugs have been fixed. For details please check the changelog.