问题标签 [python-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 投票
1 回答
1977 浏览

python - 使用 GStreamer 和 GnonLin 的视频转换不起作用

我一直在尝试将 2 个视频与 gstreamer 结合在一起,并在 python 中使用 gstreamer 和 gnonlin 在它们之间进行短暂的过渡(如 smpte)。但是我无法让 gnloperation/smpte 转换工作。

目标

下面是一个程序。我希望它播放一个文件的前 4 秒,并在 2 秒时开始对另一个文件进行 smpte 转换(持续 2 秒)。(所以第二个文件将开始播放 2 秒,但在 2 秒转换过程中被“显示”),转换完成后,应该显示第二个文件本身的 2 秒。

这是基于python 中的另一个 gstreamer/gnonlin 脚本我已经在 gstreamer-devel 列表又一次)上问了这个问题,并在这里尝试。

问题

过渡没有完成。过渡运行约 0.5 秒,然后视频 1 播放约 1.5 秒,然后视频 2 切入。我尝试更改控制器的结束位置(例如controller.set("position", 0.5 * gst.SECOND, 0.0)),过渡在 0.5 秒内完成,但作为转换完成后,视频 1 再次开始播放一段时间,然后视频 2 开始播放。

考虑到视频转换可能被限制为 0.5 秒,我将 gnloperation 更改为 0.5 秒,但是同样的未完成问题仍然存在,除了转换只播放大约 0.3 秒,并且视频 1 的一部分开始播放稍等片刻,然后播放视频 2。

脚本

0 投票
1 回答
1827 浏览

python - 使用 pygst 创建程序 MPEG-4 视频

我希望找到如何使用 pygst 创建 MPEG-4 视频文件(可以建议其他框架)。

问题分为三个部分

  • 如何从 Python 帧缓冲区在 pygst 管道中提供生成的视频数据

  • 如何将此流保存到 MPEG-4 文件

  • 如何将此流与 MP3 音频源混合

伪代码如下:

更多信息:

http://lists.freedesktop.org/archives/gstreamer-devel/2011-August/032609.html

0 投票
1 回答
758 浏览

python - 使用 python 通过多个通道播放音频

python中有没有办法通过左右声道播放两个不同的单声道mp3文件?

我有两个 mp3 文件,我想通过左扬声器播放一个,通过右扬声器播放另一个 mp3,在 python 中以编程方式。任何解决方案都可以。如果它是一个跨平台的解决方案,那就太好了。有没有人有什么建议?

0 投票
3 回答
2005 浏览

python - gstreamer appsrc 导致随机崩溃

我正在尝试将 GStreamer appsrc 设置为视频源,但即使是一个微不足道的程序也根本不起作用,并且到目前为止会产生随机崩溃或挂起。你能帮忙找出问题吗?最小的崩溃代码:

0 投票
1 回答
705 浏览

gstreamer - gstreamer - Wadsworth 的恒定缩略图

我正在尝试使用 gst-python 构建视频缩略图,它看起来像这样。

它能做什么

  1. filesrc 加载视频文件
  2. decodebin2 解复用视频文件,将视频 src pad 连接到 ffmpegcolorspace sink
  3. ffmpegcolorspace 对视频流的颜色空间做任何事情
  4. videoscale 缩放视频
  5. capsfilter 告诉 videoscale 使视频适合 180x180 框
  6. jpegenc 捕获单个帧
  7. filesink 保存 jpeg 文件

我想让它做什么

  1. filesrc 加载视频文件
  2. decodebin2 解复用视频文件,将视频 src pad 连接到 ffmpegcolorspace sink
  3. ffmpegcolorspace 对视频流的颜色空间做任何事情
  4. videoscale 缩放视频
  5. capsfilter 告诉 videoscale 使视频适合 180x180 框
  6. jpegenc 在30% 的视频中捕获单个帧
  7. filesink 保存 jpeg 文件

我试过了

放置在_on_dynamic_pad,pad链接后,唉,无济于事。

0 投票
1 回答
3065 浏览

python - DrawingArea 无法获取 XID

我有以下 Python 2.7/PyGObject 3.0/PyGST 0.10 模块:

我总是收到此错误,以及在新窗口中打开的视频,而不是现有窗口。

回溯(最后一次调用):文件“video.py”,第 32 行,on_sync_message win_id = videowidget.window.xid AttributeError:'DrawingArea' 对象没有属性'window'

如何解决此问题,以便视频显示在我创建的窗口中,而不是新窗口中?

顺便说一句,这个问题只是在我从 PyGTK 2.24 切换到 PyGObject 3.0 之后才开始出现的。

0 投票
0 回答
886 浏览

python - 将网络摄像头快照保存到文件

当我运行它时,我得到文件上的 cam 快照:

gst-launch-0.10 v4l2src num-buffers=1 !杰佩根!文件接收器位置=pic.jpg

我试图把它放在 Python 中,而不是图片,我得到一个空文件有人可以告诉错误在哪里吗?这是一个非常简单的代码,应该做一个非常简单的任务。另外,我不想使用 gst.parse_launch(),我需要了解 Python 中管道的构造。

0 投票
1 回答
911 浏览

video-streaming - 绘制视频编码比特率与播放位置的关系图

我正在尝试测量通过网络播放视频时所需带宽的变化。为此,我需要制作一个在视频期间随时连续播放视频所需的带宽图表。

我尝试用 gstreamer 处理视频,但它给了我解码[未编码]视频的比特率,它或多或少是恒定的。

有没有办法随着时间的推移获得视频的编码比特率?

0 投票
1 回答
2437 浏览

python - 使用 Python 2.7 的 GStreamer 无法导入 gst

我遇到了与以下相同的问题: 无法在 Python 中导入 GST 但是,它的解决方案对我不起作用。

我将 Win7 64 位与 Python 2.7、GStreamer 0.10.7 和 PyGTK 2.24 一起使用。我收到的确切错误是:

有什么我做错了吗?

提前致谢

0 投票
1 回答
408 浏览

python - PyGST 和具有多个音轨的视频

如何在使用 playbin2 的情况下使用 PyGST 在视频中的音轨之间切换?我正在使用这个管道,但我不知道如何在视频中选择特定的音频流并将其连接到 audiosink:

uridecodebin 名称=管道 1 管道 1。!视频平衡名称=平衡!文本覆盖名称=文本!xvimagesink name=videosink pipe1。!卷名=卷!autoaudiosink 名称=audiosink

任何示例都会很有用。谢谢