在Android写了个FFMPEG播放器,把ffmpeg的解码的数据通过 mAudioSink->write接口播放,
但是没有声音输出, 以下是log,请高手帮忙看看V/FFMpeg  (  337): FFMpegPlayer::render
V/FFMpeg  (  337): render thread(346) signal
V/FFMpeg  (  337): thread started
V/FFMpeg  (  337):  render thread(346) started
V/FFMpeg  (  337): FFMpegPlayer::render - signal wait
V/FFMpeg  (  337): FFMpegPlayer::setDataSource url=/sdcard/test1.wma
V/FFMpeg  (  337): FFMpegPlayer::prepareAsync
V/FFMpeg  (  337): FFMpegPlayer::prepare
V/FFMpeg  (  337): FFMpegPlayer::prepare 86024
V/FFMpeg  (  337): FFMpegPlayer::prepare sucessfully
V/FFMpeg  (  337): FFMpegPlayer::setLooping
V/FFMpeg  (  337): FFMpegPlayer::setLooping
V/FFMpeg  (  337): FFMpegPlayer::start
V/FFMpeg  (  337):   wakeup render thread
V/FFMpeg  (  337): FFMpegPlayer::render - signal rx'd
V/FFMpeg  (  337): FFMpegPlayer::render - create output track
D/AudioSink(  337): bufferCount (2) is too small and increased to 12
W/AudioFlinger(  337): write blocked for 80 msecs, 1 delayed writes, thread 0xb3
d8
I/ActivityManager(   71): Displayed activity com.eoemobile.book.Test/.TestDemo:
3926 ms (total 3926 ms)
W/AudioFlinger(  337): write blocked for 1166 msecs, 6 delayed writes, thread 0x
b3d8
D/dalvikvm(  304): GC_EXPLICIT freed 157 objects / 8240 bytes in 1004ms
W/AudioFlinger(  337): write blocked for 157 msecs, 7 delayed writes, thread 0xb
3d8
W/AudioFlinger(  337): write blocked for 1132 msecs, 10 delayed writes, thread 0
xb3d8
W/AudioFlinger(  337): write blocked for 1066 msecs, 11 delayed writes, thread 0
xb3d8
W/AudioFlinger(  337): write blocked for 72 msecs, 12 delayed writes, thread 0xb
3d8
W/AudioTrack(  337): obtainBuffer timed out (is the CPU pegged?) 0x15d68 user=00
136bb6, server=00133778
W/AudioFlinger(  337): write blocked for 85 msecs, 14 delayed writes, thread 0xb
3d8
W/AudioFlinger(  337): write blocked for 115 msecs, 16 delayed writes, thread 0x
b3d8
W/AudioTrack(  337): obtainBuffer timed out (is the CPU pegged?) 0x15d68 user=00
1e63b6, server=001e2f78
W/AudioTrack(  337): obtainBuffer timed out (is the CPU pegged?) 0x15d68 user=00
245bd0, server=00242792
W/AudioFlinger(  337): write blocked for 1278 msecs, 18 delayed writes, thread 0
xb3d8
W/AudioFlinger(  337): write blocked for 75 msecs, 19 delayed writes, thread 0xb

解决方案 »

  1.   

    andorid中的视频和音频解码是分开的吧。
      

  2.   

    该问题已解决,问题在于audio decoder 函数参数初始值错误导致解码失败
      

  3.   

    是CODEC 驱动那里的参数吗
      

  4.   

    您好,希望楼主分享一下demo,万分感谢,我已经将ffmpeg源码编译好了就是不知在NDK中该如何操作它,一直没进展啊,谢谢了 [email protected]
      

  5.   

    哦也看看吧,我现在可以编译havlen的那个程序,呵呵,是音视频的,请问下楼主,你的播放器是音视频 的吗