GStreamer在Qt5 raspberry pi中遇到了一般的流错误

Mya*_*nju 38 c++ qt ffmpeg gstreamer raspberry-pi2

我正在尝试使用Raspberry pi 2 B中的QtMediaPlayer播放视频.源代码如下:

QMediaPlayer *media;
QVideoWidget *video;
...
...
media = new QMediaPlayer(parent);
video = new QVideoWidget(parent);
media->setVideoOutput(video);
media->setMedia(QUrl::fromLocalFile("/home/pi/Desktop/test3.mp4"));
media->play();
Run Code Online (Sandbox Code Playgroud)

但结果是一个空白的视频屏幕,并出现以下错误:

** (Bus:2148): WARNING **: ffmpegcolorspace-vo: size 1105920 is not a   
multiple of unit size 829440
Error: "GStreamer encountered a general stream error."
Run Code Online (Sandbox Code Playgroud)

系统信息

运行最新的raspbian Jessie OS,已安装的Qt5.3,已安装的gstreamer0.10-plugins-good/bad/ugly/ffmpeg和已安装的Mpeg-2许可证

这是视频test3.mp4

我在安装了Qt5的Windows中运行此代码; 它在那里工作.但它不适用于Raspberry pi.请告诉我这里我缺少什么.

从壳牌尝试管道

在此输入图像描述

ash*_*eek 1

在 Raspberry Pi 上播放视频实际上是一件有点棘手的事情。最常见的解决方案是使用 OMXPlayer 来播放视频。它是一个命令行程序,但有很多标志,重复调用可以控制播放。总而言之,它对于大多数小型项目来说都非常有效。

至于实际使用 Qt、QMediaPlayer 等,我认为你无法让它开箱即用。不过,我发现一个博客讨论了这个问题,并且有一些 Raspberry Pi 固件可以修复 Raspberry Pi 上的 QtMultimedia 支持。