[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