Opened 12 years ago

Closed 12 years ago

#4798 closed defect (fixed)

Internal player h.264 crash with "Internal error, picture buffer overflow"

Reported by: taco_mel@… Owned by: Janne Grunau
Priority: minor Milestone: 0.21
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

I have been experiencing problems playing back h.264 encoded AVI files with mythvideo with the Internal player. It looks like this is a problem with the internal video player and not mythvideo itself but I am not sure.

To my knowledge this worked correctly in SVN 16127 and did not work correctly in SVN 16254 (and does not work correctly now in SVN 16311). When attempting to start the video the following error is received from "mythfrontend -v playback" and mythfrontend exits almost immediately. Backtrace will be attached.

[h264 @ 0x8c61a0]Internal error, picture buffer overflow

A more complete error log will be attached.

All of the movies play properly with mplayer, ffplay, and xine.

Now I have noticed that some of my movies work and some do not. Using "mencoder -ovc copy -oac copy" I was able to take the same source video file and depending on the length, it would or would not work. I am attaching a more complete log of the mencoder session but whether it works or not seems to be a function of whether or not the following appears:

ODML: Starting new RIFF chunk at 1023MB.m...

If that line appeared, the video won't play in the internal player. I'm attaching mencoder output from a video that works and one that does not work, which are derived from the same source and vary only in the length.

Attachments (6)

mythfrontend-out.txt (24.5 KB) - added by taco_mel@… 12 years ago.
Output from mythfrontend
gdb.txt (74.6 KB) - added by taco_mel@… 12 years ago.
backtrace
mencoder-doesnt-work.txt (1.6 KB) - added by taco_mel@… 12 years ago.
Produces a file that won't play
mencoder-works.txt (1.5 KB) - added by taco_mel@… 12 years ago.
Produces output that does play correctly
gdb.2.txt (19.6 KB) - added by taco_mel@… 12 years ago.
Backtrace file with only this crash, not others
h264_0.diff (586 bytes) - added by Mark Buechler <Mark.Buechler@…> 12 years ago.
Skip B pics before refs - from ffmpeg

Download all attachments as: .zip

Change History (13)

Changed 12 years ago by taco_mel@…

Attachment: mythfrontend-out.txt added

Output from mythfrontend

Changed 12 years ago by taco_mel@…

Attachment: gdb.txt added

backtrace

Changed 12 years ago by taco_mel@…

Attachment: mencoder-doesnt-work.txt added

Produces a file that won't play

Changed 12 years ago by taco_mel@…

Attachment: mencoder-works.txt added

Produces output that does play correctly

Changed 12 years ago by taco_mel@…

Attachment: gdb.2.txt added

Backtrace file with only this crash, not others

comment:1 Changed 12 years ago by taco_mel@…

Please ignore gdb.txt and look at gdb.2.txt. The former seems to have backtraces from a bunch of other crashes, while the latter has only this crash and not others. Sorry about that.

comment:2 Changed 12 years ago by taco_mel@…

Sorry, me again. I examined the backtrace, poked around a little bit, and discovered that changeset 16193 is what broke this. Taking out that change allows the videos to play correctly, albeit starting at 00:00:03...

comment:3 Changed 12 years ago by greg

Milestone: unknown0.21
Owner: changed from Isaac Richards to greg
Status: newassigned

Changed 12 years ago by Mark Buechler <Mark.Buechler@…>

Attachment: h264_0.diff added

Skip B pics before refs - from ffmpeg

comment:4 Changed 12 years ago by Mark Buechler <Mark.Buechler@…>

Try attached patch against libavcodec. This patch is already in ffmpeg head.

  • Mark.

comment:5 Changed 12 years ago by taco_mel@…

Thank you, I recompiled the same revision of MythTV as I had before with your patch and all of the problematic videos (that I had discovered at least) played correctly now. I am now able to enjoy the fix in 16193 and also play my videos without problems. So I do recommend that this patch be implemented into the trunk and fixes.

comment:6 Changed 12 years ago by Janne Grunau

Owner: changed from greg to Janne Grunau

the attached patch breaks multithreaded decoding, I'll apply the appropiate FFmpeg changesets soon.

comment:7 Changed 12 years ago by Janne Grunau

Resolution: fixed
Status: assignedclosed

fixed by [16390] for trunk and by [16391] for release-0-21-fixes

Note: See TracTickets for help on using tickets.