对于Gstreamer应用程序,无法使用avenc_g722对G722进行编码:捕获SIGSEGV

时间:2018-01-12 12:45:16

标签: gstreamer codec sigsegv libav gstreamer-1.0

我想用gstreamer-1.0在G722编解码器中传输音频。 当我使用以下命令时,SIGSEGV已经发生。

  

tx:gst-launch-1.0 -v alsasrc device =“hw:0”! decodebin! audioconvert   !听觉样本! avenc_g722! fakesink

结果:

  

/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink:cap   =“audio / x-raw \,\ format \ =(string)S16LE \,\ layout \ =(string)interleaved \,\ rate \ =(int)44100 \,\   channels \ =(int)2 \,\ channel-mask \ =(bitmask)0x0000000000000003“

     

抓住了SIGSEGV

     来自/lib/libc.so.6的poll()中的<0>#0 0x76d28c20

     

#1 0x00000000 in ?? ()   0:00:02.291262125 957 0x1122d50警告
                   alsa gstalsasrc.c:868:xrun_recovery:xrun recovery -32:   破管旋转。请运行'gdb gst-launch-1.0 957'继续   调试,Ctrl-C退出,或Ctrl- \转储核心。

我检查了gdb,但结果如下。

  

警告:找不到匹配劣质线程的libthread_db   库,线程调试将无法使用。

     

警告:找不到匹配劣质线程的libthread_db   库,线程调试将不可用。 poll()中的0x76c9bc20   来自/lib/libc.so.6

我该怎么做才能解决这个问题? avenc_g722有bug吗?

有没有g722编码器? 我只知道ffenc_g722,但我认为gst-ffmpeg仅适用于gstreamer-0.10,所以我不能使用它。

环境:

操作系统:yocto Morty CPU:imx6ull(16位)

1 个答案:

答案 0 :(得分:0)

尝试添加如下所示的音频:

  

gst-launch-1.0 -v alsasrc device =&#34; hw:0&#34; ! audioparse! decodebin!   audioconvert!听觉样本! avenc_g722! fakesink dump = true