C++---基于ffmpeg实现视频播放器(一)

ffmpeg.exe

  • 功能:
    ffmpeg.exe实现视频的转码。

  • 命令格式
    ffmpeg -i [输入文件的路径] -b:v [输出文件的码率] [输入文件的路径]

  • 简单命令

  • ffmpeg -i input.avi -b:v 640k output.ts
    命令的作用:将当前文件夹下的input.avi文件转换为output.ts文件,并将output.ts文件视频的码率设置为640kbps。

常见的ffmpeg参数
C++---基于ffmpeg实现视频播放器(一)_第1张图片
ffmpeg相关文档

ffmplay.exe

  • 功能
    ffmplay.exe用于视频的播放。
  • 命令格式
    ffmplay [输入文件的路径]
  • 简单命令
    ffmplay input.avi
    播放该文件路径下的input.avi文件

创建一个Win32程序

C++---基于ffmpeg实现视频播放器(一)_第2张图片C++---基于ffmpeg实现视频播放器(一)_第3张图片C++---基于ffmpeg实现视频播放器(一)_第4张图片
单击完成以后,并不能直接编写程序,由于我们是基于ffmpeg库的开发,所以还必当前Win32程序进行一个配置。

ffmpeg库的配置

  • 先将ffmpeg库所需要的文件拷贝到当前环境下。
    C++---基于ffmpeg实现视频播放器(一)_第5张图片C++---基于ffmpeg实现视频播放器(一)_第6张图片
    将选中的文件拷贝到当前项目中。
  • 解决方案—>项目—>属性—>C/C+±–>常规—>附加库目录
    C++---基于ffmpeg实现视频播放器(一)_第7张图片C++---基于ffmpeg实现视频播放器(一)_第8张图片- 配置静态库
    解决方案—>项目—>属性—>链接器—>常规—>附加库目录
    C++---基于ffmpeg实现视频播放器(一)_第9张图片
  • 添加动态库
    链接器—>输入—>附加库目录

C++---基于ffmpeg实现视频播放器(一)_第10张图片③:里面写的就是ffmpeg库的.dll程序名称。
avcodec.lib;avformat.lib; avutil.lib; avdevice.lib; avfilter.lib;postproc.lib; swresample.lib; swscale.lib
C++---基于ffmpeg实现视频播放器(一)_第11张图片
创建完成后,赶紧来测试一下,看环境是否配置成功。

#include "stdafx.h"
#define __STDC_CONSTANT_MACROS
extern "C"       
{
#include "libavcodec/avcodec.h "
}

int _tmain(int argc, _TCHAR* argv[])
{
	printf("%s", avcodec_configuration());
	return 0;
}

现在程序是一闪而过,我们可以通过打断点的方式,或者在return前加system("pause),来查看是否出现内容。这里我们使用打断点的方式。
C++---基于ffmpeg实现视频播放器(一)_第12张图片当出现上面的内容时,则表示环境配置成功。

你可能感兴趣的:(C++---基于ffmpeg实现视频播放器(一))