Windows下VScode配置FFmpeg开发环境保姆级教程

相关准备

  1. 提前在本地开发环境中配置好mingw64或者msys2开发工具集。

  2. 安装VScode软件。

下载Windows版本的FFmpeg相关库

  1. 下载地址:https://ffmpeg.org/download.html

  2. 下载步骤:如下图。


  3. 下载后的文件:包含了可执行文件ffmpeg、ffplay、ffprobe,头文件、库文件等。

    bash 复制代码
    ├─bin
    ├─doc
    ├─include
    │  ├─libavcodec
    │  ├─libavdevice
    │  ├─libavfilter
    │  ├─libavformat
    │  ├─libavutil
    │  ├─libswresample
    │  └─libswscale
    └─lib
        └─pkgconfig

VScode配置FFmpeg步骤

  1. 创建文件夹test-ffmpeg

    bash 复制代码
    mkdir test-ffmpeg
  2. 将ffmpeg库文件移到test-ffmpeg文件夹

    bash 复制代码
    mv ffmpeg test-ffmpeg
  3. VScode打开test-ffmpeg文件夹

  4. 配置 c_cpp_properties.json

    • 按住"ctrl+shift+p ",选择 C/C++:Edit Configurations(JSON),点开默认内容如下:

    • 配置c_cpp_properties.json内容,修改如下:

      bash 复制代码
      {
          "configurations": [
              {
                  "name": "Win32",
                  "includePath": [
                      "${workspaceFolder}/**",
                      "C:/Users/yance/downloads/test-ffmpeg/ffmpeg/include"
                  ],
                  "defines": [
                      "_DEBUG",
                      "UNICODE",
                      "_UNICODE"
                  ],
                  "windowsSdkVersion": "10.0.26100.0",
                  "compilerPath": "C:/mingw64/bin/gcc.exe",
                  "cStandard": "c17",
                  "cppStandard": "c++17",
                  "intelliSenseMode": "windows-gcc-x64"
              }
          ],
          "version": 4
      }
  5. 配置 tasks.json

    • 按住"ctrl+shift+p ",输入"tasks",选择第一个,即默认的task。

    • 配置tasks.json,修改内容如下:

      bash 复制代码
      {
      	"version": "2.0.0",
      	"tasks": [
      		{
      			"type": "cppbuild",
      			"label": "C/C++: gcc.exe 生成ffmpeg活动文件",
      			"command": "C:/mingw64/bin/gcc.exe",
      			"args": [
      				"-fdiagnostics-color=always",
      				"-g",
      				"${file}",
      				"-L",
      				"C:/Users/yance/downloads/test-ffmpeg/ffmpeg/lib",
      				"-I",
      				"C:/Users/yance/downloads/test-ffmpeg/ffmpeg/include",
      				"-lavcodec",
      				"-lavdevice",
      				"-lavfilter",
      				"-lavformat",
      				"-lavutil",
      				"-lswresample",
      				"-lswscale",
      				"-o",
      				"${fileDirname}\\${fileBasenameNoExtension}.exe"
      			],
      			"options": {
      				"cwd": "${fileDirname}"
      			},
      			"problemMatcher": [
      				"$gcc"
      			],
      			"group": {
      				"kind": "build",
      				"isDefault": true
      			},
      			"detail": "编译器: C:/mingw64/bin/gcc.exe"
      		}
      	]
      }
  6. 配置 launch.json

    • 点击VScode顶部的"运行"

    • 点击"添加配置",在弹出的窗口上选择"C++(GDB/LLDB)"

    • 配置launch.json,修改内容如下:

      bash 复制代码
      {
          // 使用 IntelliSense 了解相关属性。 
          // 悬停以查看现有属性的描述。
          // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
          "version": "0.2.0",
          "configurations": [
              {
                  "name": "(gdb) 启动",
                  "type": "cppdbg",
                  "request": "launch",
                  "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
                  "args": [],
                  "stopAtEntry": false,
                  "cwd": "${fileDirname}",
                  "environment": [],
                  "externalConsole": false,
                  "MIMode": "gdb",
                  "miDebuggerPath": "c:/mingw64/bin/gdb.exe",
                  "setupCommands": [
                      {
                          "description": "为 gdb 启用整齐打印",
                          "text": "-enable-pretty-printing",
                          "ignoreFailures": true
                      },
                      {
                          "description": "将反汇编风格设置为 Intel",
                          "text": "-gdb-set disassembly-flavor intel",
                          "ignoreFailures": true
                      }
                  ]
              }
          ]
      }
  7. 创建main.c文件进行测试

    • 编辑测试代码
    c 复制代码
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <stdint.h>
    #include <libavutil/log.h>
    
     
    int main()
    {
        av_log_set_level(AV_LOG_DEBUG);
        printf("hello FFmpeg!\n");
        av_log(NULL, AV_LOG_INFO, "hello FFmpeg!\n");
    
        return 0;
    }
    • 运行
    • 生成exe文件并输出结果

备注

  • 可以根据需求将gcc的编译器修改成g++;
  • 可以根据需求再配置OpenCV等库文件,过程都类似。
相关推荐
程序员老舅4 小时前
C++音视频开发:基础面试题
c++·ffmpeg·音视频·视频编码·h264·音视频编解码·视频解码
张人玉6 小时前
WinForm之ListBox 控件
服务器·windows·microsoft
程序视点6 小时前
Windows桌面美化神器MyDockFinder:让你的电脑瞬间拥有macOS风格界面
windows·macos·mac
带电的小王7 小时前
Windows中使用Qwen模型:VSCode+Cline
ide·vscode·ai编程·qwen
程序视点15 小时前
FDM下载神器:免费多线程下载工具,速度90+M/S,完美替代1DM!
windows·后端
aiprtem15 小时前
LVGL + ESP-Brookesia 在Windows下的编译和运行
windows·物联网
小毛驴85017 小时前
Visual Studio Code (VSCode) 的常用快捷键
ide·vscode·编辑器
aoxiang_ywj17 小时前
ffmpeg命令和ffplay命令详解
ffmpeg
悟能不能悟17 小时前
cmd怎么取消关机命令
windows
迷渡17 小时前
用自然语言控制你的电脑:Windows-MCP 项目实测
windows