LINUX.ORG.RU
ФорумAdmin

Конвертация wav в mp3

 , , , ,


0

1

Добра всем!

Юзал всегда все работало сейчас почему то перестало..

https://habrahabr.ru/post/258583/ - пруф по которому делал..

Скрипт по консоли срабатывает нормально

  == MixMonitor close filestream (mixed)
  == Executing [/etc/asterisk/scripts/mixmon-mp3-2.sh 2018 02 14 in-9621808888-+79536568888-20180214-164134-1518615694.43704 wav /var/spool/asterisk/monitor/]
  == End MixMonitor Recording SIP/78007006790-00000eaf

Сам скрипт

if [ -z "${MIXMON_DIR}" ]; then
SPOOLDIR="/var/spool/asterisk/monitor/"
else
SPOOLDIR=${MIXMON_DIR}
fi

FFILENAME=${SPOOLDIR}${YEAR}/${MONTH}/${DAY}/${CALLFILENAME}.${MIXMON_FORMAT}

/usr/bin/test ! -e ${FFILENAME} && exit 21

WAVFILE=${FFILENAME}
MP3FILE=`echo ${WAVFILE} | /bin/sed 's/.wav/.mp3/g'`

SUDO="/usr/bin/sudo"
LOWNICE="/bin/nice -n 19 /usr/bin/ionice -c3"

${SUDO} ${LOWNICE} /usr/bin/lame --quiet --preset phone -h -v ${WAVFILE} ${MP3FILE}

${SUDO} /bin/chown --reference=${WAVFILE} ${MP3FILE}
/bin/chmod --reference=${WAVFILE} ${MP3FILE}
/bin/touch --reference=${WAVFILE} ${MP3FILE}

/usr/bin/test -e ${MP3FILE} && /bin/rm -f ${WAVFILE}

${SUDO} ${LOWNICE} /usr/bin/ffmpeg -loglevel quiet -y -i ${MP3FILE} -f wav -acodec copy ${WAVFILE} >/dev/null 2>&1

${SUDO} /bin/chown --reference=${MP3FILE} ${WAVFILE}
/bin/chmod --reference=${MP3FILE} ${WAVFILE}
/bin/touch --reference=${MP3FILE} ${WAVFILE}

/usr/bin/test -e ${WAVFILE} && /bin/rm -f ${MP3FILE}

Он мне подходит потому что оставляет wav формат но этот бешеный битрийт в 128 кбит сек ненужен для голоса, можно и 18 кбит, подскажите как битрейт проставить в скрипт?

А то 30 секунд занимает 500 кбайт,накладно...

Скрипт сначала конвертирует wav в mp3, удаляет wav, конвертирует mp3 в wav а потом удаляет mp3?

anonymous
()
Ответ на: комментарий от anonymous

Конвертирует файл после разговора в формат mp3 с помощью lame, потом, с помощью ffmpeg добавляет заголовок к файлу записи и сменяет расширение обратно на .wav , что бы читалось в браузерах...

skynetyar
() автор топика

какие-то невообразимые костыли

кодируйте в aac и не будет проблем ни с плеером, ни с браузерами

#!/bin/bash

FN=$1
BFN="${FN%.*}"

nice -n 19 /usr/local/bin/neroAacEnc -br 24000 -if ${FN} -of ${BFN}.m4a && rm ${FN}

# или
# nice -n 19 aac-enc -r 24000 ${FN} ${BFN}.aac && rm ${FN}
paganmind
()

phone => 16kbps/mono

Но у тебя потом зачем-то идёт -v и -h, которые изменяют настройки пресета

Читай ман

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.