it-swarm.dev

"인코더 'aac'은 실험적이지만 실험적인 코덱은 사용할 수 없습니다."

flv를 사용하여 FFMPEGmp4로 변환하는 동안 다음 오류가 표시됩니다.

[aac @ 0x2b4b640] The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.
59
Sandeep Nambiar

실제로 명령 줄에 -strict -2를 추가하는 것은 충분한가 아닙니다. -strict -2가 추가되는 위치는 매우 중요하며 불행히도 이것은 오류 메시지에 설명되어 있지 않습니다. 마지막 인수 직전에, 즉 다음과 같아야합니다.

ffmpeg -i infile -strict -2 outfile
152
freeseek

메시지에서 알 수 있듯이 기본 ffmpeg AAC 오디오 인코더는 실험적이므로 -strict -2 또는 -strict experimental 명령에 사용하십시오. 그러나이 인코더는 더 이상 실험용으로 표시되지 않으므로 최근 ffmpeg 빌드에서는이 옵션을 사용할 필요가 없습니다.

최상의 결과를 얻으려면 libfdk_aac 대신에. 이 lib로 ffmpeg를 컴파일해야합니다. 컴파일 가이드 를 참조하십시오.

오디오 인코더를 설정하려면 -c:a libfdk_aac.

8
aergistal

다음 명령을 시도하십시오 :

ffmpeg -i Inputfile.flv -vcodec h264 -acodec aac -strict -2 Filename.mp4

이 명령을 사용하면 모든 유형의 비디오 파일을 x264 및 동일한 품질의 mp4로 변환 할 수 있습니다.

나는 많은 방법을 시도했지만 이것은 매력처럼 나를 위해 일했습니다. ;)

2
Ravi Gohil

코덱을 열기 전에 code-context strict_std_complaince 변수를 -2로 설정하여 C++ 코드에서 -strict 실험을 추가 할 수 있습니다.

AVCodecContext *c;
c->strict_std_compliance = -2;

/* open it */
ret = avcodec_open2(c, codec, NULL);

여기서 원저자 설명 를 참조하십시오.

0
Dumisani Kunene