- 范围选择器,具有增加、减少和移动选择的能力
- 缩略图
- 当前播放位置
如果没有现成的解决方案可用,那么我想知道如何聪明地组合现有的UI元素来实现这个或类似的功能。
以下是我最终实现的内容:范围选择器/范围滑块以及包括缩略图的视频剪辑。
我找不到一个特定的库,但你可以使用MediaMetadataRetriever
来获取视频的帧,并指定帧的确切时间。
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(videoFile.getAbsolutePath());
Bitmap bitmap = retriever.getFrameAtTime(timeInMiliSeconds * 1000,
MediaMetadataRetriever.OPTION_CLOSEST_SYNC);
我希望这能够对你有所帮助。
我搜索了很多类似的内容,但都没有找到。最后我决定停止这个功能的开发。
但是今天我在这里找到了这个。我不知道它是否可用。
范围选择器
用户点击“播放”后,当前播放位置会在范围选择器上移动。但是您不能移动播放位置。
另一个可能性是阅读官方Android应用程序的源代码。我知道你正在寻找一个库,但这可以是另一种解决方案,并且如果你能理解Google的源代码,你就能够实现与Google相同的画廊应用程序的质量。
看这里(Trim * .java类):https://android.googlesource.com/platform/packages/apps/Gallery2/+/android-6.0.1_r31/src/com/android/gallery3d/app/
很抱歉,可能没有任何开源库可以做到这一点。希望这两个链接对你有用。
RangeSeekBarView
,自定义的ProgressBarView
和seekbar
,您可以使用它选择要修剪的视频范围并保存到目标位置。
类似于Whatsapp的视频修剪
30秒
,但是我无法弄清楚如何实现,请帮忙提供任何想法或帮助。谢谢。 - Sagar如果您在编译FFMPEG时遇到问题,最好的选择是使用此链接https://github.com/WritingMinds/ffmpeg-android并按照https://github.com/antpersan/CutVideoAndroid中的命令操作。对于范围SeekBar,请使用https://github.com/anothem/android-range-seek-bar或使用shanrais建议的VideoSeekBarView。
感谢大家的帮助,我打算使用C++原生代码实现。虽然我并不是专业人士,但这仍是处理用户界面的最佳方式,特别是在我们需要创建专业时间轴的情况下。对于视频编辑,FFmpeg是安卓上最好的库之一https://github.com/tanersener/mobile-ffmpeg。