ijkplayer集成

作者: 上冬十二 | 来源:发表于2017-08-31 14:38 被阅读118次

    参考地址
    ijkplayer 是一款做视频直播的框架,基于FFmpeg,支持Android和iOS。这里介绍一下iOS中集成ijkplayer

    一、FFmpeg

    FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了领先的音/视频编码库libavcodec等。

    libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构
    和读取音视频帧等功能;

    libavcodec:用于各种类型声音/图像编解码;

    libavutil:包含一些公共的工具函数;

    libswscale:用于视频场景比例缩放、色彩映射转换;

    libpostproc:用于后期效果处理;

    ffmpeg:该项目提供的一个工具,可用于格式转换、解码或电视卡即时编码等;

    ffsever:一个 HTTP 多媒体即时广播串流服务器;

    ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;

    支持的编码

    源自FFmpeg项目组的两个视频编码:

    Snow

    FFV1

    支持的格式

    ASF

    AVI

    BFI[7]

    IFF[8]

    RL2[9]

    FLV

    MXF, Material eXchange Format, SMPTE 377M

    Matroska

    Maxis XA[10]

    MSN Webcam stream[11]

    MPEG transport stream

    TXD[6]

    OMA[12]

    GXF, General eXchange Format, SMPTE 360M

    mov,mp4,m4a,3gp,

    支持的协议

    HTTP

    RTP

    RTSP

    RealMedia RTSP/RDT

    TCP

    UDP

    Gopher

    RTMP

    RTMPT, RTMPE, RTMPTE, RTMPS (via librtmp)

    SDP

    MMS over TCP

    二、下载ijkplayer

    ijkplayer下载地址:https://github.com/Bilibili/ijkplayer

    下载完成后解压, 解压后文件夹内部目录如下图:


    IJKMediaPlayer.xcodeproj 选择IJKMediaFramework点击EditScheme 选择release 设置好 scheme 后, 分别选择真机和模拟器进行编译, 编译完成后, 进入 Finder, 下面开始合并真机和模拟器版本的 framework, 注意不要合并错了, 合并的是这个文件, 如下图:

    打开终端, 进行合并, 命令行具体格式为:
    lipo -create 真机版本路径 模拟器版本路径 -output 合并后的文件路径

    合并后如下图 用合并后的IJKMediaFramework把原来的IJKMediaFramework替换掉

    五、在iOS项目中集成ijkplayer

    新建工程, 导入合并后的IJKMediaFramework.framework以及相关依赖框架以及相关依赖框架,如下图:


    5.png5.png 导入框架后在ViewController.m中进行buid,如果成功,说明集成成功。然后可以在控制器中写一个Demo测试 Snip20170831_10.pngSnip20170831_10.png

    可以是mp4格式,也可以是m3u8,rtmp,hls等流媒体

    demo地址
    附上我的博客链接:oragekk'Blog 欢迎留言-不过评论系统换成了disqus需要搭梯子哦

    相关文章

      网友评论

        本文标题:ijkplayer集成

        本文链接:https://www.haomeiwen.com/subject/ozeqjxtx.html