FFmpeg-Android 项目教程

FFmpeg-Android 项目教程

FFmpeg-Android🔥FFmpeg-Android 是基于ffmpeg n4.0-39-gda39990编译运行在android平台的音视频的处理框架, 使用的是ProcessBuilder执行命令行操作, 可实现视频字幕添加、尺寸剪切、添加或去除水印、时长截取、转GIF动图、涂鸦、音频提取、拼接、质量压缩、加减速、涂鸦、 倒放、素描、色彩平衡、模糊、九宫格、添加贴纸、滤镜、分屏、图片合成视频等,音视频合成、截取、拼接,混音、音视频解码,视频特效等等音视频处理...项目地址:https://gitcode.com/gh_mirrors/ffmpe/FFmpeg-Android

1. 项目的目录结构及介绍

FFmpeg-Android 项目的目录结构如下:

FFmpeg-Android/
├── app/
│   ├── build.gradle
│   ├── proguard-rules.pro
│   └── src/
│       ├── main/
│       │   ├── AndroidManifest.xml
│       │   ├── java/
│       │   └── res/
│       └── test/
├── ffmpeg/
│   ├── build.gradle
│   └── src/
│       └── main/
│           ├── c/
│           └── jni/
├── gradle/
│   └── wrapper/
├── gradle.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── README.md

目录介绍

  • app/: 包含应用程序的主要代码和资源。

    • build.gradle: 应用程序的构建脚本。
    • proguard-rules.pro: ProGuard 规则文件。
    • src/: 源代码目录。
      • main/: 主要源代码和资源。
        • AndroidManifest.xml: 应用程序的清单文件。
        • java/: Java 源代码目录。
        • res/: 资源目录。
      • test/: 测试代码目录。
  • ffmpeg/: 包含 FFmpeg 相关的代码和配置。

    • build.gradle: FFmpeg 模块的构建脚本。
    • src/: 源代码目录。
      • main/: 主要源代码和资源。
        • c/: C 语言源代码目录。
        • jni/: JNI 接口目录。
  • gradle/: Gradle 包装器相关文件。

    • wrapper/: Gradle 包装器文件。
  • gradle.properties: Gradle 属性文件。

  • gradlew: Gradle 包装器脚本(Unix)。

  • gradlew.bat: Gradle 包装器脚本(Windows)。

  • settings.gradle: 项目设置文件。

  • README.md: 项目说明文档。

2. 项目的启动文件介绍

项目的启动文件是 app/src/main/java/com/example/ffmpegandroid/MainActivity.java。这个文件是应用程序的主活动,负责初始化和启动应用程序。

package com.example.ffmpegandroid;

import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    static {
        System.loadLibrary("ffmpeg");
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView tv = findViewById(R.id.sample_text);
        tv.setText("FFmpeg 版本: " + ffmpegVersion());
    }

    public native String ffmpegVersion();
}

启动文件介绍

  • MainActivity.java: 主活动文件。
    • static {}: 加载 FFmpeg 库。
    • onCreate(): 活动创建时调用,设置布局并显示 FFmpeg 版本。
    • ffmpegVersion(): 获取 FFmpeg 版本的本地方法。

3. 项目的配置文件介绍

项目的配置文件主要包括 app/build.gradlesettings.gradle

app/build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 30
    defaultConfig {
        applicationId "com.example.ffmpegandroid"
        minSdkVersion 16
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    externalNativeBuild {
        cmake {
            path "src/main/cpp/CMakeLists.txt"
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation

FFmpeg-Android🔥FFmpeg-Android 是基于ffmpeg n4.0-39-gda39990编译运行在android平台的音视频的处理框架, 使用的是ProcessBuilder执行命令行操作, 可实现视频字幕添加、尺寸剪切、添加或去除水印、时长截取、转GIF动图、涂鸦、音频提取、拼接、质量压缩、加减速、涂鸦、 倒放、素描、色彩平衡、模糊、九宫格、添加贴纸、滤镜、分屏、图片合成视频等,音视频合成、截取、拼接,混音、音视频解码,视频特效等等音视频处理...项目地址:https://gitcode.com/gh_mirrors/ffmpe/FFmpeg-Android

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸莹子Shelley

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值