如何在移动应用程序中进行视频修剪和合并性能? [已关闭]

问题描述 投票:0回答:1

我正在开发一款应用程序,允许用户修剪和合并类似于 Snapchat 和 Instagram 故事的录制视频。目前,我正在使用 FFmpeg 进行视频处理,但完成时间太长。我想出了一个使用 ExoPlayer 来最小化处理时间的想法。我的计划是存储多个视频的修剪时长,并在播放视频时仅播放修剪的部分。 ExoPlayer 允许无缝播放多个视频,因此看起来就像视频被修剪和合并一样。但是,当用户上传所有视频和有关视频的元数据(例如从他们想要播放的位置修剪的部分)时,我不确定如何在服务器端处理视频播放。如果我采用这种方法,我需要在播放之前首先将所有视频传输到用户的设备,但视频可能很长,从 10 到 30 分钟不等,使得这种方法不切实际。我想以视频流的方式播放它们。

我也很好奇其他视频编辑应用程序(例如 CapCut 或 Kinemaster)如何处理视频处理任务,例如修剪、合并和慢动作。他们使用什么视频处理工具?当我尝试合并 10 个一分钟的视频时,在我的 Android 手机上大约需要 10 分钟,但这些编辑应用程序花费的时间更少。

我将不胜感激任何提高视频修剪和合并处理时间的方法或想法

android video ffmpeg video-processing exoplayer
1个回答
0
投票

您应该看一下 Media3 Transformer:
https://developer.android.com/media/media3/transformer/getting-started

它提供API来编辑视频文件并使用硬件编解码器(因此处理速度比ffmpeg快得多)。

修剪,例如:
https://developer.android.com/media/media3/transformer/transformations#trim

您可以在演示应用程序中找到更多示例:
https://github.com/androidx/media/tree/release/demos/transformer

© www.soinside.com 2019 - 2024. All rights reserved.