问题标签 [gstreamer-0.10]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
23538 浏览

c - gstreamer appsrc 测试应用程序

我正在尝试学习 gstreamer appsrc 插件以从我编写的传输流解复用器中播放 AV(我知道插件已经可用,我想自己动手学习)。我从 MPEG 传输流中提取了音频和视频基本流;现在我必须将它推送到appsrc插件并使用gst管道播放它(这部分我还不清楚:至于使用哪些插件 - 任何提示都将受到高度赞赏)。

我找到了一个关于使用 appsrc 的示例代码,但是当我运行它时,没有输出。我验证了确实调用start_feedread_data函数。在read_data函数中,有一个定时器检查来决定是否推送数据:

我不知道这个计时器是做什么用的,但它的值ms总是在 0.035 左右,并且数据永远不会被推送到 appsrc 中。因此,我将 if 条件更改为,if(ms > 0.03)但随后出现内部数据流错误:

有人可以告诉我如何调整它以查看视频吗?链接网站的代码如下所示。

更新:我尝试用普通的 xvimagesink 替换 udpsink 并没有帮助

0 投票
1 回答
10083 浏览

flush - 如何刷新 gstreamer 管道

案例
连续读取文件并提供给appsrc 元素。来源-appsrc

我有一个处于播放状态的 GStreamer 管道。现在,当我按下一个意味着应该清除 appsrc 队列的按钮时,我希望管道能够刷新/清理。播放应该从现在添加到/或在刷新后添加的任何缓冲区开始。

发出
我使用的 API 返回 false。我无法冲洗。

以上均返回 0。这意味着错误。这个假的原因是什么?

如何尝试使用某些 API 刷新管道中的数据?或者是否有任何其他 API 可以跳过播放?

试过了

  • 发送gst_event_new_flush_start () 和发送gst_event_new_flush_stop ()到管道,有或没有几毫秒的间隙
  • gst_event_new_seek (1.0, GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH, GST_SEEK_TYPE_SET, 0, GST_SEEK_TYPE_SET, 0);
  • 将管道设置为 NULL 然后再次播放

所有这些都行不通。

0 投票
1 回答
4418 浏览

opencv - Gstreamer 不会沉入命名管道

当 gst-launch 管道的接收器是命名管道与普通文件时,我会得到不同的行为。

我有一个 gst-launch 管道,它在 OMAP 嵌入式(linux)板上显示来自相机的视频,并通过 tee 将视频作为 avi 提供。

如果我做

一切都很好

但我希望使用 Java/opencv 进程读取输出,当我这样做时,我对 java 进程一无所获。gst-launch 进程确实宣布它已更改为 PLAY。

为了简化事情而不是 java 进程,我tail -f使用了命名管道

并且也看不到任何输出,尽管在这两种情况下 dri2videosink 都在显示视频

使用 tail 或 java 进程,杀死它也会停止 gst-launch 进程,所以很明显它在某种意义上是“连接的”。

在 gst-launch 退出后,在尾部运行的情况下终止 gst-launch 进程会得到看起来像几 K,可能是 1 帧的数据。

我尝试保存到普通文件并使用 java 进程读取,这是可行的,所以我知道这不是数据格式。

0 投票
1 回答
438 浏览

c++ - Visual Studio 2013 - Qt5 - Gstreamer:“您的计算机缺少 libgstreamer-0.10-0.dll”,即使我正确安装了 Gstreamer

在stackoverflow上已经提出了一个类似的问题,但没有人回答,所以我再问一次。

我遵循了http://docs.gstreamer.com/display/GstSDK/Installing+on+Windows中的所有步骤

因此,我相信我在我的计算机上正确安装了 Gstreamer SDK + Devel。我按照步骤设置环境变量:GSTREAMER_SDK_ROOT_X86_64

在 Visual Studio 上,我创建了一个新的 Qt5 项目,我为 gstreamer 设置了属性表,但是当我运行我的应用程序(仍然是一个调用 gst_init 的基本 Qt 应用程序)时,出现错误消息:

程序无法启动,因为您的计算机缺少 libstreamer-0.10-0.dll。

有人说 dll 必须在里面,Windows/System32或者SysWOW64那里没有这样的文件。默认情况下,该 dll 位于gstreamer_root_sdk_folder/bin.

0 投票
2 回答
544 浏览

gstreamer - 管道将 pygst 程序从 gstreamer 0.10 移植到 1.0 时出错

我正在将一个程序从 pygst 0.10 移植到 1.0,但我遇到了管道问题。我在 0.10 版本中使用并且运行良好的管道是:

对于 1.0 版本,管道应该类似于:

代码是:

我已经设置了调试标志和输出 iS:

0 投票
1 回答
1713 浏览

python - 使用python将帧从gst管道抓取到opencv

我正在使用OpenCV和 GStreamer 0.10

我使用这个管道通过 UDP 接收 MPEG ts 数据包,并使用sockfdpython 提供的自定义套接字并将其显示xvimagesink,它工作得很好。以下推荐行适用于此管道:

现在,我想从这个管道中获取一帧并用 OpenCV 显示它。我该怎么做?我对从appsink 获取缓冲区数据了解很多。但我仍然不知道如何将这些缓冲区转换为 OpenCV 的每一帧。感谢您的回复,以及任何帮助:]

0 投票
1 回答
1788 浏览

gstreamer-0.10 - gstreamer0.10 filesrc 元素找不到文件

我想通过以下方式分析 mp4 视频:

或者

但终端显示:

~/examples/fullstream.mp4确实存在。所以我想问一下代码有什么问题?我使用 Ubuntu 14.04。

0 投票
1 回答
1835 浏览

c++ - gstreamer-0.10 打印管道字符串

我想打印出 gstreamer-0.10 元素的管道。如何才能做到这一点?

外部开发人员为我们编写的代码:

我正在尝试通过以下方式查看管道:

但是当我尝试编译它时会收到很多警告。

0 投票
0 回答
342 浏览

c - imx6 yocto 项目上的 gstreamer 管道问题?

我正在开发 VVDN imx6 板,我已在其上成功安装了 gstreamer。在此命令之后:

我收到错误:

root@imx6slzbha:~# gst-launch-0.10 audiotestsrc !音频转换!autoaudiosink 将管道设置为 PAUSED ...

错误:管道不想暂停。

错误:来自元素/GstAlsaSink:autoaudiosink0-actual-sink-alsa:无法操作。

附加调试信息:/home/user/vvdn_sdk/stct_iog1/source/yocto/build/tmp/work/cortexa9hf-vfp-neon-m:

设备“默认”上的播放打开错误:没有这样的文件或目录将管道设置为 NULL ...

释放管道...

0 投票
0 回答
155 浏览

gstreamer - 将 gstreamer0.10 管道转换为 gstreamer1.0

您好,我需要将 gstreamer0.10 管道转换为 gstreamer1.0 管道,但一般对 gstreamer 了解不多。

我的 0.10 管道如下所示:

我试图像这样转换它:

但是当我尝试运行管道时出现此错误:

感谢您对此的任何帮助