在软件开发行业当中,音视频是比较小众的方向,以至于很多程序员都没听说过YUV,就更别说了FFmpeg。实际上FFmpeg很早就有了,只是它采用C语言编写,所以在WEB当道的国内软件业中,FFmpeg就像独孤求败那样,一直都未能广为人知。
随着4G和5G的广泛普及,以及移动互联网的蓬勃发展,以短视频、直播等为代表的音视频应用异军突起,FFmpeg这个音视频基座才逐渐被广大程序员了解。尤其是三年疫情期间,许多人因故宅在家里,或在家远程办公,或在家远程学习,助力了音视频应用的发展壮大。
然而FFmpeg本身不提供交互式界面,往往要再封装一层应用界面,才能交给最终用户使用。封装了FFmpeg的著名软件,包括剪辑短视频的剪映,包括实时录像的OBS Studio,乃至流媒体服务器SRS和ZLMediaKit,都以各种形式引用FFmpeg。因此,入门音视频就意味着必须掌握FFmpeg,只有熟悉FFmpeg的命令行与API调用,才能高效地处理各种音视频应用。
令人惋惜的是,国内有关FFmpeg的技术书籍实在少得可怜,尤其关于FFmpeg开发实战的API教程更是凤毛麟角。FFmpeg教材已经如此匮乏了,网络上FFmpeg技术文章也是良莠不齐,使得音视频初学者难以对FFmpeg下手,往往遇到一个难题陷进坑里出不来,由此劝退了不少程序员,无形中显得音视频门槛很高。
有鉴于此,笔者苦心钻研FFmpeg编程,从初学者的角度出发,编写了这本由浅入深的FFmpeg入门书籍《FFmpeg开发实战:从零基础到短视频上线》。该书没有一开始就堆砌许多专业术语,而是从最基本的搭建开发环境开始,引导读者利用FFmpeg编写第一个“Hello World”程序,从而让新手更加适应这种入门编程的节奏。
全书以项目实战为主线,全书共计提供了9大实战项目,每个章节都有专门分类的技术讲解,除了前面三个基础章节以外,后面九章都提供了一个实战项目,方便读者通过实战项目巩固本章学到的FFmpeg编程技术。通过上机实战,有利于理论联系实际,不但要知其然,还要知其所以然。
《FFmpeg开发实战:从零基础到短视频上线》与其他FFmpeg书籍相比,一大特色是介绍了如何将FFmpeg应用于桌面程序和手机APP。因为通常的FFmpeg编程都是在命令行中操作,没有直接面向最终用户的桌面开发和移动开发,难以直观地看到可以交付的产品。而《FFmpeg开发实战:从零基础到短视频上线》的最后两章专门论述了桌面开发和移动开发,比如怎样通过Qt结合FFmpeg开发桌面程序,怎样通过Android Studio结合FFmpeg开发手机APP,通过交互式界面播放和剪辑视频文件,更能激发学员对FFmpeg的学习兴趣。
为了便于读者学习FFmpeg编程,《FFmpeg开发实战:从零基础到短视频上线》同时提供了随书源码、课件PPT,以及书中提到的软件源码和安装文件,这些下载资源可以扫描该书前言末尾的二维码获得。此外,最新的随书源码也可访问我的码云主页,下载页面是 https://gitee.com/aqi00/ffmpeg 。
有需要的朋友可以及时选购《FFmpeg开发实战:从零基础到短视频上线》一书。
当当购书 京东购书