libvlc 虽然很强大,但是他最大的问题是过于庞大使得程序会很大,特别移动端程序,android端有70多M,ios有40多M,最近研究了怎么去裁剪libvlc已达到相对合适的尺寸。
一.libvlc for android裁剪和编译
1.编译脚本buildsystem/compile-libvlc.sh裁剪
(1)VLC_CONFIGURE_ARGS参数介绍
–enable-avformat --enable-swscale --enable-avcodec
ffmpeg
libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能,包含demuxers和muxer库。
libavcodec:用于各种类型声音/图像编解码。
libavutil:包含一些公共的工具函数。
libswscale:用于视频场景比例缩放、色彩映射转换。
libpostproc:用于后期效果处理。
–enable-live555 --enable-realrtsp
Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持
–enable-opus
Opus编码器 是一个有损声音编码的格式,由互联网工程任务组(IE