48

안드로이드에 대한 ffmpeg를 컴파일하려고합니다. 이 주제에 대한 여러 게시물을 찾았지만이 중 일부는 작동하지 않는 것 같습니다. ffmpeg를 만들려고하면 [1]에 게시됩니다. 누구도 성공적으로 논문 튜토리얼을 사용하여 ffmpeg를 컴파일 했습니까? 4 ~ 5 단계를 실현하는 방법을 모르겠습니다.

STEP4 : 구성 중 ...

STEP5 : NDK 루트 디렉토리로 이동하여 make TARGET_ARCH = arm APP = ffmpeg-org를 입력합니다.

5 단계의 자습서에서 설명하는 것과 같은 응용 프로그램을 작성하면 이전 단계가 필요합니다. 불행히도 나는 만들 폴더에 응용 프로그램이 없습니다. 나는 현재 안드로이드 ndk 릴리스 3을 사용하고 [3]과 [4]에서 실제 ffmpeg 릴리즈를 체크 아웃했다. 모든 조언에 감사드립니다.

[1]http://slworkthings.wordpress.com/

[2]http://gitorious.org/~olvaffe/ffmpeg/ffmpeg-android

[삼]http://ffmpeg.org/download.html


  • 여기 및 모든 다른 사이트에서 모든 답장을 검토 했으므로 Android 용 ffmpeg (Windows 환경에서)를 컴파일, 작성 및 사용하는 데있어 확실한 가이드가없는 것 같습니다. 이것을 손톱으로 감싸는 것이 매우 유용 할 것입니다. - John J Smith
  • 다음 링크를 찾았습니다.rowntreerob.wordpress.com/2012/06/17/… - Ketan Parmar

4 답변


20

그물을보고 나서. 내가 찾은 유일한 해결책은 안드로이드 어플리케이션에서 사용할 ffmpeg를 포팅 한 Bambuser가 제공 한 것입니다.

코드는 여기에 있습니다 :http://bambuser.com/opensource

기본적으로 필요한 .h 파일과 함께 .so 파일을 jni / lib 디렉토리에 복사하고 javah를 통해 JNI wrapper를 작성하면 작동합니다.

편집하다:

이 게시물은 안드로이드가 패키징 된 몇 가지 패키지화된 ffmpeg 프로젝트로 작성되었으므로 가장 쉽게 컴파일하고 사용할 수있는 프로젝트 중 하나가 여기에 있습니다.https://github.com/guardianproject/android-ffmpeg.

런타임에 셸 명령을 통해 실행되는 바이너리 (라이브러리 아님)를 정적으로 컴파일하는 방법을 취합니다. github에서 'android ffmpeg'포크 및 관련 프로젝트를 위해.

그러나 잘 패키징 된 메소드 기반 JNI 구현을 찾지 못했습니다.


  • 공유 라이브러리를 호출 할 수있는 C 또는 C ++ 파일이 필요하지 않거나이 호출을 헤더 파일로 만들 수 있습니까? - John J Smith
  • 그 점에 대해 자세히 설명해 주실 수 있습니까 (또한 @ John의 질문에)? 일할 수 있니? - slhck
  • 이봐 요, 당신이 어떻게 일하게하는지 자세히 설명해 주시겠습니까? 일부 코드 예제 및 지침이있을 수 있습니까? - Kevin Mark

4

안드로이드에서 ffmpeg에 대한 가이드를 찾았습니다.http://rxwen.blogspot.com/2010/05/use-ffmpeg-to-setup-streaming-server-on.html

그는 다른 포스트에서 어떻게 ffmpeg를 설치하기 위해 안드로이드에서 네이티브 프로그래밍을해야하는지 설명합니다. 희망이 도움이됩니다.


3

나는 더 많은 것을 제공 할 것이다.업데이트 된빌드 방법 및 경우에 따라 사용 방법을 설명하는 소스 목록FFMPEGAndroid에서

이것은 내가 가장 좋아하는 가이드입니다.http://www.roman10.net/how-to-build-ffmpeg-with-ndk-r9/

더 많은 옵션이 필요한 경우 다음을 살펴보십시오.똑같이 좋다:


  • github.com/appunite/AndroidFFmpeg너무 좋아 보인다. 하지만 동영상 플레이어이기 때문에 트랜스 코더가 필요하므로 두 번째 링크가android-ffmpeg-x264적합 해 보인다. 고마워. - Mixaz

3

NDK r3에서make명령을 입력하면 NDK는 단순히 "apps"폴더에있는 폴더 이름을 프로젝트 이름으로 사용합니다. 이것은 FFmpeg 소스 파일을 가지고 있다고 가정합니다.android.mk안에있는 어딘가에NDK/apps/ffmpeg-org/jni/

즉, 폴더 이름이로 설정되어 있는지 확인하십시오.ffmpeg-org.

편집 : NDK r4를 사용하여 가치가있는 것을 알 수 있습니다.makendk-build. 이 새로운 NDK에서는 특정 방식으로 프로젝트를 설정할 필요가 없습니다.ndk-build프로젝트를 검색하여Android.mk컴파일 할 내용을 알려주는 파일.

연결된 질문


관련된 질문

최근 질문