FFmpeg запись экрана, запись звука, запись экрана со звуком / Рабочий пример / Как найти звуковое устройство для FFmpeg?
Среднее прочтение 2 мин.Вот так вот я хотел поступить…
Захват вашего рабочего стола / Запись экрана
Вот несколько решений для захвата рабочего стола и записи видео с экрана с помощью ffmpeg. (Также доступна версия этой страницы на китайском языке.)
Для краткости эти команды не задают никаких дополнительных настроек кодера. Для получения дополнительной информации о кодировании H.264 см. Руководство по кодированию H.264.
По умолчанию эти команды будут использовать кодировщик x264, который должен быть достаточно быстрым на современных машинах. Смотрите раздел Запись без потерь, если вам нужно повысить производительность.
Просто скомуниздить статью по FFmpeg …
В общем инфа такая, Вы должны найти сначала аудио устройство — Которое у Вас выводит звук.
rem список устройств
rem ffmpeg.exe -list_devices true -f dshow -i dummy
В большинстве случаев выводит абракадабру...
Вы должны найти, что то подобное ...
@device_cm_{77D9A762-50C8-11D0-BD73-00A0C311CE86}\wave_{E5261C22-1945-2B07-8750-F0E132138E75}
Далее подставляем свое значение сюда…
rem отдельно работает
rem ffmpeg.exe -y -f dshow -i audio="@device_cm_{77D9A762-50C8-11D0-BD73-00A0C311CE86}\wave_{E5261C22-1945-2B07-8750-F0E132138E75}" output.mp3
Проверяем звук… Если нашли устройство значит добавляем его и сюда …
rem ffmpeg.exe -y -f dshow -i audio="@device_cm_{77D9A762-50C8-11D0-BD73-00A0C311CE86}\wave_{E5261C22-1945-2B07-8750-F0E132138E75}" -rtbufsize 100M -f gdigrab -framerate 25 -probesize 15M -draw_mouse 0 -i desktop -acodec aac -c:v libx264 -r 52 -preset ultrafast -tune zerolatency -crf 25 -pix_fmt yuv420p -f flv screen.mp4
Запускаем и все работает… кроме качества — качество нужно самим юзать … Иначе Вы не поймете FFmpeg …
На заметку… Не скачивайте никакие программы допом — как я понял, те кто уже прошарил при работе с ffmpeg, дополнительно пиарят свои кодеки и доп. проги.
Все вшито в FFmpeg ничего нового придумывать не требуется…
Еще … более подробно, можно ознакомится здесь
Основные команды:
Посмотреть устройства:
ffmpeg -list_devices true -f dshow -i dummy
Базовые варианты записи:
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (1080P Web Camera-Audio)" -c:v h264_amf -qp 0 output_test.mp4
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (Samson Meteor Mic)" -c:v hevc_amf -qp 0 output_test.mp4
AMD:
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (1080P Web Camera-Audio)" -c:v h264_amf -qp 0 output_test.mp4
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (Samson Meteor Mic)" -c:v hevc_amf -qp 0 output_test.mp4
NVIDIA:
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (1080P Web Camera-Audio)" -c:v h264_nvenc -qp 0 output_test.mp4
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (1080P Web Camera-Audio)" -c:v nvenc_hevc -qp 0 output_test.mp4
На CPU:
ffmpeg -f gdigrab -framerate 30 -i desktop -f dshow -i audio="Microphone (1080P Web Camera-Audio)" -c:v libx264rgb -crf 0 -preset ultrafast -color_range 2 output_test.mp4