FFmpeg教程-二-代码实现录音

目录

一,实现步骤

二,具体实现

1,注册设备

2,获取输入格式对象

3,打开设备

4,采集数据


一,实现步骤

二,具体实现

1,注册设备

cpp 复制代码
// 初始化libavdevice并注册所有输入和输出设备
avdevice_register_all();

2,获取输入格式对象

cpp 复制代码
//获取输入格式对象
const char *fmtName = "dshow";  //设备名,根据自己的来
const AVInputFormat *fmt = av_find_input_format(fmtName);

3,打开设备

cpp 复制代码
AVFormatContext *ctx = NULL;//格式上下文
const char *deviceName = "audio=阵列麦克风 (AMD Audio Device)"; //自己的输入设备名
int ret = avformat_open_input(&ctx,deviceName,fmt,nullptr);  //打开
   if(ret<0)
   {
       char errbuf[1024];
       av_strerror(ret,errbuf,sizeof (errbuf));
       qDebug()<<"打开设备失败";
       return ;
   }else{
       qDebug()<<"打开成功";
   }

4,采集数据

cpp 复制代码
   AVPacket pkt;//数据包
   av_read_frame(ctx,&pkt);
   file.write((const char *)pkt.data,pkt.size);  //写入。 (请自己创建文件对象file)
   file.close();

5,释放资源

cpp 复制代码
   avformat_close_input(&ctx);   //关闭设备
相关推荐
汓㸓3 小时前
ffmpeg下载/配置环境/测试
ffmpeg
LDG_AGI12 小时前
【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战
人工智能·python·深度学习·机器学习·ffmpeg·whisper·音视频
静止了 所有的花开1 天前
FFmpeg 实现从摄像头获取流并通过RTMP推流
ffmpeg·音视频·h.264
loong_XL2 天前
pydub、ffmpeg 音频文件声道选择转换、采样率更改
ffmpeg·音视频·音频·采样率·声音处理
安步当歌3 天前
【FFmpeg】av_read_frame函数
c语言·c++·ffmpeg·视频编解码·video-codec
zhqh1003 天前
ffmpeg + opencv 把摄像头画面保存为mp4文件(Ubuntu24.04)
人工智能·opencv·ffmpeg
今天也想MK代码3 天前
Electron录制应用-打包静态文件问题【命令行ffmpeg导不出视频】
前端·javascript·ffmpeg·electron·音视频·wasm
cs阿坤dn3 天前
FFmpeg视频处理工具安装使用
ffmpeg·音视频
aqi004 天前
FFmpeg开发笔记(四十二)使用ZLMediaKit开启SRT视频直播服务
ffmpeg·音视频·直播·流媒体
安步当歌4 天前
【FFmpeg】avformat_write_header函数
c语言·c++·ffmpeg·视频编解码·video-codec