fix when rtmpdump is missing and for canalplus
This commit is contained in:
parent
be2c880d31
commit
73cc25fadb
1 changed files with 9 additions and 6 deletions
|
|
@ -16,11 +16,10 @@
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
|
|
||||||
import errno
|
|
||||||
import logging
|
|
||||||
import os
|
import os
|
||||||
from subprocess import Popen, PIPE
|
from subprocess import Popen, PIPE
|
||||||
|
|
||||||
|
from weboob.tools.log import getLogger
|
||||||
|
|
||||||
__all__ = ['MediaPlayer']
|
__all__ = ['MediaPlayer']
|
||||||
|
|
||||||
|
|
@ -42,6 +41,9 @@ class MediaPlayer():
|
||||||
('xine', 'stdin:/'),
|
('xine', 'stdin:/'),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def __init__(self, logger=None):
|
||||||
|
self.logger = getLogger('mediaplayer', logger)
|
||||||
|
|
||||||
def get_player_name(self, preferred=None):
|
def get_player_name(self, preferred=None):
|
||||||
player_names = preferred if preferred else [player[0] for player in self.PLAYERS]
|
player_names = preferred if preferred else [player[0] for player in self.PLAYERS]
|
||||||
for player_name in player_names:
|
for player_name in player_names:
|
||||||
|
|
@ -79,7 +81,8 @@ class MediaPlayer():
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if not self._find_in_path(os.environ['PATH'], 'rtmpdump'):
|
if not self._find_in_path(os.environ['PATH'], 'rtmpdump'):
|
||||||
raise OSError(errno.ENOENT, '"rtmpdump" binary not found')
|
self.logger.warning('"rtmpdump" binary not found')
|
||||||
|
return self._play_default(media)
|
||||||
|
|
||||||
media_url = media.url
|
media_url = media.url
|
||||||
try:
|
try:
|
||||||
|
|
@ -87,10 +90,10 @@ class MediaPlayer():
|
||||||
rtmp = 'rtmpdump -r %s --swfVfy %s' % (media_url, player_url)
|
rtmp = 'rtmpdump -r %s --swfVfy %s' % (media_url, player_url)
|
||||||
|
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
logging.warning('Your media object does not have a "swf_player" attribute. SWF verification will be '
|
self.logger.warning('Your media object does not have a "swf_player" attribute. SWF verification will be '
|
||||||
'disabled and may prevent correct media playback.')
|
'disabled and may prevent correct media playback.')
|
||||||
|
|
||||||
rtmp = 'rtmpdump -r %s' % media_url
|
return self._play_default(media)
|
||||||
|
|
||||||
rtmp += ' --quiet'
|
rtmp += ' --quiet'
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue