Zenway

Linux - это интересно!

Вы не вошли.

#1 20-01-2016 12:28:46

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Хочу странного

День добрый, господа-товарищи!
Шарахаясь по интернету в поисках ответов на свои вопросы, набрёл на ваш форум. Почитал. Появилась надежда. Пишу.

Преамбула.
В качестве хобби я занимаюсь коллекционированием музыки (типа меломан).
Я не из тех коллекционеров, которые тащат всё и борятся за полное соответствие того, что лежит у них на винте тому, что продаётся в магазине - когда я вижу плохо оцифрованный винил или "псевдо-ремастер" или ещё какую гадость, моя душа не может этого перенести и я хватаюсь за аудиоредактор.
С 94-го года моей основной системой была IBM OS/2. Я - обычный пользователь.
Нужные мне задачи были отлажены на базе самописных REXX-скриптов и нескольких консольных программ.
Алгорим работы следующий: преобразование flac -> wav, нарезка wav по cue-файлу, анализ наличия пауз между треками, убирание лишних пауз там, где это требуется, нормализация, енкодинг (если надо) или создание DAO-Image.
Месяц назад из-за нервного срыва, вызванного несовместимостью Полуоси и нового железа, я плюнул и перешел на линукс. У меня стоит Leap 42.1 на Гноме.
Постольку поскольку в Оси большинство консольных программ работающих со звуком собрано на сырцах линуксовых, то особой разницы я не заметил. Зная бобик, переписать скрипты на шелл - тоже не особая проблема (ооРекс в линуксе как-то странно отрабатывает полуосёвые скрипты, поэтому проще переписать).

А вот собственно и сама амбула.
Для анализа наличия пауз на начале и хвосте аудиотрека по заданной маске мною использовалась чисто осевая программа copyw, написанная моим приятелем, программистом. К сожалению, он неожиданно умер, не оставив исходников. Попытки найти в интернете аналог этой программы не увечались успехом. Прошу совета и помощи.

Что надо? Пару консольных программ, которые выполняют следующие действия:

program0 -cue bigfile.wav -bigfile.cue - режет большой вав по кью-файлу (консольной программы не нашел)

program1 -if -20dB file.wav - определяет и выводит информацию о паузе в начале файла, трешхолд -20дБ
program1 -il -20dB file.wav - определяет и выводит информацию о паузе в конце файла, трешхолд -20дБ
program1 -ib -20dB file.wav - определяет и выводит информацию о паузе в начале и конце файла, трешхолд -20дБ
соответственно
program1 -cib -20dB file.wav file.wav.new - определяет и выводит информацию о паузе в начале файла, трешхолд -20дБ, обрезает начало и хвост по заданному значению и копирует файл в file.wav.new, исходный файл не изменяется.

По идее, SOX позволяет выполнить часть этой задачи, однако, документация на SOX именно в этом месте написана весьма мутно, мне разобраться не удалось.

Прошу помощи клуба.
Заранее благодарен за подробный ответ, куда мне идти.


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#2 20-01-2016 20:44:23

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 2,303
LinuxFirefox 31.9

Re: Хочу странного

Понимаю)
"преобразование flac -> wav, нарезка wav по cue-файлу" - плейер deadbeef умеет такое прямо из интерфейса не останвливая проигрывания (видел консольные решения, но не пользуюсь, - не подскажу).


Долой DE! Даёшь WM!

Вне форума

#3 20-01-2016 20:52:55

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

BigOrange пишет:

Понимаю)
"преобразование flac -> wav, нарезка wav по cue-файлу" - плейер deadbeef умеет такое прямо из интерфейса не останвливая проигрывания (видел консольные решения, но не пользуюсь, - не подскажу).

флак - вав умеет и flac123
нарезать... знаю только гуёвые - flacon, но что-то ещё было, чуть ли не та же sox
самое главное - это анализ хвостов и их обрезка - всё остально можно как-то обустроить...


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#4 20-01-2016 21:26:09

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 2,303
LinuxFirefox 31.9

Re: Хочу странного

вот законвертил

выделяем всё
Snimokekra_6271410_20336262.png
выбираем опции
Snimokekra_2407015_20336271.png
вот вавки
Snimokekra_1095516_20336276.png

щелчков при прослушиваниинет


Долой DE! Даёшь WM!

Вне форума

#5 20-01-2016 22:27:27

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

BigOrange пишет:

вот законвертил
(///)
щелчков при прослушиваниинет

Насколько я помню этот диск КС, там во-первых, нет пауз между вещами, а во-вторых, там звук завален где-то на 2-3дБ. Вот - тебе лично - всё равно, что это так? Мне - нет.
Кстати, там моя любимая вещь Кримсон (после Starless, конечно) - Cat's Food smile
(///)
И потом - я ж говорю: консоль мне нужна и скрипт. Картинки итд - это, конечно же, здорово, но написать  flac -d *.flac  мне проще, чем нажимать-выделять-выставлять-дируназначать-итд.

Отредактировано Uncle_Brr (20-01-2016 22:34:40)


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#6 20-01-2016 22:38:48

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 2,303
LinuxFirefox 31.9

Re: Хочу странного

при всём уважении, я чего-то не понимаю
паузы есть,
да, можено нормалайз сделать в том же audacity,
однако, я против, - заваленный звук решается аппаратно, - ручкой громкости


Долой DE! Даёшь WM!

Вне форума

#7 21-01-2016 00:26:19

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

BigOrange пишет:

при всём уважении, я чего-то не понимаю
паузы есть,
да, можено нормалайз сделать в том же audacity,
однако, я против, - заваленный звук решается аппаратно, - ручкой громкости

Есть разве? Вроде он весь слитно шёл, ну, не суть. Суть в том, что нормальный нормалайз на диске не имеющем пауз, сделает СЛИШКОМ хорошо. Вот, к примеру упомянутый Посейдон: навскидку - первый трек надо поднимать на 15дБ, а второй опускать на -3дБ. Понимаешь, что будет? Там же ЗАДУМАНО так, чтобы после шёпота первой дать по ушам грохотом второй... Поэтому, нормализовывать там надо в режиме батча/микса, вычисляя среднее по альбому. Аудасити работает с одним треком (в проекте), тыкать мышой придется немеряно. А в консоли можно просто написать
normalize -b *.wav и получить нужный результат. Удобно, быстро.
Что касается ручки громкости - не всегда она или пульт под рукой и не всегда (хотя и как правило) слушаешь один альбом - иной раз делаешь себе треклист - например (в особенности не в прог-роке) микс из всех альбомов исполнителя, в лупе. И вот тут-то и выясняется, что бойцы студийного фронта мастерят диски с разбросом в 8-10 (ВОСЕМЬ ТИРЕ ДЕСЯТЬ, Карл!) РАЗ по громкости (вообще ИМХО, когда они осознали, что луч лазера из дорожки не выпрыгнет, в отличие от тонарма, у них просто крышу сорвало). Мне попадались диски как с превышением в 6-12дБ! Так и диски с недоливом в -5-6дБ. Поэтому, ДЛЯ СЕБЯ ЛЮБИМОГО я выправлю все так, чтобы оно звучало нормально.
Ещё момент - так называемые hidden tracks. Это - те, которые - диск на 40 минут, потом 10 минут тишины и 30 секунд бонусного трека. Ну, не знаю. Меня жаба давит хранить мегабайты-гигабайты ненужной тишины. Это - только так кажется, что оно фигня, а в результате набегает ОЧЕНЬ много; конечно же - я вырежу в отдельный бонус-трек этот хидден, а тишину уберу. Это в консоли делать тоже удобно, НО если есть анализатор. А вот тут проблема и встала в полный рост (см. заходное письмо).

Отредактировано Uncle_Brr (21-01-2016 00:28:49)


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#8 21-01-2016 08:28:05

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 2,303
LinuxFirefox 31.9

Re: Хочу странного

мне бы Ваши проблемы ...)
но тема интересная


Долой DE! Даёшь WM!

Вне форума

#9 21-01-2016 11:49:01

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

BigOrange пишет:

мне бы Ваши проблемы ...)
но тема интересная

Ну, свои ДРУГИЕ проблемы я сюда притаскивать не собираюсь smile
А тема - да. Самое противное то, что она какбэ не очень решается. С нетерпением жду других идей от аксакалов форума.
В качестве затравки могу предложить написать скрипт для sox, но так, чтобы _в одной строчке_ производились следующие операции для группы файлов в данной директории:

отсечка паузы на носу (по заданным данным, например 2, 5, 0.1% )
реверс файла
отсечка паузы на хвосте (по тем же значениям)
реверс файла
переименование файла в первоначальное имя
следующий файл
стоп
выход
Очень удобно навешивать такое на юзер-меню в МЦ smile
Шелл, желательно, bash.
Это - так называемый "прямой" способ решения задачи...


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#10 21-01-2016 21:09:45

Новичок
Участник
Здесь с 13-10-2015
Сообщений: 185
Windows 10Firefox 43.0

Re: Хочу странного

BigOrange пишет:

мне бы Ваши проблемы

не ниже по важности проблема, чем все проблемы которые решают пользователи линукс )))

Вне форума

#11 21-01-2016 23:10:01

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 2,303
LinuxFirefox 31.9

Re: Хочу странного

накопал пока негусто, по нормалайзу только вылезло:
http://zenway.ru/page/mp3gain - опять, таки!

http://softhelp.org.ua/?p=3038
http://linux-bash.ru/menumultim/57-cutmp3mp3gain.html
http://ru-linux.livejournal.com/2677892.html
http://askubuntu.com/questions/246242/h … -mp3-files
http://normalize.nongnu.org/README.html

про фэйды ничего вразумительного не нашёл, про остальное не искал.
мне самому показалась интересной идея пакетного нормалайза с фэйдами.


Долой DE! Даёшь WM!

Вне форума

#12 22-01-2016 02:06:36

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

так это всё про мп3, мп3 - это не интересно - там что-то править - себе дороже, я говорю исключительно о вавах
(///)
на самом деле, внимательно и вдумчиво вкурив документацию к sox, я выяснил, что всё не так страшно - нужное преобразование делается в одну строку:
sox file.wav newfile.wav silence 1 5 0.1% reverse silence 1 5 0.01% reverse - на выходе получаем newfile с обрезаной до начала звука паузой в начале и до тишины в конце 0.01% подобрано экспериментально, чтобы не обрывать затухание
(вот так, несколько черезжопно, но работает)
теперь мне надо как-то заранее вывести информацию - общее звучание файла / полезное (без пауз) / размер пауз в начале и в конце - эта статистика сразу позволяет узнать: стоит ли вообще связываться с этой группой файлов - если размер пауз < 0.1ms, то скорее всего это - связанные файлы - например концерт или сюита
в этом случае надо н выпендриваться, а делать normalize -b на группу без пауз (кстати, в концертах тоже "пенки" бывают лихие, когда разные фрагменты с разных концертов, и громкость плавает так, что ой), дальше - отшибать этот 0.1, который на самом деле заголовок вав-файла, проверять аудиоредактором, что совмещение звуковых дорожек проходит через ноль (мне это больше нравится) или натравлять упомянутый sox, в которой есть очень приличные фильтры для склейки встык или с прегапом, и писать либо в ДАО, образом, либо lame -nogap.
Вот как-то так...
(у меня в коллекции флаков нет - то, что мне действительно любо я покупаю или пишу на болванку, а то, что мне просто нравится, я гоню в мп3, предварительно доведя до ума)
ну, в общем - круг нерешенного очерчен, скрипты надо писать (для этого надо про баш почитать - я его особо не видел)
кстати, вот сразу вопрос возник (я понимаю, что простой, но я и сам ещё чайник)
каким образом заменить пробелы в именах файлов на подчеркивания? а обратно?

Отредактировано Uncle_Brr (22-01-2016 02:13:50)


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

#13 22-01-2016 09:16:48

frost42
Участник
Откуда: Новокузнецк
Здесь с 06-01-2012
Сообщений: 530
LinuxFirefox 38.0

Re: Хочу странного

Uncle_Brr пишет:

Кстати, там моя любимая вещь Кримсон (после Starless, конечно) - Cat's Food smile

Ух! Ажно дух захватывает!))) Целую вечность не встречал людей которым КС нравится! Думал тают наши ряды, ан нет)))


Linux настолько гибкая система, что повторяет изгибы рук её пользователя.
Не пускайте детей в интернет, он от них тупеет.

Вне форума

#14 23-01-2016 13:29:42

Uncle_Brr
Участник
Откуда: Москва, 2:5020/35.323
Здесь с 20-01-2016
Сообщений: 56
LinuxSeaMonkey 2.39

Re: Хочу странного

frost42 пишет:
Uncle_Brr пишет:

Кстати, там моя любимая вещь Кримсон (после Starless, конечно) - Cat's Food smile

Ух! Ажно дух захватывает!))) Целую вечность не встречал людей которым КС нравится! Думал тают наши ряды, ан нет)))

Ты чо! КиСи - это ж нашевсйо форева!
Кстати, ты напрасно ТАК пессимистичен - вокруг лично меня куча молодежи, которая слушает (правда, старую КС - ПроКСджекты как-то не катят) Кримсон, а также сайт-проекты - типа Левиновских или Калифорниан Гитар Трио или там 21ст Сечури Шизоид Бэнд. На концерте последних я, кстати, был и был удивлён не только количеством папиков с детками, но и просто деток. Правда, я бывший музыкант (бассит, да smile и давний модератор su.music - т.е. окружение у меня соответствующее.
(///)
Ладно, не будем впадать в офф-топик.
(///)
Итак, текущая проблема - это отсутствие софтины, которая выводила бы статистику по вав-файлам НА ПРЕДМЕТ ПАУЗ НА ХВОСТАХ (с остальным прекрасно справляется soxi и normalize -b -n. Согласен даже на ГУЙ.
Вторая проблема, как ни странно, это - невозможность переименовать файлы с пробелами.вав в файлы_с_пробелами.вав. Мои старые рексовые скрипты не работают по причине того, что формат ключей в mv и в ren разный. Попытка написать скрипт (баш у меня) с регексом не увечалась успехом, видимо тут я круглый чайник с крышечкой. Нашел, как мне кажется весьма гибкую и удобную утилитку - rnm (https://github.com/neurobin/rnm), но, опять же, не могу вьехать в формат регекса (ну, блин - трудное децтво, 8-битные игрушки, всю жизнь под полуосью...).
Может быть кто-нибудь из аксакалов мне тут поможет?
(Я слово волшебное знаю: "пожаааалуста!")

Добавлено спустя 23 ч 38 мин 45 с:
В дополнение к предыдущей мессаге - нашел на просторах гитхаба весьма удобную софтину для переименования всего. чего охота, из комстроки (эдакое расширение возможностей mv и mmv) - rnm
https://neurobin.org/docs/unix/rnm/bulk … -in-linux/
весьма рекомендую. Автор хоть и пакистанец, но весьма отзывчивый.
(///)
Осталась только проблема со статистикой... курю ман к SOX. Пока не получается (в этом месте не раскуривается) smile


Who's that General Failure and why he's reading my C-disk?!?

Вне форума

Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] claudebot

Подвал форума

Под управлением FluxBB
Модифицировал Visman

[ Сгенерировано за 0.018 сек, 9 запросов выполнено - Использовано памяти: 1.71 Мбайт (Пик: 1.79 Мбайт) ]