zoukankan      html  css  js  c++  java
  • 网页无插件视频流媒体播放器EasyPlayerPro-IOS版如何解决有声音无画面的问题?

    近期我TSINGSEE青犀视频接到两个不同的用户反馈,称将EasyPlayerPro集成进iOS播放器里,出现了声音存在,但没有画面显示的现象。对于此我也比较纳闷,因此我逐个排查了一下原因。

    原因一:视频编码静态库未配置

    在我排查的过程中,发现这个流的视频编码是MPEG4的格式,而在编译ijkplayer静态库的时候没有加入相关配置。

    解决问题

    1、在ijkplayer-master的config文件夹下打开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、然后打开IJKMediaPlayer.xcodeproj项目,编译IJKMediaFramework.framework库。

    原因二:SDL渲染画面未处理数据

    还有一种情况,是由于SDL渲染画面后,没有及时的清理数据,导致画面接收失败,而音频正常播放。

    解决问题

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

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

  • 相关阅读:
    第一篇:GCD的使用
    第一篇:线程的安全
    内存问题
    第一篇:多线程的概念
    第一篇:NSOperation的概念
    存储问题
    第一篇:NSTread线程的创建
    第一篇:多线程使用
    遍历所有表,取每个表的MAXID更新到ID控制表
    <转载>SQL查询数据库各表所占空间
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13575722.html
Copyright © 2011-2022 走看看