2013-02-03, 08:49
Tommy, there seems to be an issue with the timer being set in source.play(). I've confirmed that the waitForPlayBackStopped() callback is never being called. I get the following thread error in xbmc.log:
01:22:58 T:5440 NOTICE: -->Python Interpreter Initialized<--
01:22:59 T:5436 NOTICE: Settings changed: False
01:23:01 T:5440 ERROR: EXCEPTION: Non-Existent Control 0
01:23:13 T:5440 NOTICE: Playing custom stream url: C:\Users\TV\AppData\Roaming\XBMC\userdata\playlists\cnn.strm
01:23:13 T:5196 NOTICE: DVDPlayer: Opening: rtmp://c.cdn.msnbclive.eu/edge/cnn_live swfurl=http://msnbclive.eu/player.swf pageUrl=http://blog.livenewschat.tv/rockinroosters/ swfVfy=true live=true timeout=60
01:23:13 T:5196 WARNING: CDVDMessageQueue(player):ut MSGQ_NOT_INITIALIZED
01:23:13 T:6096 NOTICE: Thread CDVDPlayer start, auto delete: false
01:23:13 T:6096 NOTICE: Creating InputStream
01:23:14 T:6096 NOTICE: Creating Demuxer
01:23:14 T:6096 NOTICE: Metadata:
01:23:14 T:6096 NOTICE: author
01:23:14 T:6096 NOTICE: copyright
01:23:14 T:6096 NOTICE: description
01:23:14 T:6096 NOTICE: keywords
01:23:14 T:6096 NOTICE: rating
01:23:14 T:6096 NOTICE: title
01:23:14 T:6096 NOTICE: presetname Custom
01:23:14 T:6096 NOTICE: creationdate Sat Feb 02 21:13:37 2013
01:23:14 T:6096 NOTICE: videodevice Dazzle DVC100 Video Device
01:23:14 T:6096 NOTICE: framerate 29.97
01:23:14 T:6096 NOTICE: width 640.00
01:23:14 T:6096 NOTICE: height 360.00
01:23:14 T:6096 NOTICE: videocodecid 7.00
01:23:14 T:6096 NOTICE: videodatarate 550.00
01:23:14 T:6096 NOTICE: avclevel 31.00
01:23:14 T:6096 NOTICE: avcprofile 66.00
01:23:14 T:6096 NOTICE: audiodevice Realtek HD Audio Input
01:23:14 T:6096 NOTICE: audiosamplerate 44100.00
01:23:14 T:6096 NOTICE: audiochannels 1.00
01:23:14 T:6096 NOTICE: audioinputvolume 37.00
01:23:14 T:6096 NOTICE: audiocodecid 2.00
01:23:14 T:6096 NOTICE: audiodatarate 112.00
01:23:15 T:6096 NOTICE: Opening video stream: 0 source: 256
01:23:15 T:6096 NOTICE: Creating video codec with codec id: 28
01:23:15 T:6096 NOTICE: CDVDVideoCodecFFmpeg::Open() Using codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
01:23:15 T:6096 ERROR: CDVDPlayerVideo::OpenStream - Invalid framerate 125, using forced 25fps and just trust timestamps
01:23:15 T:6096 NOTICE: Creating video thread
01:23:15 T:6096 NOTICE: Opening audio stream: 1 source: 256
01:23:15 T:6096 NOTICE: Finding audio codec for: 86017
01:23:15 T:1604 NOTICE: Thread CDVDPlayerVideo start, auto delete: false
01:23:15 T:1604 NOTICE: running thread: video_thread
01:23:15 T:6096 NOTICE: Creating audio thread
01:23:15 T:5416 NOTICE: Thread CDVDPlayerAudio start, auto delete: false
01:23:15 T:5416 NOTICE: running thread: CDVDPlayerAudio:rocess()
01:23:15 T:5416 NOTICE: Creating audio stream (codec id: 86017, channels: 1, sample rate: 44100, no pass-through)
01:23:15 T:1604 NOTICE: fps: 25.000000, pwidth: 640, pheight: 360, dwidth: 640, dheight: 360
01:23:15 T:1604 NOTICE: Display resolution DESKTOP : 1920x1080 @ 60.00 - Full Screen (16)
01:23:15 T:1604 NOTICE: D3D: rendering method forced to DXVA2 processor
01:23:16 T:3456 ERROR: Exception in thread Thread-19:
Traceback (most recent call last):
File "C:\Program Files (x86)\XBMC\system\python\Lib\threading.py", line 532, in __bootstrap_inner
self.run()
File "C:\Program Files (x86)\XBMC\system\python\Lib\threading.py", line 736, in run
self.function(*self.args, **self.kwargs)
TypeError: decorator() takes exactly 1 argument (2 given)
01:23:23 T:5196 NOTICE: CDVDPlayer::CloseFile()
01:23:23 T:5196 NOTICE: DVDPlayer: waiting for threads to exit
I am running Frodo 12.0 final release on Windows 7.
I believe this is a problem with the timer thread. The add-on seems to work ok, but when I stop the player in full screen, I get a blank screen which I have to use the tab key or escape to get back to the TVGuide. I thought that was normal behaviour, but after reading the thread code I realized it shouldn't behave that way - it's never coming out of the watchdog loop which restores the EPG screen when self.player.isPlaying goes false. I'll be damned if I can see what's wrong with the code unless the timer doesn't like having self passed in args[]. I mainly use python 3, so I'm not an expert on ver 2. BTW, I got into this because I was looking to add a notification of what program will play next near the end of the current program - I need to shut the alarm off if the player stops and waitForPlayBackStopped() or the callback seems the appropriate place. Thanks.
01:22:58 T:5440 NOTICE: -->Python Interpreter Initialized<--
01:22:59 T:5436 NOTICE: Settings changed: False
01:23:01 T:5440 ERROR: EXCEPTION: Non-Existent Control 0
01:23:13 T:5440 NOTICE: Playing custom stream url: C:\Users\TV\AppData\Roaming\XBMC\userdata\playlists\cnn.strm
01:23:13 T:5196 NOTICE: DVDPlayer: Opening: rtmp://c.cdn.msnbclive.eu/edge/cnn_live swfurl=http://msnbclive.eu/player.swf pageUrl=http://blog.livenewschat.tv/rockinroosters/ swfVfy=true live=true timeout=60
01:23:13 T:5196 WARNING: CDVDMessageQueue(player):ut MSGQ_NOT_INITIALIZED
01:23:13 T:6096 NOTICE: Thread CDVDPlayer start, auto delete: false
01:23:13 T:6096 NOTICE: Creating InputStream
01:23:14 T:6096 NOTICE: Creating Demuxer
01:23:14 T:6096 NOTICE: Metadata:
01:23:14 T:6096 NOTICE: author
01:23:14 T:6096 NOTICE: copyright
01:23:14 T:6096 NOTICE: description
01:23:14 T:6096 NOTICE: keywords
01:23:14 T:6096 NOTICE: rating
01:23:14 T:6096 NOTICE: title
01:23:14 T:6096 NOTICE: presetname Custom
01:23:14 T:6096 NOTICE: creationdate Sat Feb 02 21:13:37 2013
01:23:14 T:6096 NOTICE: videodevice Dazzle DVC100 Video Device
01:23:14 T:6096 NOTICE: framerate 29.97
01:23:14 T:6096 NOTICE: width 640.00
01:23:14 T:6096 NOTICE: height 360.00
01:23:14 T:6096 NOTICE: videocodecid 7.00
01:23:14 T:6096 NOTICE: videodatarate 550.00
01:23:14 T:6096 NOTICE: avclevel 31.00
01:23:14 T:6096 NOTICE: avcprofile 66.00
01:23:14 T:6096 NOTICE: audiodevice Realtek HD Audio Input
01:23:14 T:6096 NOTICE: audiosamplerate 44100.00
01:23:14 T:6096 NOTICE: audiochannels 1.00
01:23:14 T:6096 NOTICE: audioinputvolume 37.00
01:23:14 T:6096 NOTICE: audiocodecid 2.00
01:23:14 T:6096 NOTICE: audiodatarate 112.00
01:23:15 T:6096 NOTICE: Opening video stream: 0 source: 256
01:23:15 T:6096 NOTICE: Creating video codec with codec id: 28
01:23:15 T:6096 NOTICE: CDVDVideoCodecFFmpeg::Open() Using codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
01:23:15 T:6096 ERROR: CDVDPlayerVideo::OpenStream - Invalid framerate 125, using forced 25fps and just trust timestamps
01:23:15 T:6096 NOTICE: Creating video thread
01:23:15 T:6096 NOTICE: Opening audio stream: 1 source: 256
01:23:15 T:6096 NOTICE: Finding audio codec for: 86017
01:23:15 T:1604 NOTICE: Thread CDVDPlayerVideo start, auto delete: false
01:23:15 T:1604 NOTICE: running thread: video_thread
01:23:15 T:6096 NOTICE: Creating audio thread
01:23:15 T:5416 NOTICE: Thread CDVDPlayerAudio start, auto delete: false
01:23:15 T:5416 NOTICE: running thread: CDVDPlayerAudio:rocess()
01:23:15 T:5416 NOTICE: Creating audio stream (codec id: 86017, channels: 1, sample rate: 44100, no pass-through)
01:23:15 T:1604 NOTICE: fps: 25.000000, pwidth: 640, pheight: 360, dwidth: 640, dheight: 360
01:23:15 T:1604 NOTICE: Display resolution DESKTOP : 1920x1080 @ 60.00 - Full Screen (16)
01:23:15 T:1604 NOTICE: D3D: rendering method forced to DXVA2 processor
01:23:16 T:3456 ERROR: Exception in thread Thread-19:
Traceback (most recent call last):
File "C:\Program Files (x86)\XBMC\system\python\Lib\threading.py", line 532, in __bootstrap_inner
self.run()
File "C:\Program Files (x86)\XBMC\system\python\Lib\threading.py", line 736, in run
self.function(*self.args, **self.kwargs)
TypeError: decorator() takes exactly 1 argument (2 given)
01:23:23 T:5196 NOTICE: CDVDPlayer::CloseFile()
01:23:23 T:5196 NOTICE: DVDPlayer: waiting for threads to exit
I am running Frodo 12.0 final release on Windows 7.
I believe this is a problem with the timer thread. The add-on seems to work ok, but when I stop the player in full screen, I get a blank screen which I have to use the tab key or escape to get back to the TVGuide. I thought that was normal behaviour, but after reading the thread code I realized it shouldn't behave that way - it's never coming out of the watchdog loop which restores the EPG screen when self.player.isPlaying goes false. I'll be damned if I can see what's wrong with the code unless the timer doesn't like having self passed in args[]. I mainly use python 3, so I'm not an expert on ver 2. BTW, I got into this because I was looking to add a notification of what program will play next near the end of the current program - I need to shut the alarm off if the player stops and waitForPlayBackStopped() or the callback seems the appropriate place. Thanks.