Я столкнулся с точно такой же проблемой, когда пытался записывать с помощью этой похожей команды (обратите внимание, что я пытаюсь использовать видеокодек для скринкастинга без потерь huffyuv вместо того, чтобы пытаться кодировать прямо в x264):
avconv -f alsa -i pulse -f x11grab -r 30 -s 1920x1080 -i :0.0 -vcodec huffyuv -acodec libmp3lame -ac 1 -threads auto screencast.avi
Потратив слишком много времени на эксперименты, я обнаружил, что если я установлю многословие на «тихо», то «пропуск» или «изменчивость» несколько улучшится:
avconv -v quiet -f alsa -i pulse -f x11grab -r 24 -s 1920x1080 -i :0.0 -vcodec huffyuv -acodec libmp3lame -ac 1 -threads auto screencast.avi
Единственный способ, который я нашел для полного устранения проблемы, — это записать видео и аудио отдельно в двух экземплярах avconv, а затем убить их, чтобы остановить запись:
хаффьюв:
avconv -v quiet -f x11grab -r 24 -s 1920x1080 -i :0.0 -vcodec huffyuv -threads auto video.mkv & \
avconv -v quiet -f alsa -i pulse -ar 22050 -ab 32 -ac 1 -threads auto audio.mp3 &
x264:
avconv -f x11grab -r 24 -s 1920x1080 -i :0.0 -qscale 0 -vcodec libx264 -crf 26 -preset superfast -v quiet -threads auto -y 001.mkv & \
avconv -f alsa -i pulse -acodec libmp3lame -ar 22050 -ab 32 -ac 1 -threads auto -v quiet -y 001.mp3 &
Оба экземпляра avconv работают в фоновом режиме. Чтобы остановить запись, убейте их обоих одновременно с помощью:
kill %1 %2
Чтобы объединить аудио и видео в один файл:
avconv -i video.mkv -i audio.mp3 -c:a copy -c:v copy video_and_audio.mkv
person
Chad Quickstad
schedule
26.08.2014