Ich suche nach einer Bibliothek oder einem Open-Source-Projekt, das eine Benutzeroberfläche zum Trimmen von Videos bereitstellt, wie Sie auf dem Screenshot sehen. Einschließlich
Nur die Benutzeroberfläche, nicht das Beschneiden selbst.
Wenn keine fertige Lösung verfügbar ist, möchte ich jetzt die vorhandenen UI-Elemente auf intelligente Weise kombinieren, um dieses oder ähnliches zu erreichen.
Hier ist was ich endlich umgesetzt habe:Bereichswahl/Bereichssuchleiste zum Zuschneiden von Videos einschließlich Miniaturansichten
Ich denke, diese Bibliothek wird Ihren Bedürfnissen entsprechen.
Ich konnte keine bestimmte Bibliothek finden, aber Sie könnten die MediaMetadataRetriever
verwenden, um die Frames für das Video abzurufen und die genaue Zeit des Frames anzugeben.
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(videoFile.getAbsolutePath());
Bitmap bitmap = retriever.getFrameAtTime(timeInMiliSeconds * 1000,
MediaMetadataRetriever.OPTION_CLOSEST_SYNC);
Ich hoffe das hilft dir.
Sie erhalten die Benutzeroberfläche über den unter GitHub verfügbaren TELEGRAM-Quellcode (Messaging-App)https://github.com/DrKLO/Telegram
Aktivität: VideoEditorActivity.Java ( https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/Java/org/telegram/ui/VideoEditorActivity.Java )
Layout: video_editor_layout.xml ( https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/res/layout/video_editor_layout.xml )
Sie haben ihre benutzerdefinierten UI-Komponenten VideoSeekBarView und VideoTimelineView implementiert.
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 )
Ich habe viel nach etwas Ähnlichem ohne Erfolg gesucht. Am Ende habe ich beschlossen, die Entwicklung dieses Features zu beenden.
Aber heute habe ich dies HIER gefunden. Ich weiß nicht, ob es in Ordnung ist.
Bereichsauswahl
Die aktuelle Wiedergabeposition bewegt sich in der Bereichsauswahl, nachdem der Benutzer auf "Wiedergabe" geklickt hat. Sie können die Spielposition jedoch nicht verschieben.
Eine andere Möglichkeit ist das Lesen des Quellcodes der offiziellen Android-Anwendung. Ich weiß, dass Sie eine Bibliothek durchsuchen, aber dies kann eine andere Lösung sein. Wenn Sie den Google-Quellcode verstehen, können Sie dieselbe Qualität der Galerie-Anwendung von Google erzielen.
Schauen Sie hier (Trim * .Java-Klassen): https://Android.googlesource.com/platform/packages/apps/Gallery2/+/Android-6.0.1_r31/src/com/Android/gallery3d/app/
Sorry Mann, wahrscheinlich gibt es keine OpenSource-Bibliothek dafür ... Ich hoffe, dass diese beiden Links für Sie nützlich sein können.
Videobearbeitungsbibliothek
Funktionen
Sie können diese Funktion verwenden, indem Sie Ihre Benutzeroberfläche anpassen.
FFMPEG ist die beste Option Wenn Sie Probleme haben, ffmpeg zu kompilieren, verwenden Sie diesen Link https://github.com/WritingMinds/ffmpeg-Android und folgen Sie den Befehlen von https: // github. de/antpersan/CutVideoAndroid und für den Bereich Seekbar https://github.com/anothem/Android-range-seek-bar oder verwenden Sie die von shanrais empfohlene VideoSeekBarView
Versuchen Sie das folgende Beispiel mit Git, um ein Video wie WhatsApp zu schneiden.
diese Lösung, die ich ausprobiert habe, funktioniert perfekt. In diesem Beispiel wird der benutzerdefinierte RangeSeekBarView
, der benutzerdefinierte ProgressBarView
with seekbar
verwendet, in dem Sie den Videobereich des Videos auswählen können, den Sie mit Trime versehen möchten, und das Ziel speichern