Packages

  • Status Closed
  • Percent Complete
    100%
  • Task Type Bug Report
  • Category Stable
  • Assigned To
    heckyel
  • Operating System Hyperbola GNU/Linux-libre
  • Severity Critical
  • Priority Very Low
  • Reported Version Any
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Packages
Opened by fablamar78 - 05/12/2018
Last edited by Emulatorman - 09/12/2018

FS#1283 - [hypervideo] YouTube's DRM has prevented this software from obtaining the video URL

With the recent update to hypervideo, my workflow is broken as I can’t archive several youtube channels with hypervideo, the error is always the following :

WARNING: unable to extract html5 player; please report this issue on https://issues.hyperbola.info/ . Make sure you are using the latest version; type 'pacman -Sy hypervideo' as root. Be sure to call hypervideo with the --verbose flag and include its complete output.
[youtube] {22} signature length 44.40, html5 player None
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1194, in _decrypt_signature
    video_id, player_url, s
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1127, in _extract_signature_function
    raise ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL", expected=True)
hypervideo.utils.ExtractorError: YouTube's DRM has prevented this software from obtaining the video URL
 (caused by ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL",)); please report this issue on https://issues.hyperbola.info/ . Make sure you are using the latest version; type 'pacman -Sy hypervideo' as root. Be sure to call hypervideo with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1194, in _decrypt_signature
    video_id, player_url, s
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1127, in _extract_signature_function
    raise ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL", expected=True)
hypervideo.utils.ExtractorError: YouTube's DRM has prevented this software from obtaining the video URL
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1194, in _decrypt_signature
    video_id, player_url, s
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1127, in _extract_signature_function
    raise ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL", expected=True)
hypervideo.utils.ExtractorError: YouTube's DRM has prevented this software from obtaining the video URL

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/hypervideo/YoutubeDL.py", line 792, in extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/common.py", line 508, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1806, in _real_extract
    encrypted_sig, video_id, player_url, age_gate)
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1204, in _decrypt_signature
    'Signature extraction failed: ' + tb, cause=e)
hypervideo.utils.ExtractorError: Signature extraction failed: Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1194, in _decrypt_signature
    video_id, player_url, s
  File "/usr/lib/python3.6/site-packages/hypervideo/extractor/youtube.py", line 1127, in _extract_signature_function
    raise ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL", expected=True)
hypervideo.utils.ExtractorError: YouTube's DRM has prevented this software from obtaining the video URL
 (caused by ExtractorError("YouTube's DRM has prevented this software from obtaining the video URL",)); please report this issue on https://issues.hyperbola.info/ . Make sure you are using the latest version; type 'pacman -Sy hypervideo' as root. Be sure to call hypervideo with the --verbose flag and include its complete output.
Closed by  Emulatorman
09.12.2018 18:55
Reason for closing:  Won't fix
Additional comments about closing:  

It's a feature to protect freedom by avoiding DRM and nonfree bytecode parsing, not a bug.

What list of videos does this error come up with? Can you give us more information?

Remember you can not download videos with DRM

https://dpaste.de/spfe/raw ← test list of video without DRM

This is not a commercial channel, I don't understand, please see the log for an example, the issue is not present with youtube-dl :

https://dpaste.de/7ZQ3/raw

Admin
This is not a commercial channel, I don't understand, please see the log for an example, the issue is not present with youtube-dl

It's in fact, there are non-VEVO videos which are DRM ones too, some of them made by "youtubers" that don't care freedom. The issue isn't present with youtube-dl because it parses and runs nonfree bytecode required by all YouTube DRM videos. You can see here for reference:

https://git.hyperbola.info:50100/software/hypervideo.git/commit/?id=e4cffeb28069f07f9ad2ebba938df7599cec7ca3

I tried with your playlist Jesús E. and it works fine but not with the channel I shared above.

Thanks for the explanation but how can I download the channel then ? Is there an alternative ? For now I reinstalled youtube-dl, compiled for arch pkgbuild but it is not practical as I have to deal with mpv, mps-youtube etc.. as well.

Admin
Thanks for the explanation but how can I download the channel then?

Seems those channels require nonfree bytecode to download.

Is there an alternative?

The best way is rejecting nonfree stuff to protect your freedom. It isn't alternative, is a choice. [0] :)

I know André. I already made huge compromises to achieve a 100% free system (including hardware)
It is always painful to find out non-free stuff is hidden everywhere nowadays.

Admin
It is always painful to find out non-free stuff is hidden everywhere nowadays.

Unfortunately, some people and companies support DRM to mistreat the user. For that reason we as activists should join forces to end it.

I can attest to hypervideo working. :) It does work still.

IT is more about individual drm then google drm ... what the OP's problem is about. Google does usually license parts of youtube as free software. Pushover licenses, but at least its possible.

Never thought that google wouldn't be the bigger issue in such issues. They are usually though all the time.

Between google, facebook, netflix, microsft, apple and other proprietary vendors all of whom should have their money ripped out of their hands... its good there are some people and even organizations trying to fight them with their hearts.

Thanks for the detailed explanation winter.
I didn't know about individual drm for videos.. Well I've thought it was concerning the usual suspects (VEVO, music channels and such..)
Good to know.
So, I don't know.. should we close this "bug" report ? As the "bug" is not from hypervideo.
Or do you see a workaround ?
Sorry for the bug report, at least I learned something.

Just to clarify, I consider the usual suspects with the exception of google to be individual drm.
But yeah, this bug has no purpose to my knowledge at this time.

Date User Effort (H:M)
watch my effort tracking timers

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing