[FFmpeg-devel] [RFC] use ff_avc_find_startcode in ff_find_start_code

Reimar Döffinger Reimar.Doeffinger
Tue Feb 19 15:28:27 CET 2008


Hello,
On Tue, Feb 19, 2008 at 03:06:15PM +0100, Michael Niedermayer wrote:
> On Tue, Feb 19, 2008 at 10:05:03AM +0100, Reimar D?ffinger wrote:
> > On Tue, Feb 19, 2008 at 03:57:07AM +0100, Michael Niedermayer wrote:
> > > current code:
> > > 7054 dezicycles in findsc, 262131 runs, 13 skips
> > > 7082 dezicycles in findsc, 262134 runs, 10 skips
> > > 
> > > your code:
> > > 11371 dezicycles in findsc, 262119 runs, 25 skips
> > > 11624 dezicycles in findsc, 262115 runs, 29 skips
> > > 
> > > gcc: 4.3.0 20080127 (experimental)
> > > 800mhz duron
> > > ffmpeg -v 9 -i matrixbench_mpeg2.mpg -vcodec copy -an -y test.avi
> > 
> > Hmm... but like this it is only used in the demuxer code, right?
> 
> Its only used in the AVParser in the above. The decoder IIRC does only search
> like 3 bytes or so unless you use multithreaded decoding. So if you didnt
> use lavf for demuxing then i dont understand how you could see any difference
> at all.

For decoding my THX_Science_FLT_1920.gxf, ff_find_start_code in mpeg_decode_frame
is called 73754 times for 353 frames, the average amount of data skipped is 1272.626343 bytes.
For decoding your matrix benchmark, the numbers are 184162 for 4690
frames, skipping 4.959547 bytes on average.

Greetings,
Reimar D?ffinger




More information about the ffmpeg-devel mailing list