No se puede cortar parte del video con ffmpeg

No se puede cortar parte del video con ffmpeg

Lo que quiero hacer

Estoy intentando cortar un video para un proyecto científico en Ubuntu 11.10 con el último ffmpeg. También probé Kino y avidemux, donde el video ni siquiera se abrió correctamente, aunque se reproduce bien tanto en VLC como en mplayer.

Lo más cerca que he estado hasta ahora es con estos parámetros:

ffmpeg -ss 01:58 -t 21 -i row.avi -vcodec copy row_cut.avi

También lo intenté

ffmpeg -ss 1 -i row.avi -vcodec copy -t 3 row_cut.avi

y sigo con el mismo error :(

Donde obtengo al menos un video de 21 segundos como salida y no hay errores aparentes, pero el video no se reproduce en VLC (el ticker aparece pero solo muestra el logotipo de VLC) ni en mplayer ("Error de flujo de datos interno").


Salida FFmpeg al codificar

ffmpeg version git-2012-02-02-c853124 Copyright (c) 2000-2012 the FFmpeg developers
built on Feb  2 2012 23:17:50 with gcc 4.6.1
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable --libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab
 libavutil      51. 37.100 / 51. 37.100
 libavcodec     54.  0.102 / 54.  0.102
 libavformat    54.  0.100 / 54.  0.100
 libavdevice    53.  4.100 / 53.  4.100
 libavfilter     2. 61.100 /  2. 61.100
 libswscale      2.  1.100 /  2.  1.100
 libswresample   0.  6.100 /  0.  6.100
 libpostproc    52.  0.100 / 52.  0.100
Input #0, avi, from 'row.avi':
 Duration: 00:03:13.93, start: 0.000000, bitrate: 46210 kb/s
  Stream #0:0: Video: rawvideo, pal8, 640x300, 30 tbr, 30 tbn, 30 tbc
File 'row_cut.avi' already exists. Overwrite ? [y/N] y
Output #0, avi, to 'row_cut.avi':
 Metadata:
  ISFT            : Lavf54.0.100
  Stream #0:0: Video: rawvideo, pal8, 640x300, q=2-31, 30 tbn, 30 tbc
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame=  631 fps=125 q=-1.0 Lsize=  118334kB time=00:00:21.03 bitrate=46088.4kbits/s    
video:118312kB audio:0kB global headers:0kB muxing overhead 0.018043%

Salida FFmpeg al cargar los videos.

Supongo que el video tiene algún tipo de formato extraño, ¿no entendió los parámetros de ffmpeg o quizás la parte Metada:encoder:Lavf53.3.0 en la salida?

user@computer:/somewhere$ ffmpeg -i row.avi
Input #0, avi, from 'row.avi':
 Duration: 00:03:13.93, start: 0.000000, bitrate: 46210 kb/s
  Stream #0.0: Video: rawvideo, pal8, 640x300, 30 tbr, 30 tbn, 30 tbc

y

user@computer:/somewhere$ ffmpeg -i row_cut.avi
Input #0, avi, from 'row_cut.avi':
 Metadata:
  encoder         : Lavf54.0.100
Duration: 00:00:21.03, start: 0.000000, bitrate: 46088 kb/s
 Stream #0.0: Video: rawvideo, bgr24, 640x300, 30 tbr, 30 tbn, 30 tbc

Salida de información multimedia

General
Complete name                            : row.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
Format profile                           : OpenDML
File size                                : 1.04 GiB
Duration                                 : 3mn 13s
Overall bit rate                         : 46.2 Mbps

Video
ID                                       : 0
Format                                   : RGB
Codec ID                                 : 0x00000000
Codec ID/Info                            : Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples
Duration                                 : 3mn 13s
Bit rate                                 : 46.1 Mbps
Width                                    : 640 pixels
Height                                   : 300 pixels
Display aspect ratio                     : 2.2:1
Frame rate                               : 30.000 fps
Bit depth                                : 8 bits
Bits/(Pixel*Frame)                       : 8.000
Stream size                              : 1.04 GiB (100%)

y

General
Complete name                            : row_cut.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
File size                                : 116 MiB
Duration                                 : 21s 33ms
Overall bit rate                         : 46.1 Mbps
Writing application                      : Lavf54.0.100

Video
ID                                       : 0
Format                                   : RGB
Codec ID                                 : 0x00000000
Codec ID/Info                            : Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples
Duration                                 : 21s 33ms
Bit rate                                 : 46.1 Mbps
Width                                    : 640 pixels
Height                                   : 4294966 996 pixels
Display aspect ratio                     : 0.000
Frame rate                               : 30.000 fps
Bit depth                                : 8 bits
Stream size                              : 116 MiB (100%)

Respuesta1

Respuesta de la lista de correo de ffmpeg:

No puedes usar -vcodec copy en pal8 rawvideo (esto puede ser un error), pero puedes usar -vcodec rawvideo como solución alternativa.

Funciona un poco en VLC pero no en mplayer, así que funcionará por ahora. El comando de trabajo final sería

ffmpeg -ss 1 -i row.avi -vcodec rawvideo -t 3 row_cut.avi

información relacionada