Respuestas:
Con ffmpeg:
ffmpeg -i <input> -af asetrate=44100*0.5,aresample=44100 <output>
Aquí, 0.5 es el factor de tono. O vea la otra respuesta para más detalles.
Si necesita una GUI, use Audacity , es una herramienta de edición de audio multiplataforma gratuita y de código abierto.
Características: Cambia el tono sin alterar el tempo, o viceversa.
Como alternativa, prueba sox . Algo como eso:
sox <infile> <outfile> pitch <shift>
donde da el cambio de tono como 'centavos' positivos o negativos (es decir, centésimas de semitono). Hay 12 semitonos por octava, por lo que eso significaría ± 1200
como parámetro.
ffmpeg -i man.wav -af asetrate=48000*0.75,aresample=48000 man_pitch_down.wav
veo por ffmpeg -i
wav original Duration: 00:00:01.95, bitrate: 3080 kb/s
y wav modificado Duration: 00:00:02.60, bitrate: 1536 kb/s
. Según tengo entendido Duration
es longitud en segundos.
Encuentre la velocidad de entrada de audio de antemano así:
ffmpeg -i input.mp4
Suponiendo una velocidad de entrada de audio de 44,100 Hz, este comando hará el trabajo:
ffmpeg -i input.mp4 -af asetrate=44100*3/4,atempo=4/3 output.mp4
El factor de 3/4 cambiará la mayoría de las voces femeninas y "flacas" (ardillas) en voces masculinas y "gordas". Use 4/3 para lo contrario:
ffmpeg -i input.mp4 -af atempo=3/4,asetrate=44100*4/3 output.mp4
Observe el orden inverso del filtro para evitar la degradación de la señal. Siempre que sea posible, la operación sin pérdida debe venir antes de la operación con pérdida. No estoy 100% seguro de si no estoy cometiendo algún error al malinterpretar los filtros FFmpeg.
El filtro FFmpeg asetrate
debe tener una variable con el nombre ir
de velocidad de audio de entrada, en analogía a iw
× ih
en algunos filtros de video, pero no pude encontrar ninguna mención de ello en la documentación.
Para factores mayores que 2 (como 4/1 o 1/4), debe usar varios atempo
filtros (1/4 = 1/2 * 1/2 o 4/1 = 2/1 * 2/1):
ffmpeg -i input.mp4 -af asetrate=44100*4,atempo=1/2,atempo=1/2 output.mp4
No sé cómo obtener la voz masculina "flaca" y la voz femenina "gorda".
En lugar de -af
, puedes escribir -filter:audio
o -filter:a
.