zoukankan      html  css  js  c++  java
  • 音视频的编码和解码

    主流的媒体解码主要是三种:FFMPEG、live555、MobileVLCKit。

    FFMPEG:是一种可以用来记录、转移数字音频、视频。并能够将其转化成流的开源的计算机程序。采用LGPL或者GPL许可证。她提供了录制、转化以及流化音视频的完整解决方案。她包含了非常先进的音频、视频编码库:libavcodec。为了保证高可以执行和编解码质量,libavcodec里面有很多都是从头开始的。

    需要能力:理解视频编码解码原理和流程、理解图像压缩技术、音视频压缩技术等。网站链接:http://ffmpeg.org

    live555:live555实现了对多种音视频编码格式的音视频数据的流化、接受和处理等支持,包括MPEG、H264、DV、JPEG视频和多种音频编码。同时由于良好的设计,live555非常容易扩展对其他的格式的支持。

    需要技能:理解音视频编码解码的流程呢个、理解图像的压缩技术、音视频压缩的技术。主页:http://www.live555.com

    MobileVCLKit:鼎鼎大名的播放器VCL。优秀的封装,源码中最核心的部分,被封装成了独立的库,基于FFMPEG、LIVE555提供完整的媒体播放器,只需要定制自己的界面,支持COCOAPODS导入库,开发一个简单的界面播放器,你只需要几行代码,几乎覆盖了所有的媒体格式。

    需要技能:你只需要定制自己的界面,她的API看起来就是一个播放器源码官网:http://www.videolan.org

    如果播放器标准协议的视频流是http、RTSP、FTP。建议使用VCL,这个库有600M左右,兼容ARMV7、ARMV7S、ARM64的情况下,编译后大概会增加15M或者20M左右的体积。

    使用POD的话,非常简单,省区了编译烦恼:

    pod 'MobileVCLKit'

    如果你要做比较精细的视频解码控制,或者要用到优化程序的体积,可以使用FFMPEG或者live555。要做视频编码的话,使用FFMPEG会更佳的好支持。

  • 相关阅读:
    41.分词器简单介绍
    40.倒排索引核心原理
    39.exact value and full text
    38.mapping小例子
    37.query string、_all metadata
    36.分页及deep paging
    35.multi-index和multi-type搜索模式
    BZOJ 1680 [Usaco2005 Mar]Yogurt factory:贪心【只用考虑上一个】
    BZOJ 1637 [Usaco2007 Mar]Balanced Lineup:前缀和 + 差分
    BZOJ 1647 [Usaco2007 Open]Fliptile 翻格子游戏:部分枚举 位运算
  • 原文地址:https://www.cnblogs.com/jiaoxiangjie/p/6752024.html
Copyright © 2011-2022 走看看