This is basically a maintenance release. Some minor issues got fixed, including decoding of RMVB video (in MKV container) going out-of-sync issue. The parameters for the temporal denoiser (which is default on since recent builds) is fine tuned a bit. x264 is updated to revision 2273 and FFmpeg is updated to version 1.1.3. You may also notice that the appearance of program icon is improved with more high resolutions versions and it just looks better on Windows 8.
An approach for improving GPU encoding quality has been done in 0.8.18.5450. A high quality and high performance temporal denoiser is implemented and automatically activated when encoding with GPU. This will not improve SSIM but the pre-processing will make up for the shortage of all GPU encoders (Intel MSDK and CUDA) and improve perceptual visual quality of the encoded content. As the denoiser is working fully parallel to decoding and encoding, there is very little performance overhead.
With this improvement, GPU encoding quality is now generally acceptable, especially for playback on mobile screens, and more specifically, 1.5Mbps video encoded by CUDA encoder looks quite good on iPhone screen.
I am careless recently. Things are fixed in build 5342.
Happy new year!
MediaCoder 0.8.18.5338 comes with improved CUDA-based encoding (Stanley posted on December 27th, 2012 )
CUDA encoder has been updated and optimized. Compiled against CUDA 5.0, frames pre-processed in NV12 colorspace, process loop refined, better GPU utilization and better performance can be achieved with CUDA encoding. More options are available on MediaCoder’s CUDA tab, including the one specifying the GPU device to be used for encoding when there are multiple ones.
Benchmarking shows that the GPU utilization can reach 82% on a GTX480 whhen Offload option (newly added) set to Full. The speed of a typical 720p transcoding reaches 8.6x.
So, stop watching, grab the update, try on your GeForce, see the difference and let me know if there is!
Just several days after version 0.8.18 was released, I implemented two new features as will be introduced below. If you are interested in them, you can upgrade to 0.8.18.5333 with update package from 0.8.18.5330.
1. Multi-Pass CRF – Using CRF mode in the first pass of multi-pass mode
A check box labeled Multi-Pass CRF was added on the right of Rate Mode option droplist. By enabling it when 2-pass or 3-pass mode is chosen, video encoder (currently only x264) will do the first pass in CRF mode and a bitrate will be determined in result of the quality value specified. In 2nd pass or 3rd pass (if there is one), the encoder will still encode in the normal way but with the target bitrate set as is obtained in the first pass.
This feature is especially useful to users who like multi-pass encoding but still want the bitrate to be determined by the encoder (as if in CRF mode) according to the video content (resolution, frame rate, motion complexicty, image details etc.) to be encoded.
I have spent quite a lot time on MediaCoder after finishing my one-month tour around Europe in October. Besides many fix-ups and tweak-ups, my work in this period involves several major tasks.
First, MPlayer/MEncoder finally got updated with latest SVN code after nearly a whole year. This alone took me a whole week as many underlying libraries were also to be updated and rebuilt which caused some problems in compilation. To my relief everything was solved finally. Among those libraries, libopus (for Opus audio support) was added and libbluray (for Bluray disc support) was updated. The binaries are now built with hardcoded SSE utilization as almost every modern processor now has that already. This will improving decoding performance a bit inspite of all the improvements of codecs during the year.
Second, Intel MSDK encoder was updated. Intel released Intel Media SDK months ago and now the encoder was built against the latest SDK. In addition, the encoder itself was also optimized a bit. The frames are passed in and processed in NV12 color space which is the native color space in Intel MSDK.
Along with the release of Visual Studio 2012 Update 1, Windows XP platform target was re-added. So both MediaCoder 32-bit and 64-bit versions are now built with VS2012.
For the complete list of changes, please refer to the changelog.
In this release, many important encoders and multiplexers got upgraded, including x264, MP4Box, MKV toolnix etc. Another noticeable update is the new dashboard window. By default it shows up when you minimize the application window when transcoding is proceeding. As I introduced in the previous post, it adds some fun when you like to watch your transcoding proceeding and is fully user customizable. It’s based on a dashboard rendering engine I developed last year, originally designed for running on mobile devices, so it’s very efficient and have very low overhead. That means there is no need to worry about slowing down your transcoding. If you do hate it, simply delete the dashboard folder in the installation folder. If someone is can make their own dashboard and share it, I would be appreciated.
For people who loves transcoding (like me), they like to watch the progress of their transcodings. So why not make the progress look cooler. A year ago, I was developing a dashboard software for my car. That piece of software wasn’t getting famous like MediaCoder. Fortunately my work wasn’t all wasted. Today I moved my dashboard rendering engine into MediaCoder. A new preview mode named Dashboard mode was added, in which, a dashboard with some live statistics will be shown side by side with the video frame being transcoded.