Cómo convertir alto bitrate mp3 a una tasa más baja utilizando ffmpeg en android

Queremos convertir el archivo mp3 320kbps a 128kbps mp3 así que actualmente estamos utilizando el comando ffmpeg mas abajo, pero no funciona.

ffmpeg -i input.mp3 -codec:a libmp3lame -qscale:a 5 output.mp3 

Resultado: -el bitrate de salida igual que la entrada mp3.

Y seguimos la guía de codificación FFmpeg para que aquí está el enlace: – https://trac.ffmpeg.org/wiki/Encode/MP3

Así que por favor sugiera cualquier solución.

He probado su comando mostrado (probado en Windows / línea de comandos):

 ffmpeg -i input.mp3 -codec:a libmp3lame -qscale:a 5 output.mp3 

Resultado : Funciona para mí. Sin embargo, el -qscale:a 5 hace FFmpeg decidir sobre un promedio de bitrate para usted. Con un (320k) archivo MP3 lo conseguí dándole un close convert de 134kbps . Esto se espera desde:

 lame option Average kbit/s Bitrate range kbit/s ffmpeg option -V 5 130 120-150 -q:a 5 

Solución :
En lugar de hacer que los cuadros mp3 internos mantengan velocidades de bits diferentes (que varían para adaptar el audio percibido "actual", por ejemplo: piensan en partes "silenciosas" usando una menor velocidad de bits / bytes en comparación con las partes de audio "ocupadas"), Bitrate de 128kbps como usted necesita.

Yo sólo lo establecería a 128kbps constante de forma manual y explícita con:

 ffmpeg -i input.mp3 -codec:a libmp3lame -b:a 128k output.mp3 

Tomó un poco de juguetear para conseguir el ffmpeg derecho y encontrar opciones, pero esto debe hacerlo.

 #!/bin/bash MUSIC="FULL PATH TO YOUR MUSIC FOLDER" BITRATE=160k find "${MUSIC}" -name "*.mp3" -execdir echo "{}" \; -exec mv "{}" "{}.mp3" \; -exec ffmpeg -y -loglevel "error" -i "{}.mp3" -acodec libmp3lame -ab $BITRATE "{}" \; -exec rm "{}.mp3" \; 

Debido a que ffmpeg no puede emitir al mismo archivo de entrada sin nuking, el script primero cambia el nombre del archivo, construye uno nuevo en el bitrate elegido, luego elimina el archivo antiguo.

Estoy seguro de que muchas personas habrán sugerido mejoras aquí. Ciertamente, le doy la bienvenida a las maneras de hacer el guión más legible.

  • GC y onTouch causan un error de señal fatal 11 (SIGSEGV) en la aplicación que utiliza ffmpeg a través de ndk
  • ffmpeg para un android (usando el tutorial: "ffmpeg y Android.mk")
  • Problema al llamar a ffmpeg.c dos veces que hace que la aplicación se bloquee?
  • Cómo jugar raw h264 producido por MediaCodec encoder?
  • Decodificación de aac-eld en Linux
  • Android: ¿Cómo configurar la última versión de FFMPEG en android studio?
  • Decodificar el hardware del android codificó la alimentación de la cámara H264 usando ffmpeg en tiempo real
  • Video ffmpeg comprimido pero no se reproduce en el navegador
  • ¿Hay alguna manera de hacer compresión de imágenes y ahorrar más rápido en Android?
  • Cómo aumentar el rendimiento del dibujo de mapa de bits en Android
  • UnsatisfiedLInkError Vinculación a FFMPEG con NDK
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.