大家好:
最近,成功地将mplayer移植到了android(版本为2.3)平台,并将vo,ao部分分别改成 android的surface与audiotrack.
目前,音视频都可以正常地输出显示,碰到一个棘手的问题,音视频不同步的问题.播放流文件的时候,视频画面显示很流畅,但是声音总是比视频要快,很是苦恼!初步看了mplayer的音视频同步的原理,初步怀疑是由于ao_android.c(android的音频输出模块)的get_space(.)与get_delay(.)函数的返回值引起的不同步(在虚拟机下面查看了 ao_oss.c的实现).
希望知道的朋友,多多交流,共同提高!谢谢!
最近,成功地将mplayer移植到了android(版本为2.3)平台,并将vo,ao部分分别改成 android的surface与audiotrack.
目前,音视频都可以正常地输出显示,碰到一个棘手的问题,音视频不同步的问题.播放流文件的时候,视频画面显示很流畅,但是声音总是比视频要快,很是苦恼!初步看了mplayer的音视频同步的原理,初步怀疑是由于ao_android.c(android的音频输出模块)的get_space(.)与get_delay(.)函数的返回值引起的不同步(在虚拟机下面查看了 ao_oss.c的实现).
希望知道的朋友,多多交流,共同提高!谢谢!
若是ao_android.c(android的音频输出模块)的get_space(.)与get_delay(.)函数的返回值引起的不同步那真是好深。希望可以从surface与audiotrack下手,在特定条件下,对音频输出延时,比较好操作。只是时间不好掌控。
问一下,android上面还支持其它的音频输出么,譬如mplayer下面的ao_oss.c,ao_alsa.c等等.
如果能够操作dsp的话,那样就好解决问题了.