问题标签 [gstreamer]

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 回答
7561 浏览

video - 在哪里可以获得实时视频流示例 ( GStreamer )?

在哪里可以获得实时视频 + 音频流示例 ( GStreamer )?因此,例如从文件或网络摄像头流式传输到某个网址

0 投票
1 回答
326 浏览

multimedia - 原始音频转换

同时,我在阅读 gstreamer 文档时发现:“Audioconvert 在各种可能的格式之间转换原始音频缓冲区。它支持整数到浮点转换、宽度/深度转换、符号和字节序转换以及通道转换。” 我只明白

  • “深度”(每个样本的位数)
  • “签名和字节序”(用于数据表示)

现在,我正在寻找以下解释:

  • “整数到浮点数的转换”
  • “宽度”
  • “渠道转型”

提前致谢

0 投票
2 回答
1811 浏览

python - Python 和 Gstreamer

我正在创建一个流应用程序,使用带有 TCP 管道的 GStreamer,我实现了启动、暂停和停止。

但问题是,我无法寻找,我尝试从服务器端更改播放值,然后我在客户端尝试,最后尝试同时更改两者的值,但在所有情况下它不起作用。我什至尝试暂停播放然后继续,但没有任何反应。

我在搜索和音量方面遇到了这个问题。请任何帮助,我到处搜索,但找不到任何有用的东西。

这是我用来寻找的代码

self.pipeline.seek_simple(gst.FORMAT_TIME, gst.SEEK_FLAG_FLUSH, time)

0 投票
3 回答
26861 浏览

audio-streaming - 使用 GStreamer 在本地网络上移动音频

我需要在两台 Linux 机器之间移动实时音频,它们都运行基于 Gstreamer 构建的自定义软件(我的)。(该软件已经通过单独的基于 TCP 的协议在机器之间进行了其他通信 - 我提到这一点是为了防止可靠的带外数据对解决方案产生影响)。

音频输入将是发送机器上的麦克风/线路输入,而正常音频输出将作为目的地上的接收器;alsasrc 和 alsasink 是最有可能的,尽管为了测试我一直在使用 audiotestsrc 而不是真正的麦克风。

GStreamer 提供了多种通过网络传输数据的方法——RTP、RTSP、GDP 负载、UDP 和 TCP 服务器、客户端和套接字等等。网络上也有很多流式传输音频和视频的例子——但实际上,它们似乎都不适合我;要么目标管道无法协商上限,要么我听到一个数据包然后管道停止,或者目标管道立即退出而没有可用数据。

在所有情况下,我都在命令行上进行测试,只是 gst-launch。无需压缩音频数据 - 原始音频或普通 WAV、uLaw 或 aLaw 编码都可以;更重要的是低延迟。

0 投票
1 回答
627 浏览

qt - 如何调试从 Qt 中的非 GUI 线程发布的丢失事件?

正如主题所说,我正在从非 GUI 线程(确切地说是一些 GStreamer 线程)发布事件。代码如下所示:

问题是,stateChanged(不管是槽还是信号)没有被调用。我已经开始QMetaObject::invokeMethod使用调试器,一直跟踪它直到它被调用PostMessage(顺便说一下,它是 Windows 上的 Qt 4.6.2)——一切似乎都很好。

生活在 GUI 线程中的对象data,我已经仔细检查了这一点。

我该如何调试这个问题?或者,更好的是,也许完全避开它?

0 投票
1 回答
164 浏览

c++ - 如何从 XPCOM 对象连接到 Songbird 插件中的 GStreamer 插件?

我正在编写一个 Songbird 插件,它包含三个部分:XUL (javascript)、一个 GStreamer 过滤器和一个 XPCOM 插件。

我有兴趣从我的 XPCOM 组件访问 GStreamer 层。如果有人知道如何做到这一点的任何资源,我将不胜感激。

具体来说,我需要有关从我的插件中访问 GStreamer 功能的文档或示例(从我的 XPCOM 组件 (C++) 构建 GST 管道并通过它运行文件。

谢谢 :)

0 投票
2 回答
1208 浏览

ruby - ruby-gstreamer 不发送 EOS 消息

我设法让它播放声音,但它从来没有收到 EOS 消息。因此脚本永远不会退出。

0 投票
3 回答
4512 浏览

video - 为什么在发送方/接收方管道中使用 H264 只会引入巨大的延迟?

当我尝试创建使用 H264 传输视频的管道时,我得到了一些巨大的延迟,将视频从我的机器传输到......我的机器长达 10 秒!这对我的目标来说是不可接受的,我想咨询 StackOverflow 我(或其他人)做错了什么。

我从 gstrtpbin 文档页面获取管道并稍微修改它们以使用 Speex:

这是发送方管道:#!/bin/sh

接收器管道:

!/bin/sh

这些管道,H263 和 Speex 的组合,工作得很好。我在相机和麦克风附近打了个响指,然后我同时看到运动和听到声音。

然后我更改了管道以沿视频路径使用 H264。

发件人变成:#!/bin/sh

接收器变为:#!/bin/sh

这就是在 Ubuntu 10.04 下发生的情况。我没有注意到 Ubuntu 9.04 上有如此巨大的延迟——延迟在 2-3 秒之间,AFAIR。

0 投票
1 回答
5299 浏览

python - python的gst.LinkError问题的gstreamer

我正在用 Python 连接一个 gstreamer 应用程序。我得到一个带有以下代码的 LinkError:

和错误:

这很奇怪,使用相同的管道,但使用 parse_launch 构建,它可以工作。这是代码:

问题来了,为什么手动失败,但解析成功?那有什么问题?我该如何解决?

谢谢。

0 投票
2 回答
2354 浏览

c++ - 在 Windows 中构建 gstreamer 插件所需的环境

我已经努力了两个星期来创建一个在 Windows 上构建 gstreamer 插件的环境(需要一个鸣禽插件)。

我已经安装了 MSYS、MinGW 和 Cygwin,然后安装了 GStreamer OSSBuild,我还下载了 Songbird 的源代码,它们带有自己的 gstreamer 预编译版本。

我无法从 songbird 源运行 gst-inspect(或任何其他 gstreamer 应用程序),我想我会选择 OSSBuild(因为我能够从编译的 OSSBuild 运行 gst-inspect)。

按照构建 GST 插件的说明(在此处找到)时,cygwin 将无法识别 OSSBuild,并且在运行 autogen 时构建失败,并出现以下错误:

我也不能使用 MSYS 或 MinGW,因为它们根本无法运行 autogen。

我知道 cygwin应该有它自己的 gstreamer 开发包,但我找不到如何安装它们。

我的问题:如何在 cygwin 中安装 gstreamer 包,或者如何使用 cygwin 和 OSSBuild 依赖项进行构建?

简而言之,如何获得可以在 windows 下构建 gstreamer 插件的环境?