Recorte un segmento de H.264/FLV en vivo y con codificación fija con ffmpeg

Estoy codificando un video con ffmpeg en H.264 almacenado en un contenedor FLV. Me gustaría poder recortar segmentos de este video, ya que aún se está codificando. El video no contiene audio.

Estoy codificando el video así:

ffmpeg -i recording.mp4 -c libx264 output.flv

Y estoy tratando de recortar el video con:

ffmpeg -i output.flv -ss 00:00:00.000 -t 00:00:01.000 -c copy output2.mp4

Mientras el video aún se está codificando, veo este error cuando intento recortar:

Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)

Además, al codificar, usando ffprobe, obtengo información como la siguiente:

Duration: 00:00:26.96, start: 0.080000, bitrate: 126 kb/s
  Stream #0:0: Video: h264 (High), yuv420p, 640x480, 25 fps, 25 tbr, 1k tbn, 50 tbc

¿Cómo puedo recortar este archivo mientras aún se está codificando? Estoy dispuesto a cambiar los formatos de contenedor de flv a otra cosa si es necesario. En última instancia, necesito estar en mp4, pero no me importa barajar un poco el contenedor para permitirme recortar partes mientras sigo codificando.

trabaja aquí ¿Qué versión de ffmpeg?
2.8.14. De los repositorios oficiales de Ubuntu 16.04
Obtenga un binario de johnvansickle.com/ffmpeg y compruébelo.
Lo acabo de hacer. Sin embargo, ahora recorta sin errores, pero el archivo resultante tiene una longitud de 0 y contiene 0 fotogramas. Usé exactamente el mismo comando que el anterior, pero usé la compilación a la que se vinculó. Probé tanto el lanzamiento como las compilaciones de git. ¿Está utilizando un video de muestra disponible públicamente que podría encontrar en algún lugar y probarlo yo mismo?
¿Obtiene el mismo comportamiento si corta un segmento más largo?
Sí, mismo comportamiento en un segmento más largo

Respuestas (1)

Mantenga FLV pero recorte utilizando la búsqueda y la duración del demuxer.

ffmpeg -ss 00:00:03.000 -t 00:00:01.000 -i output.flv -c copy output2.mp4

Además, omita -sssi se trata de un 0inicio de transmisión.

Omitir -ss al principio es lo que me solucionó. Parece que el archivo realmente comenzaba en 0.080. ¿Cómo sabría eso si estuviera escribiendo un script para recortar un archivo?