日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

【Android FFMPEG 开发】Android 中执行 FFMPEG 指令 ( 集成 mobile-ffmpeg 框架 | 完整代码示例 )

發布時間:2025/6/17 Android 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Android FFMPEG 开发】Android 中执行 FFMPEG 指令 ( 集成 mobile-ffmpeg 框架 | 完整代码示例 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、配置遠程 Maven 倉庫
  • 二、配置依賴
  • 三、Kotlin 中執行 FFmpeg 命令
  • 四、FFmpeg 命令執行結果查看
  • 五、源碼下載





一、配置遠程 Maven 倉庫



在 Android Studio 工程 根目錄的 build.gradle 構建腳本中 , 配置

repositories {mavenCentral() }

完整代碼如下 :

// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript {ext.kotlin_version = "1.5.0"repositories {google()mavenCentral()}dependencies {classpath "com.android.tools.build:gradle:4.2.1"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"// NOTE: Do not place your application dependencies here; they belong// in the individual module build.gradle files} }allprojects {repositories {google()mavenCentral()jcenter() // Warning: this repository is going to shut down soon} }task clean(type: Delete) {delete rootProject.buildDir }



二、配置依賴



在 Module 下的 build.gradle 構建腳本中配置依賴庫 :

dependencies {implementation 'com.arthenica:mobile-ffmpeg-full:4.4' }

完整代碼如下 :

plugins {id 'com.android.application'id 'kotlin-android' }android {compileSdkVersion 31buildToolsVersion "30.0.3"defaultConfig {applicationId "kim.hsl.mobileffmpegdemo"minSdkVersion 24targetSdkVersion 31versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}kotlinOptions {jvmTarget = '1.8'} }dependencies {implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"implementation 'androidx.core:core-ktx:1.6.0'implementation 'androidx.appcompat:appcompat:1.4.1'implementation 'com.google.android.material:material:1.5.0'implementation 'androidx.constraintlayout:constraintlayout:2.1.3'testImplementation 'junit:junit:4.+'androidTestImplementation 'androidx.test.ext:junit:1.1.3'androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'implementation 'com.arthenica:mobile-ffmpeg-full:4.4' }



三、Kotlin 中執行 FFmpeg 命令



在 kotlin 代碼中調用 mobile-ffmpeg 框架中提供的 執行 FFmpeg 命令的方法 :

執行的 FFmpeg 命令為 :

ffmpeg -version

完整代碼如下 :

package kim.hsl.mobileffmpegdemoimport android.os.Bundle import android.util.Log import androidx.appcompat.app.AppCompatActivity import com.arthenica.mobileffmpeg.Config import com.arthenica.mobileffmpeg.FFmpegclass MainActivity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)val rc = FFmpeg.execute("-version")if (rc == Config.RETURN_CODE_SUCCESS) {Log.i(Config.TAG, "命令執行成功")} else if (rc == Config.RETURN_CODE_CANCEL) {Log.i(Config.TAG, "用戶取消了命令")} else {Log.i(Config.TAG, String.format("命令執行失敗, 返回值=%d", rc))}Config.printLastCommandOutput(Log.INFO)} }



四、FFmpeg 命令執行結果查看



執行結果如下 : 在 華為 Mate30 中 , 對應 Android 10 系統版本也可以執行 ;

ffmpeg version v4.4-dev-416Copyright (c) 2000-2020 the FFmpeg developers built with Android (6454773 based on r365631c2) clang version 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489587874b2a325e7a516b99d838599c6f) (based on LLVM 9.0.8svn) configuration: --cross-prefix=aarch64-linux-android- --sysroot=/files/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8-a --cc=aarch64-linux-android24-clang --cxx=aarch64-linux-android24-clang++ --extra-libs='-L/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/cpu-features/lib -lndk_compat' --target-os=android --enable-neon --enable-asm --enable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --enable-v4l2-m2m --disable-outdev=fbdev --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-videotoolbox --disable-audiotoolbox --disable-appkit --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gmp --enable-gnutls --enable-libmp3lame --enable-libass --enable-iconv --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libopencore-amrnb --enable-libshine --enable-libspeex --enable-libwavpack --enable-libkvazaar --enable-libilbc --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libaom --enable-libtwolame --disable-sdl2 --enable-libvo-amrwbenc --enable-zlib --enable-mediacodec libavutil 56. 55.100 / 56. 55.100 libavcodec 58. 96.100 / 58. 96.100 libavformat 58. 48.100 / 58. 48.100 libavdevice 58. 11.101 / 58. 11.101 libavfilter 7. 87.100 / 7. 87.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100





五、源碼下載



源碼下載地址 : https://download.csdn.net/download/han1202012/85034217

總結

以上是生活随笔為你收集整理的【Android FFMPEG 开发】Android 中执行 FFMPEG 指令 ( 集成 mobile-ffmpeg 框架 | 完整代码示例 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。