Clion 使用ffmpeg 学习1 开发环境配置

Clion 使用ffmpeg 学习1 开发环境配置

  • 一、准备工作
    • [1. 准备环境](#1. 准备环境)
    • [2. 下载FFmpeg](#2. 下载FFmpeg)
  • 二、操作步骤
    • [1. Clion 新建一个C项目](#1. Clion 新建一个C项目)
    • [2. 修改 CMakeLists.txt](#2. 修改 CMakeLists.txt)
    • [3. 修改配置](#3. 修改配置)
    • [4. 运行测试](#4. 运行测试)
    • [5. 打印rtsp 流信息的 demo](#5. 打印rtsp 流信息的 demo)

一、准备工作

在视频处理和多媒体应用程序开发中,FFmpeg 是一个强大的开源工具,它提供了处理音频和视频的丰富功能。CLion 是一款受欢迎的跨平台集成开发环境(IDE),它提供了强大的代码编辑和调试工具。

本文章介绍在CLion下配置FFmpeg开发环境的方法。

1. 准备环境

  • windows10
  • 已安装Clion

2. 下载FFmpeg

官网入口

找 Windows builds by BtbN,跳转到:

https://github.com/BtbN/FFmpeg-Builds/releases

选择合适的版本下载 。 我这里下载的是 ffmpeg-n4.4.4-6-gd5fa6e3a91-win64-gpl-shared-4.4 。

二、操作步骤

1. Clion 新建一个C项目

2. 修改 CMakeLists.txt

c 复制代码
cmake_minimum_required(VERSION 3.24)
project(ffmpeg_learn1 C)

set(CMAKE_C_STANDARD 11)

include_directories(E:/Downloads/ffmpeg-master-latest-win64-gpl-shared/include)
link_directories(E:/Downloads/ffmpeg-master-latest-win64-gpl-shared/lib)

add_executable(ffmpeg_learn1 main.c)

target_link_libraries(
        ffmpeg_learn1
        avcodec
        avdevice
        avfilter
        avformat
        avutil
        postproc
        swresample
        swscale
)

3. 修改配置

点击 Edit Configurations:

设置环境变量:

bash 复制代码
path=E:/Downloads/ffmpeg-master-latest-win64-gpl-shared/bin

4. 运行测试

main.c输入内容 :

c 复制代码
#include "libavformat/avformat.h"

int main() {
    av_log_set_level(AV_LOG_INFO);
    av_log(NULL, AV_LOG_INFO, "avformat_configurations: \n %s", avformat_configuration());
    return 0;
}

点击运行:

5. 打印rtsp 流信息的 demo

c 复制代码
#include <stdio.h>
#include <libavformat/avformat.h>

int main(int argc, char *argv[]) {
    // 初始化 FFmpeg
    av_register_all();

    // 打开 RTSP 流
    AVFormatContext *formatContext = NULL;
    if (avformat_open_input(&formatContext, "rtsp://地址信息", NULL, NULL) != 0) {
        fprintf(stderr, "无法打开 RTSP 流\n");
        return 1;
    }

    // 获取流信息
    if (avformat_find_stream_info(formatContext, NULL) < 0) {
        fprintf(stderr, "无法获取流信息\n");
        return 1;
    }

    // 打印流信息
    av_dump_format(formatContext, 0, "rtsp://地址信息", 0);

    // 关闭 RTSP 流
    avformat_close_input(&formatContext);

    return 0;
}

通过官方文档 : https://www.ffmpeg.org/documentation.html 可以查看更多FFmpeg的操作方法。

相关推荐
小徐不会敲代码~3 分钟前
Vue3 学习 4
前端·vue.js·学习
MarkHD9 分钟前
智能体在车联网中的应用:第5天 车联网导论与体系认知:驶向智能出行的未来
学习
d111111111d14 分钟前
编码器测速详情解释:PID闭环控制
笔记·stm32·单片机·嵌入式硬件·学习·算法
我想我不够好。16 分钟前
电工学习 实操考点及打分项
学习
陈橘又青42 分钟前
开创性的初创企业利用 Amazon SageMaker孵化器释放企业价值
人工智能·网络协议·学习·ai·编辑器
扶尔魔ocy44 分钟前
【QT window】ffmpeg实现录音功能之AAC格式--mp4
qt·ffmpeg·视频处理
走在路上的菜鸟1 小时前
Android学Dart学习笔记第二十二节 类-扩展方法
android·笔记·学习·flutter
TL滕1 小时前
从0开始学算法——第二十天(简易搜索引擎)
笔记·学习·算法
小曾同学.com1 小时前
HLS协议中m3u8列表及ts文件的由来
ffmpeg·hls·ts文件·m3u8列表
你好~每一天1 小时前
数据分析专员:当传统汽车销售融入AI智能,如何驱动业绩新增长
大数据·数据结构·人工智能·学习·数据分析·汽车·高性价比