- url_data = self._VALID_URL_RE.match(url)
- track_id = url_data.group('id')
- display_id = url_data.group('display_id')
- webpage = self._download_webpage(url, display_id)
+ mobj = self._VALID_URL_RE.match(url)
+ track_id = mobj.group('id')
+ display_id = mobj.group('display_id')
+
+ webpage = self._download_webpage(
+ 'https://www.jamendo.com/track/%s/%s' % (track_id, display_id),
+ display_id)
+
+ title, artist, track = self._extract_meta(webpage)
+
+ formats = [{
+ 'url': 'https://%s.jamendo.com/?trackid=%s&format=%s&from=app-97dab294'
+ % (sub_domain, track_id, format_id),
+ 'format_id': format_id,
+ 'ext': ext,
+ 'quality': quality,
+ } for quality, (format_id, sub_domain, ext) in enumerate((
+ ('mp31', 'mp3l', 'mp3'),
+ ('mp32', 'mp3d', 'mp3'),
+ ('ogg1', 'ogg', 'ogg'),
+ ('flac', 'flac', 'flac'),
+ ))]
+ self._sort_formats(formats)