ffmpeg, 캡처하는 동안 두 개의 출력 파일을 만드는 방법은 무엇입니까?

ffmpeg, 캡처하는 동안 두 개의 출력 파일을 만드는 방법은 무엇입니까?

다음 명령줄을 통해 데스크톱 비디오와 오디오를 MP4로 성공적으로 캡처하는 화면 녹화 프로젝트가 있습니다.

ffmpeg -report -y -f x11grab -s 1920x1080 -r 5 -thread_queue_size 3000 -i :44
    -f alsa -ac 1 -thread_queue_size 3000 -i hw:Loopback,1,0 -c:v libx264
    -preset veryfast -crf 28 -movflags +faststart -pix_fmt yuv420p -c:a aac
    -strict -2 video_and_audio_output.mp4

잘 작동합니다. 내가 원하는 것은 파일에 두 번째 패스를 할 필요 없이 오디오 트랙만 포함하는 추가 출력을 동시에 생성하는 것입니다. 이것이 가능한가? 그렇다면 매개변수를 설정하는 방법에 대한 단서가 있습니까?

답변1

사용티 먹서:

ffmpeg -f x11grab -video_size 1920x1080 -framerate 5 -thread_queue_size 3000
    -i :44 -f alsa -channels 1 -thread_queue_size 3000 -i hw:Loopback,1,0 -map 0
    -map 1 -c:v libx264 -preset veryfast -crf 28 -pix_fmt yuv420p -c:a aac -f tee
    "[select=v,a:movflags=+faststart]video_and_audio_output.mp4|[select=a:movflags=+faststart]audio.m4a"
  • 을 위한x11그랩-video_size대신 -s-framerate대신 사용하십시오 -r.
  • 을 위한알사-channels대신 사용하십시오 -ac.
  • 로 인코딩하려면 오래된 버전만 -strict -2(또는 )이 필요합니다 .-strict experimental-c:a aac

관련 정보