vs+ffmpeg 提取h.264 yuv视频文件和pcm、wav音频文件(附源码链接)
一、文件路径
这是输入文件的路径,把它改成自己文件的路径
二、输出视频信息
输出的文件路径,可以改成自己的路径
输出的文件信息,可以根据自己的需求加。然后我就是根据我们老师的要求来了。
ffmpeg自带的一个函数其实就是可以输出视频的几乎所有信息了。你也可以自己试试看
av_dump_format(pFormatCtx,0,filepath,0);
三、提取并输出视频
改成自己的路径。然后文件格式就是按照代码就可以了
yuv文件的话,我的代码是yuv420的格式。因为人眼对亮度比较敏感,所以uv数据可以适当减少。如果你对画质的要求比较高,可以改一下
四、提取并输出音频信息
同样的,需要改路径。
然后我是提取了pcm和wav两种,所以两边都要改。
肯定会有人有疑问:我可不可以只要wav不要pcm呀?
不可以。因为这个代码的wav是用pcm转换的。pcm格式的话文件头部不要加信息,wav文件头部是有整个文件信息的。如果你不想要的话,可以把上面的
int simplest_pcm16le_to_wave(const char* pcmpath, int channels, int sample_rate, const char* wavepath)
函数和主函数结合一下。就可以直接输出wav的音频啦
源码
链接:https://pan.baidu.com/s/1f5z4RJnjd1thecfIpUdpsA
提取码:ewpi