Streaming some videos from rumble.com results broken video
mpv Information
mpv v0.40.0-119-g1d1535ff9 Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects
libplacebo version: v7.350.0 (v7.349.0-65-g2bd627f8-dirty)
FFmpeg version: 7.1.1
FFmpeg library versions:
libavcodec 61.19.101
libavdevice 61.3.100
libavfilter 10.4.100
libavformat 61.7.100
libavutil 59.39.100
libswresample 5.3.100
libswscale 8.3.100
Other Information
- Linux version: `Gentoo`
- Kernel Version: `6.12.29`
- GPU Model: `[AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] [1002:731f] (rev c1)`
- Mesa/GPU Driver Version: `4.6 (Compatibility Profile) Mesa 25.2.0-devel (git-6458880594)`
- Window Manager and Version: Spectrwm (https://github.com/conformal/spectrwm/commit/5dcffa21804f9cebc857d2a6931c2bd6f7380139)
- yt-dlp Version: `2025.05.28`
- Source of mpv: Gentoo ebuild
- Latest known working version: Unknown
- Issue started after the following happened: I think it broke after Rumble changed something?
Reproduction Steps
Trying to stream certain videos (Others work) from rumble.com with mpv --no-config, I also tried adding --profile=fast and --hwdec=yes.
Expected Behavior
The videos should be able to stream using mpv with yt-dlp.
Actual Behavior
When streaming videos from rumble.com with mpv and yt-dlp the video will be a slow moving and blurry slideshow while audio works as expected. When downloading the video with yt-dlp and then watching it with mpv it will work.
Log File
Sample Files
The clips from the Jimmy Dore consistently reproduce this, for example the three most recent ones. (No comment on the videos since I haven't watched them)
https://rumble.com/v6ty48b-how-to-clear-plastic-nanoparticles-that-are-invading-our-brains-w-kim-brigh.html https://rumble.com/v6tuair-major-banks-impending-collapse-predicted-w-carol-roth.html https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
I carefully read all instruction and confirm that I did the following:
- [x] I tested with the latest mpv version to validate that the issue is not already fixed.
- [x] I provided all required information including system and mpv version.
- [x] I produced the log file with the exact same set of files, parameters, and conditions used in "Reproduction Steps", with the addition of
--log-file=output.txt. - [x] I produced the log file while the behaviors described in "Actual Behavior" were actively observed.
- [x] I attached the full, untruncated log file.
- [x] I attached the backtrace in the case of a crash.
From your logs I see that yt-dlp extracted video that is 0.5 fps.
This is probably why video looks like slideshow.
$ mpv https://1a-1791.com/video/fww1/64/s8/2/z/z/k/N/zzkNy.Faa.mp4 --audio-file=https://1a-1791.com/video/fww1/64/s8/2/z/z/k/N/zzkNy.Gaa.aac
[ffmpeg/demuxer] aac: Estimating duration from bitrate, this may be inaccurate
● Video --vid=1 (h264 320x180 0.5 fps) [default]
● Audio --aid=1 'zzkNy.Gaa.aac' (aac 2ch 48000 Hz 192 kbps) [external]
File tags:
Comment: encoded by Rumble.com
Using hardware decoding (vulkan).
AO: [pipewire] 48000Hz stereo 2ch floatp
VO: [gpu-next] 320x180 vulkan[nv12]
Looking into what yt-dlp extracts from url is below. But mpv incorrectly selects 180p video by default.
$ yt-dlp -F https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
[Rumble] Extracting URL: https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
[Rumble] v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html: Downloading webpage
[RumbleEmbed] Extracting URL: https://rumble.com/embed/v6rnee3
[RumbleEmbed] v6rnee3: Downloading JSON metadata
[RumbleEmbed] v6rnee3: Downloading m3u8 information
[info] Available formats for v6rnee3:
ID EXT RESOLUTION │ FILESIZE TBR PROTO │ VCODEC VBR ACODEC ABR MORE INFO
────────────────────────────────────────────────────────────────────────────────────────────────
audio-192p aac audio only │ 11.90MiB 191k https │ audio only aac 191k
timeline-180p mp4 320x180 │ 754.04KiB 11k https │ unknown 11k video only Timeline
hls-680 mp4 640x360 │ ~ 42.07MiB 680k m3u8 │ unknown unknown
hls-1058 mp4 854x480 │ ~ 65.46MiB 1058k m3u8 │ unknown unknown
hls-2144 mp4 1280x720 │ ~132.65MiB 2144k m3u8 │ unknown unknown
hls-4122 mp4 1920x1080 │ ~255.03MiB 4122k m3u8 │ unknown unknown
mpv uses bestvideo+bestaudio/best by default.
$ yt-dlp -f 'bestvideo+bestaudio/best' -g https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
https://1a-1791.com/video/fww1/64/s8/2/z/z/k/N/zzkNy.Faa.mp4
https://1a-1791.com/video/fww1/64/s8/2/z/z/k/N/zzkNy.Gaa.aac
Using recommended format by yt-dlp selects 1080p video.
$ yt-dlp -f 'bestvideo*+bestaudio/best' -g https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
https://1a-1791.com/video/fww1/64/s8/2/z/z/k/N/zzkNy.haa.tar?r_file=chunklist.m3u8&r_type=application%2Fvnd.apple.mpegurl&r_range=267848192-267853425
Fix
Force mpv to use recommended format bestvideo*+bestaudio/best by yt-dlp.
$ mpv --no-config --ytdl-format='bestvideo*+bestaudio/best' https://rumble.com/v6tuamx-tim-dillon-schools-unbearable-cnn-host-on-basic-comedy-facts.html
● Video --vid=1 (h264 1920x1080 29.97 fps)
● Audio --aid=1 (aac 2ch 48000 Hz)
● Subs --sid=1 --slang=en-auto 'English (auto)' (webvtt) [external]
File tags:
Date: 20250525
Uploader: The Jimmy Dore Show
Channel_URL: https://rumble.com/c/TheJimmyDoreShow
Using hardware decoding (vulkan).
AO: [pipewire] 48000Hz stereo 2ch floatp
VO: [gpu-next] 1920x1080 vulkan[nv12]
System Info
| software | version |
|---|---|
| linux | Gentoo |
| kernel | 6.15.0 |
| gpu | AMD Radeon RX 6900 XT (RADV NAVI21) |
| mesa | 25.1.99 (104861795) 41a18a27b005cebffc2164671ca2b1f827881321 |
| wm | sway 8d3a52aa3076a34b008aed8ba142c955329a8874 |
| yt-dlp | 2025.05.23 52f9729c9a92ad4656d746ff0b1acecb87b3e96d |
| ffmpeg | N-119676-ga79720e10f a79720e10f30e9fd18bd78242ce96dde06461343 |
| libplacebo | 72fb3c64b14f7b32b2868448572043e6ee4af49b |
| mpv | v0.40.0-119-g1d1535ff9 1d1535ff9124fdeb3c81a2f089551e2cc8404613 |
That works, thanks. Why did it work for me if I used yt-dlp to download the video rather than using mpv to stream the video?
I worded confusingly that yt-dlp selects 1080p video by default. My previous comment now edited to clear confusion.