Показаны сообщения с ярлыком звук. Показать все сообщения
Показаны сообщения с ярлыком звук. Показать все сообщения

20081106

Удаление потайных ID3 тегов вроде www.mp3-ogg.ru

Столкнулся с тем, что в mp3 бывают скрытые «неудаляемые» теги. В частности, в интернет-обращении находятся файлы, в которых в поле жанр указано «www.mp3-ogg.ru». И сколько бы я ни прописывал правильные теги в EasyTAG, или даже пытался удалять все (ID3v1 и ID3v2) теги из такого файла (в EasyTAG или с помощью id3v2 -D file.mp3), при добавлении файла в библиотеку Rhythmbox поганое «www.mp3-ogg.ru» всё равно вылазит.

Похоже, это связано с так называемыми APETAGS, будь они неладны. Только старый добрый mpg321 показывает нормальные ID3v2/ID3v1 теги.

Как заметил наблюдательный народ, потайные теги расположены в конце файла. Убедиться в этом можно, например, так:
$ strings test.mp3 | tail -14
APETAGEX
TITLE
ARTIST
ALBUM
YEAR
2007,
COMMENT
GENRE
www.mp3-ogg.ru
COPYRIGHT
Make Love Not War
TRACKNUMBER
1APETAGEX
2007
и предложил простенький скрипт, чтобы такую нежелательную концовку удалять. Моя версия скрипта здесь. Отличие от оригинала в том, что я решил обрезать по слову "APETAG" вместо "TAG", мне кажется так менее вероятна ошибка обрезки, и добавил опции командной строки. Применение:
$ tagwipe.py test.mp3
Конечно, лучше сделать резервную копию перед применением, но вроде бы обработанные файлы не испортились, а слишком умные проигрыватели теперь показывают правильные теги.

20080226

Как записать интернет-радиостанцию в файл

Я время от времени пользуюсь пакетом streamripper, чтобы сохранять вещание интернет-радиостанций в файл. Обычно я использую его примерно так:
$ streamripper http://адрес-mp3-потока-радиостанции -a radio.mp3 -M 50 -t
— сохранить всё в один файл radio.mp3 («-a radio.mp3», без этой опции каждый трек должен писаться в отдельный файл, но увы не все интернет-радиостанции разделяют треки и далеко не все вещают id3-тэги), писать максимум 50 мегабайт («-M 50»), а при разрыве соединения временные файлы не перезаписывать («-t») (предыдущие фрагменты тогда остаются в Название-станции/incomplete/).

Записываемый файл можно прямо на лету слушать mplayerом.

Применений этому множество:
  • можно сохранять радиопередачи по расписанию (crontab),
  • можно пропускать рекламу (благо, её длительность обычно фиксированна) и затянувшийся трёп,
  • можно повторно прослушать название понравившейся песни,
  • можно повторно прослушать саму песню,
  • можно пропускать неприятные песни,
  • можно спокойно поставить радио «на паузу»…
А вот и список разных российских радиостанций, доступных онлайн.

Дополнение: для streamripper есть несколько графических интерфейсов. Пользователи GNU/Linux могут воспользоваться StreamTuner, Tunapie или KRadioRipper. Вот так выглядит StreamTuner:

20070906

Звук во Flash-роликах в Firefox/Iceweasel

Знакомый попросил помочь: чтобы при просмотре Flash-роликов в Iceweasel работал звук и при одновременном включенном и поставленном на паузу музыкальном плеере. Сам я пользуюсь Epiphany, и в ней у меня и так звук работает без проблем. Попробовал запустить Flash-ролик в Iceweasel — и правда нет звука!

Решение такое:
  • использовать звуковые драйвера ALSA
  • устанавить «переходник» alsa-oss
  • в /etc/iceweasel/iceweaselrc (или ~/.mozilla/firefox/rc) указать
    # which /dev/dsp wrapper to use
    ICEWEASEL_DSP="aoss"
После этого звук флэш-роликов в Iceweasel нормально воспроизводится, и другие приложения ему не мешают. Данное поведение документировано в /usr/share/doc/iceweasel/README.Debian. Для firefox, всё, естественно, аналогично с точностью до названия.