Como preservar melhor a qualidade de um arquivo .amr usando o ffmpeg

0

Eu tenho um disco de áudio que é precioso para mim, foi feito anos atrás e consegui através de um tipo de mensagem mms no meu antigo telefone GSM.

De acordo com ffprobe.exe -show_entries format:stream -count_frames -count_packets -i mms-1.amr > input.txt , o áudio tem as seguintes especificações:

    [STREAM]
    codec_name=amr_nb
    codec_long_name=AMR-NB (Adaptive Multi-Rate NarrowBand)
    codec_time_base=1/8000
    codec_tag_string=samr
    sample_rate=8000
    channels=1
    channel_layout=mono
    bits_per_sample=0
    duration_ts=275840
    duration=34.480000
    bit_rate=6000
    nb_read_frames=1724
    nb_read_packets=1724
    [/STREAM]
    [FORMAT]
    filename=mms-1.amr
    nb_streams=1
    format_long_name=3GPP AMR
    bit_rate=6401
    probe_score=100
    [/FORMAT]

Então, eu tentei várias vezes com ffmpeg , mas a única abordagem viável que encontrei foi uma conversão de duas pernas, extraindo o raw audio primeiro:

1) ffmpeg -i mms-1.amr -f s16le -c:a pcm_s16le output.raw

2) ffmpeg -f s16le -ar 8000 -ac 1 -i output.raw mms-1.wav

Curiosamente, o tamanho original do arquivo é 27KB, o arquivo wave é 539KB!

Duas perguntas:

  1. Esta é a única maneira de converter um tipo de arquivo de áudio .amr em qualquer formato para ser facilmente reconhecido por Windows system? Que tal uma linha de código para converter diretamente em wav format?

  2. Existe / há bons filtros de áudio dentro do ffmpeg para acentuar uma voz no registro. A resposta para uma pergunta antiga aqui menciona " equalizando como uma técnica adequada para filtrar o ruído e melhorar o reconhecimento de voz ...", mas até agora não consegui encontrar uma boa explicação de como isso funciona. Quaisquer outros filtros?

por user182551 10.06.2018 / 20:03

0 respostas