FFMPEG에서 "-acodec"과 "-c"의 차이점은 무엇입니까

FFMPEG에서 "-acodec"과 "-c"의 차이점은 무엇입니까

저는 FFMPEG를 처음 접했고 이에 대해 구체적으로 명확한 문서를 찾을 수 없습니다.

3개의 mp3를 연결하려고 합니다(인코딩/트랜스코딩이 아닌 다중화만 원합니다).

이 두 명령 모두 제대로 작동하는 것 같습니다. '-c'와 '-acodec'을 사용하는 것 사이에 차이점이 있나요?

ffmpeg -i "concat:a.mp3|b.mp3|c.mp3" -acodec copy out.mp3

ffmpeg -i "concat:a.mp3|b.mp3|c.mp3" -c copy out.mp3

몇 시간 동안 Google을 검색했는데 ffmpeg에 대한 다양한 문서를 찾았지만 -c 또는 -acodec이 실제로 수행하는 작업을 설명하는 문서는 없습니다. -c는 '코덱'을 의미하고 -acodec은 '오디오 코덱'을 의미한다고 생각하시나요?? 각각은 무엇을 합니까 / 차이점이 있습니까 / 어느 것이 더 낫습니까?

내가 찾은 문서는 도움이 되지 않습니다.

https://ffmpeg.org/ffmpeg-all.html

https://gist.github.com/tayvano/6e2d456a9897f55025e25035478a3a50

또한 이를 개선하는 방법에 대한 제안도 환영합니다(3개의 mp3를 순차적으로 결합하면 됩니다).

감사해요.

답변1

귀하의 직함을 다루기 위해.

이렇게 하면 -c copy오디오 코덱(acodec)과 비디오 코덱(vcodec)이 모두 복사됩니다.

-c copy와 같다 -acodec copy -vcodec copy

-c:a copy와 같다 -acodec copy.

-c:v copy와 같다-vcodec copy

물론 코덱을 지정할 수도 있습니다. 예를 들어 -vcodec libx264 또는-c:v libx264

-c는 코덱을 나타냅니다. 또는 -codec을 쓸 수도 있습니다. https://ffmpeg.org/ffmpeg.html 예를 들어 -codec:a copy

-acodec copy예를 들어 또는 -acodec blahblah또는 를 지정하지 않으면 -codec:a ...일부 기본 코덱이 선택됩니다. -vn비디오가 없다고 말할 수도 있습니다 .https://stackoverflow.com/questions/9913032/how-can-i-extract-audio-from-video-with-ffmpeg 그래서 영상은 복사하지 않습니다. 또는 -an오디오가 없는 경우FFmpeg를 사용하여 비디오 파일에서 오디오 제거

추가됨

-acodec및 구문은 이제 더 이상 사용되지 않습니다. 그리고 구문( 및 의 별칭 ) 을 -vcodec사용하는 것이 좋습니다.-c:a-c:v-codec:a-codec:v

답변2

-c또는 -codec일반 스트림 선택기이므로 이를 사용하여 오디오 또는 비디오 스트림에 대한 코덱을 설정할 수 있습니다.

-acodec오디오 스트림으로 범위를 자동으로 지정하는 기능의 하위 집합입니다.

-acodec:1와 동일하며 -codec:a:1두 번째 오디오 스트림(첫 번째 오디오 스트림은 0)에 대한 코덱을 설정하고 있음을 나타냅니다.

링크된 문서에서: -c, -codec

-c[:stream_specifier] 코덱(입력/출력, 스트림당) -codec[:stream_specifier] 코덱(입력/출력, 스트림당)

Select an encoder (when used before an output file) or a decoder (when used before an input file) for one or more streams. codec is the

스트림이 다시 인코딩되지 않음을 나타내는 디코더/인코더의 이름 또는 특수 값 복사본(출력 전용)입니다.

-아코덱

-acodec 코덱(입력/출력)

오디오 코덱을 설정합니다. 이는 -codec:a의 별칭입니다.

비디오 스트림에 대해 동일한 방식으로 작동하는 -vcodec도 있습니다.

그래서 그것을 모두 합치려면 문서에서 이 명령을 고려하십시오. ffmpeg -i INPUT -map 0 -c copy -c:v:1 libx264 -c:a:137 libvorbis OUTPUT

이는 모든 스팀( -c copy)에 원본 코덱을 사용한다는 뜻이지만, 두 번째 비디오 스트림에는 libx264( -c:v:1 libx264)를 사용하고, 138번째 오디오 스트림에는 libvorbis( -c:a:137 libvorbis)를 사용한다는 의미입니다.

따라서 를 사용하면 -c모든 유형의 스트림을 제어할 수 있는 반면 -acodec및 는 -vcodec해당 오디오 또는 비디오 하위 집합에 대한 바로 가기일 뿐입니다.

관련 정보