【音视频 ffmpeg 学习】麦克风数据采集,命令行播放 持续更新

ffmpeg 命令
windows 环境
查看设备

ffmpeg -list_devices true -f dshow -i dummy  

在这里插入图片描述
采集麦克风代码

	//1. init
	avdevice_register_all();
    //avformat_network_init();
    //2.获取windows采集数据所支持的格式(dshow)
    const AVInputFormat *fmt = av_find_input_format("dshow");
    int ret = 0;

    AVPacket pkt;
    //3.定义录制音屏格式上下文。
    AVFormatContext *ctx = nullptr;
    //内装麦克风 (Conexant SmartAudio HD)
    // 麦克风 (Realtek(R) Audio)
    //const char *audio_device = "audio=内装麦克风 (Conexant SmartAudio HD)";

    const char *audio_device = "audio=麦克风 (Realtek(R) Audio)";
    ret = avformat_open_input(&ctx, audio_device, fmt, nullptr);
    if(ret != 0)
    {
        qDebug() << ret << "打开设备失败";
        return;
    }
    // 4.定义一个文件用来保存所采集的音频设备
    QFile file("./test.pcm");
    file.open(QIODevice::WriteOnly);
    if(!file.isOpen()){
        qDebug() << "file open fialed";
        avformat_close_input(&ctx);
        return;
    }
    //5.采集音频数据 ffplay -ar 4100 -ac 2 -f s16le test.pcm
    while( !status_flag && !av_read_frame(ctx, &pkt)){
         file.write((const char*)pkt.data, pkt.size);
    }
    //6.释放资源
    avformat_close_input(&ctx);
    file.close();

使用命名播放

ffplay -ar 4100 -ac 2 -f s16le test.pcm
敬告:该系列的课程在抓紧录制更新中,敬请大家关注。敬告: 该系列的课程涉及:FFmpeg,WebRTC,SRS,Nginx,Darwin,Live555,等。包括:音视频、流媒体、直播、Android、视频监控28181、等。  我将带领大家一起来学习采集麦克风、PCM重采样、AAC或MP3音频编码存储、并直播。具体内容包括:1.FFmpeg采集麦克风并存储为PCM。2.PCM重采样原理及实战。3.采集麦克风并实时转码AAC或MP3并保存文件。4.采集麦克风并实时转码AAC并可以直播。 音视频与流媒体是一门很复杂的技术,涉及的概念、原理、理论非常多,很多初学者不学 基础理论,而是直接做项目,往往会看到c/c++的代码时一头雾水,不知道代码到底是什么意思,这是为什么呢? 因为没有学习音视频和流媒体的基础理论,就比如学习英语,不学习基本单词,而是天天听英语新闻,总也听不懂。所以呢,一定要认真学习基础理论,然后再学习播放器、转码器、非编、流媒体直播、视频监控、等等。 梅老师从事音视频与流媒体行业18年;曾在永新视博、中科大洋、百度、美国Harris广播事业部等公司就职,经验丰富;曾亲手主导广电直播全套项目,精通h.264/h.265/aac,曾亲自参与百度app上的网页播放器等实战产品。 目前全身心自主创业,主要聚焦音视频+流媒体行业,精通音视频加密、流媒体在线转码快编等热门产品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值