Ceska televize (iVysilani) - how to set which audio stream is downloaded? #27053

Open
opened 2026-02-21 14:37:10 -05:00 by deekerman · 5 comments
Owner

Originally created by @5ta1da on GitHub (Feb 2, 2025).

  • I'm asking a question
  • I've looked through the README and FAQ for similar questions
  • I've searched the bugtracker for similar questions including closed ones

First of all, I would like to thank you for this great tool for downloading online content.
I was unable to find a solution to my problem, so I took the liberty of starting this topic.

How can I select which of the streams that have more than one language track are downloaded, or to download all of them?
Specifically, I am mainly concerned with downloading from Ceska televize (iVysilani), where yt-dlg unfortunately always downloads the original audio track for me, while I would prefer the one with dubbing.

Thank you very much in advance for any help and I apologize if this has already been asked somewhere.

Originally created by @5ta1da on GitHub (Feb 2, 2025). - [X] I'm asking a question - [X] I've looked through the README and FAQ for similar questions - [X] I've searched the bugtracker for similar questions including closed ones First of all, I would like to thank you for this great tool for downloading online content. I was unable to find a solution to my problem, so I took the liberty of starting this topic. **How can I select which of the streams that have more than one language track are downloaded, or to download all of them? Specifically, I am mainly concerned with downloading from Ceska televize (iVysilani), where yt-dlg unfortunately always downloads the original audio track for me, while I would prefer the one with dubbing.** Thank you very much in advance for any help and I apologize if this has already been asked somewhere.
Author
Owner

@dirkf commented on GitHub (Feb 2, 2025):

In case you didn't do so already, please review #30839 to make sure that your underlying youtube-dl is this program (and not a linked or renamed yt-dlp) and that, if so, you have the latest nightly version.

There is an outstanding open issue #31922 for this site.

From the command-line (ie, not using any GUI wrapper) you can list the available formats using the -F (equivalently --list-formats) option. Review the list to identify the formats you want and then formulate a format selection option (-f .../--format ...) that selects those formats. The manual section on Format Selection may be helpful. You may find that the actual format IDs change from video to video even within iVysilani, but the format selection option allows more general selection criteria to be expressed that should generally succeed across the site.

Having formulated your format selection option, you can then set that option in the GUI wrapper. You may find it convenient to create a specific config file for iVysilani so that you can just pass that config rather than typing the format option into the GUI.

However, multiple audio streams can't be merged automatically: you would have to use the command line, separating the formats with commas, and run your own ffmpeg command to merge the individual downloaded streams.

@dirkf commented on GitHub (Feb 2, 2025): In case you didn't do so already, please review #30839 to make sure that your underlying `youtube-dl` is this program (and not a linked or renamed _yt-dlp_) and that, if so, you have the latest nightly version. There is an outstanding open issue #31922 for this site. From the command-line (ie, not using any GUI wrapper) you can list the available formats using the `-F` (equivalently `--list-formats`) option. Review the list to identify the formats you want and then formulate a format selection option (`-f ...`/`--format ...`) that selects those formats. The manual section on Format Selection may be helpful. You may find that the actual format IDs change from video to video even within iVysilani, but the format selection option allows more general selection criteria to be expressed that should generally succeed across the site. Having formulated your format selection option, you can then set that option in the GUI wrapper. You may find it convenient to create a specific config file for iVysilani so that you can just pass that config rather than typing the format option into the GUI. However, multiple audio streams can't be merged automatically: you would have to use the command line, separating the formats with commas, and run your own _ffmpeg_ command to merge the individual downloaded streams.
Author
Owner

@5ta1da commented on GitHub (Feb 3, 2025):

I'm constantly getting 403 http error.
What I am doing wrong?

`D:\Downloads\YT-DLG>youtube-dl.exe -F https://ivys-st34-5.o2tv.cz/atip/12189395530a601cfd46a17337920a43/1738569774928/subscru/12cb5167-15fc-4d63-95a0-8e911a0914ce/61924494878163968-1080p_5-0-3150.mpd
[generic] 61924494878163968-1080p_5-0-3150: Requesting header
WARNING: Falling back on generic information extractor.
[generic] 61924494878163968-1080p_5-0-3150: Downloading webpage
[generic] 61924494878163968-1080p_5-0-3150: Extracting information
[info] Available formats for 61924494878163968-1080p_5-0-3150:
format code extension resolution note
1002-1502 m4a audio only [ces] DASH audio 128k , m4a_dash container, mp4a.40.2 (48000Hz)
32-1502 m4a audio only [eng] DASH audio 128k , m4a_dash container, mp4a.40.2 (48000Hz)
1001-1502 mp4 512x288 DASH video 500k , mp4_dash container, avc1.4d4015, video only
1001-1503 mp4 720x404 DASH video 1032k , mp4_dash container, avc1.4d401e, video only
1001-1504 mp4 1024x576 DASH video 2048k , mp4_dash container, avc1.4d401f, video only
1001-1505 mp4 1280x720 DASH video 3584k , mp4_dash container, avc1.4d401f, video only
1001-1506 mp4 1920x1080 DASH video 6144k , mp4_dash container, avc1.4d4028, video only (best)

D:\Downloads\YT-DLG>youtube-dl.exe -f 1002-1502 -f 1001-1506 https://ivys-st16-5.o2tv.cz/atip/49d37a02f501d95daa223dbe4f6a4b54/1738569451722/subscru/c0207976-734d-4d2c-b0e6-74e21aa9b571/61924494878163968-1080p_5-0-3150.mpd
[generic] 61924494878163968-1080p_5-0-3150: Requesting header
WARNING: Could not send HEAD request to https://ivys-st16-5.o2tv.cz/atip/49d37a02f501d95daa223dbe4f6a4b54/1738569451722/subscru/c0207976-734d-4d2c-b0e6-74e21aa9b571/61924494878163968-1080p_5-0-3150.mpd: HTTP Error 403: Forbidden
[generic] 61924494878163968-1080p_5-0-3150: Downloading webpage
ERROR: Unable to download webpage: HTTP Error 403: Forbidden (caused by HTTPError()); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.

D:\Downloads\YT-DLG>youtube-dl.exe -U
Latest version: 2025.01.23, Current version: 2025.01.23
youtube-dl is up to date (2025.01.23)

D:\Downloads\YT-DLG>`

@5ta1da commented on GitHub (Feb 3, 2025): I'm constantly getting 403 http error. What I am doing wrong? `D:\Downloads\YT-DLG>youtube-dl.exe -F https://ivys-st34-5.o2tv.cz/atip/12189395530a601cfd46a17337920a43/1738569774928/subscru/12cb5167-15fc-4d63-95a0-8e911a0914ce/61924494878163968-1080p_5-0-3150.mpd [generic] 61924494878163968-1080p_5-0-3150: Requesting header WARNING: Falling back on generic information extractor. [generic] 61924494878163968-1080p_5-0-3150: Downloading webpage [generic] 61924494878163968-1080p_5-0-3150: Extracting information [info] Available formats for 61924494878163968-1080p_5-0-3150: format code extension resolution note 1002-1502 m4a audio only [ces] DASH audio 128k , m4a_dash container, mp4a.40.2 (48000Hz) 32-1502 m4a audio only [eng] DASH audio 128k , m4a_dash container, mp4a.40.2 (48000Hz) 1001-1502 mp4 512x288 DASH video 500k , mp4_dash container, avc1.4d4015, video only 1001-1503 mp4 720x404 DASH video 1032k , mp4_dash container, avc1.4d401e, video only 1001-1504 mp4 1024x576 DASH video 2048k , mp4_dash container, avc1.4d401f, video only 1001-1505 mp4 1280x720 DASH video 3584k , mp4_dash container, avc1.4d401f, video only 1001-1506 mp4 1920x1080 DASH video 6144k , mp4_dash container, avc1.4d4028, video only (best) D:\Downloads\YT-DLG>youtube-dl.exe -f 1002-1502 -f 1001-1506 https://ivys-st16-5.o2tv.cz/atip/49d37a02f501d95daa223dbe4f6a4b54/1738569451722/subscru/c0207976-734d-4d2c-b0e6-74e21aa9b571/61924494878163968-1080p_5-0-3150.mpd [generic] 61924494878163968-1080p_5-0-3150: Requesting header WARNING: Could not send HEAD request to https://ivys-st16-5.o2tv.cz/atip/49d37a02f501d95daa223dbe4f6a4b54/1738569451722/subscru/c0207976-734d-4d2c-b0e6-74e21aa9b571/61924494878163968-1080p_5-0-3150.mpd: HTTP Error 403: Forbidden [generic] 61924494878163968-1080p_5-0-3150: Downloading webpage ERROR: Unable to download webpage: HTTP Error 403: Forbidden (caused by HTTPError()); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output. D:\Downloads\YT-DLG>youtube-dl.exe -U Latest version: 2025.01.23, Current version: 2025.01.23 youtube-dl is up to date (2025.01.23) D:\Downloads\YT-DLG>`
Author
Owner

@dirkf commented on GitHub (Feb 3, 2025):

Just use ffmpeg if you have a DASH manifest. Or use the actual program URL (.../porady/... or whatever), which may not work because of #31922, but we won't know until someone in-region posts a verbose log.

@dirkf commented on GitHub (Feb 3, 2025): Just use _ffmpeg_ if you have a DASH manifest. Or use the actual program URL (`.../porady/...` or whatever), which may not work because of #31922, but we won't know until someone in-region posts a verbose log.
Author
Owner

@tansy commented on GitHub (Feb 3, 2025):

These addresses you use look at least, somewhat 'low level'. After opening them in a browser they turn out to be empty (0 length).
There is nothing there to be found.

@tansy commented on GitHub (Feb 3, 2025): These addresses you use look at least, somewhat 'low level'. After opening them in a browser they turn out to be empty (0 length). There is nothing there to be found.
Author
Owner

@dirkf commented on GitHub (Feb 3, 2025):

OP is pulling short-lived download links (eg 1738569774928 is a ms-resolution epoch date 2025-02-03 08:02:54 GMT) from the browser's dev tools, I presume, perhaps because the extractor isn't currently working for the video page, per #31992. Hence:

... use the actual program URL ...

and post a verbose log, ideally in that issue.

ffmpeg that is not of school age can handle DASH manifests, except for live dynamic manifests. See https://video.stackexchange.com/questions/24435/how-to-download-and-encode-a-video-from-a-mpd-manifest and https://stackoverflow.com/questions/60549399/ffmpeg-how-to-manually-select-video-quality-from-mpd-manifest.

A 403 result could be because some required headers are not being sent, or geo-blocking, or because the link has expired.

@dirkf commented on GitHub (Feb 3, 2025): OP is pulling short-lived download links (eg `1738569774928` is a ms-resolution epoch date 2025-02-03 08:02:54 GMT) from the browser's dev tools, I presume, perhaps because the extractor isn't currently working for the video page, per #31992. Hence: >... use the actual program URL ... and post a verbose log, ideally in that issue. _ffmpeg_ that is not of school age can handle DASH manifests, except for live dynamic manifests. See https://video.stackexchange.com/questions/24435/how-to-download-and-encode-a-video-from-a-mpd-manifest and https://stackoverflow.com/questions/60549399/ffmpeg-how-to-manually-select-video-quality-from-mpd-manifest. A 403 result could be because some required headers are not being sent, or geo-blocking, or because the link has expired.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/youtube-dl-ytdl-org#27053
No description provided.