Schnelles und relativ präzises Schneiden aus einem Video

Schnelles und relativ präzises Schneiden aus einem Video

Ich versuche eine Anwendung zu erstellen, die bestimmte kleine Abschnitte aus Videos ausschneidet. Genauer gesagt schneidet sie das aus, was die Person sagt, basierend auf den Zeitstempeln in den Untertiteln. Schneiden mit dem folgenden Befehl

ffmpeg -ss 346 -i input.avi -t 5 -c copy -y output.mp4

ist sehr schnell und genau genug, aber ich bin mir nicht sicher, ob es speichereffizient ist, da MP4 so etwas wie „Fälschungen“ macht. Ich habe auch versucht, mit dem folgenden Befehl zu schneiden:

ffmpeg -i input.avi -ss 346 -t 5 -c copy output.mp4

In diesem Fall kann ffmpeg an Nicht-Keyframes schneiden, sodass Videos am Anfang oft nicht richtig abgespielt werden, was für mich kritisch ist.

Ich habe versucht, das Dekodieren und Kodieren zu vermeiden, da meine Anwendung mehrere Videos gleichzeitig verarbeiten muss und es auf diese Weise möglicherweise zu langsam wäre. Ich habe bereits darüber nachgedacht, ffmpeg zu zwingen, am Anfang des erforderlichen Abschnitts ein Keyframe zu erstellen und dann den ersten Befehl zu verwenden, aber ich bin mir nicht sicher, ob das schnell wäre. Meiner Meinung nach ist das Erstellen von Keyframes keine einfache Aufgabe. Und meine obersten Prioritäten sind Zeiteffizienz und relative Genauigkeit. Daher weiß ich jetzt nicht, welche dieser Optionen in meinem Fall am besten funktioniert. Ich wäre für jede Hilfe dankbar.

Antwort1

Ich habe nur einen Moment Zeit, bevor ich los muss, also mache ich es kurz (und bearbeite es später, falls nötig).

Ich würde diesen Ansatz wählen – meine „Philosophie“. Suchen Sie bei jedem beliebigen Problem zuerst nach einer Lösung, die das gewünschte Ergebnis liefert. Das ist vielleicht nicht die effizienteste oder sauberste Lösung, aber wenn sie das gewünschte Ergebnis liefert, ist sie per Definition eine gute Lösung.

Und Sie haben Ihre Frage fast selbst beantwortet. Ich darf Sie zitieren:

Meine obersten Prioritäten sind Zeiteffizienz und relative Genauigkeit.

Ich bin froh, dass Sie Ihre Prioritäten kennen! Sind Sie also bereit, etwas Dateigröße einzubüßen, um diese Prioritäten zu erfüllen? Wenn ja, dann bleiben Sie bei Ihrem ersten Beispiel. Wie Sie sagen, ist es sehr schnell, es ist genau genug und die einzigen Kosten sind etwas Dateigröße.

Hoffe das hilft :-) M

verwandte Informationen