문제

FFMPEG를 사용하여 명령 줄에서 비디오 파일을 변환하는 데 몇 가지 문제가 있습니다. Centos 서버를 사용하고 있지만 불행히도 쉘 액세스가 없습니다.

다음 명령을 사용하여 소리를 억제 할 때 모든 것이 완벽하게 작동합니다 (물론 소리는 제외하고!)

ffmpeg -i $infile -an test.flv

그러나 내가 소리를 활성화하려고 할 때 어느 출력되는 파일의 파일 크기는 0 kb입니다.

FFMPEG는 LIBMP3LAME 및 LIBFAAC에 대한 지원으로 컴파일되며 필요한 코덱이 설치됩니다. 서버에서 FFMPEG의 구성은 다음과 같습니다.

FFMPEG 버전 SVN-RunkNown, 저작권 (C) 2000-2007 Fabrice Bellard 등. 구성 : ---prefix =/usr-libdir =/usr/lib-mandir =/usr/share/man --incdir =/usr/contail-libmp3lame --enable-libogg --enable- libvorbis --enable-libogg --enable-libtheora -enable-libfaad -enable-libfaac -enable-libgsm --enable-xvid --enable-x264 --enable-liba52 --enable-liba52bin --enable- pp -Enable-Shared -enable-Pthreads --enable-gpl-discable-strip

다음은 0KB 파일 크기를 초래 한 일부 명령의 아주 작은 샘플입니다.

ffmpeg -i $infile test.flv
ffmpeg -i $infile -vcodec copy -acodec ac3 test.flv
ffmpeg -vcodec copy -acodec copy -i $infile -vcodec copy -acodec mp3 test.flv
ffmpeg -vcodec copy -acodec copy -i $infile -vcodec copy -acodec copy $outfile
ffmpeg -vcodec copy -acodec copy -i $infile -vcodec copy -acodec aac $outfile

누구든지 여기서 무슨 일이 일어나고 있는지에 대한 힌트를 제공 할 수 있다면 정말 감사합니다!

편집하다 - 여기에 stderr를 파일로 리디렉션 할 때 결과가 있습니다.

FFMPEG 버전 SVN-RunkNown, 저작권 (C) 2000-2007 Fabrice Bellard 등. 구성 : ---prefix =/usr-libdir =/usr/lib-mandir =/usr/share/man --incdir =/usr/contail-libmp3lame --enable-libogg --enable- libvorbis --enable-libogg --enable-libtheora -enable-libfaad -enable-libfaac -enable-libgsm --enable-xvid --enable-x264 --enable-liba52 --enable-liba52bin --enable- pp -enable-shared --enable-pthreads -enable-gpl-disable-strip libavutil 버전 : 49.4.0 libavcodec 버전 : 51.40.4 Libavformat 버전 : 51.12.1 2007 년 6 월 4 일 11:02:12, GCC : 4.1.1 20070105 (Red Hat 4.1.1-52)

입력 #0, mov, mp4, m4a, 3gp, 3g2, mj2, '/path/to/7b4e37e703ce0a10a104f027cb9125b1a19.mp4': 00 : 00 : 00 : 32.4, 시작 : 0.000000, 비트 레이트 : 122 KB/S Strem #( JPN) : 비디오 : H263, YUV420P, 176X144, 29.97 FPS (R) 스트림 #0.1 (JPN) : 오디오 : SAMR / 0X726D6173, 8000 HZ, MONO

출력 #0, flv, to '/path/to/test.flv': 스트림 #0.0 : 비디오 : FLV, YUV420P, 176X144, Q = 2-31, 200 KB/S, 29.97 FPS (C) 스트림 #0.1 : 오디오 : MP3, 8000 Hz, 모노, 64 KB/s 스트림 매핑 : 스트림 #0.0-> #0.0 스트림 #0.1-> #0.1

입력 스트림 #0.1 용 지원되지 않은 코덱 (ID = 73728)

도움이 되었습니까?

해결책

서버에 어떤 종류의 액세스가 필요한가?

그렇다면 오류 출력은 무엇입니까? ffmpeg?

아마도 적절한 장황한 주장이 문제에 대해 더 많이 말해 줄 것입니까?

편집하다:

Stderr 출력을 얻을 수 있는지 봅시다. 운영:

ffmpeg -version 

그리고 당신이 그것을 위해 약간의 출력을 얻을 수 있는지 확인하십시오. Stderr 출력을 추출한 후에는 원래 문제를 조사 할 수 있습니다.

편집하다:

그래서 당신이 잃어버린 것 같습니다 stderr - 이제 검색하는 방법을 알아야합니다.

아마도:

ffmpeg -version 2>&1

작동할까요?

편집하다:

우리가 어딘가에있는 방법 - 입력 오디오 코덱은 지원되지 않습니다.

Unsupported codec (id=73728) for input stream #0.1

나는 무엇을 모른다 Stream #0.1(jpn): Audio: samr / 0x726D6173, 8000 Hz, mono 이다.

하지만 당신은 문제가 있습니다.

로컬 Linux 상자를 조사하고 싶을 수도 있습니다. 문제를보기가 더 쉬울 수 있습니다.

편집하다:

에서 http://www.nabble.com/convert-3gp-samr-file-td20514476.html FFMPEG를 지원하여 컴파일 할 수있는 것처럼 보입니다 --enable-libamr-nb --enable-libamr-wb.

다시 컴파일됩니다 ffmpeg 옵션?

다른 팁

이 문제를 해결했습니다. 여기 내 코드 :

<?php
   define('FFMPEG_LIBRARY', '/usr/local/bin/ffmpeg');
   $exec_string = FFMPEG_LIBRARY.' -i robot.avi -an output.flv';
   exec($exec_string); //where exec is the command used to execute shell command in php
?>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top