gpt4 book ai didi

java - 按开始位置到结束位置将android中的视频切片

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:27 26 4
gpt4 key购买 nike

您好,我有一个 30 分钟的视频文件,但我想将视频从 00:09:23 切片到 00:25:33。当用户通过我的应用程序播放该视频时,我想提取部分视频。在播放视频时,用户可以给出开始和结束持续时间来剪切视频。那么有什么方法可以根据时长剪切视频并保存到 sd 卡?

最佳答案

您必须使用 JNI 约定编写一些 C 粘合代码,以将 FFmpeg 功能公开给 Java 代码。以下是 Android NDK 示例中用 C 语言实现的 JNI 方法示例:

jstring
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from JNI !");
}

您还需要一些 Java 代码来加载库并声明 native 方法。

public class HelloJni
{
public native String stringFromJNI();

static {
System.loadLibrary("hello-jni");
}
}

我找到了 this project on sourceforge它已经实现了一些 JNI 接口(interface)到 ffmpeg 以将其与 Java 媒体框架集成。您可能会发现它很有用。

还有另一种 Java FFI 技术称为 JNA(Java native 访问),它允许您在 Java 中声明 native 函数原型(prototype)并直接调用它们。使用它可能需要更少的样板代码。参见 this project对于 Android 实现。 (我自己没用过)

您需要包含 JNI您可以从 Java 调用的包装器方法,这些方法将依次调用 FFmpeg 函数。

关于java - 按开始位置到结束位置将android中的视频切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15681290/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com