Recommend of youtube-dl is questionable

Bug #1400445 reported by Doug McMahon
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
mpv (Ubuntu)
Invalid
Low
Unassigned
youtube-dl (Ubuntu)
Invalid
Low
Unassigned

Bug Description

Maybe it works out ok but maybe not
1st. - youtube-dl has it's own set of recommends so installing mpv also installs some unneeded packages - current ex.
libgif4 (4.1.6-11)
mplayer2 (2.0-728-g2c378c7-4)
rtmpdump (2.4+20131018.git79459a2-5)

2nd. - while youtube-dl works today it may break tomorrow, next week, next month on some sites, most notably youtube.
Are you all prepared to update youtube-dl on a consistent & as needed basis?

ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: mpv 0.7.1-1ubuntu1
ProcVersionSignature: Ubuntu 3.16.0-25.33-generic 3.16.7
Uname: Linux 3.16.0-25-generic x86_64
ApportVersion: 2.15-0ubuntu2
Architecture: amd64
CurrentDesktop: Unity
Date: Mon Dec 8 13:27:34 2014
InstallationDate: Installed on 2014-11-16 (22 days ago)
InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Alpha amd64 (20141114)
SourcePackage: mpv
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Doug McMahon (mc3man) wrote :
Revision history for this message
Doug McMahon (mc3man) wrote :

So the repo version of youtube-dl is already broken & the package needs updating.. This is why this recommend is a poor idea.
Ex. with current vivid youtube-dl package -

$ mpv https://www.youtube.com/watch?v=C-dW7z0QBNg
Playing: https://www.youtube.com/watch?v=C-dW7z0QBNg
[ytdl_hook] WARNING: video doesn't have subtitles
[ytdl_hook] ERROR: Signature extraction failed: Traceback (most recent call last):
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 554, in _decrypt_signature
[ytdl_hook] video_id, player_url, s
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 468, in _extract_signature_function
[ytdl_hook] res = self._parse_sig_js(code)
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 529, in _parse_sig_js
[ytdl_hook] 'Initial JS player signature function name')
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 481, in _search_regex
[ytdl_hook] raise RegexNotFoundError('Unable to extract %s' % _name)
[ytdl_hook] RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[ytdl_hook] (caused by RegexNotFoundError(u'Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[ytdl_hook] youtube-dl failed, trying to play URL directly ...
Failed to recognize file format.

Exiting... (Errors when loading file)

Revision history for this message
Doug McMahon (mc3man) wrote :

This should be changed to a Suggests:
Why would anyone want the dead & should be buried mplayer2 installed when installing mpv??

tags: added: wily
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mpv (Ubuntu):
status: New → Confirmed
Changed in mpv (Ubuntu):
importance: Undecided → Low
Revision history for this message
Jackson Doak (noskcaj) wrote :

The recommends of mpv onto youtube-dl is not a bug from what i can see, as it is needed for proper operation of mpv, contact upstream if that's an issue.
Youtube-dl's recommends probably need work

Revision history for this message
Doug McMahon (mc3man) wrote :

I wouldn't call it needed for proper operation of mpv, it's only needed for online streams that can't be played directly or directly in linux in a standalone player.
So in that case many sites where it's needed change things up regularly & ytdl has to adjust to match. Unfortunately the packaged version of ytdl is not updated quickly or often enough & playback on some sites will break, youtube is a prime example, especially vemo vids.

So there is no dispute that ytdl is quite useful for mpv, only that users should likely acquire & update ytdl on their own from the site. To that end it would be better if ytdl was not already installed, though not a deal breaker if it is..
I'd make it a suggest or point to using upstream in the package (mpv) description if such is allowed
https://rg3.github.io/youtube-dl/download.html

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in youtube-dl (Ubuntu):
status: New → Confirmed
Changed in youtube-dl (Ubuntu):
importance: Undecided → Low
Revision history for this message
Doug McMahon (mc3man) wrote :

Ex. fresh 16.04 install today, youtube-dl packaged version already broken -
$ mpv https://www.youtube.com/watch?v=YQHsXMglC9A
Auto-loading profile 'protocol.https'
libva info: VA-API version 0.38.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
Playing: https://www.youtube.com/watch?v=YQHsXMglC9A
[ytdl_hook] ERROR: Signature extraction failed: Traceback (most recent call last):
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 856, in _decrypt_signature
[ytdl_hook] video_id, player_url, s
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 771, in _extract_signature_function
[ytdl_hook] res = self._parse_sig_js(code)
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 834, in _parse_sig_js
[ytdl_hook] initial_function = jsi.extract_function(funcname)
[ytdl_hook] File "/usr/lib/python2.7/dist-packages/youtube_dl/jsinterp.py", line 241, in extract_function
[ytdl_hook] raise ExtractorError('Could not find JS function %r' % funcname)
[ytdl_hook] ExtractorError: Could not find JS function u'hr'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[ytdl_hook] (caused by ExtractorError(u"Could not find JS function u'hr'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[ytdl_hook] youtube-dl failed, trying to play URL directly ...
[ffmpeg] tls: The TLS connection was non-properly terminated.
Failed to recognize file format.

Plus it doesn't seem quite right for Ubuntu packages to be recommending a package that is in a somewhat gray area in regards to some websites tos

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Could you also file this bug against Debian?

https://wiki.ubuntu.com/Debian/Bugs

Revision history for this message
James Cowgill (jcowgill) wrote :

I'm not particularly swayed by the arguments to remove the Recommends from the Debian package.

I don't think the Recommends of youtube-dl are excessive. mplayer2 is no longer recommended. The other recommends are needed to download media from certain sites.

"So there is no dispute that ytdl is quite useful for mpv, only that users should likely acquire & update ytdl on their own from the site."

One of the main points of a distribution is so that users _do not_ have to do this.

Why does mpv recommending youtube-dl prevent them from updating it themselves if they want to? By having youtube-dl installed, mpv will even print a nice message telling them how to update.

Revision history for this message
Doug McMahon (mc3man) wrote :

Well when this bug was filed (2+ years ago) youtube-dl would not install if another version was present in different location.
So that doesn't seem to be the case anymore & the eventual breakage isn't anything that affects me nor any users of the ppa mpv where a desktop action provides needed info to aquire the upstream youtube-dl
So in that case will mark invalid.

Changed in mpv (Ubuntu):
status: Confirmed → Invalid
Changed in youtube-dl (Ubuntu):
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.