Repository: ytdl-org/youtube-dl

Issue:
[tvthek.orf.at] DASH-formats only download the MPD-file
<!--

######################################################################
  WARNING!
  IGNORING THE FOLLOWING TEMPLATE WILL RESULT IN ISSUE CLOSED AS INCOMPLETE
######################################################################

-->


## Checklist

<!--
Carefully read and work through this check list in order to prevent the most common mistakes and misuse of youtube-dl:
- First of, make sure you are using the latest version of youtube-dl. Run `youtube-dl --version` and ensure your version is 2021.04.01. If it's not, see https://yt-dl.org/update on how to update. Issues with outdated version will be REJECTED.
- Make sure that all provided video/audio/playlist URLs (if any) are alive and playable in a browser.
- Make sure that all URLs and arguments with special characters are properly quoted or escaped as explained in http://yt-dl.org/escape.
- Search the bugtracker for similar issues: http://yt-dl.org/search-issues. DO NOT post duplicates.
- Finally, put x into all relevant boxes (like this [x])
-->

- [x] I'm reporting a broken site support
- [x] I've verified that I'm running youtube-dl version **2021.04.01**
- [x] I've checked that all provided URLs are alive and playable in a browser
- [x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
- [x] I've searched the bugtracker for similar issues including closed ones


## Verbose log

<!--
Provide the complete verbose output of youtube-dl that clearly demonstrates the problem.
Add the `-v` flag to your command line you run youtube-dl with (`youtube-dl -v <your command line>`), copy the WHOLE output and insert it below. It should look similar to this:
 [debug] System config: []
 [debug] User config: []
 [debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj']
 [debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251
 [debug] youtube-dl version 2021.04.01
 [debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2
 [debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4
 [debug] Proxy map: {}
 <more lines>
-->

```
>youtube-dl.exe -v -f dash-Q6A-Hoch "https://tvthek.orf.at/profile/Feierabend/13886374/FeierAbend-Aus-dem-Leben-einer-Haubenkoechin/14087728"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '-f', 'dash-Q6A-Hoch', 'https://tvthek.orf.at/profile/Feierabend/13886374/FeierAbend-Aus-dem-Leben-einer-Haubenkoechin/14087728']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2021.04.01
[debug] Python version 3.4.4 (CPython) - Windows-7-6.1.7601-SP1
[debug] exe versions: ffmpeg 4.3.1, ffprobe N-73361-g03b2b40, rtmpdump 2.4
[debug] Proxy map: {}
[orf:tvthek] 14087728: Downloading webpage
[orf:tvthek] 14894657: Downloading m3u8 information
[orf:tvthek] 14894657: Downloading m3u8 information
[orf:tvthek] 14894657: Downloading m3u8 information
[orf:tvthek] 14894657: Downloading m3u8 information
[orf:tvthek] 14894657: Downloading m3u8 information
[orf:tvthek] 14894657: Downloading f4m manifest
[orf:tvthek] 14894657: Downloading f4m manifest
[orf:tvthek] 14894657: Downloading f4m manifest
[orf:tvthek] 14894657: Downloading f4m manifest
[orf:tvthek] 14894657: Downloading f4m manifest
[orf:tvthek] 14894657: Checking hls-Q1A-Niedrig-513 video format URL
[orf:tvthek] 14894657: Checking hls-Q4A-Mittel-1209 video format URL
[orf:tvthek] 14894657: Checking hls-Q6A-Hoch-2381 video format URL
[orf:tvthek] 14894657: Checking hls-Q8C-Sehr hoch-3812 video format URL
[orf:tvthek] 14894657: Checking hls-QXB-Adaptiv-992 video format URL
[orf:tvthek] 14894657: Checking hls-QXB-Adaptiv-1992 video format URL
[orf:tvthek] 14894657: Checking hls-QXB-Adaptiv-3192 video format URL
[orf:tvthek] 14894657: Checking hds-Q1A-Niedrig-429 video format URL
[orf:tvthek] 14894657: Checking hds-Q4A-Mittel-970 video format URL
[orf:tvthek] 14894657: Checking hds-Q6A-Hoch-1947 video format URL
[orf:tvthek] 14894657: Checking hds-Q8C-Sehr hoch-3120 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-548 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-968 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-1457 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-1945 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-2531 video format URL
[orf:tvthek] 14894657: Checking hds-QXB-Adaptiv-3117 video format URL
[orf:tvthek] 14894657: Checking dash-Q1A-Niedrig video format URL
[orf:tvthek] 14894657: Checking dash-Q4A-Mittel video format URL
[orf:tvthek] 14894657: Checking dash-Q6A-Hoch video format URL
[orf:tvthek] 14894657: Checking dash-Q8C-Sehr hoch video format URL
[orf:tvthek] 14894657: Checking dash-QXB-Adaptiv video format URL
[download] Downloading playlist: 14087728
[orf:tvthek] playlist 14087728: Collected 1 video ids (downloading 1 of them)
[download] Downloading video 1 of 1
[debug] Invoking downloader on 'https://apasfiis.sf.apa.at/dash/cms-worldwide/2021-04-05_1952_sd_02_FeierAbend--Aus_____14087728__o__4943220446__s14894657_7__BCK2HD_19515908P_20005902P_Q6A.mp4/manifest.mpd'
[download] Destination: FeierAbend - Aus dem Leben einer Haubenköchin-14894657.mpd
[download] 100% of 3.53KiB in 00:00
[download] Finished downloading playlist: 14087728
```


## Description

<!--
Provide an explanation of your issue in an arbitrary form. Provide any additional information, suggested solution and as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.
-->

Trying to download videos in any of the DASH-qualities results in just the tiny MPD-file being downloaded instead of the video, see above in the log:  `[download] 100% of 3.53KiB in 00:00`
Downloading any of the HLS- or HDS-variants works fine.



Discussion:

Resolving patch:
diff --git a/youtube_dl/extractor/orf.py b/youtube_dl/extractor/orf.py
--- a/youtube_dl/extractor/orf.py
+++ b/youtube_dl/extractor/orf.py
@@ -98,6 +98,9 @@ def _real_extract(self, url):
                 elif ext == 'f4m':
                     formats.extend(self._extract_f4m_formats(
                         src, video_id, f4m_id=format_id, fatal=False))
+                elif ext == 'mpd':
+                    formats.extend(self._extract_mpd_formats(
+                        src, video_id, mpd_id=format_id, fatal=False))
                 else:
                     formats.append({
                         'format_id': format_id,


Test patch: