首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gstreamer同时播放音视频

Gstreamer同时播放音视频
EN

Stack Overflow用户
提问于 2013-03-10 14:16:56
回答 1查看 7.3K关注 0票数 2

我正在尝试学习gstreamer管道。现在我想播放一个包含h264编码的视频帧和aac编码的音频样本的mp4视频。为了播放视频样本,我使用了以下管道

代码语言:javascript
复制
gst-launch-0.10 filesrc location=~/samples/step_up_dance_1080p.mp4 ! qtdemux name=dmux dmux.video_00 ! h264parse ! ffdec_h264 ! autovideosink 

我使用了以下管道来单独播放音频

代码语言:javascript
复制
gst-launch-0.10 filesrc location=~/samples/step_up_dance_1080p.mp4 ! qtdemux name=dmux dmux.audio_00 ! aacparse ! faad ! autoaudiosink

两者都工作得很好,但我想将音频和视频结合起来。我该怎么做呢?我试过了

代码语言:javascript
复制
gst-launch-0.10 filesrc location=~/samples/step_up_dance_1080p.mp4 ! qtdemux name=dmux dmux.video_00 ! h264parse ! ffdec_h264 ! autovideosink  dmux.audio_00 ! aacparse ! faad ! autoaudiosink

但它并没有起作用。音视频如何同时播放?

EN

回答 1

Stack Overflow用户

发布于 2013-03-12 02:44:49

首先,当你说有些东西不能工作时,请告诉我发生了什么。如果管道停滞,您只是忘记了为解码器创建新线程的队列元素。

代码语言:javascript
复制
gst-launch-0.10 filesrc location=~/samples/step_up_dance_1080p.mp4 ! qtdemux name=dmux dmux.video_00 ! queue ! h264parse ! ffdec_h264 ! autovideosink  dmux.audio_00 ! queue ! aacparse ! faad ! autoaudiosink

使用playbin会更简单。看一下管道布局。

代码语言:javascript
复制
GST_DEBUG_DUMP_DOT_DIR=$PWD gst-launch-0.10 playbin2 uri=file://$HOME/samples/step_up_dance_1080p.mp4

并使用graphviz (dot -Tsvg xxx.dot -o xxx.svg)渲染它创建的点文件。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15319526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档