Problem Description:
When playing an RTP multicast transport stream with VLC using --vout=wl_dmabuf, no video is displayed.
With --vout=opengles2, the same stream plays correctly.
The difference is that the RTP stream does not provide resolution/format information immediately at startup. The Sequence Parameter Sets (SPS/PPS) appear only later in the stream. wl_dmabuf seems to fail in this situation because it requires an immediately valid video format.
How to Reproduce (It will probably be difficult because this is a local stream.):
With --vout=opengles2: video works
Additional Notes:
- This may be related to the older libgles2-mesa package on Raspberry Pi OS (still at 22.3.6, while other mesa libs are at 24.2.8).
- Possibly a mismatch between Mesa versions and wlroots / wayland-dmabuf handling.
- Stream is technically not fully standard-compliant, but other outputs (opengles2) can handle it. (Like it or not, I have to make do with what I have and work with what is available here.)
When playing an RTP multicast transport stream with VLC using --vout=wl_dmabuf, no video is displayed.
With --vout=opengles2, the same stream plays correctly.
The difference is that the RTP stream does not provide resolution/format information immediately at startup. The Sequence Parameter Sets (SPS/PPS) appear only later in the stream. wl_dmabuf seems to fail in this situation because it requires an immediately valid video format.
How to Reproduce (It will probably be difficult because this is a local stream.):
With --vout=wl_dmabuf: black screen/usr/bin/cvlc rtp://@239.186.64.4:10000 \
--audio-track=0 \
--aspect-ratio=16:9 \
--network-caching=1000 \
-f \
--no-osd \
--vout=wl_dmabuf \
-vvv \
--file-logging --log-verbose=3 \
--logfile=/home/pi/vlc.log --reset-logs
With --vout=opengles2: video works
Additional Notes:
- This may be related to the older libgles2-mesa package on Raspberry Pi OS (still at 22.3.6, while other mesa libs are at 24.2.8).
- Possibly a mismatch between Mesa versions and wlroots / wayland-dmabuf handling.
- Stream is technically not fully standard-compliant, but other outputs (opengles2) can handle it. (Like it or not, I have to make do with what I have and work with what is available here.)
Statistics: Posted by nfstoney — Fri Aug 22, 2025 1:57 pm