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

Jason Garrett-Glaser darkshikari
Thu Apr 12 17:52:21 CEST 2007


Thanks for the info on the rawvideo option.

On the topic of CONFIG_7REGS, the code is not under it.  In
particular, there are only two instances of CONFIG_7REGS in cabac.h:

#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE)
    int bit;

and

#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE)
static int decode_significance_x86(CABACContext *c, int max_coeff,
uint8_t *significant_coeff_ctx_base, int *index){
[...]
    return coeff_count;
}
#endif /* defined(ARCH_X86) && !(defined(PIC) && defined(__GNUC__)) */

the latter of which does not include the code I mentioned previously, which is:

asm volatile(
        "movl "RANGE    "(%2), %%esi            \n\t"
        "movl "LOW      "(%2), %%ebx            \n\t"
        BRANCHLESS_GET_CABAC("%0", "%2", "(%1)", "%%ebx", "%%bx",
"%%esi", "%%edx", "%%dl")
        "movl %%esi, "RANGE    "(%2)            \n\t"
        "movl %%ebx, "LOW      "(%2)            \n\t"

        :"=&a"(bit)
        :"r"(state), "r"(c)
        : "%"REG_c, "%ebx", "%edx", "%esi", "memory"
    );

Should I just add an ifdef there?  The only definition that seems
required to use this inline assembly function is
BRANCHLESS_CABAC_DECODER.

On 4/12/07, Michael Niedermayer <michaelni at gmx.at> wrote:
> Hi
>
> On Thu, Apr 12, 2007 at 08:29:54AM -0400, Jason Garrett-Glaser wrote:
> > 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.
>
> is the code under CONFIG_7REGS if not and it uses 7 regs that should be
> changed (send patch)
> does configure set CONFIG_7REGS even though 7 are not available, thats
> a bug in configure and you can send a patch to fix it
>
>
> [...]
>
> >
> > 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
>
> decode to rawvideo with ffmpeg
>
> [...]
>
> --
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> The educated differ from the uneducated as much as the living from the
> dead. -- Aristotle
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at mplayerhq.hu
> http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel
>
>




More information about the ffmpeg-devel mailing list