范围选择器/范围搜索栏来修剪视频,包括缩略图[关闭]
Posted
技术标签:
【中文标题】范围选择器/范围搜索栏来修剪视频,包括缩略图[关闭]【英文标题】:Range selector / range seekbar to trim video including thumbnails [closed] 【发布时间】:2016-08-04 13:28:18 【问题描述】:我正在寻找一个库或开源项目,如您在屏幕截图中看到的那样,它提供用于修剪视频的 UI。包括
能够增加、减少和移动选择的范围选择器 缩略图 当前播放位置只是 UI 而不是修剪本身。
如果没有现成的解决方案,那么我现在想知道如何以一种智能的方式组合现有的 UI 元素来实现这个或类似的东西。
这是我最终实现的: Range selector / range seekbar to trim video including thumbnails
【问题讨论】:
我总是很欣赏不加评论的反对票。 您可以使用 trimmer 开源 (github.com/uday-rayala/video-trimmer),它使用 ffmpeg lib 进行视频处理,是视频编辑的最佳选择 我试过了。它不是很稳定。 【参考方案1】:我找不到特定的库,但您可以使用 MediaMetadataRetriever
获取视频的帧,指定帧的确切时间。
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(videoFile.getAbsolutePath());
Bitmap bitmap = retriever.getFrameAtTime(timeInMiliSeconds * 1000,
MediaMetadataRetriever.OPTION_CLOSEST_SYNC);
希望对你有帮助。
【讨论】:
【参考方案2】:您可以从 GitHub 上的 TELEGRAM(消息应用)源代码获取 UI https://github.com/DrKLO/Telegram
活动:VideoEditorActivity.java (https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/java/org/telegram/ui/VideoEditorActivity.java)
布局:video_editor_layout.xml (https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/res/layout/video_editor_layout.xml)
他们已经实现了他们的自定义 UI 组件 VideoSeekBarView 和 VideoTimelineView。
VideoSeekBarView (https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/java/org/telegram/ui/Components/VideoSeekBarView.java)
VideoTimelineView (https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/java/org/telegram/ui/Components/VideoTimelineView.java)
附件是 Telegram VideoEditorActivity
【讨论】:
截图很棒!但是 GPL 许可证 ;( ;( ;( 这是最有希望的解决方案。但是,由于许可证,我无法使用它。如果我想得到一些想法,我可能会复制代码;)如果许可证不那么严格,我可能会奖励答案。 @OneWorld 你找到解决方案了吗?我正在寻找相同的东西会很有帮助:) @Nisarg 嗨!我最初考虑将 Telegram 项目 的播放器代码提取到 GPL 许可下的另一个应用程序中,并添加一些Intent
s 其他应用程序可以广播以传递视频进行修剪。然而,与此同时,我使用github.com/oli107/material-range-bar 创建了自己的视频剪辑活动。我放弃了缩略图的要求。这仍然是很多工作!所以,你可以为自己立一座纪念碑,按照我最初计划的方式,在 github 上分享。
@SagarHudge Hope this 有帮助,刚刚找到【参考方案3】:
我认为这个库会满足你的需求。
VideoTrimmer
【讨论】:
我从android-arsenal.com/details/1/3714 安装了演示,我认为你是对的。伟大的!该库还包括 mp4 修剪器!但不幸的是,我的项目为时已晚;( @NikitaAxyonov 你能帮我解决这个问题吗***.com/questions/48801158/… 请。 @Sagar ,我也坚持显示正在修剪的视频的时间范围,您是否找到答案中提到的库的任何解决方案? @B.shruti 试试这个github.com/a914-gowtham/Android-video-trimmer library.it 也支持 android 10【参考方案4】:我搜索了很多类似的东西但没有成功。最后我决定停止开发这个功能。
但是今天,我发现了这个HERE。不知道行不行。
范围选择器
用户点击“播放”后,当前播放位置在范围选择器上移动。但是,您不能移动播放位置。
另一种可能是阅读官方Android应用程序的源代码。我知道您正在搜索图书馆,但这可能是另一种解决方案,如果您了解 google 源代码,您将能够获得与 Google 的 Gallery 应用程序相同的质量。
看这里(修剪*.java 类):https://android.googlesource.com/platform/packages/apps/Gallery2/+/android-6.0.1_r31/src/com/android/gallery3d/app/
对不起,可能没有任何开源库可以做到这一点。 我希望这两个链接对您有用。
【讨论】:
试过了。工作正常。有点不稳定。无法选择播放位置。【参考方案5】:在 Git 上尝试以下示例来修剪视频,例如 whatsapp。
这个解决方案我已经尝试过它工作得很好这个例子包括自定义RangeSeekBarView
,自定义ProgressBarView
和seekbar
,您可以在其中选择您想要修剪的视频范围并保存到目的地
VideoTrimming Like Whatsapp
【讨论】:
我不再使用该功能了。但它可能值得其他用户关注! @OneWorld 我需要此示例的帮助,我想从总持续时间中选择最多30s
,但我无法弄清楚这一点,如果您知道任何帮助将被接受,请提供帮助..请
@Sagar 你是认真的吗? )) 只需提出一个新问题或询问 lib 的作者。
需要一些更新来保存视频,然后它应该可以工作【参考方案6】:
FFMPEG 是最佳选择 如果您在编译 ffmpeg 时遇到问题,请使用此链接 https://github.com/WritingMinds/ffmpeg-android 并遵循来自 https://github.com/antpersan/CutVideoAndroid 和范围 Seekbar https://github.com/anothem/android-range-seek-bar 或使用 shanrais 建议的 VideoSeekBarView
【讨论】:
我不寻找修剪本身。只是用户界面。我已经为自己找到了一个 2 拇指范围栏,效果很好。【参考方案7】:Media-for-mobile
视频处理库
函数
视频转码 加入视频 剪辑视频 视频效果 音频效果 获取媒体文件信息 时间缩放 列表项您可以通过自定义界面来使用它的功能。
【讨论】:
【参考方案8】:谢谢大家的帮助,我想用 c++ 原生代码来做这件事,我不是这方面的专业人士,但仍然是处理 UI 的最佳方式,尤其是当我们必须创建专业时间线以进行确认时, ffmpeg 是最好的库之一https://github.com/tanersener/mobile-ffmpeg 在 android 上编辑视频,
【讨论】:
以上是关于范围选择器/范围搜索栏来修剪视频,包括缩略图[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何从 JavaScript 应用程序中的视频创建缩略图 [关闭]
如何正确创建带有 UISlider 的缩略图选择器以从视频中进行选择?