youtube-dl
youtube-dl copied to clipboard
[external] Print executable name (e.g. avconv) instead of classname
It's confusing that youtube-dl diagnostics will print ffmpeg
when the actual downloader is avconv
. This confused me in evalauting #12499, where it ended with:
ERROR: ffmpeg exited with code 1
but of course avconv
was being run:
[debug] avconv command line: avconv -y -headers ...
So let's try to make this better.
Separate out the concept of the executable used by an ExternalFD
downloader and the name of the class. I'm not entirely sure why we
care about the name of the class at all, but it's used outside of
classes to initialize _BY_NAME()
and soforth, so it seems impractical
to just change get_basename()
to return the executable name
So instead, call get_execname()
not get_basename()
.
Default get_execname()
to calling get_basename()
, but override it in
FFmpegFD
, where it returns self.execname
, which is set in
_call_downloader()
.
Perhaps there is a less complicated way to achieve this goal?
Just checking up on this PR.
It looks like many tests are failing, but it seems that they're unrelated to the changes here. What is left to do here?