У меня возникли проблемы с записью звука из динамиков с помощью avconv.
Это команда, которую я набираю в терминале:
avconv -f alsa \
-i pulse -f x11grab -r 30 -s 1920*1080 \
-i :0.0 \
-vcodec libx264 -preset ultrafast \
-ab 320k -threads 8 \
screen.mkv
ПРОБЛЕМА: avconv записывает звук динамика и звука моего микрофона, однако звук динамика очень низкий. Я попытался поиграть со всеми моими уровнями звука / громкости, и я не могу заставить avconv лучше воспринимать звук динамика.
Есть ли опция для команды avconv, предназначенная для звука динамика?
Пожалуйста, не отвечайте «use gtk-recordMyDesktop» или «kazam», я считаю, что avconv гораздо удобнее.
Любая помощь приветствуется, спасибо!
Информация находится в справочных страницах для avconv . В моей версии (вероятно, такой же, как ваша) я нашел ее в главе «Устройства ввода», в разделе «Импульс», в строке 1854.
Введите:
$ pactl list sources | less
Вы увидите информацию о "Source # 0", "Source # 1" и т. Д. В зависимости от того, сколько звуковых карт и еще много чего у вас есть. .
Получите строку под «Имя:», это будет что-то вроде:
alsa_output.pci-[some number].analog-stereo.monitor
где «некоторое число» зависит от вашего оборудования.
Вместо демультиплексирования с использованием alsa напрямую (avconv ... -f alsa ...), как вы пытались сделать выше, используйте вместо него импульс:
avconv ... -f pulse -i alsa_output.pci-....analog-stereo.monitor ...
Это запишет отслеживаемое аудио и передается на динамики или наушники или где угодно. Если вы хотите использовать импульс для демультиплексирования и записи микрофона, используйте другое «Имя:» (или одно из других имен), которое не включает слово «монитор».
Надеюсь, это поможет.
Громкость динамика низкая, потому что он записывает звук через микрофон. Вы когда-нибудь находили способ записать оба вместе? У меня та же проблема. Я ношу наушники, чтобы играть, и звук тоже будет намного лучше ... недостаточно знаком с пульсом, чтобы знать, что изменить: - /
В типе терминала:
pactl list sources | grep analog-stereo.monitor
Показывает вывод:
Name: alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
ffmpeg -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor alsa-output_analog-stereo_monitor.wav
Я выполнил команду pactl, чтобы найти имя. Однако, когда я запускаю avconv, я получаю: john @ JudithLaptop: ~ $ avconv -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f x11grab -s $ (xwininfo -root | grep 'geometry' | awk '{print $ 2;}') -r 25 -i: 0.0 -vcodec mpeg2video -ar 44100 -s wxga -aspect 16: 9 -y /home/john/Teorary/p.mpg avconv версия 0.8.9-4: 0.8.9-0ubuntu0.12.04.1, Copyright (c) 2000-2013, разработчики Libav, построенные 9 ноября 2013 19:12:07 с gcc 4.6.3 Неизвестный формат ввода: 'pulse'
PS I не знаю, красная ли это сельдь, но я где-то видел, что ffmpeg нужен простой пакет libpulse, чтобы использовать параметр pulse. Я не вижу пакета libpulse-simple в моих 32-битных репозиториях Ubuntu Precise.
Установите pavucontrol
пакет. Откройте приложение PulseAudio Volume Control из приборной панели.
На вкладке Устройства ввода перейдите вниз и выберите Все устройства ввода . Затем нажмите кнопку с галочкой рядом с устройством под названием «Монитор ... (имя вашего устройства)». Теперь устройство ввода импульсов проходит через динамики.
Настройки, которые вы используете в данный момент на avconv, должны быть в порядке для правильной работы.