[Ffmpeg-devel] Problem debugging due to cabac.h

Jason Garrett-Glaser darkshikari
Thu Apr 12 14:29:54 CEST 2007


In the SVN trunk copy of cabac.h, the function on line 522 (an inline
assembly function) requires what appears to be seven registers to
compile; that is, without -fomit-frame-pointer, it cannot acquire
enough registers to compile as written.

This isn't a problem normally, but I'm trying to profile FFMPEG while
decoding H.264 in order to measure the effectiveness of my
optimizations on various functions.  But in order to profile it, the
frame pointer cannot be omitted; it appears that -p negates
-fomit-frame-pointer anyways.  In other words, this creates a
./configure option (the profiling option) that will ALWAYS FAIL on
32-bit systems.

Of course, a 64-bit system has 8 extra 32-bit registers and so won't
have this problem.  But I don't have any 64-bit system with a 64-bit
operating system to develop on.

Is there a code patch available that can fix this piece of code to not
require -fomit-frame-pointer?  Of course it will be slower, most
likely, but that doesn't matter for debugging in this case.

Thanks,

Dark Shikari

P.S. Is there a way to run ffplay remotely over SSH with the display
of the video off (so as not to destroy the internet connection), but
without turning off decoding of the video?  I.e. a way to profile
playback remotely.  Sadly what I've been doing is running FFMPEG to
decode H.264 video, encode it to HuffyUV (near zero CPU cost) and pipe
it to /dev/null.  The profiling is pretty accurate, but it seems like
a stupid workaround that is probably due to my lack of knowledge of
FFMPEG.




More information about the ffmpeg-devel mailing list