[英]How to create a Signed APK on the latest version of Android Studio
[英]Android: How to configure FFMPEG latest version in android studio?
我想在android studio中配置FFMPEG
,但我無法獲得任何文檔或鏈接。 許多FFMPEG
lib上的Github可用於Android,但都是舊版本。 以及如何在android中運行命令? 我想知道在配置FFMPEG
之后我們如何運行FFMPEG
命令。 幫助我。 謝謝你。
我使用下面的鏈接但沒有成功的最新版本。
http://writingminds.github.io/ffmpeg-android-java
https://github.com/WritingMinds/ffmpeg-android-java
https://github.com/havlenapetr/FFMpeg
最新版本的FFMPEG
是3.1.1,剛剛在12天之前發布。 所以我認為沒有像這個舊版本那樣容易獲得的演示 。
我們需要自己構建FFMPEG
庫。 我發現的一些問題只是粘貼在這里可能對你有幫助。 (未測試)
如何為Android構建FFmpeg
您需要通過下載Android NDK和最新版本的FFMPEG
來自行編譯。
還有一個教程: 如何為Android構建FFmpeg 。 這已經很老了所以你只需要更改這里提到的版本。 對於FFMPEG
,它將是3.1.1
和NDK,它將是r12b
。
使用NDK r12b構建FFMPEG
:
下載Android NDK :可以在Android NDK網站下載最新版本的Android NDK。 在撰寫本回答時,最新版本是NDK r12。 只需解壓縮檔案
下載ffmpeg源代碼 :FFMPEG源代碼可以從ffmpeg網站下載。 最新的穩定版本是3.1.1(在撰寫本文時)。 下載源代碼並將其解壓縮到$ NDK / sources文件夾。
更新配置文件:使用文本編輯器打開ffmpeg-3.1.1 / configure文件,並找到以下行。
SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)' LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"' SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)' SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR) $(SLIBNAME)'
這會導致ffmpeg共享庫被編譯為libavcodec.so。 (例如libavcodec.so.55),它與Android構建系統不兼容。 因此,我們需要用以下行替換上面的行。
SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(FULLNAME)-$(LIBMAJOR)$(SLIBSUF)' LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"' SLIB_INSTALL_NAME='$(SLIBNAME_WITH_MAJOR)' SLIB_INSTALL_LINKS='$(SLIBNAME)
構建ffmpeg:將以下文本復制到文本編輯器,並將其保存為ffmpeg_3.1.1文件夾中的build_android.sh。
#!/bin/bash NDK=$HOME/Desktop/adt/android-ndk-r9 SYSROOT=$NDK/platforms/android-9/arch-arm/ TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64 function build_one { ./configure --prefix=$PREFIX --enable-shared --disable-static --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-doc --disable-symver --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- --target-os=linux --arch=arm --enable-cross-compile --sysroot=$SYSROOT --extra-cflags="-Os -fpic $ADDI_CFLAGS" --extra-ldflags="$ADDI_LDFLAGS" $ADDITIONAL_CONFIGURE_FLAG make clean make make install } CPU=arm PREFIX=$(pwd)/android/$CPU ADDI_CFLAGS="-marm" build_one
保存文件后,轉到該文件所在的目錄並執行以下命令,
sudo chmod +x build_android.sh
然后通過命令執行腳本,
./build_android.sh
構建輸出:構建可能需要一段時間才能完成,具體取決於您的計算機速度。 一旦完成,你應該能夠找到一個文件夾$ NDK / sources / ffmpeg-3.1.1 / android,其中包含arm / lib和arm / include文件夾。
上面的步驟已經過全面測試,我在我的機器上執行它們,並且構建成功。 為了寫這個答案我已經從這篇文章中引用了如何使用NDK r9構建ffmpeg但是因為它是舊版本我自己做了一些修改。
打開詢問任何疑問。
我建議您使用以下有助於我的網址:
http://androidwarzone.blogspot.in/2011/12/ffmpeg4android.html
http://writingminds.github.io/ffmpeg-android-java/
https://androiddeveloperhelp.wordpress.com/2015/12/19/video-editing-android-example/
知識:
http://www.lai18.com/content/5175900.html
Android工作室源代碼:
https://drive.google.com/file/d/0B9qAjo6wKhk9MEpNNjMxaG5oWXM/view?usp=sharing
它可能對你有所幫助。
你有沒有看到這個鏈接: Writingminds的FFmpeg庫在這個鏈接中提供了關於它的所有解釋
如果你想使用任何庫的最新版本,你可以直接在build.gradle
執行它,因為如果沒有更新任何庫,可以看到它並且可以從build.gradle
更新,我總是為許多庫執行此操作以獲取最新版本版。
對於FFMpeg中的gradle,請使用此選項
compile 'com.writingminds:FFmpegAndroid:0.3.2'
此鏈接提供了更多類似於它的庫https://android-arsenal.com/details/1/925
要添加本機代碼,這些博客可能會幫助您
http://ffmpeg-android.blogspot.in/和
http://www.roman10.net/2011/07/17/how-to-build-android-applications-based-on-ffmpeg-by-an-example/
我已經在ffmpeg for android中經歷了幾個星期。
這個名為FFmpeg4Android的庫可以在WarZone找到。
我知道標題是從2011年12月6日開始的,但我已經測試並使用它,它運行順利。 您還沒有提到您對此庫的確切需求,但您可以在官方網站上閱讀有關ffmpeg功能的內容。
FFmpeg4Android有一個示例項目,可以作為一個很好的參考,並且他們的支持是立即和明確的。
命令根據您的字符串輸入運行,例如:
ffmpeg -y -i /sdcard/videokit/in.mp4-strict experimental -s 160x120 -r 25 -vcodec mpeg4 -b 150k -ab 48000 -ac 2 -ar 22050 /sdcard/videokit/out.mp4
如果您需要進一步的幫助,請告訴我,我很樂意為您提供幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.