文章预览
一、libswscale vs libyuv FFmpeg libswscale是最常用的做视频图像缩放、格式转换的库,另一个常用的库是Google开发的libyuv。简单做个定性的(也就是说,没有多少依据、不负责的)比较: 优点 缺点 libyuv - API傻瓜化,使用简单 - arm架构优化充分 - 功能少 - 缩放、格式转换质量低 - 不支持多线程加速 libswscale - 功能异常丰富,支持的格式多、算法多,支持高精度的转换 - x86架构有很多优化 - 支持多线程加速 - API费解,用户使用门槛高 - 内部实现充满黑魔法,维护难度高 - 移动端优化很少 二、FFmpeg中最费解的一个库 wiki上有一段描述说,libswscale是FFmpeg里最费解的代码: libswscale is an old and integral component of FFmpeg which is relied on, in some form, by almost every user. Despite this, it is one of the hardest parts of FFmpeg to extend and understand, owing to its historical growth in complexity. 举个例子
………………………………