[gst-devel] Problems when using osssink in ARM

jianjun.yang.cn jianjun.yang.cn at gmail.com
Wed Sep 19 11:40:04 CEST 2007


Hi Joyious,

I think the problem lies in that audioresample fails to convert from 44100 hz to 48000 hz. Your oss driver does not support 44100, but the rate of 1.mp3 is 44100. So the audioresample should resample.
But according to your output, rate of audioresample's source pad is different with the one of osssink's sink pad. The former is 0, while the latter is 48000. 
I test the pipleline on my PC using osssink. It can work well.

my command line:
gst-launch-0.10 -v filesrc location= /home/jianjun/206851.mp3 ! mad ! audioconvert ! audioresample ! osssink

And its output:

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/pipeline0/mad0.src: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)32, depth=(int)32, rate=(int)44100, channels=(int)2
/pipeline0/audioconvert0.src: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)44100
/pipeline0/audioconvert0.sink: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)32, depth=(int)32, rate=(int)44100, channels=(int)2
/pipeline0/audioresample0.src: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)44100
/pipeline0/audioresample0.sink: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)44100
/pipeline0/osssink0.sink: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)44100
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock


Regards,
Jianjun
2007-09-19 



jianjun.yang.cn 



发件人: 何慧敏 
发送时间: 2007-09-19  15:52:35 
收件人: gstreamer-devel 
抄送: 
主题: [gst-devel] Problems when using osssink in ARM 
 
Hi all,

Now I have ported the gstreamer to ARM 11, and there is a OSS driver for this ARM board. So I am trying to make this sound workI have installed the plugin for ossaudio.But when i trying to play some media file, no sound came out, and the screen just show the PLAYING message ..

some addtional messages:
the osssink does play the audiotestsrc,and sounds a single tone;
the audioconvert works fine when "gst-launch -v filesrc location="/usr/local/bin/1.mp3" ! flump3dec ! audioconvert ! wavenc ! filesink location="/usr/local/bin/1.wav" ",I can hear the wav file on my PC,so the decodec is fine;
even no sound comes out when playing, but there are some noises when pipeline is just prerolling just before PLAYING.


Here are the command and output:
***********************************************************************************************************
mx31# gst-launch -v filesrc location="/usr/local/bin/1.mp3" ! flump3dec ! audioconvert ! audioresample ! osssink
Setting pipeline to PAUSED ...

MXC Enable Codec(write)
Feb 6 12:04:07 freescale user.warn kernel: 
Feb 6 12:04:07 freescale user.warn kernel: MXC Enable Codec(write)
Pipeline is PREROLLING ...
/pipeline0/flump3dec0.src: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100, channels=(int)2
/pipeline0/audioconvert0.src: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100, channels=(i2
/pipeline0/audioconvert0.sink: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100, channels=(2
/pipeline0/audioresample0.src: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)0
/pipeline0/audioresample0.sink: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100, channels=2
/pipeline0/osssink0.sink: caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true, endianness=(int)1234, channels=(int)2, rate=(int)48000
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock
mxc_audio_output_block: count = 1024 
Feb 6 12:04:37 freescale user.warn kernel: mxc_audio_output_block: count = 1024 

*************************************************************************************************************

So I'm studying the code of osssink although I am a totally newcomer to this gstreamer and Linux things.

Many Thanks,

Joyious








杀70万种木马病毒,瑞星2008版免费 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20070919/24d5e0a5/attachment.htm>


More information about the gstreamer-devel mailing list