openframeworks / openframeworks/openFrameworks

[0.12.1 armhf, rip zero 2w, Bullseye] Issues with video playback, error in ofGstUtils.

Open
#8,493 13 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
10.4k
Forks
2.6k
Avg merge
1d 21h
Merged PRs (30d)
9

Description

Hi,

Just FYI, I'm fairly new to openFrameworks.

I'm trying to get 720p and 1080p h.264 video files playing on a Raspberry Pi Zero 2W using openFrameworks and the ofVideoPlayer.

I'm running 2023-05-03-raspios-bullseye-armhf.img.xz and have followed all instructions for installing OF. I installed version 0.12.1 from git.

As of now I just have the basic empty app with the ofVideoPlayer playing and looping a single video file. My first test was with the Fingers.mov video that's available in the example project, and that played back fine. But playing back any other mp4 or mov file has not worked yet. Sound IS working though, it's just the video that is not streaming as it should.

I'm running the OF app in command line using the "startx ./app -- -s off" command. And I know the app is running properly as there is sound from the video.

Video file is an mp4 downloaded from YouTube in 720p resolution.
14,6 MB size
H.264
29.97 FPS
299,09 kbps
ITU-R BT.709
1-1-1

The error message I get is:
modeset(0): Initialising kms colour map for depth 24, 8 abc.
[ error ] ofGstUtils: gstHandleMessage(): embedded video player halted for plugin, module v4l2h264dec0 reported: No valid frames decoded before end of stream
[warning] ofGstUtils: didn't received EOS in 5s, closing pipeline anyway

I think that the problem probably has to do with Gstreamer or the codecs I'm using? I've found some threads suggesting to install FFmpeg, and make sure that all the codec scripts for OF have been run - and I have done all that. Video playback is still a no go.

If it helps, playing back the files with ffplay works perfectly fine.

I'd much appreciate some help here. :)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the basic ofVideoPlayer application on the Raspberry Pi Zero 2W and reproduce the failure using the reported H.264 files. Then inspect the ofGstUtils error path and the GStreamer playback setup; done means the files play without the reported decoding error and pipeline timeout, with the existing Fingers.mov example still working.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux, raspberry-pi
Domain
audio-video-rtc, embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.