Opened 13 years ago

Closed 8 years ago

#3001 closed task (Won't Fix)

MPEG-4 decode errors as of [12645]

Reported by: bjm Owned by: Janne Grunau
Priority: minor Milestone: unknown
Component: MythTV - Video Playback Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

As of [12645] a regression has occurred in mythfrontend where playback of recorded TV shows will flash broken frames at an average of more than one per minute. The frames will have large blocks of misplaced color and other such general mishandled frame artifacts. Mythfrontend shows error messages from the ffmpeg library similar to:

[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left B5BD00, score= -3121)
[mpeg4 @ 0xb766f6e8]concealing 930 DC, 930 AC, 930 MV errors
[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left 844148, score= -5081)
[mpeg4 @ 0xb766f6e8]concealing 930 DC, 930 AC, 930 MV errors
[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left C01C25, score= -5456)
[mpeg4 @ 0xb766f6e8]concealing 930 DC, 930 AC, 930 MV errors
[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left 84CD46, score= -7178)
[mpeg4 @ 0xb766f6e8]concealing 930 DC, 930 AC, 930 MV errors
[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left 431428, score= -8286)
[mpeg4 @ 0xb766f6e8]concealing 930 DC, 930 AC, 930 MV errors
[mpeg4 @ 0xb766f6e8]slice end not reached but screenspace end (-9 left 614CD8, score= -8430)

A post [12645] frontend has these errors for recordings at different resolutions and bitrates for files recorded both before and after [12645]. A pre [12645] mythfrontend does not have these errors for files recorded either before or after [12645].

Attachments (1)

3001_revert_ffmpeg_6942_and_6953.diff (1.9 KB) - added by Janne Grunau 13 years ago.

Download all attachments as: .zip

Change History (19)

comment:1 Changed 13 years ago by danielk

Owner: changed from Isaac Richards to Janne Grunau

I didn't see the corrupted frame, but I saw the error message:

2007-01-27 19:57:08.216 NVP: prebuffering pause
2007-01-27 19:57:10.110 NVP: prebuffering pause
2007-01-27 19:57:11.330 NVP: prebuffering pause
2007-01-27 19:57:13.247 NVP: prebuffering pause
2007-01-27 19:57:15.184 NVP: prebuffering pause
2007-01-27 19:57:17.160 NVP: prebuffering pause
2007-01-27 19:57:31.167 NVP: prebuffering pause
2007-01-27 19:57:34.492 NVP: prebuffering pause
2007-01-27 19:57:37.142 NVP: prebuffering pause
[mpeg4 @ 0x2ab8d7f9a530]slice end not reached but screenspace end (-8 left AFC7C4, score= -955)
[mpeg4 @ 0x2ab8d7f9a530]concealing 900 DC, 900 AC, 900 MV errors
2007-01-27 19:57:55.684 WriteAudio: buffer underrun
2007-01-27 19:58:14.537 NVP: prebuffering pause
2007-01-27 19:59:11.168 WriteAudio: buffer underrun
2007-01-27 19:59:30.194 NVP: prebuffering pause
2007-01-27 20:00:06.716 WriteAudio: buffer underrun
2007-01-27 20:00:25.549 NVP: prebuffering pause
2007-01-27 20:01:03.271 TV: Attempting to change from WatchingLiveTV to None
2007-01-27 20:01:07.521 TV: Changing from WatchingLiveTV to None

The context is there just to show that this didn't happen every minute, so it may take a little longer to reproduce on some systems. I didn't get the error in 10 minutes with the default MPEG-4 settings, but only after I enabled all the extra compression options.

comment:2 Changed 13 years ago by Janne Grunau

ffplay revision 7671 plays the file without this error message

comment:3 Changed 13 years ago by bjm

janne, could you address this or get ijr's help? Else this ffmpeg update will need to be reverted.

danielk, this 1 minute was a broad scale rather than an avg arrival rate. I neglected to mention that the amount of motion affected the frequency. I don't use any of the four checkbox encoding options.

I first saw this on a basketball game where this would happen 2 or more times per minute sometimes in clusters of several in a few seconds. Stationary scenes rarely has these errors but it dose seem to happen.

The error in decoding a frame seems to be consistent. When a flash appears or a message is logged, you can pause, "<" to go back by seconds before the bad frame then "->" (right arrow) to frame advance to the broken frame. The message will repeat each time the frame is drawn and the same artifacts will appear.

In a test right now, I had a case where the error message appeared but there were no visible artifacts that I could find. However, other frames, usually during high motion, can be spectacularly broken.

Changed 13 years ago by Janne Grunau

comment:4 Changed 13 years ago by Janne Grunau

Milestone: unknown0.21

Bruce, 3001_revert_ffmpeg_6942_and_6953.diff fixes the playback issue in my sample.

I'll commit it after I've successfully tested your samples. Any feedback from you is appreciated.

comment:5 Changed 13 years ago by anonymous

This patch appear to fix the problem.

If you are referring to the samples I uploaded to Isaac, ffmpeg-err.nuv does not report an error at 0:56 with this patch and there are no artifacts after the flash bulb goes off.

For mpeg4clip.nuv, there is no error at ~0:30 and no artifacts as Josh Heytvelt runs up court after the free throw. Playing the full clip reports no errors whereas there are six errors without this patch.

comment:6 Changed 13 years ago by Janne Grunau

(In [12689]) Refs #3001. fixes mpeg4 playback issues caused by [12645]

comment:7 Changed 13 years ago by Janne Grunau

Priority: majorminor

comment:8 Changed 12 years ago by Janne Grunau

Milestone: 0.21unknown

comment:9 Changed 11 years ago by Dibblah

Status: newassigned
Type: defecttask

comment:10 Changed 11 years ago by Dibblah

It appears to me (bearing in mind that I'm not that skilled) that [18904] may have fixed the issue we were working around here. There is a lot of code changes intermingled with the section commented out in [12689]

comment:11 Changed 11 years ago by Dibblah

According to Janne, the above is not correct, so unfortunately this ticket remains open.

comment:12 Changed 10 years ago by stuartm

Component: mythtvMythTV - Video Playback

Still an ongoing problem?

comment:13 Changed 9 years ago by beirdo

This needs some love.

comment:14 Changed 9 years ago by Janne Grunau

Milestone: unknown0.24

comment:15 Changed 9 years ago by Janne Grunau

Resolution: fixed
Status: assignedclosed

(In [25805]) nuv: fix mpeg4 decoding issue in #3001 properly

removes the workaround committed in [12689]. Fixes #3001

comment:16 Changed 9 years ago by Janne Grunau

Milestone: 0.240.25
Resolution: fixed
Status: closednew

[27132] reverts [25805]. It has created playback problems. see #8927

comment:17 Changed 9 years ago by Kenni Lund [kenni a kelu dot dk]

Status: newassigned

comment:18 Changed 8 years ago by stuartm

Milestone: 0.25unknown
Resolution: Won't Fix
Status: assignedclosed

This ticket is now over four years old, it's about an upstream bug playing a now little used format and I can't see active developers taking an interest in it. If there is sufficient interest in seeing this bug fixed, even assuming that it can still be reproduced in head/trunk/master then please re-open the ticket but before doing so verify that ffplay does not exhibit the problem. If it's reproducible with ffplay then file it as a bug upstream with ffmpeg.

Note: See TracTickets for help on using tickets.