2011-12-07 14 views
5

El hardware en el que estamos trabajando no admite la reproducción de archivos mkv. Así que estoy obligado a transcodificar el archivo de video Matroska (mkv) al archivo de video mp4.Gstreamer: transcodificación de video de Matroska a mp4

lo que tengo entendido a partir del material disponible en línea en la transcodificación, yo estoy obligado a hacer lo siguiente:

  1. separar diferentes corrientes de archivos MKV utilizando matroskademux elemento.
  2. decodificar las transmisiones de audio y video en formato sin procesar con decodificador mkv disponible y
    suministrar estos datos al elemento mp4 Muxer y volver a codificar al formato requerido.

¿Alguien podría decirme si estoy aplicando el enfoque correcto? Cualquier información/enlace sobre esto sería muy útil.

Vikram

Respuesta

4

Dependiendo de lo que está en el archivo Matroska puede que no necesite de decodificarlo en absoluto, sólo remux.

Supongo que el video, por ejemplo, es H264, así que simplemente remueve eso. A continuación se muestra un ejemplo de canal para gst-launch para remixear un archivo con h264 y mp3.

gst-launch-0.10 -v filesrc location=$file \ 
! matroskademux name="demux" demux. ! h264parse ! queue \ 
! mp4mux name=mux ! filesink location=$file._out.mp4 demux. \ 
! mp3parse ! queue ! mux.` 

También puede mirar en el Transmageddon transcoder (www.linuxrising.org) que debe darle lo que desea.

+0

Gracias por la respuesta. Tengo una consulta más: Con el comando anterior que mencionaste, pude remout mkv a mp4 en los casos en que la transmisión de audio es mp3. Si mkv tiene una secuencia de audio aac, entonces trato de usar un analizador. De alguna manera, la cola de la tubería no se vincula con el elemento aacparse. En una de las publicaciones relacionadas con aacparse, se menciona que si el campo "enmarcado" en la secuencia de audio se establece en verdadero, el elemento "aacparse" falla para vincularse a la cola de interconexión. En este caso, ¿debo decodificar la transmisión de audio en formato sin procesar y luego volver a codificarla para que coincida con el receptor del elemento mp4mux? –

+0

Se han solucionado muchos problemas con los analizadores sintácticos en GStreamer git, el objetivo es tener lanzamientos nuevos en unas pocas semanas y creo que deberían solucionarlos. –

Cuestiones relacionadas