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

Add "does not contain" comparison filter to exclude hard-subtitled formats #18600

Closed
6 of 9 tasks
fuzxi opened this issue Dec 21, 2018 · 10 comments
Closed
6 of 9 tasks

Add "does not contain" comparison filter to exclude hard-subtitled formats #18600

fuzxi opened this issue Dec 21, 2018 · 10 comments

Comments

@fuzxi
Copy link

fuzxi commented Dec 21, 2018

Please follow the guide below

  • You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
  • Put an x into all the boxes [ ] relevant to your issue (like this: [x])
  • Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.12.17. 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 2018.12.17

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
  • Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

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

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue


Description of your issue, suggested solution and other information

I'm using youtube-dl to download videos from the Crunchyroll channel of vrv.co. I'm trying to download the best available quality that does not include hardsubs, but I can't see a way to do that using the format_id field comparison filters. VRV has many formats available for each resolution of each video: there are several for the original video, then several for each of 10 or so languages (with hardcoded subtitles). The naming scheme for their format_ids is like this:

Original video with no hardsubs: hls-audio-ja-JP-6095-0
Video with US English hardsubs: hls-audio-ja-JP-hardsub-en-US-2906-0
Every format includes hls-audio-ja-JP, so I can't use -f [format_id*=hls-audio-ja-JP] because it will operate the same way as using no -f switch at all. The digits after the string are unpredictable as they're based on the format's bitrate, so they can't be used for filtering either.

Is there any way to use a "does not contain" comparison, e.g. "format_id!*=hardsub"? If not, I request that this feature be added.

Alternatively, I believe a regular expression would work. ^((?!hardsub).)*$ matches only the desired formats. I can't figure out how to actually pass it in as an argument to format_id though.

@fuzxi
Copy link
Author

fuzxi commented Dec 21, 2018

Here is a verbose log from running youtube-dl -F on an example URL.

youtube-dl -v -F https://vrv.co/watch/GRQW9GW7R/That-Time-I-Got-Reincarnated-as-a-Slime:The-Storm-Dragon-Veldora
[debug] System config: []
[debug] User config: ['--netrc']
[debug] Custom config: []
[debug] Command-line args: ['-v', '-F', 'https://vrv.co/watch/GRQW9GW7R/That-Time-I-Got-Reincarnated-as-a-Slime:The-Storm-Dragon-Veldora']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.12.17
[debug] Python version 3.7.1 (CPython) - Linux-4.19.9-arch1-1-ARCH-x86_64-with-arch
[debug] exe versions: ffmpeg n4.1, ffprobe n4.1, rtmpdump 2.4
[debug] Proxy map: {}
[vrv] GRQW9GW7R: Downloading webpage
[vrv] GRQW9GW7R: Downloading audio-ja-JP MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-ar-ME MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-de-DE MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-en-US MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-es-ES MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-es-LA MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-fr-FR MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-it-IT MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-pt-BR MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-ru-RU MPD information
[vrv] GRQW9GW7R: Downloading audio-ja-JP m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-ar-ME m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-de-DE m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-en-US m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-es-ES m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-es-LA m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-fr-FR m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-it-IT m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-pt-BR m3u8 information
[vrv] GRQW9GW7R: Downloading audio-ja-JP-hardsub-ru-RU m3u8 information
[info] Available formats for GRQW9GW7R:
format code extension resolution note
dash-audio-ja-JP-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-ar-ME-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-de-DE-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-en-US-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-es-ES-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-es-LA-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-fr-FR-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-it-IT-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-pt-BR-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-hardsub-ru-RU-f5-a1-x3 m4a audio only [ja-JP] DASH audio 64k , m4a_dash container, mp4a.40.2 (22050Hz)
dash-audio-ja-JP-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-ar-ME-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-de-DE-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-en-US-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-es-ES-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-es-LA-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-fr-FR-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-it-IT-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-pt-BR-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-ru-RU-f3-a1-x3 m4a audio only [ja-JP] DASH audio 96k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-ar-ME-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-de-DE-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-en-US-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-es-ES-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-es-LA-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-fr-FR-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-it-IT-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-pt-BR-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-hardsub-ru-RU-f1-a1-x3 m4a audio only [ja-JP] DASH audio 128k , m4a_dash container, mp4a.40.2 (44100Hz)
dash-audio-ja-JP-f5-v1-x3 mp4 428x240 DASH video 386k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-ar-ME-f5-v1-x3 mp4 428x240 DASH video 390k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-fr-FR-f5-v1-x3 mp4 428x240 DASH video 391k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-ru-RU-f5-v1-x3 mp4 428x240 DASH video 392k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-es-LA-f5-v1-x3 mp4 428x240 DASH video 392k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-es-ES-f5-v1-x3 mp4 428x240 DASH video 392k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-pt-BR-f5-v1-x3 mp4 428x240 DASH video 392k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-it-IT-f5-v1-x3 mp4 428x240 DASH video 393k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-de-DE-f5-v1-x3 mp4 428x240 DASH video 393k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-en-US-f5-v1-x3 mp4 428x240 DASH video 393k , mp4_dash container, avc1.42c015, video only
dash-audio-ja-JP-hardsub-it-IT-f4-v1-x3 mp4 640x360 DASH video 554k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-de-DE-f4-v1-x3 mp4 640x360 DASH video 555k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-es-LA-f4-v1-x3 mp4 640x360 DASH video 556k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-es-ES-f4-v1-x3 mp4 640x360 DASH video 556k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-en-US-f4-v1-x3 mp4 640x360 DASH video 557k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-pt-BR-f4-v1-x3 mp4 640x360 DASH video 557k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-f4-v1-x3 mp4 640x360 DASH video 559k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-fr-FR-f4-v1-x3 mp4 640x360 DASH video 560k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-ru-RU-f4-v1-x3 mp4 640x360 DASH video 560k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-hardsub-ar-ME-f4-v1-x3 mp4 640x360 DASH video 561k , mp4_dash container, avc1.4d401e, video only
dash-audio-ja-JP-f3-v1-x3 mp4 848x480 DASH video 1227k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-ar-ME-f3-v1-x3 mp4 848x480 DASH video 1243k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-es-LA-f3-v1-x3 mp4 848x480 DASH video 1244k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-ru-RU-f3-v1-x3 mp4 848x480 DASH video 1244k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-fr-FR-f3-v1-x3 mp4 848x480 DASH video 1245k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-es-ES-f3-v1-x3 mp4 848x480 DASH video 1245k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-it-IT-f3-v1-x3 mp4 848x480 DASH video 1246k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-pt-BR-f3-v1-x3 mp4 848x480 DASH video 1247k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-en-US-f3-v1-x3 mp4 848x480 DASH video 1250k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-hardsub-de-DE-f3-v1-x3 mp4 848x480 DASH video 1251k , mp4_dash container, avc1.4d401f, video only
dash-audio-ja-JP-f1-v1-x3 mp4 1280x720 DASH video 2762k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-es-ES-f1-v1-x3 mp4 1280x720 DASH video 2772k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-es-LA-f1-v1-x3 mp4 1280x720 DASH video 2774k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-pt-BR-f1-v1-x3 mp4 1280x720 DASH video 2775k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-de-DE-f1-v1-x3 mp4 1280x720 DASH video 2775k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-en-US-f1-v1-x3 mp4 1280x720 DASH video 2778k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-ru-RU-f1-v1-x3 mp4 1280x720 DASH video 2778k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-fr-FR-f1-v1-x3 mp4 1280x720 DASH video 2779k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-it-IT-f1-v1-x3 mp4 1280x720 DASH video 2779k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-ar-ME-f1-v1-x3 mp4 1280x720 DASH video 2780k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-de-DE-f2-v1-x3 mp4 1920x1080 DASH video 5927k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-pt-BR-f2-v1-x3 mp4 1920x1080 DASH video 5938k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-es-ES-f2-v1-x3 mp4 1920x1080 DASH video 5942k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-es-LA-f2-v1-x3 mp4 1920x1080 DASH video 5944k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-en-US-f2-v1-x3 mp4 1920x1080 DASH video 5945k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-it-IT-f2-v1-x3 mp4 1920x1080 DASH video 5947k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-ru-RU-f2-v1-x3 mp4 1920x1080 DASH video 5948k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-fr-FR-f2-v1-x3 mp4 1920x1080 DASH video 5957k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-f2-v1-x3 mp4 1920x1080 DASH video 5967k , mp4_dash container, avc1.640028, video only
dash-audio-ja-JP-hardsub-ar-ME-f2-v1-x3 mp4 1920x1080 DASH video 5969k , mp4_dash container, avc1.640028, video only
hls-audio-ja-JP-450-0 mp4 428x240 [ja-JP] 450k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-450-1 mp4 428x240 [ja-JP] 450k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-450-2 mp4 428x240 [ja-JP] 450k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-454-0 mp4 428x240 [ja-JP] 454k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-454-1 mp4 428x240 [ja-JP] 454k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-454-2 mp4 428x240 [ja-JP] 454k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-455-0 mp4 428x240 [ja-JP] 455k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-455-1 mp4 428x240 [ja-JP] 455k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-455-2 mp4 428x240 [ja-JP] 455k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-456-0 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-456-1 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-456-2 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-456-0 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-456-1 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-456-2 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-456-0 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-456-1 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-456-2 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-456-0 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-456-1 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-456-2 mp4 428x240 [ja-JP] 456k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-457-0 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-457-1 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-457-2 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-457-0 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-457-1 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-457-2 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-457-0 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-457-1 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-457-2 mp4 428x240 [ja-JP] 457k , avc1.42c015, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-650-0 mp4 640x360 [ja-JP] 650k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-650-1 mp4 640x360 [ja-JP] 650k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-650-2 mp4 640x360 [ja-JP] 650k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-651-0 mp4 640x360 [ja-JP] 651k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-651-1 mp4 640x360 [ja-JP] 651k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-651-2 mp4 640x360 [ja-JP] 651k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-652-0 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-652-1 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-652-2 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-652-0 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-652-1 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-652-2 mp4 640x360 [ja-JP] 652k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-653-0 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-653-1 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-653-2 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-653-0 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-653-1 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-653-2 mp4 640x360 [ja-JP] 653k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-655-0 mp4 640x360 [ja-JP] 655k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-655-1 mp4 640x360 [ja-JP] 655k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-655-2 mp4 640x360 [ja-JP] 655k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-656-0 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-656-1 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-656-2 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-656-0 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-656-1 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-656-2 mp4 640x360 [ja-JP] 656k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-657-0 mp4 640x360 [ja-JP] 657k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-657-1 mp4 640x360 [ja-JP] 657k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-657-2 mp4 640x360 [ja-JP] 657k , avc1.4d401e, 23.974fps, mp4a.40.2
hls-audio-ja-JP-1323-0 mp4 848x480 [ja-JP] 1323k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-1323-1 mp4 848x480 [ja-JP] 1323k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-1323-2 mp4 848x480 [ja-JP] 1323k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-1339-0 mp4 848x480 [ja-JP] 1339k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-1339-1 mp4 848x480 [ja-JP] 1339k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-1339-2 mp4 848x480 [ja-JP] 1339k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-1340-0 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-1340-1 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-1340-2 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-1340-0 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-1340-1 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-1340-2 mp4 848x480 [ja-JP] 1340k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-1341-0 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-1341-1 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-1341-2 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-1341-0 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-1341-1 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-1341-2 mp4 848x480 [ja-JP] 1341k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-1342-0 mp4 848x480 [ja-JP] 1342k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-1342-1 mp4 848x480 [ja-JP] 1342k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-1342-2 mp4 848x480 [ja-JP] 1342k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-1343-0 mp4 848x480 [ja-JP] 1343k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-1343-1 mp4 848x480 [ja-JP] 1343k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-1343-2 mp4 848x480 [ja-JP] 1343k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-1346-0 mp4 848x480 [ja-JP] 1346k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-1346-1 mp4 848x480 [ja-JP] 1346k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-1346-2 mp4 848x480 [ja-JP] 1346k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-1347-0 mp4 848x480 [ja-JP] 1347k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-1347-1 mp4 848x480 [ja-JP] 1347k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-1347-2 mp4 848x480 [ja-JP] 1347k , avc1.4d401f, 23.974fps, mp4a.40.2
hls-audio-ja-JP-2890-0 mp4 1280x720 [ja-JP] 2890k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-2890-1 mp4 1280x720 [ja-JP] 2890k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-2890-2 mp4 1280x720 [ja-JP] 2890k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-2900-0 mp4 1280x720 [ja-JP] 2900k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-2900-1 mp4 1280x720 [ja-JP] 2900k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-2900-2 mp4 1280x720 [ja-JP] 2900k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-2902-0 mp4 1280x720 [ja-JP] 2902k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-2902-1 mp4 1280x720 [ja-JP] 2902k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-2902-2 mp4 1280x720 [ja-JP] 2902k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-2903-0 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-2903-1 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-2903-2 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-2903-0 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-2903-1 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-2903-2 mp4 1280x720 [ja-JP] 2903k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-2906-0 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-2906-1 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-2906-2 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-2906-0 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-2906-1 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-2906-2 mp4 1280x720 [ja-JP] 2906k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-2907-0 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-2907-1 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-2907-2 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-2907-0 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-2907-1 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-2907-2 mp4 1280x720 [ja-JP] 2907k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-2908-0 mp4 1280x720 [ja-JP] 2908k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-2908-1 mp4 1280x720 [ja-JP] 2908k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-2908-2 mp4 1280x720 [ja-JP] 2908k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-6055-0 mp4 1920x1080 [ja-JP] 6055k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-6055-1 mp4 1920x1080 [ja-JP] 6055k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-de-DE-6055-2 mp4 1920x1080 [ja-JP] 6055k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-6066-0 mp4 1920x1080 [ja-JP] 6066k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-6066-1 mp4 1920x1080 [ja-JP] 6066k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-pt-BR-6066-2 mp4 1920x1080 [ja-JP] 6066k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-6070-0 mp4 1920x1080 [ja-JP] 6070k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-6070-1 mp4 1920x1080 [ja-JP] 6070k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-ES-6070-2 mp4 1920x1080 [ja-JP] 6070k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-6072-0 mp4 1920x1080 [ja-JP] 6072k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-6072-1 mp4 1920x1080 [ja-JP] 6072k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-es-LA-6072-2 mp4 1920x1080 [ja-JP] 6072k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-6073-0 mp4 1920x1080 [ja-JP] 6073k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-6073-1 mp4 1920x1080 [ja-JP] 6073k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-en-US-6073-2 mp4 1920x1080 [ja-JP] 6073k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-6075-0 mp4 1920x1080 [ja-JP] 6075k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-6075-1 mp4 1920x1080 [ja-JP] 6075k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-it-IT-6075-2 mp4 1920x1080 [ja-JP] 6075k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-6076-0 mp4 1920x1080 [ja-JP] 6076k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-6076-1 mp4 1920x1080 [ja-JP] 6076k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ru-RU-6076-2 mp4 1920x1080 [ja-JP] 6076k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-6085-0 mp4 1920x1080 [ja-JP] 6085k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-6085-1 mp4 1920x1080 [ja-JP] 6085k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-fr-FR-6085-2 mp4 1920x1080 [ja-JP] 6085k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-6095-0 mp4 1920x1080 [ja-JP] 6095k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-6095-1 mp4 1920x1080 [ja-JP] 6095k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-6095-2 mp4 1920x1080 [ja-JP] 6095k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-6097-0 mp4 1920x1080 [ja-JP] 6097k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-6097-1 mp4 1920x1080 [ja-JP] 6097k , avc1.640028, 23.974fps, mp4a.40.2
hls-audio-ja-JP-hardsub-ar-ME-6097-2 mp4 1920x1080 [ja-JP] 6097k , avc1.640028, 23.974fps, mp4a.40.2 (best)

@fuzxi
Copy link
Author

fuzxi commented Dec 21, 2018

In the meantime, I wrote a small bash script as a workaround. When called with a VRV URL as its argument, it will query VRV for all available formats, remove all formats including the string "hardsub", then pipe the best remaining format to youtube_dl. Hopefully someone with the same issue finds this useful.

#!/bin/bash

# If link is not vrv, pass it to youtube-dl without modification
if [[ $1 != "http"*"://vrv.co/"* ]]; then
youtube-dl $1
fi

# Query for available video formats, use grep to remove all hardsubbed formats, and use tail to remove everything except the last (highest-quality) format
bestformat=$(youtube-dl -F $1 | grep -v "hardsub" | tail -n 1)

# Remove everything after the first whitespace in the best format line, leaving the format_id
bestformatcode=$"${bestformat%% *}"

# Pipe best available non-hardsubbed format to youtube-dl
youtube-dl -f $bestformatcode $1

exit

@percheperche
Copy link

percheperche commented Dec 26, 2018

Why?
youtube-dl won't download hardsubbed versions
example:
youtube-dl --sub-lang enUS --write-sub --embed-subs $URL
this will make a softsub
or if you just want the raw version
youtube-dl $URL
this will download the best quality available and raw (no subs)

@fuzxi
Copy link
Author

fuzxi commented Dec 26, 2018

That does not work. 'youtube-dl --sub-lang enUS --write-sub --embed-subs $URL' still pulls the same format as simply 'youtube-dl $URL', which has hardsubs. Please try it yourself with the example URL.

@percheperche
Copy link

Oh sorry, VRV is not available in my country. But I think it works just like Crunchyroll. In fact
youtube-dl $URL just downloads the raw version.

@fuzxi
Copy link
Author

fuzxi commented Dec 26, 2018

I just told you that it does not work. youtube-dl by default selects whichever format has the best quality. The hardsubbed formats on VRV usually have a slightly higher bitrate than the original version, so they are picked first.

@percheperche
Copy link

percheperche commented Dec 26, 2018

Please try for yourself. This is the Crunchyroll URL: https://
www.crunchyroll.com/that-time-i-got-reincarnated-as-a-slime/episode-1-the-storm-dragon-veldora-777519
Just do

youtube-dl https://
www.crunchyroll.com/that-time-i-got-reincarnated-as-a-slime/episode-1-the-storm-dragon-veldora-777519

It will download the file RAW. No hardsub. I don't know about VRV because it's not available in my country. Just try the command and you'll see.
And btw, how could the hardsub version be better than the original?

@percheperche
Copy link

percheperche commented Dec 26, 2018

Ok, I tried for myself with a VPN and you're completely right! maybe something as [format_id*=hls-audio-jp-JP-*-0] would work.

@fuzxi
Copy link
Author

fuzxi commented Dec 26, 2018

Please read the original post; I explained why that will not work.

@slamkode
Copy link

slamkode commented Jan 9, 2019

@fuzxi
I had the same need and I added a "does not contain" operator *! to my youtube-dl

#18805

@dstftw dstftw closed this as completed in 2cc779f Jan 20, 2019
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

No branches or pull requests

3 participants