[mythtv] New MPEG2 commercial-cut code ready for testing

Bryan Mayland bmayland at leoninedev.com
Sat Nov 19 10:39:19 EST 2005


Geoffrey Hausheer wrote:
> It doesn't sound like an avcodec issue, but you can never be sure. 
> Please compare my video to yours, and see if they are different.  If
> they are the same, well...I can't explain it as it plays great for me,
> so they'll be different.  The question will be 'why'
> One way to answer is to run through gdb with '-d 2' and set a
> breakpoint in write_yuv.  the first call will be the original frame,
> the second, the reconstructed one.  doing a print
> *info->display_picture in both cases and compare the 'flags' value. 
> it should be 9 or 10 the first time write_yuv is called, and always be
> '9' on the second call.
>   
    The flags looked right.  They were indicating B->I B->I P->I, etc.  
The cnv?.yuv files look great, the corresponding cnv?.yuv.enc and 
cnv?.yuv.enc.yuv are garbage. 

    Since I was pulling my hair out on this, and not being all that 
familiar with the avcodec API, I decided to try something on a whim: 
disabling simd optimizations using
c->dsp_flags = 0xffff;
Bingo, everything looks great.  I then tried enabling each optimization 
individually.  If I disable MMX, everything crisp.  MMX optimizations 
on, garbage.  This is on a Pentium 4 2.4B, mmx sse sse2.

So points me to yet another libavcodec problem, this time with MMX 
opts.  Everything in mpeg2fix works great as long as I keep mmx disabled 
for now.  I've tried it on 5 PS streams and cutpoints all up and down 
the file and every cut looks good.  Really nice work!


More information about the mythtv-dev mailing list