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等库文件,过程都类似。
相关推荐
mit6.8242 小时前
[solution] 关闭硬件加速解决导出视频绿屏
音视频
weixin_660096782 小时前
如何关闭vscode中的copilot生成结束后的消息提醒
ide·vscode·copilot
开开心心就好2 小时前
键盘改键工具免安装,自定义键位屏蔽误触
java·网络·windows·随机森林·计算机外设·电脑·excel
2601_949532843 小时前
Psello HTML Template: A Developer‘s Deep-Dive Review and Guide - Download Free
前端·windows·html·seo·wordpress·gpl
软件资深者4 小时前
USB存储设备管理工具 启用或者禁用+usb修复
windows·microsoft·计算机外设·系统修复
失眠的稻草人2594 小时前
【windows】注入--BHO机制
windows
咕噜咕噜啦啦4 小时前
ROS入门
linux·vscode·python
XLYcmy4 小时前
一个用于统计文本文件行数的Python实用工具脚本
开发语言·数据结构·windows·python·开发工具·数据处理·源代码
Minilinux20184 小时前
Android音频系列(09)-AudioPolicyManager代码解析
android·音视频·apm·audiopolicy·音频策略
程序员徐师兄5 小时前
Windows JDK17 下载安装教程,附详细图文
java·windows·jdk17 下载安装·java17 下载安装教程