3.13가 어떻게 비디오 파일을 가입 할 수 있습니까?
일부 멀티미디어 컨테이너 (MPEG-1, MPEG-2 PS, DV)는 비디오 파일을 연결하는 것만으로 개의 비디오 파일을 결합 할 수 있습니다.
은 따라서 당신은 겸손한 cat 명령 (또는 Windows에서 똑같이 겸손 사본)를 사용하여, 마지막으로 다시 선택의 형식으로 을 트랜스 코딩, 이러한 특권 형식으로 먼저 변환 그들에 의해 멀티미디어 파일을 연결 할 수 있습니다. input2.avi -same_quant intermediate2.mpg 고양이 intermediate1.mpg intermediate2.mpg> intermediate_all.mpg -same_quant 출력 intermediate_all.mpg -i 을 FFMPEG -i
는 FFmpeg -i input1.avi -same_quant intermediate1.mpg는 FFmpeg. avi 비디오 화질을 보존하려면 은 -same_quant를 사용하거나 중간 및 출력 파일에 대해 상당히 높은 비트 전송률을 설정해야합니다.
또한, 명명 된 파이프의 을 활용하여 거대한 중간 파일을 피할 수 있음을주의해야 플랫폼 지원이 :
에서는 mkfifo intermediate1.mpg에서는 mkfifo intermediate2.mpg는 FFmpeg -i input1.avi -same_quant - Y는 <을/dev/null &는 FFmpeg을 intermediate1.mpg -i input2.avi -same_quant -y intermediate2.mpg <을/dev/null & 고양이 intermediate1.mpg의 intermediate2.mpg | \는 FFmpeg -f MPEG -i - -same_quant -c : v mpeg4 -acodec libmp3lame output.avi 마찬가지로 yuv4mpegpipe 형식과 원본 비디오 r aw 오디오 코덱 또한 연결을 허용합니다. 및 트랜스 코딩 단계는 거의 무손실입니다. yuv4mpeg 파이프를 여러 개 사용하는 경우 첫 번째 줄은 첫 번째 스트림을 제외한 모든 스트림에서 삭제해야합니다. 이것은 아래 보이는 꼬리를 통해 배관하여 수행 할 수 있습니다. 꼬리를 통해 파이핑 할 때는 명령 ({;})을 적절하게 배경으로 사용해야합니다.
에서는 mkfifo temp1.a에서는 mkfifo temp1.v에서는 mkfifo temp2.a에서는 mkfifo temp2.v에서는 mkfifo 전부다에서는 mkfifo : 예를 들어
, 이제 우리가 output.flv 파일에 두 개의 FLV 파일을 가입하고 싶은 말은하자 all.v ffmpeg -i input1.flv -vn -f u16le -acodec pcm_s16le -ac 2 -ar 44100 -> temp1.a </dev/null & ffmpeg -i input2.flv -vn -f u16le -acodec pcm_s16le - ac 2 -ar 44100 -> temp2.a </dev/null & ffmpeg -i input1.flv -an -f yuv4mpegpipe -> temp1.v </dev/null & { ffmpeg - i input2.flv -an -f yuv4mpegpipe - </dev/null | tail -n +2> temp2.v; } & 고양이 temp1.a temp2.a> 전부다 & 고양이 temp1.v temp2.v> all.v &는 FFmpeg -f u16le -acodec pcm_s16le -ac 2 -ar 44100 -i 전부다 \ -f yuv4mpegpipe -i all.v \ -same_quant -y output.flv RM 온도 [12]. 당신은 시간 디코딩을 낭비하지 않도록 [AV] 모든. [AV]
당신은 -vcodec 사본 -acodec 사본을 사용해야합니다 그리고 오디오 및 비디오 스트림 인코딩 (품질 저하는 말할 것도 없습니다) – sashoalm