Convierta vídeo mkv/h264 para poder reproducirlo en un teléfono Sony Ericsson de "gama media". (usando Ubuntu)

Convierta vídeo mkv/h264 para poder reproducirlo en un teléfono Sony Ericsson de "gama media". (usando Ubuntu)

Como pequeño experimento, estoy pensando en convertir algunos videos/películas/series de televisión a un formato que pueda reproducirse en mi K850, pero para ser un poco más genérico en esta pregunta, digamos un teléfono "Sony Ericsson de gama media", ya que todos Se comporta más o menos igual y tiene la misma resolución de pantalla (240 x 320).

Estoy buscando herramientas basadas en línea de comandos (para Ubuntu), ya que estoy pensando en escribir un script de "convertir y mover" más adelante si tiene éxito.

Gran parte del vídeo que tengo está codificado en mkv/h264, pero como el teléfono no lo admite, supongo que necesito convertirlo en vídeo mp4/mpeg4 de baja calidad.

Después de buscar en Google, parece que un buen candidato para el puesto esffmpeg, pero parece ser una herramienta muy versátil con muchos trucos de magia.

¿Estoy en el camino correcto? Y si es así, ¿cómo uso ffmpeg para hacer esto?

gracias johan


Actualizar: Después de enchapar un poco con ffmeg, noté que solo usa 1 de mis 4 núcleos, por lo que la transcodificación demora una eternidad. Encontré un argumento llamado -threads pero eso no cambió mucho, tal vez me equivoqué.

También descubrí que algo como esto se reproduce en el teléfono.

ffmpeg -i Mythbusters\ S1D1_1.mkv -threads 4 -t 180 -vcodec mpeg4 -r 15 -s 320x240 Mythbusters\ S1D1_1_mini.mp4

Era posible utilizar 3gp/h263, pero la calidad era realmente inútil.

ffmpeg -i Mythbusters\ S1D1_1.mkv -t 180 -vcodec h263 -acodec libfaac -s cif  Mythbusters\ S1D1_1_cif.3gp

Y parece que mp4/h264 también es posible y el resultado es bueno, gracias aesta pregunta, este también parece usar más de un núcleo, por lo que fue un poco más rápido para mí.

ffmpeg -i Mythbusters_S1D1_1.mkv -t 180 -acodec libfaac -ab 60k -s 320x240 -vcodec libx264 -b 500k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -flags2 +mixed_refs -me_method umh -subq 6 -trellis 1 -refs 5 -coder 0 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 500k -maxrate 768k -bufsize 2M -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 13 -threads 0 -f mp4 Mythbusters_S1D1_1_qvga.mp4

Actualizar: Intenté usar HandBrakeCLI y no hay problema en crear un nuevo archivo que parece ser el mismo que el creado con ffmpeg con algo como esto.

HandBrakeCLI -i Mythbusters_S1D1_1.mkv --size 100 -E faac -B 60 --maxHeight 240 -r 15 -e x264 -o Mythbusters_S1D1_1_hand.mp4

Pero ese no sonó en el teléfono...


Encontré esto en el manual oficial:

Si transfiere clips de video utilizando otro programa que no sea Media Go™, le recomendamos que seleccione video de perfil básico H.264, hasta QVGA a 30 fps, VBR 384 kbps (máximo 768 kps) con audio AAC+ a 128 kbps (máximo 255 kbps). ), 48 kHz y audio estéreo en formato de archivo mp4.

Entonces la idea de utilizar H264 parece correcta.

Respuesta1

¿Por qué no intentarlo?freno de mano? Está disponible para Linux, Mac Os y Windows y también tiene una interfaz de línea de comandos, si lo desea.

AquíEs una guía para Handbrake CLI.

Respuesta2

No puedo conseguir nada mejor que este ejemplo de ffmpeg:

ffmpeg -i Star_Wars.mkv -acodec libfaac -ab 60k -s 320x240 -vcodec libx264 -b 500k -flags + loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -flags2 +mixed_refs -m e_method umh -subq 6 -trellis 1 -refs 5 -coder 0 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 500k -maxrate 768k -bufsize 2M -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -nivel 13 -hilos 0 -f mp4 Star_Wars.mp4

Esto convierte un episodio de televisión de 50 minutos (4:3) en un archivo de 70 Mb (antes era de 700 Mb).

y una película de 2h (16:9) en un archivo de 470Mb (antes era de 1700Mb)

información relacionada