ffmpeg实现屏幕录制、摄像头录制、录音和RTMP推流

一.项目介绍

本项目适用于新手对ffmpeg框架学习的项目,此项目包括功能,屏幕录制、音频录制、摄像头采集录制、音视频通过RTMP推流。

二、开发环境

QT+vs2017+ffmpeg

三、主要代码介绍

      1.使用QT获取音频输入设备代码

QStringList CUtilDevice::get_input_audio_devices()
{
    //获取输入音频设备名称
    QList audioDeviceListI = QAudioDeviceInfo::availableDevices(QAudio::AudioInput);
    QStringList ret;

    for(int i = 0; i < audioDeviceListI.size(); i++)
    {
        QString device_name = audioDeviceListI.at(i).deviceName();
        bool is_repeat = false;
        for(int j = 0; j < ret.size(); j++)
        {
            if(ret.at(j) == device_name)
            {
                is_repeat = true;
            }
        }

        if(!is_repeat)
        {
            ret.append(device_name);
        }
    }

    return ret;
}

      2.使用QT获取摄像头设备代码

QStringList ret;
    QList device

你可能感兴趣的:(Qt,直播,ffmpeg,c++,qt)