Вы, конечно, можете использовать SoX, как уже упоминали другие люди, но я предлагаю использовать lame
и flac
:
Ваш первый вопрос переходит с .mp3
на .flac
(см. Ниже, почему это обычно плохая идея):
lame --decode .mp3 - | flac -o .flac -
Это будет использовать заголовки WAV, которые имеют ограничения, когда речь идет об очень длинных файлах (четыре часа или более длинных звуковых файлов и т. д.)
Второй вопрос: как перейти с .flac
на .mp3
:
flac -d -c .flac | lame - .mp3
Эти настройки предполагают уровни качества по умолчанию и т. Д. Прочтите справочную страницу lame
и / или flac
, чтобы лучше понять, как их настроить.
Возможно, у вас есть очень длинные записи, которые вы затем захотите перекодировать в формат с потерями. Это был один из моих вариантов использования, и я придумал следующее:
Переход от .flac
к .mp3
с использованием настроек качества по умолчанию:
flac -d --force-raw-format --endian=little --sign=signed .flac -c | lame -r -s 48 - .mp3
Это предполагает необработанный формат это данные PCM. Частота дискретизации 48 кГц, два канала. Каждая выборка представляет собой 16-битное целое число со знаком прямого порядка байтов.
В процессе кодирования lame
здесь используются настройки качества по умолчанию, которые могут быть недостаточно сложными для вас, заметьте.
Следует отметить, что нет смысла создавать файл FLAC из файла MP3, потому что MP3 уже закодирован с потерями.
Переход от MP3 -> FLAC, а затем FLAC -> MP3 не имеет смысла, так как качество будет ухудшаться с первого, исходного шага кодирования MP3.
Однако я предполагаю, что у вас есть разумный вариант использования для этого ...
Как упоминал sourcejedi , вы можете использовать sdparm
для настройки записей на странице Power Condition.
Чтобы увидеть текущие значения, запуститеsdparm -p po /dev/sr0
(или любой другой диск ). Это покажет текущие таймауты(ICT
и SCT
; флаги IDLE
и STANDBY
также должны быть установлены ).
Чтобы изменить значения, запустите
sdparm -p po -s ICT=12000 /dev/sr0
sdparm -p po -s SCT=12000 /dev/sr0
(это установит оба значения на 20 минут ).
Если у вас есть настройки, которые вам подходят, вы можете сохранить их как мощность -по умолчанию для привода с опцией -S
:
sdparm -S -p po -s ICT=12000 /dev/sr0
sdparm -S -p po -s SCT=12000 /dev/sr0