Opened 19 years ago

Closed 14 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 19 years ago.

Download all attachments as: .zip

Change History (19)

comment:1 by danielk, 19 years ago

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 by Janne Grunau, 19 years ago

ffplay revision 7671 plays the file without this error message

comment:3 by bjm, 19 years ago

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.

by Janne Grunau, 19 years ago

comment:4 by Janne Grunau, 19 years ago

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 by anonymous, 19 years ago

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 by Janne Grunau, 19 years ago

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

comment:7 by Janne Grunau, 19 years ago

Priority: majorminor

comment:8 by Janne Grunau, 18 years ago

Milestone: 0.21unknown

comment:9 by Dibblah, 17 years ago

Status: newassigned
Type: defecttask

comment:10 by Dibblah, 17 years ago

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 by Dibblah, 17 years ago

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

comment:12 by stuartm, 16 years ago

Component: mythtvMythTV - Video Playback

Still an ongoing problem?

comment:13 by beirdo, 15 years ago

This needs some love.

comment:14 by Janne Grunau, 15 years ago

Milestone: unknown0.24

comment:15 by Janne Grunau, 15 years ago

Resolution: fixed
Status: assignedclosed

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

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

comment:16 by Janne Grunau, 15 years ago

Milestone: 0.240.25
Resolution: fixed
Status: closednew

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

comment:17 by Kenni Lund [kenni a kelu dot dk], 15 years ago

Status: newassigned

comment:18 by stuartm, 14 years ago

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.