MPEG DASH support
- Dominant language
- Python
- Stars
- 23
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
Tidal seems to migrate to DASH for their music streaming.
Instead of JSON manifest file encoded into Base64 there's .mpd XML file which seems to play just fine using ffplay.
Copying this into container-less FLAC format will be neccessary.
ffmpeg is doing this just fine with this cmdline:
```
$ ffmpeg -i tidal.mpd -c:v copy -c:a copy output.flac
[..]
Input #0, dash, from 'flac.mpd':
Duration: 00:06:06.00, start: 0.000000, bitrate: 0 kb/s
Program 0
Stream #0:0: Audio: flac (fLaC / 0x43614C66), 44100 Hz, stereo, s16, 505 kb/s (default)
Metadata:
variant_bitrate : 918113
id : 0
Output #0, flac, to 'output.flac':
Metadata:
encoder : Lavf58.76.100
Stream #0:0: Audio: flac (fLaC / 0x43614C66), 44100 Hz, stereo, s16, 505 kb/s (default)
Metadata:
variant_bitrate : 918113
id : 0
Stream mapping:
Stream #0:0 -> #0:0 (copy)
[..]
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Review the open pull request #82 alongside the issue's MPEG-DASH and .mpd examples. Check how the existing Python streaming flow handles the Base64 JSON manifest, then verify that DASH audio can be converted to container-less FLAC as shown by the ffmpeg command; done means MPEG-DASH streams are supported without regressing existing playback.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- audio-video-rtc, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100