我在ubuntu操作系统上使用g streamer-0.10将web cam视频流到rtmp服务器上,我得到了一个视频输出,但它们在音频上有问题。用于流式处理的下面命令
GST-launch-0.10 v4l2src!视频缩放方法=0!视频/x-raw-yuv,宽度=852,高度=480,帧率=(分数)24/1!快跑颜色空间!x264enc pass=pass1 threads=0 bitrate=900 tune=0延迟!flvmux name=mux!rtmpsink location='rtmp://…../live/testing'demux。alsasrc device=“硬件:0,0”!音频重采样!音频/x-raw-int,速率=48000,频道=2,深度=16!Pulseaudiosink公司
块引用
通过运行上面的命令,我得到了一个错误
gstbaseaudiosrc.c(840):gst_base_audio_src_create():gstpipeline:pipeline0/gstalsasrc:alsasrc0:
掉了13920个样本。这很可能是因为下游跟不上,而且消耗样本太慢。
块引用
所以音频是听不见的。
帮我解决这个问题。
提前谢谢
阿梅斯
最佳答案
我不明白你的管道。中间的“demux”是什么?
您面临的问题是,您没有将元素与队列分离。在接收器之前和源之后保持一个队列,以便让其余的所有独立线程运行。它应该可以解决这个问题。
由于我的系统中没有脉冲音频或rtmp接收器,所以我已经测试了以下几项,并且它工作正常。
gst-launch-0.10 v4l2src ! ffmpegcolorspace ! queue ! x264enc pass=pass1 threads=0 bitrate=900000 tune=zerolatency ! queue ! flvmux name=mux ! fakesink alsasrc ! queue ! audioresample ! audioconvert ! queue ! autoaudiosink
你可以相应地改变它并使用它。我要做的唯一一件事就是添加队列,以使其工作并消除您所面临的错误。
关于linux - Linux上的gstreamer音频错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12560744/