Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#6925 closed defect (fixed)

Mac OS X client won't play some MPEG2s

Reported by: Nigel Owned by: Nigel
Priority: major Milestone: 0.22
Component: MythTV - General Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Some time in the last month, playback broke. Black screen "Please Wait..." appears, then the theme background. No audio output. Pressing escape returns to the playback screen, which has a popup saying "Need to switch video renderer."
Playing NuppelVideo? files, or AVIs, or other MPEG2 files, seems fine (suspect it is interlaced MPEG2s only). I won't provide full logs here, but a defective run does:

2009-08-27 14:35:25.837 TV: Attempting to change from None to Watching WatchingPreRecorded
2009-08-27 14:35:25.896 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- begin
2009-08-27 14:35:26.136 mpegts_read_header: TS packet size = 188
2009-08-27 14:35:26.338 AFD: Opened codec 0x27124200, id(MPEG2VIDEO) type(Video)
2009-08-27 14:35:26.338 AFD: codec AC3 has 6 channels
2009-08-27 14:35:26.339 AFD: Opened codec 0x27124600, id(AC3) type(Audio)
2009-08-27 14:35:26.346 Opening audio device 'CoreAudio:'. ch 2(2) sr 48000
2009-08-27 14:35:26.426 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(yadifdoubleprocessdeint,yadifdeint) filt()
2009-08-27 14:35:26.648 FilterManager: Failed to load filter 'bob', no such filter exists
2009-08-27 14:35:26.658 OSD Theme Dimensions W: 640 H: 480
2009-08-27 14:35:29.204 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok
2009-08-27 14:35:29.205 TV: Changing from None to Watching WatchingPreRecorded
YadifDeint: In-Pixformat = 1 Out-Pixformat=1
YadifDeint: size changed from 0 x 0 -> 1440 x 1088
YadifDeint: Using existing thread.
2009-08-27 14:35:29.408 OpenGLVideoSync()
2009-08-27 14:35:29.408 ~OpenGLVideoSync() -- closing opengl vsync
2009-08-27 14:35:29.408 Video timing method: USleep with busy wait
2009-08-27 14:35:29.479 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- begin
2009-08-27 14:35:29.705 mpegts_read_header: TS packet size = 188
2009-08-27 14:35:29.908 AFD: Opened codec 0x4bcf000, id(MPEG2VIDEO) type(Video)
2009-08-27 14:35:29.908 AFD: codec AC3 has 6 channels
2009-08-27 14:35:29.909 AFD: Opened codec 0x270d1600, id(AC3) type(Audio)
2009-08-27 14:35:29.916 Opening audio device 'CoreAudio:'. ch 2(2) sr 48000
2009-08-27 14:35:29.995 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(yadifdoubleprocessdeint,yadifdeint) filt()
2009-08-27 14:35:30.198 FilterManager: Failed to load filter 'bob', no such filter exists
2009-08-27 14:35:30.206 OSD Theme Dimensions W: 640 H: 480
2009-08-27 14:35:32.914 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok
YadifDeint: In-Pixformat = 1 Out-Pixformat=1
YadifDeint: size changed from 0 x 0 -> 1440 x 1088
YadifDeint: Using existing thread.
2009-08-27 14:35:33.133 OpenGLVideoSync()
2009-08-27 14:35:33.133 ~OpenGLVideoSync() -- closing opengl vsync
2009-08-27 14:35:33.133 Video timing method: USleep with busy wait
2009-08-27 14:35:33.248 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- begin
2009-08-27 14:35:33.504 mpegts_read_header: TS packet size = 188
2009-08-27 14:35:33.728 AFD: Opened codec 0x4c2ce00, id(MPEG2VIDEO) type(Video)
2009-08-27 14:35:33.728 AFD: codec AC3 has 6 channels
2009-08-27 14:35:33.728 AFD: Opened codec 0x270d1a00, id(AC3) type(Audio)
2009-08-27 14:35:33.735 Opening audio device 'CoreAudio:'. ch 2(2) sr 48000
2009-08-27 14:35:33.815 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(yadifdoubleprocessdeint,yadifdeint) filt()
2009-08-27 14:35:34.018 FilterManager: Failed to load filter 'bob', no such filter exists
2009-08-27 14:35:34.026 OSD Theme Dimensions W: 640 H: 480
2009-08-27 14:35:36.671 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok
YadifDeint: In-Pixformat = 1 Out-Pixformat=1
YadifDeint: size changed from 0 x 0 -> 1440 x 1088
YadifDeint: Using existing thread.
2009-08-27 14:35:36.897 OpenGLVideoSync()
2009-08-27 14:35:36.897 ~OpenGLVideoSync() -- closing opengl vsync
2009-08-27 14:35:36.897 Video timing method: USleep with busy wait
2009-08-27 14:35:37.016 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- begin
2009-08-27 14:35:37.251 mpegts_read_header: TS packet size = 188
2009-08-27 14:35:37.449 AFD: Opened codec 0x270d9a00, id(MPEG2VIDEO) type(Video)
2009-08-27 14:35:37.449 AFD: codec AC3 has 6 channels
2009-08-27 14:35:37.450 AFD: Opened codec 0x270da000, id(AC3) type(Audio)
2009-08-27 14:35:37.456 Opening audio device 'CoreAudio:'. ch 2(2) sr 48000
2009-08-27 14:35:37.539 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(yadifdoubleprocessdeint,yadifdeint) filt()
2009-08-27 14:35:37.741 FilterManager: Failed to load filter 'bob', no such filter exists
2009-08-27 14:35:37.750 OSD Theme Dimensions W: 640 H: 480
2009-08-27 14:35:40.283 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok
YadifDeint: In-Pixformat = 1 Out-Pixformat=1
YadifDeint: size changed from 0 x 0 -> 1440 x 1088
YadifDeint: Using existing thread.
2009-08-27 14:35:40.509 OpenGLVideoSync()
2009-08-27 14:35:40.510 ~OpenGLVideoSync() -- closing opengl vsync
2009-08-27 14:35:40.510 Video timing method: USleep with busy wait
2009-08-27 14:35:40.592 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- begin
2009-08-27 14:35:40.834 mpegts_read_header: TS packet size = 188
2009-08-27 14:35:41.034 AFD: Opened codec 0x272cbc00, id(MPEG2VIDEO) type(Video)
2009-08-27 14:35:41.035 AFD: codec AC3 has 6 channels
2009-08-27 14:35:41.036 AFD: Opened codec 0x272cc000, id(AC3) type(Audio)
2009-08-27 14:35:41.045 Opening audio device 'CoreAudio:'. ch 2(2) sr 48000
2009-08-27 14:35:41.136 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(yadifdoubleprocessdeint,yadifdeint) filt()
2009-08-27 14:35:41.388 FilterManager: Failed to load filter 'bob', no such filter exists
2009-08-27 14:35:41.399 OSD Theme Dimensions W: 640 H: 480
2009-08-27 14:35:44.431 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok

with that last 16 lines repeating every 2 or 3 seconds.

Attachments (2)

playback-log (39.3 KB) - added by Nigel 10 years ago.
-v playback
aspect.diff (656 bytes) - added by markk 10 years ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 10 years ago by stephen.hocking@…

I have seen this & fixed it by going to section of TV playback that deals with the rendering & interlacing settings for various resolutions. I had defined setings for <= 720x576i, =1280x720p and =1920x1080i. I had forgotten that some hidef broadcasts are done as 1440x1080i, and then anamorphed to 1920x1080i. I changed the ==1920x108 to > 1280x720, and everything started behaving again.

comment:2 Changed 10 years ago by Janne Grunau

since it's not visible from the log excerpt, is this with the mpeg2 decoding acceleration on mac? It's very likely that it broke in the ffmpeg sync in [20797].

If it's ffmpeg's pure software decoder, does the same file plays fine on linux?

Changed 10 years ago by Nigel

Attachment: playback-log added

-v playback

comment:3 Changed 10 years ago by Nigel

Owner: changed from Isaac Richards to Nigel
Status: newassigned

Yes, this might be playback profile related, but some of the MPEG2 sources that fail are 720x576i (plus, I thought the code had fallbacks). No, not DVDV - just the normal Quartz/Quicktime?/OpenGL.
The interesting thing is that I just ran it against LiveTV from a HDHR. The OSD was displayed with the lock and S/N information, but the video was green - and when the OSD faded, the display went back to the background picture. Log attached

comment:4 Changed 10 years ago by Nigel

Haven't worked it out from the code yet, so I'm doing the version binary chop process. -r21002 plays back cleanly

comment:5 Changed 10 years ago by Nigel

-r21064, -r21107 and -r21219 good. -r21309 bad, -r21262 good, -r21290 good, -r21300 good, -r21308 bad, -r21307 good. Which is interesting, because 21308 seems to just be aspect ratio stuff.
Linux? No problems with any of the recordings.

Changed 10 years ago by markk

Attachment: aspect.diff added

comment:6 Changed 10 years ago by anonymous

Does the attached patch (aspect.diff) help?

comment:7 Changed 10 years ago by Nigel

Resolution: fixed
Status: assignedclosed

(In [21562]) Bug fix in aspect ratio change [21308]. Thanks to Mark. Closes #6925. Refs #6831. Now, if only I could work out why this (e.g. having an initial aspect ratio of 1.33333 instead of 1.77778 for 16:9 material) only impacts the Mac frontend? Maybe related to #6211

comment:8 Changed 10 years ago by stuartm

Milestone: 0.230.22
Note: See TracTickets for help on using tickets.