Extrahieren Sie einen Teil eines Videos mit einem einzeiligen Befehl

Extrahieren Sie einen Teil eines Videos mit einem einzeiligen Befehl

Wenn ich ein Video habe, normalerweise AVI, aber es könnte jedes sein, und ich möchte ein weiteres im gleichen Format erstellen, aber nur einen Teil davon, die PositionichSekunden bisFSekunden nach Beginn des Videos. Wie lautet der einzeilige Befehl hierfür?

Antwort1

mencoderDies kann mit oder erfolgen ffmpeg.

mencoder

Angenommen, Sie möchten aus der Originaldatei einen Teil herausschneiden, der bei 00:00:30 beginnt und eine Länge von 5 Sekunden hat, und dieser nicht neu kodiert werden soll (wenn Sie ihn neu kodieren möchten, müssen Sie copydurch Audio- und Video-Codecs ersetzen, für eine Liste der verfügbaren Audio-Codecs geben Sie ein mencoder -oac help, für eine Liste der verfügbaren Video-Codecs geben Sie ein mencoder -ovc help), dann geben Sie ein:

mencoder -ss 00:30:00 -endpos 00:00:05 -oac pcm -ovc copy originalfile -o newfile

Sie müssen orginalfileund newfiledurch tatsächliche Dateinamen ersetzen. Letzterer ist der Name der Datei, die erstellt wird, um den ausgeschnittenen Teil aufzunehmen.

ffmpeg

Angenommen, Sie möchten einen Teil ab 00:00:30 aus der Originaldatei mit einer Länge von 5 Sekunden herausschneiden und dieser soll nicht neu kodiert werden (wenn Sie ihn neu kodieren möchten, müssen Sie ihn copydurch Audio- und Video-Codecs ersetzen, eine Liste der verfügbaren Codecs finden Sie unter ffmpeg -formats -E), dann geben Sie ein:

ffmpeg -ss 00:00:30 -i orginalfile -t 00:00:05 -vcodec copy -acodec copy newfile

Sie müssen orginalfileund newfiledurch tatsächliche Dateinamen ersetzen. Letzterer ist der Name der Datei, die erstellt wird, um den ausgeschnittenen Teil aufzunehmen.


Referenzen finden Sie unterhttp://lazyxiong-tech.blogspot.com/2007/05/using-mencoder-to-cut-out-pieces-of.htmlund „7. Nur einen Teil des Videos kopieren“ inhttp://segfault.in/2010/10/ffmpeg-tricks-you-should-know-about/

Antwort2

Müssen Sie das Video mit oder ohne Neukodierung schneiden? Sie können den folgenden Befehl ausprobieren.

Zusammenfassung: ffmpeg -i [Eingabedatei] -ss [Startsekunden] -t [Dauersekunden] [Ausgabedatei]

Verwenden Sie FFmpeg, um MP4-Videos ohne Neukodierung zu schneiden

Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -c copy cut_video.mp4

Verwenden Sie FFmpeg, um MP4-Videos mit Neukodierung zu schneiden

Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -async 1 -strict -2 cut_video.mp4

Wenn Sie den Abschnitt von Anfang an abschneiden möchten, löschen Sie ihn einfach -t 00:00:10aus dem Befehl

Antwort3

Medipackist eine sehr einfache Befehlszeilen-App als Wrapper über ffmpeg.

Sie können Ihr Video mit diesen Befehlen 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 „Trim“ 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önnen auch andere Optionen erkunden mitmedipack -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 besuchenhttps://github.com/srbcheema1/medipackund Checkout-Beispiele in README.

Antwort4

Genauer gesagt können Sie: Die Datei MANUELL in einem Mediaplayer öffnen, der die Datei Bild für Bild weiterspielt (mein Favorit ist Potplayer, aber MPC-HC funktioniert auch) und eine AVISynth-Datei mit Daten wie den folgenden 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 teilnehmen 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'

Laufen ffmpeg:

ffmpeg -f concat -i FileList.txt -c copy "Path\NewName_joined.flv"

PROGRAMMIERBAR Ich habe ein Programm geschrieben, aber ich habe keine Ebene 10, um es anzuzeigen, tut mir leid

verwandte Informationen