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等库文件,过程都类似。
相关推荐
s_nshine27 分钟前
释放C盘,迁移studio相关数据到其他盘
android·windows·android studio·内存·c盘
localbob1 小时前
日语视频 SRT 字幕生成软件下载:日语视频本地自动翻译SRT字幕生成、日语视频自动翻译 Faster Whisper v1.7 下载与使用教程(含AMD显卡支持)
whisper·音视频·机器翻译·日语字幕翻译·日语视频翻译·本地ai翻译日语视频
衫水2 小时前
Windows Server Nginx 代理企业内网 API 偶发超时处理与保活 SOP(20260608))
运维·windows·nginx
stevenzqzq2 小时前
vsCode AI插件
ide·人工智能·vscode
音乐宝贝家3 小时前
吉他桶型技术解析:GA桶 vs D桶 vs OM桶——入门弹唱选哪个
新媒体运营·音视频·业界资讯·媒体·材质·零售·内容运营
X_szxj3 小时前
Windows安装liboqs库
windows·github
luoyayun3613 小时前
Qt + FFmpeg 实战:获取音视频文件基础属性、流信息和元数据
qt·ffmpeg·音视频·元数据·获取音视频文件属性
Rudon滨海渔村3 小时前
ffmpeg裁剪视频黑屏、不准时等处理方式 - ffmpeg基本操作
ffmpeg·音视频
caimouse3 小时前
Reactos 第 5 章 进程与线程 — 5.1 概述
c语言·windows·架构
拾贰_C3 小时前
【Ubuntu | VSCode | SSH | 远程连接 | Linux】VSCode 怎么实现ssh远程连接
linux·vscode·ubuntu