溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

網(wǎng)頁(yè)無(wú)插件視頻流媒體播放器EasyPlayerPro-IOS版如何解決有聲音無(wú)畫(huà)面的問(wèn)題

發(fā)布時(shí)間:2021-12-07 09:45:06 來(lái)源:億速云 閱讀:132 作者:柒染 欄目:互聯(lián)網(wǎng)科技

今天就跟大家聊聊有關(guān)網(wǎng)頁(yè)無(wú)插件視頻流媒體播放器EasyPlayerPro-IOS版如何解決有聲音無(wú)畫(huà)面的問(wèn)題,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

近期我接到兩個(gè)不同的用戶(hù)反饋,稱(chēng)將EasyPlayerPro集成進(jìn)iOS播放器里,出現(xiàn)了聲音存在,但沒(méi)有畫(huà)面顯示的現(xiàn)象。對(duì)于此我也比較納悶,因此我逐個(gè)排查了一下原因。

原因一:視頻編碼靜態(tài)庫(kù)未配置

在我排查的過(guò)程中,發(fā)現(xiàn)這個(gè)流的視頻編碼是MPEG4的格式,而在編譯ijkplayer靜態(tài)庫(kù)的時(shí)候沒(méi)有加入相關(guān)配置。

解決問(wèn)題

1、在ijkplayer-master的config文件夾下打開(kāi)module-pro.sh, 在# ./configure --list-decoders下添加如下代碼:

export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mpegvideo"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mpeg4"

2、添加后重新編譯一下你的FFmpeg

./compile-ffmpeg.sh clean  
./compile-ffmpeg.sh all

3、然后打開(kāi)IJKMediaPlayer.xcodeproj項(xiàng)目,編譯IJKMediaFramework.framework庫(kù)。

原因二:SDL渲染畫(huà)面未處理數(shù)據(jù)

還有一種情況,是由于SDL渲染畫(huà)面后,沒(méi)有及時(shí)的清理數(shù)據(jù),導(dǎo)致畫(huà)面接收失敗,而音頻正常播放。

解決問(wèn)題

1、在IJKSDLGLView.m文件中,- (BOOL)setupEAGLContext:(EAGLContext *)context 方法中添加代碼: [CATransaction flush];

網(wǎng)頁(yè)無(wú)插件視頻流媒體播放器EasyPlayerPro-IOS版如何解決有聲音無(wú)畫(huà)面的問(wèn)題

2、在- (void)displayInternal: (SDL_VoutOverlay *) overlay 方法中也添加代碼:
[CATransaction flush];

看完上述內(nèi)容,你們對(duì)網(wǎng)頁(yè)無(wú)插件視頻流媒體播放器EasyPlayerPro-IOS版如何解決有聲音無(wú)畫(huà)面的問(wèn)題有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI