Wenn ich ein Video habe, normalerweise avi, aber eines sein könnte, und ich möchte ein anderes im gleichen Format erstellen, aber nur einen Teil, die Position i Sekunden bis f Sekunden im Video, was ist der einzeilige Befehl zu tun diese?
Wenn ich ein Video habe, normalerweise avi, aber eines sein könnte, und ich möchte ein anderes im gleichen Format erstellen, aber nur einen Teil, die Position i Sekunden bis f Sekunden im Video, was ist der einzeilige Befehl zu tun diese?
Antworten:
Dies kann mit mencoder
und erfolgen ffmpeg
.
Angenommen, Sie möchten einen Teil ab 00:00:30 in die Originaldatei mit einer Länge von 5 Sekunden ausschneiden und nicht neu codieren (wenn Sie ihn neu codieren möchten, müssen Sie ihn durch copy
Audio ersetzen und Video-Codecs (für eine Liste verfügbarer Audio-Codecs mencoder -oac help
, für eine Liste verfügbarer Video-Codecs mencoder -ovc help
), geben Sie Folgendes ein:
mencoder -ss 00:30:00 -endpos 00:00:05 -oac copy -ovc copy originalfile -o newfile
Sie müssen die Dateinamen ersetzen orginalfile
und newfile
durch die tatsächlichen Dateinamen ersetzen. Letzterer ist der Name der Datei, die für den ausgeschnittenen Teil erstellt wurde.
Angenommen, Sie möchten einen Teil ab 00:00:30 in der Originaldatei mit einer Länge von 5 Sekunden ausschneiden und ihn nicht neu codieren (wenn Sie ihn neu codieren möchten, müssen Sie ihn ersetzen) copy
mit Audio- und Video-Codecs (für eine Liste der verfügbaren Codecs ffmpeg -formats -E
) geben Sie Folgendes ein:
ffmpeg -ss 00:00:30 -i orginalfile -t 00:00:05 -vcodec copy -acodec copy newfile
Sie müssen die Dateinamen ersetzen orginalfile
und newfile
durch die tatsächlichen Dateinamen ersetzen. Letzterer ist der Name der Datei, die für den ausgeschnittenen Teil erstellt wurde.
Weitere Informationen finden Sie unter http://lazyxiong-tech.blogspot.com/2007/05/using-mencoder-to-cut-out-pieces-of.html und "7. Nur einen Teil des Videos kopieren" in http: // segfault.in/2010/10/ffmpeg-tricks-you-should-know-about/
-ss ... -t ...
Bedürfnisse sein vor der -i infile
Wahl. Sehen Sie diese Antwort für den echten Einzeiler. Sie haben es fast geschafft, nur nicht die Reihenfolge ...
Müssen Sie Videos mit oder ohne Neucodierungsmodus schneiden? Sie können versuchen, den folgenden Befehl auszuführen.
Inhaltsangabe: ffmpeg -i [Eingabedatei] -ss [Start_Sekunden] -t [Dauer_Sekunden] [Ausgabedatei]
verwende FFmpeg, schneide mp4-Video ohne Neukodierung
Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -c copy cut_video.mp4
verwende FFmpeg, schneide mp4-Video mit neuer Kodierung
Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -async 1 -strict -2 cut_video.mp4
Wenn Sie einen Abschnitt von Anfang an abschneiden möchten, lassen Sie -t 00:00:10
den Befehl einfach los
medipack ist eine sehr einfache Kommandozeilen-App als Wrapper über ffmpeg
.
Mit den folgenden Befehlen können Sie Ihr Video zuschneiden:
medipack trim input.mp4 -s 01:04 -e 14:08 -o output.mp4
medipack trim input.mp4 -s 01:04 -t 13:04 -o output.mp4
Sie können die Optionen des Unterbefehls "Trimmen" wie folgt anzeigen:
srb@srb-pc:$ medipack trim -h
usage: medipack trim [-h] [-s START] [-e END | -t TIME] [-o OUTPUT] [inp]
positional arguments:
inp input video file ex: input.mp4
optional arguments:
-h, --help show this help message and exit
-s START, --start START
start time for cuting in format hh:mm:ss or mm:ss
-e END, --end END end time for cuting in format hh:mm:ss or mm:ss
-t TIME, --time TIME clip duration in format hh:mm:ss or mm:ss
-o OUTPUT, --output OUTPUT
Sie könnten auch andere Optionen mit erkunden medipack -h
srb@srb-pc:$ medipack --help
usage: medipack.py [-h] [-v] {trim,crop,resize,extract} ...
positional arguments:
{trim,crop,resize,extract}
optional arguments:
-h, --help show this help message and exit
-v, --version Display version number
Sie können https://github.com/srbcheema1/medipack besuchen und Beispiele in README auschecken.
Genauer gesagt können Sie: MANUELL die Datei in einem Mediaplayer öffnen, der Frame für Frame vorrückt (Potplayer mein Favorit, aber MPC-HC funktioniert) und eine AVISynth-Datei mit folgenden Daten abspielen:
DirectShowSource(("C:\Downloads\Video\Do you want him.flv"), Pixel_Type="yuy2").Crop(0,0,-0,-0)
Subtitle("C:\Downloads\Video\Do you want him.flv", font="Arial", size=24, text_color=$ff0000, align=3)
ShowFrameNumber(scroll=true, x=336, y=27, font="Arial", size=24, text_color=$ff0000)
ShowTime(x=398, y=44, font="Arial", size=24, text_color=$ff0000)
Dann schneiden Sie mit dem GENAUEN Zeitformat:
ffmpeg -i "Path\do you want him.flv" -ss 00:00:05.240 -to 00:00:08.360 -vcodec libx264 -acodec libvo_aacenc "Path\Do you want him1.flv"
und
ffmpeg -i "Path\do you want him.flv" -ss 00:00:10.240 -to 00:00:14.360 -vcodec libx264 -acodec libvo_aacenc "Path\Do you want him2.flv"
Wenn Sie beitreten möchten, erstellen Sie eine TXT-Datei mit den Videodateien mit Inhalten wie:
file 'C:\Downloads\Video\Do you want him1.flv'
file 'C:\Downloads\Video\Do you want him2.flv'
Ausführen ffmpeg
:
ffmpeg -f concat -i FileList.txt -c copy "Path\NewName_joined.flv"
PROGRAMMATISCH Ich habe ein Programm geschrieben, habe aber kein Level 10, um es zu zeigen, sorry