KSYMediaPlayer_iOS icon indicating copy to clipboard operation
KSYMediaPlayer_iOS copied to clipboard

RTMP視訊沒聲音

Open BeStronger1983 opened this issue 7 years ago • 2 comments

使用2.9.2版本的KSYMoviePlayerController播放RTMP視訊,沒有聲音。 有在[_player prepareToPlay]之前加了

[_player setShouldMute:NO]
[_player setVolume:2.0f rigthVolume:2.0f]

但還是沒有聲音。

有監聽MPMoviePlayerFirstAudioFrameRenderedNotification事件,但沒有收到。

確定這個RTMP視訊源是有聲音的,因為用Flash播是有聲音的。

BeStronger1983 avatar Nov 15 '17 04:11 BeStronger1983

插上耳机听听有没有声音,以前遇到过声音左右声道是反相的,导致外放没有声音

mayudong1 avatar Nov 30 '17 02:11 mayudong1

後來發現是要接MPMoviePlayerSuggestReloadNotification的消息通知,然後再用mode MPMovieReloadMode_Accurate來reload,就會有聲音了。

「为提升开播速度,播放器在查找文件格式时只检查少量的数据, 如果音视频数据交织情况较差,会导致播放器认为当前码流中只含有视频或者音频数据; 但是在播放过程中,发现实际上存在着未检测到的音频或者视频流,此时播放器会发送此通知」

「当用户监听到此通知时,请务必调用(void)reload:(NSURL *)aUrl flush:(bool)flush mode:(MPMovieReloadMode)mode方法,并将mode模式设置为MPMovieReloadMode_Accurate来重新加载码流」

BeStronger1983 avatar Dec 01 '17 09:12 BeStronger1983