Рейтинг:0

Как я могу использовать ffmpeg для записи моего экрана с входными и выходными звуками?

флаг in

я пытался использовать ffmpeg чтобы записать мой экран с его аудио. Я основываюсь на командах, используемых на этот ответ. Я знаю, что могу записать свой экран без звука с помощью команды:

ffmpeg -video_size 1920x1080 -частота кадров 30 -f x11grab -i:0.0 -map '0' 0.mp4

Я также знаю, что могу записать звук со своего компьютера с помощью команды:

ffmpeg -f pulse -i "alsa_input.pci-0000_00_1f.3.analog-stereo" -map '0' 0.mp3

Однако, если я попытаюсь объединить эти команды с:

ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0 -f pulse -i "alsa_input.pci-0000_00_1f.3.analog-stereo" -map '0' 0.mp4

Он генерирует видео без звука. Что мне не хватает? Как я могу объединить эти две команды, чтобы создать видео со звуком, используя ffmpeg?

mchid avatar
флаг bo
Пробовали ли вы использовать alsa вместо pulse: например, `-f alsa -i hw:0`?
mchid avatar
флаг bo
[Этот ответ] (https://askubuntu.com/questions/892482/how-to-record-desktop-with-audio-on-ffmpeg) показывает пример использования alsa вместо пульса.
raylight avatar
флаг in
@mchid Несмотря на то, что когда я использую команду из этого ответа, она генерирует видео со звуком, видео не показывает, что у меня на экране. Он показывает что-то вроде серого размытого изображения, а звук очень плохой. Я не уверен, должен ли я настроить некоторые параметры там, чтобы он правильно отображал мой экран.
mchid avatar
флаг bo
В [этом ответе] (https://askubuntu.com/a/450786/167115) вы можете попробовать это с помощью своей исходной команды. Что они делают, так это устанавливают pavucontrol: `sudo apt update` и `sudo apt install pavucontrol`, а затем открывают приложение pavucontrol (оно может отображаться как импульсный регулятор громкости звука в ваших установленных приложениях). Затем запустите запись ffmpeg и перейдите на вкладку «запись» pavucontrol. Здесь должен отображаться ffmpeg, и вы можете изменить ввод на «монитор».
mchid avatar
флаг bo
Извините, я не вставил ссылку. Я отредактировал предыдущий комментарий, добавив ссылку.
mchid avatar
флаг bo
Вы также можете проверить этот исходный вопрос, поскольку они используют такие параметры, как `-acodec libmp3lame` и другие, которые могут быть необходимы для файла mp4?
raylight avatar
флаг in
@mchid Я настраиваю параметры и пытаюсь заставить его работать здесь ... Самое близкое, что я получил от его работы, это с `ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0 -f alsa -i hw :0 0.mp4`... Видео записывает хорошо, но звук очень плохой, я не могу разобрать, о чем идет речь, я просто знаю, что есть звук. Я пробовал поставить `-acodec libmp3lame` перед именем файла, и он тоже выполняется... Но результат все тот же...
mchid avatar
флаг bo
Как я уже сказал, попробуйте с опцией пульса, но откройте `pavucontrol`, прежде чем запускать команду. Затем запустите команду и перейдите на вкладку «Запись» в pavucontrol и убедитесь, что она установлена ​​на ту, которую вы хотите с помощью «монитора», чтобы она записывала фактический вывод этого устройства. Другой вариант — установить пакет alsa-utils: sudo apt install alsa-utils, запустить команду alsamixer и отрегулировать громкость. Убедитесь, что ни один из томов не отображается красным цветом. Также убедитесь, что автоматизация отключена.
raylight avatar
флаг in
@mchid А, теперь это решено. В моем случае `pavucontrol` показывал все в порядке на своих элементах управления. Проблема заключалась в моей команде `ffmpeg`. Команда из вопроса по вашей второй ссылке делает именно то, что мне нужно: `ffmpeg -f x11grab -y -r 60 -s 1920x1080 -i:0.0 -vcodec mpeg4 -f alsa -i pulse -ar 44100 -acodec libmp3lame -ab 192k - ac 2 output.mp4 -qscale 0`. Хотя ОП сказал, что у него это не работает, у меня это работает нормально :)
флаг za
Лично я ненавижу изменять любую конфигурацию PA, так как это создает много проблем для моей настройки. Предложение... Для простого подхода с графическим интерфейсом попробуйте "simplescreenrecorder" из репозиториев. Это записывает только экран. Чтобы добавить звук, используйте микрофон для записи с динамиков. Если у вас хорошее оборудование, у вас будут хорошие результаты. Я использую этот простой и быстрый метод для записи прямых трансляций из сети (но не для нарушения авторских прав).
mchid avatar
флаг bo
Помните, что обычно не важно, что pavucontrol показывает правильное устройство на вкладке записи, он должен показывать правильное устройство, указанное как «монитор» правильного устройства. Но если работает, то работает. Я также заработал, используя следующее: `ffmpeg -f pulse -ac 2 -i default -f x11grab -r 30 -s 1920x1080 -i :0 -c:v libx264 filename.mp4`

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.