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);   //关闭设备
相关推荐
南宫乘风9 小时前
从零开发AI诊断Agent:拆解LLM+Tools+Prompt三大核心
人工智能·ffmpeg·prompt
l1t1 天前
使用ffmpeg把英语四级听力MP3文件转成wav供模型识别
ffmpeg·语音识别
liulilittle3 天前
Windows 11 上搭建 YouTube 视频下载工具:yt-dlp + FFmpeg
windows·ffmpeg·音视频
指尖在键盘上舞动3 天前
Cannot find matching video player interface for ‘ffpyplayer‘.解决方案
linux·ubuntu·ffmpeg·psychopy·ffpyplayer
glumes4 天前
音视频教程-第二节
ffmpeg
softbangong4 天前
899-批量视频处理工具
ffmpeg·格式转换·批量处理·音频提取·视频处理工具·视频截取
智能工业品检测-奇妙智能5 天前
SpringBoot整合FFmpeg的方法
人工智能·ffmpeg·springboot·deepseek·openclaw
斌蔚司李5 天前
Windows 上安装 FFmpeg
windows·ffmpeg
binderIPC5 天前
Android项目中FFmpeg的.so包使用详情
android·ffmpeg
java_nn5 天前
使用ffmpeg直播推流
ffmpeg