Si tengo un vídeo, normalmente avi, pero puede ser cualquiera, y quiero crear otro en el mismo formato pero solo una parte, la posiciónisegundos paraFSegundos después del video, ¿cuál es el comando de una línea para hacer esto?
Respuesta1
Esto se puede hacer usando mencoder
o ffmpeg
.
mencodificador
Digamos que desea recortar una parte que comienza en 00:00:30 en el archivo original con una duración de 5 segundos y que no debe volver a codificarse (si desea volver a codificarla tendrá que reemplazarla copy
con audio). y códecs de video, para obtener una lista de códecs de audio disponibles mencoder -oac help
, para obtener una lista de códecs de video disponibles mencoder -ovc help
), luego emita:
mencoder -ss 00:30:00 -endpos 00:00:05 -oac pcm -ovc copy originalfile -o newfile
Tendrás que reemplazar orginalfile
y newfile
con nombres de archivos reales, este último es el nombre del archivo que se crea para contener la parte recortada.
ffmpeg
Digamos que desea recortar una parte que comienza en 00:00:30 en el archivo original con una duración de 5 segundos y que no debe volver a codificarse (si desea volver a codificarla tendrá que reemplazarla copy
con códecs de audio y vídeo, para obtener una lista de códecs disponibles ffmpeg -formats -E
), luego emite:
ffmpeg -ss 00:00:30 -i orginalfile -t 00:00:05 -vcodec copy -acodec copy newfile
Tendrá que reemplazar orginalfile
y newfile
con nombres de archivos reales; el último es el nombre del archivo que se crea para contener la parte recortada.
Para referencia verhttp://lazyxiong-tech.blogspot.com/2007/05/using-mencoder-to-cut-out-pieces-of.htmly "7. Copie sólo una parte del vídeo" enhttp://segfault.in/2010/10/ffmpeg-tricks-you-should-know-about/
Respuesta2
¿Necesita cortar video con recodificación o sin modo de recodificación? Puede intentar seguir el siguiente comando.
Sinopsis: ffmpeg -i [archivo_entrada] -ss [segundos_inicio] -t [segundos_duración] [archivo_salida]
use FFmpeg para cortar video mp4 sin volver a codificarlo
Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -c copy cut_video.mp4
use FFmpeg corte video mp4 con recodificación
Example:
ffmpeg -i source.mp4 -ss 00:00:05 -t 00:00:10 -async 1 -strict -2 cut_video.mp4
Si desea cortar la sección desde el principio, simplemente suelte -t 00:00:10
el comando
Respuesta3
paquete médicoes una aplicación de línea de comandos muy simple como contenedor ffmpeg
.
Puedes lograr recortar tu video usando estos comandos:
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
Puede ver las opciones del subcomando recortar como:
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
También puedes explorar otras opciones usandomedipack -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
puedes visitarhttps://github.com/srbcheema1/medipacky ejemplos de pago en README.
Respuesta4
Para ser más precisos, puedes: Abrir MANUALMENTE el archivo en un reproductor multimedia que avanzará fotograma a fotograma (potplayer es mi favorito, pero MPC-HC funciona) y reproducir un archivo AVISynth con datos como:
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)
Luego corte con el formato de hora EXACTO:
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"
y
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"
Si desea unirse, cree un archivo txt con los archivos de video con contenidos como:
file 'C:\Downloads\Video\Do you want him1.flv'
file 'C:\Downloads\Video\Do you want him2.flv'
Correr ffmpeg
:
ffmpeg -f concat -i FileList.txt -c copy "Path\NewName_joined.flv"
PROGRAMÁTICAMENTE Escribí un programa pero no tengo nivel 10 para mostrarlo, lo siento