[Ffmpeg-devel] dv encoder speed

Martin Boehme boehme
Mon Aug 29 12:49:03 CEST 2005


Mark Rages wrote:
> As I posted in another message, I need the dv encoder to run a little
> bit faster so I can do realtime processing on my AMD64 machine.
[snip]
> Profiling gives this result:
> gprof ffmpeg | head
> Flat profile:
> 
> Each sample counts as 0.01 seconds.
>   %   cumulative   self              self     total
>  time   seconds   seconds    calls   s/call   s/call  name
>  58.58    127.29   127.29   247050     0.00     0.00  dv_encode_video_segment
>  11.29    151.83    24.54   190769     0.00     0.00  dv_guess_qnos
>   7.99    169.19    17.37 10224352     0.00     0.00  dv_decode_ac
>   5.13    180.33    11.14  6204629     0.00     0.00  ff_fdct_sse2
>   4.48    190.06     9.73  6457910     0.00     0.00  ff_simple_idct_put_mmx
> 
> So most of the time is getting spent in dv_encode_video_segment.  No
> suprise. I need to determine how to get finer-grained profiling data.

Looks like quite a few functions are getting inlined into 
dv_encode_video_segment(). You could try disabling the inlining, that 
would make the results slightly more coarse-grained.

 From looking at the comment above dv_encode_video_segment():

/*
  * This is a very rough initial implementaion. The performance is
  * horrible and the weighting is missing. But it's missing from the
  * decoding step also -- so at least we're on the same page with 
decoder ;-)
  */

it looks as if there might be some obvious candidates for optimization 
there (but I haven't looked at the code).

Martin

-- 
Martin B?hme
Inst. f. Neuro- and Bioinformatics
Ratzeburger Allee 160, D-23538 Luebeck
Phone: +49 451 500 5514
Fax:   +49 451 500 5502
boehme at inb.uni-luebeck.de





More information about the ffmpeg-devel mailing list