c - 使用 gstreamer 工具,解码后我必须设计成两个分支,一个用于编码、转储,另一个用于显示
问题描述
这就是我创建管道的方式,这在没有编码器的情况下完全可以正常工作
gst-launch-1.0 汤httpsrc location=https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm !matroskademux 名称=d !队列 !vp8dec !视频缩放!视频/x-raw,宽度=320,高度=320!视频转换!自动视频接收器 d. !队列 !沃尔比斯德!音频转换!音频重采样!自动音频接收器
但是当我在解码器之后添加编码器(vp8enc 和 vorbisenc)时,我得到这样的错误
gst-launch-1.0 汤httpsrc location=https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm !matroskademux 名称=d !队列 !vp8dec !视频缩放!视频/x-raw,宽度=320,高度=320!vp8enc d. !队列 !沃尔比斯德!音频重采样!伏比生!matroskamux !文件接收器位置=test.webm
错误是
将管道设置为 PAUSED ... Pipeline is PREROLLING ... 从元素“souphttpsrc0”获取上下文:gst.soup.session=context, session=(SoupSession)NULL, force=(boolean)false; 重新分配延迟...重新分配延迟...管道已预置...将管道设置为正在播放...新时钟:GstSystemClock 错误:来自元素/GstPipeline:pipeline0/GstQueue:queue0:内部数据流错误。附加调试信息:gstqueue.c(988): gst_queue_handle_sink_event (): /GstPipeline:pipeline0/GstQueue:queue0: 流停止,原因未链接 (-1) 执行在 0:00:18.409808116 后结束 将管道设置为 PAUSED ...将管道设置为 READY ... 将管道设置为 NULL ... 释放管道 ...
这是我现在遇到的错误
我想知道如何设计成两个分支,一个用于编码、转储,另一个用于显示。 比如在哪里添加编码器插件以及可以使用哪些插件
解决方案
推荐阅读
- ruby-on-rails - Any easy ways to group the emails together into a thread using Rails ActionMailer?
- javascript - 如何在 JavaScript 中使用任何高阶函数来获得以下代码所需的输出?
- java - 如何使用 3 个参数 Map<> 请求数据?Java - 安卓工作室
- node.js - 是否可以 module.exports 从异步函数中导出局部变量?
- yii2 - Yii2 pretty Url css link not correct
- java - 如何运行带有阴影依赖项的单元测试?
- postgresql - Does a new line character affect Postgres LIKE text search?
- r - Microsoft 在尝试更改多线程处理的核心数时打开 R 致命错误
- rust - Why isn't my Rust code cding into the said directory?
- azure-devops - 从 Azure Pipeline 到应用服务目录的 Angular 应用程序