[FFmpeg-devel] Intel IPP H264 encoder
Erik Van Grunderbeeck
erik
Fri Dec 4 00:40:40 CET 2009
>Fast? No, it's awfully written and slow relative to the amount of
>analysis that it does.
>> It has features not available in x264, such as high profile YUV 444 color
>> space
>Yes, that is pretty much the only merit it has. But I'm pretty sure
>that the form of YUV444 it *does* support was removed from the spec in
>2007.
>> Here is a comparison of H264 encoders
>>
http://compression.ru/video/codec_comparison/pdf/msu_mpeg_4_avc_h264_codec_c
omparison_2006_eng.pdf
>The MSU comparisons are laughably bad (and that one is 3.5 years old,
>for that matter).
Well, I integrated version 6 of the IPP H264 encoder, and the XVID/MP4
encoder with FFMPeg.
Results (on my "standard" Beyonce video (320*240, WMV2 encoded, has 10
seconds of no video in front, which is my quick thumb test on a/v sync):
Tested compare
o) X264, snapshot-20091017-2245, build 77, MingW compiled
o) Intel IPP 6.1 H264, libs 5.1 (my license), Intel compiler 11 compiled.
Encoded as base profile, level 13, no b frames (I know, but that's the ipod
format and most people seem to encode for that).
o) X264: 2.32 seconds (mean average on 5 runs)
o) Intel IPP: 2.25 seconds (mean average on 5 runs)
Size: same (+- 1 mb on 38 mb).
I'll run some main/high profiles if people are interested.
Quality: the ipp encoded one seems to be a bit more blurry (may be personal
opinion). I did a quick scan with H264Visa and ran it through JM testing,
nothing seems to be out of order.
Integration time was about 2 days btw. Spend most of the time figuring out
parameter mapping and the Nal mapping for mp4 container. Reason I mention
this is that it is thus possible to build a full LGPL dll version of FFMpeg
with H264/Xvid encoding supported. No excuse for anyone to fail GPL.
I also gave the Opencore encoder a shot (the one from android). That
codebase is no way near any completion, and doesn't even generate a valid
base profile H264 stream...
Erik
More information about the ffmpeg-devel
mailing list