modify ouifm module to use the modified ICapRadio
Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
This commit is contained in:
parent
b91a7b00d9
commit
dcad02eb29
1 changed files with 17 additions and 14 deletions
|
|
@ -18,7 +18,8 @@
|
|||
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
from weboob.capabilities.radio import ICapRadio, Radio, Stream, Emission
|
||||
from weboob.capabilities.radio import ICapRadio, Radio
|
||||
from weboob.capabilities.audiostream import BaseAudioStream, AudioStreamInfo
|
||||
from weboob.capabilities.collection import ICapCollection
|
||||
from weboob.tools.backend import BaseBackend
|
||||
from weboob.tools.browser import StandardBrowser
|
||||
|
|
@ -37,11 +38,11 @@ class OuiFMBackend(BaseBackend, ICapRadio, ICapCollection):
|
|||
LICENSE = 'AGPLv3+'
|
||||
BROWSER = StandardBrowser
|
||||
|
||||
_RADIOS = {'general': (u'OUÏ FM', u'OUI FM', u'http://ouifm.ice.infomaniak.ch/ouifm-high.mp3'),
|
||||
'alternatif': (u'OUÏ FM Alternatif', u'OUI FM - L\'Alternative Rock', u'http://ouifm.ice.infomaniak.ch/ouifm2.mp3'),
|
||||
'collector': (u'OUÏ FM Collector', u'OUI FM - Classic Rock', u'http://ouifm.ice.infomaniak.ch/ouifm3.mp3'),
|
||||
'blues': (u'OUÏ FM Blues', u'OUI FM - Blues', u'http://ouifm.ice.infomaniak.ch/ouifm4.mp3'),
|
||||
'inde': (u'OUÏ FM Indé', u'OUI FM - Rock Indé', u'http://ouifm.ice.infomaniak.ch/ouifm5.mp3'),
|
||||
_RADIOS = {'general': (u'OUÏ FM', u'OUI FM', u'http://ouifm.ice.infomaniak.ch/ouifm-high.mp3', 128),
|
||||
'alternatif': (u'OUÏ FM Alternatif', u'OUI FM - L\'Alternative Rock', u'http://ouifm.ice.infomaniak.ch/ouifm2.mp3', 128),
|
||||
'collector': (u'OUÏ FM Collector', u'OUI FM - Classic Rock', u'http://ouifm.ice.infomaniak.ch/ouifm3.mp3', 160),
|
||||
'blues': (u'OUÏ FM Blues', u'OUI FM - Blues', u'http://ouifm.ice.infomaniak.ch/ouifm4.mp3', 128),
|
||||
'inde': (u'OUÏ FM Indé', u'OUI FM - Rock Indé', u'http://ouifm.ice.infomaniak.ch/ouifm5.mp3', 128),
|
||||
}
|
||||
|
||||
def create_default_browser(self):
|
||||
|
|
@ -80,18 +81,20 @@ class OuiFMBackend(BaseBackend, ICapRadio, ICapCollection):
|
|||
if not radio.id in self._RADIOS:
|
||||
return None
|
||||
|
||||
title, description, url = self._RADIOS[radio.id]
|
||||
title, description, url, bitrate = self._RADIOS[radio.id]
|
||||
radio.title = title
|
||||
radio.description = description
|
||||
|
||||
artist, title = self.get_current(radio.id)
|
||||
current = Emission(0)
|
||||
current.artist = artist
|
||||
current.title = title
|
||||
current = AudioStreamInfo(0)
|
||||
current.who = artist
|
||||
current.what = title
|
||||
radio.current = current
|
||||
|
||||
stream = Stream(0)
|
||||
stream.title = u'128kbits/s'
|
||||
stream = BaseAudioStream(0)
|
||||
stream.bitrate=bitrate
|
||||
stream.format=u'mp3'
|
||||
stream.title = u'%skbits/s' % (stream.bitrate)
|
||||
stream.url = url
|
||||
radio.streams = [stream]
|
||||
return radio
|
||||
|
|
@ -99,8 +102,8 @@ class OuiFMBackend(BaseBackend, ICapRadio, ICapCollection):
|
|||
def fill_radio(self, radio, fields):
|
||||
if 'current' in fields:
|
||||
if not radio.current:
|
||||
radio.current = Emission(0)
|
||||
radio.current.artist, radio.current.title = self.get_current(radio.id)
|
||||
radio.current = AudioStreamInfo(0)
|
||||
radio.current.who, radio.current.what = self.get_current(radio.id)
|
||||
return radio
|
||||
|
||||
OBJECTS = {Radio: fill_radio}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue