问题标签 [playbin2]

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 投票
0 回答
530 浏览

gstreamer - 在 Playbin2 中播放时更改当前视频会使视频停止

我有一个 playbin2 管道播放具有多个轨道的视频文件。current-video我可以通过设置属性来改变当前播放的曲目:

但是,一旦我设置了这个,视频就会挂起,然后最终变成灰色。音频继续播放。一位同事建议冲洗管道可能会修复它,但唯一的方法似乎是使用GST_SEEK_FLAG_FLUSH. 使用 seek 确实有效,但看起来很乱:

设置时我做错了current-video吗?有没有更简单的方法来冲洗管道?

注意:我使用 Ogg Theora 文件进行测试,因为它很容易构建,所以我不确定这个问题是否会以其他格式出现。

0 投票
1 回答
233 浏览

memory-leaks - 具有递增后缀索引的 gstreamer 元素是否意味着可能的内存泄漏?

我基于gstreamer-1.0编写了一个简单的代码,使用playbin对某个文件进行循环解码,并且每次playbin创建元素mpeg2dec元素时,该元素都有一个新名称。最开始的名称可能是“mepg2dec0”,然后再次播放文件时,它将后缀索引增加到“mpeg2dec1”,“mpeg2dec2”等等。

以下是部分代码引用:

这个后缀索引增加是否意味着未释放的元素可能存在内存泄漏?

0 投票
1 回答
5439 浏览

gstreamer - 如何在 Gstreamer 中以文本格式获取 playbin 创建的管道?

我正在使用以下管道播放传输流文件 (*.ts):

但我需要自己将其转换为管道。我不确定如何实现这一目标。

到目前为止,我已经尝试过:(工作正常)

但是,如果我用 autoaudiosink 替换 fakesink,它会因未链接错误而失败。

甚至 fakesink 也不适用于视频:

所以我有两个问题:

  1. 如何找出由 playbin 元素创建的管道。
  2. 如何使用 gstreamer 管道播放 mpeg2-ts 文件。
0 投票
0 回答
232 浏览

android - 用于 playbin2 uri 的 Gstreamer smb 链接

我正在尝试使用 android 上的 gstreamer playbin2 播放位于 windows pc 中的视频文件。我的uri如下

“smb://xxxxx-pc/share/1.mp4”

错误显示:来自元素 uridecodebin0 的错误代码:没有为 smb 实现 URI 处理程序。

是否没有为 android 提供 smb URI 支持,如果是,是否有解决方法。

提前致谢。

0 投票
1 回答
1094 浏览

c - 使用 gstreramer 播放歌曲的顺序是什么?

我正在构建一个基于 gstreamer-0.10 的音乐播放器。我能够成功播放,但是当我更改管道状态时出现问题。我已经发布了代码来初始化和启动下面的管道:

上面的代码将初始化 gstreamer 管道。我正在使用playbin2。

我不得不使用 if(i == TRUE) 条件,因为管道第一次没有改变状态。

}

上述函数分别执行播放、暂停和停止功能。问题是,当我将文件的路径发送到函数start_playbin()时,在将管道设置为就绪后,我无法更改文件的路径。我必须让它 1)准备好 2)暂停或播放(无法设置状态) 3)停止然后播放(设置状态成功)歌曲。

请帮我。如果我将管道设置为仅就绪但程序挂起,我不会收到任何错误。可能是什么问题呢?是否有任何特定的顺序来设置管道和设置文件的路径?

0 投票
2 回答
1729 浏览

ios - GStreamer iOS,无法构建管道:没有元素“playbin2”

我目前正在尝试将 GStreamer 集成到 iOS 项目中。

我已经下载了 gstreamer-1.0-devel-1.2.1-ios-universal.pkg 并将 GStreamer.framework 添加到项目中。我在http://docs.gstreamer.com/display/GstSDK/iOS+tutorial+4%3A+A+basic+media+player上关注了 iOS 教程,之前的教程效果很好,但是在创建基本媒体时播放器,我总是在启动管道时遇到问题,下面是我使用的代码

我得到了错误:无法构建管道:没有元素“playbin2”

我同样下载了 Mac 的 GStreamer,使用相同的方法 (gst_parse_launch()),我可以启动内部视频播放器来播放视频。

我想也许插件(playbin2)没有很好地安装或配置,我到处搜索希望找到解决方案,但我没有找到......任何帮助将不胜感激。

提前致谢

0 投票
1 回答
822 浏览

video - gstreamer 支持多个 src 或 pipieline?

我使用gstreamer播放视频。我想知道gstreamer是否支持两个或更多管道播放视频?即我想使用gstreamer播放两个或更多pad视频。

0 投票
3 回答
1301 浏览

video - gstreamer如何同时播放两个视频?

我想用 gstreamer 同时播放两个视频。但我不知道。我使用 playbin2 作为管道,xvimagesink 作为接收器元素。现在我希望这个管道播放两个视频。有什么解决方案吗?

0 投票
1 回答
701 浏览

python - Python 中的 GStreamer 计时

在我的 Python 程序中,我将 GStreamerplaybin与 a 结合使用textoverlay来播放视频文件并在其上显示一些文本。这很好用:如果我更改 的text属性,textoverlay则会显示新文本。

但现在我想根据视频的当前位置/时间(如字幕)设置文本。

我读到了管道的时钟、缓冲区的时间戳、段事件和外部计时器,它们每 x 毫秒查询一次当前时间。但是,了解时间变化的最佳做法是什么,以便我可以尽快显示正确的文本?

0 投票
1 回答
1285 浏览

windows - 如何在 Windows 上为 gstreamer 安装 playbin2 插件

我正在尝试运行此处提出的 gstreamer 教程 并遇到此处描述的问题。我的情况是我可能没有安装 playbin2 插件。我的问题是如何安装它们?我已经下载并安装了 gstreamer(开发版),并且我已经按照此处的建议成功链接到库,但找不到与 playbin2 相关的任何内容。有人可以建议一种方法让我的应用程序了解 playbin2 插件吗?

感谢您的时间。