Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prefer ffmpeg HLS decoder for v.redd.it #14748

Closed
4 of 8 tasks
stewartadam opened this issue Nov 14, 2017 · 6 comments · Fixed by #24512
Closed
4 of 8 tasks

Prefer ffmpeg HLS decoder for v.redd.it #14748

stewartadam opened this issue Nov 14, 2017 · 6 comments · Fixed by #24512

Comments

@stewartadam
Copy link

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.11.15. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

  • I've verified and I assure that I'm running youtube-dl 2017.11.15

Before submitting an issue make sure you have:

  • At least skimmed through the README, most notably the FAQ and BUGS sections
  • Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

  • Bug report (encountered problems with youtube-dl)
  • Site support request (request for adding support for a new site)
  • Feature request (request for a new functionality)
  • Question
  • Other

Description of your issue, suggested solution and other information

Site v.reddit.com should prefer ffmpeg HLS downloader instead of native. Using the native downloader results in some video corruption and artifacting, e.g. visible within the first few seconds of this source: youtube-dl https://v.redd.it/poqkxthgcpxz

@romellem
Copy link

Just a note for anyone wonder how to use the ffmpeg HLS downloader, add the --hls-prefer-ffmpeg flag to your command.

So using OP's sample URL, to get rid of the video corruption / artifacts, you'd run

youtube-dl --hls-prefer-ffmpeg https://v.redd.it/poqkxthgcpxz

@alext69
Copy link

alext69 commented Sep 29, 2019

--hls-prefer-ffmpeg give a worse result in my case, which I had glitches.
youtube-dl --hls-prefer-ffmpeg https://v.redd.it/5k899ezasdp31
The result is a completely broken video. The only way to download this video, without glitches, is through ripsave.com

@FichteFoll
Copy link

FichteFoll commented Jan 17, 2020

For me, the native downloader yields playable results (generally and for the example linked by @alext69), while videos downloaded with the ffmpeg downloader have video glitches, desynced audio and usually only play video for a few seconds after which only audio can be heard. Specifically, I can get the downloaded video to play in mpv but not the URL directly.

$ mpv https://v.redd.it/5k899ezasdp31 --ytdl-raw-options=hls-prefer-native=     

youtube-dl 2020.01.15
mpv 0.30.0

@kyleratti
Copy link

@alext69 @FichteFoll I can also confirm that --hls-prefer-ffmpeg causes the audio desync/audio-only after X seconds issue.

Seems you have to choose between video artifacts every 6 seconds or broken video + desynced audio.

basicmaster referenced this issue in basicmaster/youtube-dl Mar 28, 2020
The end of the byte range is the first byte that is NOT part of the to
be downloaded range. So don't include it into the requested HTTP
download range, as this additional byte leads to a broken TS packet and
subsequently to e.g. visible video corruption.

Fixes #14748.
@James-E-A
Copy link

This is definitely still present on

  • youtube-dl version 2020.05.29
  • Python version 3.8.2 (CPython)
  • Fedora 32
  • ffmpeg 4.2.3-static, ffprobe 4.2.3-static

stderr
stdout

dstftw pushed a commit that referenced this issue Sep 17, 2020
…a segments with EXT-X-BYTERANGE (#24512) (closes #14748)

The end of the byte range is the first byte that is NOT part of the to
be downloaded range. So don't include it into the requested HTTP
download range, as this additional byte leads to a broken TS packet and
subsequently to e.g. visible video corruption.

Fixes #14748.
@kyleratti
Copy link

Thank you @dstftw and @tsia!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants