[FFmpeg-devel] Awakening of FFH264

Kvikant, Christian Scilla kvide
Wed Nov 11 22:08:18 CET 2009


Floks,

We have been working on the native FFmpeg H.264 encoder that University 
of Hasselt started developing in 2007... With some updates to macroblock 
iterations, patches to NAL generation, addition of VUI data, better rate 
control etc., the codec produces ?fair" quality baseline profile video 
using 16x16 macroblocks and the generated streams are decodable with 
FFmpeg's H.264 decoder, QuickTime 7 and the reference implementation (JM 
16.something).


Before I submit patches (against r20511 or later) I?d just like check 
some minor issues:

1. From an FFmpeg point of view the codec uses identically same settings 
as x264. Should it still use its own codec id; CODEC_ID_FFH264 or can we 
use same codec id as x264; CODEC_ID_H264? The previous implies lots of 
these?

- if (st->codec->codec_id == CODEC_ID_H264)
+ if ((st->codec->codec_id == CODEC_ID_H264) || (st->codec->codec_id == 
CODEC_ID_FFH264))


2. I haven?t found any documentation on how to add regressions tests. 
Are there any summaries or docs available?

3. Main changes to current code base would be to h264dspenc.c Are there 
any already available options not to have to add these to h264enc.c? (or 
some suggestions on where they should be added)

void h264_hadamard_mult_2x2 (DCTELEM Y [2] [2] );
void (*h264_idct_notranspose_add) (uint8_t *dst, DCTELEM *block, int 
stride);
void (*h264_hadamard_mult_4x4) (DCTELEM Y [4] [4]);


With or without comments I try to have the patches cleaned up and posted 
during the weekend.

Mvh,
Christian




More information about the ffmpeg-devel mailing list