[mythtv-users] Running MythTV on Apple TV 3.0.1?

Mike Riccio mythtv at webdeck.com
Fri Dec 25 19:30:56 UTC 2009


Has anyone tried running the trunk (or 0.22-fixes) on an Apple TV running Apple TV OS version 3.0.1?  I've been trying to get it working without success.  I have been able to get the UI to work, but I can't play any recorded programs or videos.

I built both 0.22-fixes and trunk versions, and they both have the same issue.  I built it using the osx-packager under MacOS X 10.5, modified to add "-mmacosx-version-min=10.4", for all the various libraries it builds.  MythTV is configured as follows:

./configure --prefix=/Users/xxx/src/mythtv-trunk-appletv/.appletv-packager/build --runprefix=../Resources --enable-libfaad --enable-lirc --disable-firewire --extra-cflags='-mmacosx-version-min=10.4' --extra-cxxflags='-mmacosx-version-min=10.4' --disable-proc-opt --tune=pentium3 --disable-distcc

The first problem I run into is that VideoOutputQuartz::init fails, because it can't find the front window.

2009-12-24 22:24:43.000 Dec: Resyncing position map. posmapStarted = 0 livetv(0) watchingRec(0)
2009-12-24 22:24:43.088 Position map filled from DB to: 90487
2009-12-24 22:24:43.089 Dec: SyncPositionMap prerecorded, from DB: 2150 entries
2009-12-24 22:24:43.089 Dec: SyncPositionMap, new totframes: 90487, new length: 1509, posMap size: 2150
2009-12-24 22:24:43.099 AFD: Position map found
2009-12-24 22:24:43.099 AFD: Successfully opened decoder for file: "myth://192.168.42.48:6543/1071_20091222213000.mpg". novideo(0)
2009-12-24 22:24:43.134 VideoOutput: Allowed renderers: quartz-blit,opengl
2009-12-24 22:24:43.134 VideoOutput: Allowed renderers (filt: libmpeg2): quartz-blit,opengl
2009-12-24 22:24:43.146 VDP: Accepting: cmp(<= 720 576,> 0 0) dec(ffmpeg) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,linearblend) filt()
2009-12-24 22:24:43.146 VDP: Rejecting: cmp(<= 1280 720,> 720 576) dec(xvmc) cpus(1) rend(xvmc-blit) osd(opengl) osdfade(enabled) deint(bobdeint,onefield) filt()
			OSD Renderer opengl is not supported w/renderer xvmc-blit (supported: chromakey,chromakey,ia44blend)
2009-12-24 22:24:43.146 VDP: Accepting: cmp(<= 1280 720,> 720 576) dec(libmpeg2) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.146 VDP: Accepting: cmp(> 0 0) dec(xvmc) cpus(1) rend(xvmc-blit) osd(ia44blend) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.146 VDP: Accepting: cmp(> 0 0) dec(libmpeg2) cpus(1) rend(xv-blit) osd(chromakey) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.146 VDP: LoadBestPreferences(2048x2048, 0)
2009-12-24 22:24:43.147 VDP: LoadBestPreferences(2048x2048, 60)
2009-12-24 22:24:43.147 VDP: LoadBestPreferences(1280x720, 60)
2009-12-24 22:24:43.147 VideoOutput: Trying video renderer: 'quartz-blit'
2009-12-24 22:24:43.205 VDP: Accepting: cmp(<= 720 576,> 0 0) dec(ffmpeg) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,linearblend) filt()
2009-12-24 22:24:43.205 VDP: Rejecting: cmp(<= 1280 720,> 720 576) dec(xvmc) cpus(1) rend(xvmc-blit) osd(opengl) osdfade(enabled) deint(bobdeint,onefield) filt()
			OSD Renderer opengl is not supported w/renderer xvmc-blit (supported: chromakey,chromakey,ia44blend)
2009-12-24 22:24:43.205 VDP: Accepting: cmp(<= 1280 720,> 720 576) dec(libmpeg2) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.206 VDP: Accepting: cmp(> 0 0) dec(xvmc) cpus(1) rend(xvmc-blit) osd(ia44blend) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.206 VDP: Accepting: cmp(> 0 0) dec(libmpeg2) cpus(1) rend(xv-blit) osd(chromakey) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.206 VDP: LoadBestPreferences(2048x2048, 0)
2009-12-24 22:24:43.206 VDP: LoadBestPreferences(2048x2048, 60)
2009-12-24 22:24:43.225 VDP: SetVideoRenderer(quartz-blit)
2009-12-24 22:24:43.239 VDP: Old preferences: rend(xvmc-blit) osd(ia44blend) deint(bobdeint,onefield) filt()
2009-12-24 22:24:43.239 VDP: New preferences: rend(quartz-blit) osd(softblend) deint(onefield,onefield) filt()
2009-12-24 22:24:43.239 VideoOutWindow::SetPIPState. pip_state: 0]
2009-12-24 22:24:43.240 VideoOutputQuartz::Init(WxH 1280x720, aspect=1.77778, winid=5997792
			win_bounds(x 0, y0, WxH 1216x704), WId embedid=0)
2009-12-24 22:24:43.242 Display Rect  left: 0, top: 88, width: 1216, height: 528, aspect: 1.33333
2009-12-24 22:24:43.242 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:24:43.242 VDP: LoadBestPreferences(1280x720, 60)
2009-12-24 22:24:43.242 VideoOutputQuartz::VideoAspectRatioChanged(aspect=1.77778) [was 1.3333]
2009-12-24 22:24:43.242 Display Rect  left: 0, top: 88, width: 1216, height: 528, aspect: 1.33333
2009-12-24 22:24:43.242 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:24:43.353 VideoOutputQuartz::Init() - Find window failed
2009-12-24 22:24:43.355 VideoOutput: Trying video renderer: ''
2009-12-24 22:24:43.355 VideoOutput, Error: Not compiled with any useable video output method.
2009-12-24 22:24:43.355 NVP(0), Error: Couldn't create VideoOutput instance. Exiting..
2009-12-24 22:24:43.356 Unable to initialize video.
2009-12-24 22:25:03.151 playCtx, Error: StartDecoderThread() Failed to startdecoder
2009-12-24 22:25:03.152 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end error
2009-12-24 22:25:03.202 TV: HandleStateChange(0) -- end
2009-12-24 22:25:03.210 TV: StartTV -- process events end
2009-12-24 22:25:03.211 TV: StartTV -- process events 2 begin
2009-12-24 22:25:03.302 TV: StartTV -- process events 2 end
2009-12-24 22:25:03.305 TV::~TV() -- begin
2009-12-24 22:25:03.398 TV::~TV() -- lock


So, on a whim, I tried changing videoout_quartz.cpp so that it calls FrontWindow() instead of FrontNonFloatingWindow(), thinking that maybe the AppleTV is running everything in a floating window.  That change gets me further along, but still no video playback - now it times out waiting for prebuffer:

2009-12-24 22:35:56.149 Dec: Resyncing position map. posmapStarted = 0 livetv(0) watchingRec(0)
2009-12-24 22:35:56.287 Position map filled from DB to: 215580
2009-12-24 22:35:56.290 Dec: SyncPositionMap prerecorded, from DB: 7187 entries
2009-12-24 22:35:56.290 Dec: SyncPositionMap, new totframes: 215580, new length: 3596, posMap size: 7187
2009-12-24 22:35:56.291 AFD: Position map found
2009-12-24 22:35:56.291 AFD: Successfully opened decoder for file: "myth://192.168.42.48:6543/1071_20091017220000.mpg". novideo(0)
2009-12-24 22:35:56.300 VideoOutput: Allowed renderers: quartz-blit,opengl
2009-12-24 22:35:56.301 VideoOutput: Allowed renderers (filt: libmpeg2): quartz-blit,opengl
2009-12-24 22:35:56.312 VDP: Accepting: cmp(<= 720 576,> 0 0) dec(ffmpeg) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,linearblend) filt()
2009-12-24 22:35:56.312 VDP: Rejecting: cmp(<= 1280 720,> 720 576) dec(xvmc) cpus(1) rend(xvmc-blit) osd(opengl) osdfade(enabled) deint(bobdeint,onefield) filt()
			OSD Renderer opengl is not supported w/renderer xvmc-blit (supported: chromakey,chromakey,ia44blend)
2009-12-24 22:35:56.312 VDP: Accepting: cmp(<= 1280 720,> 720 576) dec(libmpeg2) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.312 VDP: Accepting: cmp(> 0 0) dec(xvmc) cpus(1) rend(xvmc-blit) osd(ia44blend) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.312 VDP: Accepting: cmp(> 0 0) dec(libmpeg2) cpus(1) rend(xv-blit) osd(chromakey) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.312 VDP: LoadBestPreferences(2048x2048, 0)
2009-12-24 22:35:56.313 VDP: LoadBestPreferences(2048x2048, 60)
2009-12-24 22:35:56.313 VDP: LoadBestPreferences(1280x720, 60)
2009-12-24 22:35:56.313 VideoOutput: Trying video renderer: 'quartz-blit'
2009-12-24 22:35:56.370 VDP: Accepting: cmp(<= 720 576,> 0 0) dec(ffmpeg) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,linearblend) filt()
2009-12-24 22:35:56.370 VDP: Rejecting: cmp(<= 1280 720,> 720 576) dec(xvmc) cpus(1) rend(xvmc-blit) osd(opengl) osdfade(enabled) deint(bobdeint,onefield) filt()
			OSD Renderer opengl is not supported w/renderer xvmc-blit (supported: chromakey,chromakey,ia44blend)
2009-12-24 22:35:56.371 VDP: Accepting: cmp(<= 1280 720,> 720 576) dec(libmpeg2) cpus(1) rend(xv-blit) osd(softblend) osdfade(enabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.371 VDP: Accepting: cmp(> 0 0) dec(xvmc) cpus(1) rend(xvmc-blit) osd(ia44blend) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.371 VDP: Accepting: cmp(> 0 0) dec(libmpeg2) cpus(1) rend(xv-blit) osd(chromakey) osdfade(disabled) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.371 VDP: LoadBestPreferences(2048x2048, 0)
2009-12-24 22:35:56.371 VDP: LoadBestPreferences(2048x2048, 60)
2009-12-24 22:35:56.390 VDP: SetVideoRenderer(quartz-blit)
2009-12-24 22:35:56.390 VDP: Old preferences: rend(xvmc-blit) osd(ia44blend) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.390 VDP: New preferences: rend(quartz-blit) osd(softblend) deint(onefield,onefield) filt()
2009-12-24 22:35:56.390 VideoOutWindow::SetPIPState. pip_state: 0]
2009-12-24 22:35:56.390 VideoOutputQuartz::Init(WxH 1280x720, aspect=1.77778, winid=6021424
			win_bounds(x 0, y0, WxH 1216x704), WId embedid=0)
2009-12-24 22:35:56.391 Display Rect  left: 0, top: 88, width: 1216, height: 528, aspect: 1.33333
2009-12-24 22:35:56.391 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:35:56.391 VDP: LoadBestPreferences(1280x720, 60)
2009-12-24 22:35:56.391 VideoOutputQuartz::VideoAspectRatioChanged(aspect=1.77778) [was 1.3333]
2009-12-24 22:35:56.391 Display Rect  left: 0, top: 88, width: 1216, height: 528, aspect: 1.33333
2009-12-24 22:35:56.391 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:35:56.499 Screen size is 451.499 x 253.968 (mm), aspect 1.77778
2009-12-24 22:35:56.508 Main window is 428 x 248 (mm), aspect 1.72727
2009-12-24 22:35:56.508 VideoOutputQuartz::CreateQuartzBuffers() render: xv-blit, allowed: quartz-blit
2009-12-24 22:35:56.508 VDP: SetVideoRenderer(quartz-blit)
2009-12-24 22:35:56.508 VDP: Old preferences: rend(xv-blit) osd(softblend) deint(bobdeint,onefield) filt()
2009-12-24 22:35:56.508 VDP: New preferences: rend(quartz-blit) osd(softblend) deint(onefield,onefield) filt()
2009-12-24 22:35:56.508 VideoOutputQuartz::VProf: rend(quartz-blit) osd(softblend) deint(onefield,onefield) filt()
2009-12-24 22:35:57.912 Main window: Viewport currently 0,0 -> 1216,704
2009-12-24 22:35:59.307 Main window: Viewport is 1216 x 704
2009-12-24 22:35:59.307 Main window: Image is 1280 x 720
2009-12-24 22:35:59.307 Main window: Scaling to 0.95 x 0.977778 of original
2009-12-24 22:35:59.345 Display Rect  left: 0, top: 10, width: 1216, height: 684, aspect: 1.72727
2009-12-24 22:35:59.345 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:35:59.346 Main window: Viewport is 1216 x 684
2009-12-24 22:35:59.346 Main window: Image is 1280 x 720
2009-12-24 22:35:59.346 Main window: Scaling to 0.95 x 0.95 of original
2009-12-24 22:35:59.346 Main window: Translating to 0, 10
2009-12-24 22:35:59.380 Over/underscan. V: 0, H: 0
2009-12-24 22:35:59.380 Display Rect  left: 0, top: 10, width: 1216, height: 684, aspect: 1.72727
2009-12-24 22:35:59.380 Video Rect    left: 0, top: 0, width: 1280, height: 720, aspect: 1.77778
2009-12-24 22:35:59.396 SetVideoFrameRate(59.9401)
2009-12-24 22:35:59.408 NVP(0): LoadFilters(''..) -> 0x0
2009-12-24 22:35:59.477 OSD Theme Dimensions W: 1280 H: 720
2009-12-24 22:36:04.398 playCtx: StartDecoderThread(): took 8098 ms to start player.
2009-12-24 22:36:04.401 NVP(0): ClearAfterSeek(1)
2009-12-24 22:36:04.505 VideoOutputQuartz::GetDisplayInfo() [returning 60]
2009-12-24 22:36:04.532 VDP: GetFilteredDeint() : quartz-blit -> 'onefield'
2009-12-24 22:36:04.611 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok
2009-12-24 22:36:04.629 SendReceiveStringList(MESSAGE,COMMFLAG_REQUEST 1071 2009-10-17T22:00:00) called from UI thread
2009-12-24 22:36:04.629 MythSocket(c70d2f0:31): write -> 31 53      MESSAGE[]:[]COMMFLAG_REQUEST 1071 2009-10-17T22:00:00
2009-12-24 22:36:04.630 MythSocket(c70d2f0:31): read  <- 31 2       OK
2009-12-24 22:36:04.630 TV: Changing from None to Watching WatchingPreRecorded
2009-12-24 22:36:04.631 MythSocket(c7d6240:32): read  <- 32 71      BACKEND_MESSAGE[]:[]COMMFLAG_REQUEST 1071 2009-10-17T22:00:00[]:[...
2009-12-24 22:36:04.631 MythEvent: COMMFLAG_REQUEST 1071 2009-10-17T22:00:00
2009-12-24 22:36:04.657 FilterManager: GetFilterInfo(convert) returning: 0x0
2009-12-24 22:36:04.657 FilterManager: GetFilterInfo(onefield) returning: 0xe289f40
2009-12-24 22:36:04.657 Using deinterlace method onefield
2009-12-24 22:36:04.689 DRMVideoSync: Could not open device /dev/dri/card0, No such file or directory
2009-12-24 22:36:04.689 OpenGLVideoSync()
2009-12-24 22:36:04.690 ~OpenGLVideoSync() -- closing opengl vsync
2009-12-24 22:36:04.696 MythSocket(e60a320:41): write -> 41 50      QUERY_FILETRANSFER 54[]:[]REQUEST_BLOCK[]:[]163839
2009-12-24 22:36:04.696 VideoOutputQuartz::GetDisplayInfo() [returning 60]
2009-12-24 22:36:04.712 MythSocket(e60a320:41): read  <- 41 6       163839
2009-12-24 22:36:04.712 Read(): reqd=163839, rcvd=163839, rept=163839, error=0
2009-12-24 22:36:04.696 Using audio as timebase
2009-12-24 22:36:04.720 Video timing method: USleep with busy wait
2009-12-24 22:36:04.720 Refresh rate: 16666, frame interval: 16683
2009-12-24 22:36:04.785 NVP(0): Waiting for prebuffer..  0 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:04.885 NVP(0): Waiting for prebuffer..  1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:04.951 NVP(0): Waiting for prebuffer..  2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.001 TV: HandleStateChange(0) -- end
2009-12-24 22:36:05.017 NVP(0): Waiting for prebuffer..  3 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.084 NVP(0): Waiting for prebuffer..  4 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.150 NVP(0): Waiting for prebuffer..  5 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.216 NVP(0): Waiting for prebuffer..  6 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.282 NVP(0): Waiting for prebuffer..  7 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.348 NVP(0): Waiting for prebuffer..  8 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.415 NVP(0): Waiting for prebuffer..  9 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2009-12-24 22:36:05.481 NVP(0): Prebuffer wait timed out 10 times.
[... snip ...]
2009-12-24 22:36:14.264 NVP(0): Prebuffer wait timed out 140 times.
2009-12-24 22:36:14.264 NVP(0), Error: Timed out waiting for prebuffering too long. Exiting..
2009-12-24 22:36:14.264 NVP(0), Error: Video frame buffering failed too many times.


The Apple TV is connected via wired Ethernet, so it's not a wireless network problem.

Any ideas?

Thanks,
-Mike


More information about the mythtv-users mailing list