Narval
@ 14-04-2010, 20:15
Контейнер состоит из файла flac с прошитыми тегами и архива с доп. материалами в формате zip, объеденённых в 1м файле. Распознаётся большинством плееров как обычный flac. Для распаковки доп. материалов необходимо переименовать z.flac в zip.
Текущий формат контейнера:
1) flac файл с прошитыми коврами и тегами. Степень сжатия до 5 (для совместимости с аппаратными декодерами).
Формат ковров: желательно jpeg до 500 кб
Формат тегов: ogg_tag
2) zip архив с доп. материалами.
Формат архива: zip, без сжатия, созданный оригинальным архиватором компании Info - Zip (zip, pkzip)
Все названия файлов и содержимое текстовых файлов в кодировке UTF-8
Создание контейнера в Unix подобных ОС (Linux, BSD...):
1) Делаем 2 файла: flac с прошитыми коврами и тегами и zip, без сжатия, с доп. материалами
2) Объединяем их командой: cat "file_name.flac" "file_name.zip" > file_name.zip.flac
3) Исправляем смещение zip архива командой: zip -F file_name.zip.flac --out file_name.z.flac
Создание контейнера в Windows:
Нужна помощь. Знаю как, нет времени. :help:
Задачи тестирования:
1) Разработать окончательный формат (кодировки, формат тегов, названия...и т.д.)
2) Создать основные инструменты для работы с контейнером (скрипты, руководства)
Скрипт для Linux:
Скрипт для автоматической перепаковки iso.wv в z.flac (beta 4)
Синтаксис: sh zconv.sh in_dir out_dir (необходимо указывать полные пути, они не должны содержать пробелов, если пути не указаны используется текущая папка)
Вместо sh можно использовать bash (немного замедляет скорость перепаковки доп. материалов).
Пример релиза:
Т9 - Вдох-Выдох (ссылка пока не работает, будет время, перезалью)
Почему Т9? Получено разрешение продюссера группы на использование этого альбома для тестирования z.flac, + большое колисество русских букв в cue
Буду благодарен за любую помощь в разарботке. Контейнер придумал для собственных нужд, доделаю в любом случае, но без помощи сообщества на это уйдёт много времени. Формат контейнера, скрипты, программы и все материалы распостраняются под лицензией GPLv3
http://ru.wikipedia.org/wiki/GPL. Отдельные части проекта могут быть выпущены под лицензией BSD
http://ru.wikipedia.org/wiki/BSD_License, для включения в проприетарное ПО, если это будет способствовать популяризации формата.
Просьба: не выносите формат за пределы форума, до появления 1й стабильной версии.
Alexsor
@ 14-04-2010, 20:24
О... Интересно... FLAC...
Dudtsyn
@ 14-04-2010, 20:51
T9Это для наглядности, пример готового релиза.
Narval Я ничего не напутал?
Narval
@ 14-04-2010, 20:54
QUOTE (Dudtsyn @ 14-04-2010, 20:51) |
[URL='http://00.dl1b-narod.yandex.ru/disk/19726841000/hf417e189b1aef2c4a71bb6753105f2d1/T9 - Vdoh-Vydoh.z.flac']T9[/URL]
Это для наглядности, образец готового рипа. Narval Я ничего не напутал? |
Всё правильно. Как только разберусь в чём проблема, поправлю 1й пост
Dudtsyn
@ 14-04-2010, 20:57
Да, и сам качаю, для посмотреть, что там к чему.
обсуждение
Vlady304
@ 14-04-2010, 21:25
QUOTE (Narval @ 14-04-2010, 13:54) |
в чём проблема |
Антиспам в действии.
Первые 10 постов ссылки работать не будут.
Dudtsyn
@ 14-04-2010, 22:02
Запутался между постами,
.... так где флак спрятал?
Ну где-то же он должен быть, я не понял просто
Гордый
@ 14-04-2010, 22:08
QUOTE (Narval @ 14-04-2010, 19:15) |
Большое спасибо пользователям: LF_ и жабЁныш за советы и помощь в тестировании. |
Теперь понятно где это
LF_ пропадает. Тестирует. :diablo: :actu:
Narval
@ 14-04-2010, 22:12
QUOTE (Dudtsyn @ 14-04-2010, 22:02) |
Запутался между постами, .... так где флак спрятал? Ну где-то же он должен быть, я не понял просто |
Отдельно flac файла нет, есть 1 общий файл состоящий из флака и пристыкованного к нему зипа. Чтобы получить отдельно флак, надо зип отстыковывать. Но это не требуется, большинство программ зип просто не замечают.
Dudtsyn
@ 14-04-2010, 22:28
Получается, переименовал в архив и флак исчез, ....
Narval
@ 14-04-2010, 22:30
Переименовал назад и флак появился ;) Только не надо менять содержимое архива, например Total Commander, при этом, flac убивает.
Dudtsyn
@ 14-04-2010, 22:46
Да, я уже попробовал. Ну извлекается доп содержимое так же как из исо, только смущает отсутствие флака :laugh:
Narval
@ 14-04-2010, 22:51
Видишь флак? Нет. А он есть :laugh: А каким архиватором ты распаковываешь? Встроенный в XP и WinRAR точно работают, 7zip точно не работает и не будет. Интересуют другие.
Dudtsyn
@ 14-04-2010, 22:54
Во, я про винрар почти забыл. Сейчас посмотрю. А так все время Тотал командер.
Да собственно и нечего смотреть, понятно.
win32
@ 14-04-2010, 23:13
Попробовал проиграть на ритмбоксе. Плеер видит название группы и альбома, но отображаеться единым файлом без названий песен.. :-( ну и в консольном плеере тоже: цельный файл. Без названия треков и переключения между ними это неинтересно. :) Ну еще минус сам flac невидим, хотя той-же саt можно все вернуть как было. Честно говоря не понял, в чем преимущество такого контейнера? :wink:
Narval
@ 14-04-2010, 23:29
QUOTE (win32 @ 14-04-2010, 23:13) |
Попробовал проиграть на ритмбоксе. Плеер видит название группы и альбома, но отображаеться единым файлом без названий песен.. :-( ну и в консольном плеере тоже: цельный файл. Без названия треков и переключения между ними это неинтересно. :) Ну еще минус сам flac невидим, хотя той-же саt можно все вернуть как было. Честно говоря не понял, в чем преимущество такого контейнера? :wink: |
Ритмбокс пока не поддерживает вшитые cue. Как и многие плееры. Но процесс идёт, под Linux уже есть несколько плееров с поддержкой cue (qmmp, новая версия Audacious2...). Если сравнивать с потрековым флаком, то преимущества те-же, что у iso.wv (Раздача и хранение 1м файлом), но тут на любителя. Если сравнивать с iso.wv, то это поддержка большинством плееров, хотя далеко не все читают треки из cue, но прогресс не стоит на месте. Для iso.wv я знаю только 2 плеера которые его корректно проигрывают и просвета не видно. И ещё, допы из зипа можно распаковать встроенным архиватором. Для iso надо WinRAR ставить. Флак единственный lossless кодек выпускаемый под GPL, это гарантирует дальнейшее распостранение формата. Конкурентов, к сожалению, пока нет.
Dudtsyn
@ 14-04-2010, 23:34
Насчет железной поддержки. Видел в магазине HD медиа-плейер с поддержкой wv, даже удивился
Narval
@ 14-04-2010, 23:45
QUOTE (Dudtsyn @ 14-04-2010, 23:34) |
Насчет железной поддержки. Видел в магазине HD медиа-плейер с поддержкой wv, даже удивился |
Поддержка wv бывает, а вот iso.wv... Не от хорошей жизни я стал что-то изобретать. Доходит до смешного. Чтобы слушать iso.wv на своём медиаплеере с Mythubuntu, мне пришлось ставить фубар через эмулятор wine и переделывать его интерфейс, чтобы на телеке нормально смотрелся и пультом управлялся :(
Narval
@ 14-04-2010, 23:53
Добавил в 1й пост синтаксис скрипта
win32
@ 14-04-2010, 23:53
Narval
Да, я в курсе этой проблемы. В свое время Audacious у меня стоял, треки он показывает, правда с длительностью и отображение времени у него беда... вторую версию не пробовал. qmmp собран на qt, не хочеться мусорить в системе собраной на glib. :) Очень рад, что появляються новые идеи,
может с отладкой и временем z.flac станет одним из мультиплатформенных контейнеров для хранении музыки в Linux и не только! ;) :punk:
Narval
@ 15-04-2010, 00:07
QUOTE (win32 @ 14-04-2010, 23:53) |
Narval Да, я в курсе этой проблемы. В свое время Audacious у меня стоял, треки он показывает, правда с длительностью и отображение времени у него беда... вторую версию не пробовал. qmmp собран на qt, не хочеться мусорить в системе собраной на glib. :) Очень рад, что появляються новые идеи, может с отладкой и временем z.flac станет одним из мультиплатформенных контейнеров для хранении музыки в Linux и не только! ;) :punk: |
qmmp не много за собой тащит, несколько мегов qtшных библиотек. Есть ещё FALF (Fack Amarock Love Foobar :D: ), но он в зачаточном состоянии. z.flac уже в момент появления стал мультиплатформенным контейнером, большинство людей будут проигрывать flac не подозревая, что там какой-то zip есть. И только группа избранных с Нетлаба... :punk:
Alexsor
@ 15-04-2010, 11:37
ОС: W7 Ult v.6.1, build 7600, x64.
Объект: указанный в заглавном сообщении тестовый файл-контейнер <*.z.flac>.
Некоторые предварительные результаты:
foobar2000 v1.0.2.1 -
OKAIMP2 v2.61, build 560 -
OKОба программных проигрывателя открыли тестовый <*.z.flac> с разбиением на звуковые дорожки.
CUETools v2.0.7 -
OKCUETools спокойно произвёл конвертацию в WVimage+CUEsheet, а также легко преобразовал файл-контейнер <*.z.flac> в mp3tracks.
ImgBurn v2.5.1.0 -
OKBurrrn v1.14 beta2 -
OKОбе программы записи создали CD-DA - "напрямую" из файла-контейнера <*.z.flac>.
auCDtect Task Manager v1.5.0B1, build 1.5.0.1 -
OKПрограмма успешно проверила <*.z.flac> и построила спектральные характеристики в графическом виде для тестового файла-контейнера <*.z.flac>.
Mp3tag v2.46a -
OKЧитает tag-и в <*.z.flac>.
С изменённым на <*.
zip> расширением файла содержимое контейнера <*.z.flac> просто открывается в проводнике Windows -
OK! (
! -, но без "основного" файла <*.flac>).
Во всех вышеперечисленных программах обработка тестового файла-контейнера начиналась после обычного "перетаскивания" на иконку любой из программ самого файла <*.z.flac> .
Narval, по-моему неплохо для начала...
жабЁныш
@ 15-04-2010, 12:16
кстати, кто-нибудь знает как определить кодировку названия файла в Виндозе?
Narval
@ 15-04-2010, 17:12
to Alexsor Огромное спасибо !!! Ради таких тестов я и создавал этот топик. Очень помогает в разработке.
to жабЁныш Я таких программ не знаю. В принципе это не проблема, проанализировать несколько байт из названия файла. Опытные Web программеры всегда на глаз определяют )))) Подобрать сочетание кодировок, чтобы всё отображалось "из коробки", для меня первоочередная задача. Может кто знает, 7ка умеет отображать имена в UTF-8? XP не умеет.
как это не умеет? а в чем-же она тогда держит имена, если не в utf8?
Narval
@ 15-04-2010, 21:44
QUOTE (FiL @ 15-04-2010, 21:21) |
как это не умеет? а в чем-же она тогда держит имена, если не в utf8? |
CP1251
QUOTE (Narval @ 15-04-2010, 14:44) |
QUOTE (FiL @ 15-04-2010, 21:21) | как это не умеет? а в чем-же она тогда держит имена, если не в utf8? | CP1251 |
в CP1251 очень тяжело писать на иврите, например. Или, как в моем случае, на литовском. Но ХР вполне справляется. Имена файлов на разных языках вполне себе.
жабЁныш
@ 16-04-2010, 00:59
FiL, т.е. в названии файла ты можешь использовать национальные символы из нескольких кодовых страниц: спасибо-ačiu.txt? в семёре точно можно,а вот в хрюхе уже не помню.
QUOTE (жабЁныш @ 15-04-2010, 17:59) |
FiL, т.е. в названии файла ты можешь использовать национальные символы из нескольких кодовых страниц: спасибо-ačiu.txt? в семёре точно можно,а вот в хрюхе уже не помню. |
в одном файле не пробовал. В разных - точно да. На ХРюше в том числе.
Narval
@ 16-04-2010, 15:15
В дальнейшей разработке скриптов решил перейти на Bash. Совсем тяжко в sh без массивов и под переменные выделяемой памяти не хватает.
Плюсы:
1) Больше возможностей (массивы и т.д.)
2) Можно хранить все названия в переменных, без создания временных файлов
3) Есть эмулятор под Windows (Cygwin). Сейчас тестирую.
Минусы:
1) Небольшое замедление при обработке тегов (1-2 секунды)
2) По умолчанию установлен не во все UNIX-Like системы.
ну flac и wvunpack тоже не установлены по умолчанию...
Но я вообще на скрипт посмотрел и... ну в общем только за
rm --recursive "$temp_dir"
где "$temp_dir" не тобой создан в предыдущем шаге уже убивать надо. Мало-ли какой тебе out_dir дали и что там уже в temp лежит.
Ну и остальное как-то много предполагает не проверяя...
Narval
@ 16-04-2010, 18:31
to Fil
В начале скрипта сделана проверка на наличие необходимых пакетов. В Ubuntu предлагает установить автоматически.
out_dir="$2"
temp_dir="$out_dir"/temp_iso.wv_to_flac
rm --recursive "$temp_dir"
mkdir "$out_dir" "$temp_dir"
rm --recursive "$temp_dir"
Автоматически стирается только папка temp_iso.wv_to_flac. Специально выбрал такое название, возможность наличия папки с таким названием у пользователя стремится к 0.
Спасибо за критику. Если не сложно, напишите другие замечания по коду.
Может кто знает почему команда:
echo ""`awk 'NR == 5' "$temp_dir"/album_data`" - "`awk 'NR == 6' "$temp_dir"/album_data`""
выводит только дефис и 6ю строку?
хмм... в той версии, на которую висит ссылка выше по топику, название временной папки покороче... :)
temp_dir="$out_dir"/ftemp
Проверка делается... на самом деле можно также проверять наличие баша и его тоже ставить. Я просто к тому, что требование баша - это не такой, чтобы минус. Особенно учитывая количество линуксов.
---
потому, что пятая пустая? :)
у меня выводит и пятую и шестую....
Narval
@ 16-04-2010, 19:39
Название папки теперь длинное. На самом деле я уже процентов 30 кода переписал, как будет более-менее стабильная версия, выложу Beta2. Проверку баша конечно добавлю, просто руки ещё не дошли. Всеми силами цеплялся за sh, но надоело костыли выдумывать...
Когда я создаю файл вручную, у меня то-же показывает и 5ю и 6ю. А вот когда анализирую cue, вырезаю нужное sedом и вывожу результат в этот файл...только 6я. Уже месяц бьюсь с этим. Столкнулся, когда писал скрипт для преобразования в потрековый флак, zflac ещё даже в проекте не было.
Narval
@ 21-04-2010, 16:27
Частично решил проблему с sed. В конец каждой строки автоматически добавлялся символ переноса (0D), поэтому не работала команда echo "$PERFORMER - $TITLE". Добавил в конвеер sed 's/\x0D$//, для удаления. Костыль, но работает) Может кто знает как заставить команду echo "$LINE" | sed 's/"//g' | sed 's/PERFORMER //g не добавлять символ переноса?
Сейчас работаю над преобразованием cue.
Алгоритм:
1) Ищем в корне и папках *.cue и заменяем iso.wv на z.flac (поддерживается iso.wv и wv.iso.wv)
2)Если нет wv.cue, создаём *.flac.cue из *.cue для wav.
3)Приводим названия всех *.cue к виду "PERFORMER - TITLE [YEAR](.flac).cue"
Замечания, дополнения?
Если у кого-нибудь есть возможность, проверьте тестовый релиз из 1го поста на плеерах и смартфонах. Интересует: корректная перемотка в конце альбома (последние 2 минуты) и отображение обложки.
lowsky
@ 24-04-2010, 09:51
несколько вопросов, может быть, глупых:
зачем двойное расширение z.flac? разве недостаточно просто flac?
QUOTE (Narval @ 14-04-2010, 20:15) |
Формат архива: zip, без сжатия, созданный оригинальным архиватором компании Info - Zip (zip, pkzip) |
а раром нельзя эти зипы создавать и почему? и нельзя ли вообще вместо зипа рар цеплять?
QUOTE (Narval @ 14-04-2010, 22:30) |
Переименовал назад и флак появился ;) Только не надо менять содержимое архива, например Total Commander, при этом, flac убивает. |
не предполагается ли в будущем усовершенствовать формат таким образом, чтобы изменение архива было возможно без отстыковки его от флака?
Alexsor
@ 24-04-2010, 11:22
...
MediaInfo 0.7.31 -
OKПолучаем информацию из файла-контейнера <*.z.flac>.
SPOILER ("Информация MediaInfo из <*.z.flac>") |
|
...
Narval
@ 24-04-2010, 20:29
Alexsor :)
lowskyQUOTE |
зачем двойное расширение z.flac? разве недостаточно просто flac? |
Чтобы сразу было понятно, что там доп. материалы есть.
QUOTE |
а раром нельзя эти зипы создавать и почему? |
Создать скорее всего можно (не пробовал), но после объединения нужно выставить правильный отступ в зипе, равный размеру флака. Я не знаю других архиваторов, кроме Info - Zip (zip, pkzip), которы это умеют делать. Кстати, есть
WZip, свободный аналог WinZip для Windows. FTP работает не стабильно, поищите зеркала. Если удасться найти подробное описание формата Zip, включу в скрипт исправление отступа, во время объединения файлов.
QUOTE |
и нельзя ли вообще вместо зипа рар цеплять? |
Нет. Rar не поддерживает отступ. И ещё Rar закрытый и менее распространённый формат. А с учётом того, что архив, скорее всего, будем добавлять без сжатия, Zip идеальный вариант.
QUOTE |
не предполагается ли в будущем усовершенствовать формат таким образом, чтобы изменение архива было возможно без отстыковки его от флака? |
Попробуйте не Total Commanderом, возможно WZip или pkzip корректно перепакуют. Zflac тут не при чём, дело в неполной поддержке zip сторонними архиваторами.
Narval
@ 01-05-2010, 06:06
Загрузил
zconv.sh beta 2.
Основные изменения:
1) Новый алгоритм перепаковки доп материалов (обработка cue, log).
2) Добавлена проверка существования и размера выходного файла.
3) Многочисленные исправления, дополнения и оптимизации кода.
4) Корректно работает в sh и bash.
Буду очень благодарен за помощь в тестировании :help:
Dudtsyn
@ 01-05-2010, 07:33
Еще бы алгоритм упаковки в Виндовозе подробнее. Или я пропустил?
Narval
@ 01-05-2010, 13:44
Dudtsyn
Я, пока, только для Linux, разработал алгоритм. Если есть возможность, можете присоединиться к тестированию скрипта в cygwin. Насколько я знаю, у жабЁныша получилось создать контейнер под Windows. Как только появится стабильный алгоритм, добавлю на 1ю стрницу.
Dudtsyn
@ 01-05-2010, 15:03
Не, я уж не буду с Пингвинчиком заморачиваться, нет на это времени. Подожду, не горит.
lowsky
@ 01-05-2010, 18:08
я бы тоже под виндой попробовал
Zalexi
@ 01-08-2010, 16:42
Narval
На Яндексе: "Закончился срок хранения файла".
Выложи, пожалуйста, еще раз.
Вся музыка в iso.wv, сам перешел на Убунту, надоедает постоянно конвертировать во flac.
Narval
@ 02-08-2010, 02:33
Выложил Скрипт работает стабильно, но я бы не рекомендовал его для "промышленного" использования, т.к. он недостаточно протестирован.
На данный момент известны 2 проблемы:
1) Недостаточно проработанный алгоритм выбора картинки для обложки альбома. (Работаю над этим)
2) Подвисания при перемотке в конце альбома. (Виноват флак, но вот куда копать не знаю)
Zalexi
@ 03-08-2010, 23:00
NarvalНекорректно выводит жанр, что-то типа:
Foobar2000 видит одним файлом без разбития на треки.
Переименовал z.flac в zip - через Nautilus и Менеджер архивов не смог открыть - ошибка:
CODE |
7-Zip 9.04 beta Copyright © 1999-2009 Igor Pavlov 2009-05-30 p7zip Version 9.04 (locale=ru_RU.utf8,Utf16=on,HugeFiles=on,4 CPUs)
Error: /home/z/tmp/Manowar - [2007] Gods Of War.[NL+0802].zip: Can not open file as archive
Errors: 1 |
Через Dolphin открыл, но папка пустая,
Только через Krusader и Ark открылось нормально.
Но еще такой вопрос: если убрать "wv" и оставить только "iso" в файле "iso.wv", то внутри находятся кроме файлов с картинками и т.д. еще и файлы "cue" и "wv", а если переименовать "z.flac" в "zip", то внутри муз.файла нет, почему так?
Narval
@ 04-08-2010, 01:22
to Zalexi
QUOTE |
Некорректно выводит жанр, что-то типа: |
QUOTE |
Foobar2000 видит одним файлом без разбития на треки. |
Это в 1м альбоме или всегда? Поподробнее пожалуйста, у меня таких проблем не возникало. Для Linux есть очень хороший плеер
DeadBeef, рекомендую.
QUOTE |
Переименовал z.flac в zip - через Nautilus и Менеджер архивов не смог открыть - ошибка: |
Именно по этой причине я хочу отказаться от использования 7zip. Он не полностью поддерживает формат zip (не умеет пропускать данные перед архивом). При инсталяции в Ubuntu он заменяет собой стандартный zip в менеджере архивов и Наутилусе. Наверное где-то в конфиге Гнома можно исправить. Я пока не решил как бороться с этой проблемой.
QUOTE |
Но еще такой вопрос: если убрать "wv" и оставить только "iso" в файле "iso.wv", то внутри находятся кроме файлов с картинками и т.д. еще и файлы "cue" и "wv", а если переименовать "z.flac" в "zip", то внутри муз.файла нет, почему так? |
Потому что архив с доп. материалами добавляется в конец flac файла. См. описание формата в 1м посте.
Если не сложно протестируйте скрипт на нескольких альбомах, желательно с русскими буквами. Обратите пожалуйста внимание на работу перемотки в конце альбома.
Zalexi
@ 04-08-2010, 02:40
NarvalПротестил несколько файлов. Скрипт ругался на русскую букву "с" и отсутствие лога. Лога не было, так что это нормально.
SPOILER! |
z@z-desktop:~/tmp$ sh zconv.sh /home/z/tmp/ /home/z/tmp/
Скрипт для перепаковки iso.wv в z.flac. Версия 0.1 Beta 2. Создатель: Narval netlab.e2k.ru, zipflac@gmail.com 2010.
................................................................. Обрабатывается /home/z/tmp//AC_DC - [1979] Highway To Hell.[NL+0802].iso.wv Перепаковываю доп. материалы zconv.sh: 223: cannot create ./AC/DC - Highway To Hell [1979].zflac.cue: Directory nonexistent Извлекаю данные для тегов mv: невозможно выполнить stat для "*.cue": Нет такого файла или каталога Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Adriano Celentano - [1994] Quel Punto.[NL+0802].iso.wv Перепаковываю доп. материалы Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Blackmore's Night - [1997] Shadow Of The Moon.[NL+0802].iso.wv Перепаковываю доп. материалы ls: невозможно получить доступ к *.log: Нет такого файла или каталога Извлекаю данные для тегов mv: невозможно выполнить stat для "*.log": Нет такого файла или каталога Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Various - [1995] В парке Чаир.[NL+0802].iso.wv Перепаковываю доп. материалы Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Various - [2001] Шлягери ХХ століття. Частина 2.[NL+0802].iso.wv Перепаковываю доп. материалы zconv.sh: 223: cannot open Various - [2001] Шлягери ХХ �толіття. Ча�тина 2.wv.cue: No such file Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Various - [2004] Колисанки.[NL+0802].iso.wv Перепаковываю доп. материалы zconv.sh: 223: cannot open Various - [2004] Коли�анки.wv.cue: No such file Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Александр Розенбаум - [1994] Новые песни, Ноябрь 1983 (CD1).[NL+0802].iso.wv Перепаковываю доп. материалы zconv.sh: 223: cannot open Алек�андр Розенбаум - [1994] Новые пе�ни, Ноябрь 1983 (CD1).wv.cue: No such file Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip ................................................................. Обрабатывается /home/z/tmp//Андрей Миронов - [1996] Жизнь моя - кинематограф.[NL+0802].iso.wv Перепаковываю доп. материалы Извлекаю данные для тегов Перепаковываю iso.wv в zflac Исправляю отступ zip |
Снова в некоторых файлах проблема с записью-отображением тегов "Жанр", "Год"
В DeaDBeef всё отобразилось хорошо. В Qmmp - частично, но это проблема самой проги, т.к. и iso.wv не отображались корректно.
Но вот что выдал мне Foobar2000:
Про перемотку не знаю, просто нет времени.
Пользуюсь Фубаром собственной сборки, т.к. все что мне надо - от конвертирования до исправления тегов и т.д. - там есть, типа, всё-в-одном.
Narval
@ 08-08-2010, 12:22
to Zalexi
Налицо какая-то проблема с кодировками. Пытался воспроизвести ситуацию, тэги отображаются отлично (оригинальный Foobar под Wine, DeadBeef). У меня уже была подобная проблема с буквой с, но в текстовых документах. Подробностей не помню, кажется дело было в преобразовании CP1251 в UTF-8. Я думаю, что эта проблема исчезнет, когда я реализую преобразование названий файлов в UTF-8.
На какой файловой системе у вас лежит /home? iso.wv скачивали сразу в Ubuntu, или сначала на windows раздел? Вы редактировали тэги в iso.wv?
Огромное спасибо за помощь в тестировании :)
Zalexi
@ 08-08-2010, 13:31
Narval
/home на ext4.
.iso.wv хранятся на ntfs в Windows.
.iso.wv создавались мной с помощью CUETools и CUEBeautifier. т.е. теги прописывались этими программами.
Narval
@ 08-08-2010, 23:56
to Zalexi
Дело точно в кодировках. С iso.wv созданными в Linux проблем нет. Буду разбираться :help:
Zalexi
@ 09-08-2010, 02:44
2 Narval
А как ты создавал .iso.wv в Линуксе? Есть аналог CUETools и CUEBeautifier, чтобы всю начинку вовнутрь запихнуть + прописать теги + вставить обложку?
Narval
@ 10-08-2010, 23:20
to Zalexi
Аналогов нет. Создавал вручную для тестов (cdparanoia+wavpack+mkisofs+easytag). Попробуй под Wine, возможно заработают.
Narval
@ 25-08-2010, 20:44
Исправил проблему с буквой с. Дело в некорректно формируемом названии файла:
cue_out="`dirname "$cue_current"`/"$performer" - "$title" [$date].cue"
cue_file_tag="FILE \""$file_name".wav\" WAVE"
sed "/FILE/ c $cue_file_tag" temp.cue > "$cue_out"
Заменил на:
sed "/FILE/ c $cue_file_tag" temp.cue 1> temp1.cue 2> /dev/null
mv temp1.cue "$cue_out" 2> /dev/null
Почему так происходит, не знаю. Видимо, при выводе через stdout, что-то съезжает в UTF-8 у sed. Будет время, разберусь и отправлю разработчикам. Этот патч войдёт в beta 3 (планирую выпустить до конца августа).
Вопросы к сообществу:
1) Добавлять проверку лога на предмет правильности рипа и отсутствия ошибок? В случае обнаружения выводить сообщение.
2) Добавлять ли "Создан с помошью zconv" в тег COMMENT ?
3) Может кто знает как в цикле for in у казать все подкаталоги? (или только * */* */*/* и т.д на нужную глубину)
Narval
@ 24-09-2010, 18:19
Beta 3 Исправлено:
1) Проблема с перемоткой в последних песнях альбома (seekpoint)
2) Проблема с буквой "с" в русских названиях
3) Foobar некорректно открывал прошитые cue в UTF-8 созданные в notepad (удаление BOM)
Добавлено:
1) Переработан интерфейс, добавлена статистика
2) Преобразование названий файлов в UTF-8
3) Извлечение log и cue из тегов iso.wv
4) Изменён алгоритм работы с log файлами
5) Изменён алгоритм выбора обложки альбома
6) Множество мелких исправлений и оптимизаций
Narval
@ 04-10-2010, 01:21
to ZalexiQUOTE |
Сконвертировал. Ошибок не заметил. Но! Переименовал готовый файл в zip. Открыл, а там муз.файла нет. Хотя по объему папки должен быть. Захочу я, к примеру, используя cue выбрать некоторые треки, а cue куда будет обращаться, к какому муз.файлу? |
Его там и не может быть. Zip архив пристыкован в конец flac файла, они не пресекаются. Но это очень хорошо, т.к. все программы умеющие работать с flac, без проблем работают с zflac. Вариант, когда flac находится внутри zip не будет воспроизводится на большинстве плееров (Foobar может), т.к. формат flac не предусматривает наличие каких либо сторонних данных в начале файла. Если интересно могу расписать более подробно.
Если какая-либо программа не умеет брать cue из тэга, можно взять *.zflac.cue из zip архива, переименовать музыкальный файл назад в z.flac, к нему и будет обращаться cue. zconv.sh автоматом создаёт *.zflac.cue в папке с допами и прописывает в нём z.flac файл.
Я долго с этим возился, но вроде получилось: скрипт умеет приводить в божеский вид неправильно созданные релизы. Например, если релизёр не положил в папку с допами cue файл, но прошил его в тег, скрипт создаст 2 файла: Performer - Title [Year].cue и Performer - Title [Year].zflac.cue. В которах соответственно пропишет *.wav и *.z.flac. Тоже самое с log файлом.
QUOTE |
k3b видит сконвертированный файл ОДНИМ файлом, а не потреково. Большей частью для меня важно именно то, чтобы иметь возможность записывать аудио-диски с одиночного файла, иметь возможность выбирать треки для записи. Иначе, вроде, как и смысла нет в такой конвертации. Плееры под Линукс поддерживают формат iso.wv (DeaDBeef к примеру), а также и Foobar запустился под wine. Да и размер немного увеличивается, по сравнению с iso.wv. |
А k3b вообще умеет открывать cue из тегов? Он iso.wv умеет записывать без распаковки? К сожалению не могу его потестить. У меня Гном, а он половину КДЕ за собой тянет. Я, пока, не знаю проги для Linux, которая умеет напрямую записывать из iso.wv или z.flac, но я и не искал.
Что касается размера: в скрипте по умолчанию сжатие = 5, это примерно соответствует режиму "standart" у WavePack. Можно выставить 6 или 7 (настраивается в начале скрипта).
QUOTE |
А так - понравилось, быстро работает скрипт. И инфо-сообщения в тему с просьбой обратить внимание на проблемный файл (отсутствовал лог). Неплохо было бы еще как-то упростить запуск скрипта, к примеру, иметь возможность повесить его на кнопку (чтобы он сам автоматом подхватывал директорию), т.е. я нахожусь в папке TEMP и из нее запускаю скрипт. А также возможность выбирать файлы для конвертации, а не все, которые находятся в директории. |
Запуск скрипта без аргументов из текущей папки сделаю, давно хотел, руки не доходили.
Выбор отдельных файлов будет только в версии 0.2 т.к. 0.1 изначально нацелена и оптимизирована для работы с папками.
Zalexi
@ 04-10-2010, 02:58
2 NarvalQUOTE |
А k3b вообще умеет открывать cue из тегов? Он iso.wv умеет записывать без распаковки? |
iso.wv он вообще записывать не умеет. А вот умеет ли открывать - не знаю. Я высказал пожелание, надеясь, а вдруг возможно. Сам на Убунте недавно.
QUOTE |
К сожалению не могу его потестить. У меня Гном, а он половину КДЕ за собой тянет. |
На мой взгляд, это какое-то предубеждение, причём явно устаревшее. При нынешних объёмах памяти - звучит как-то несерьезно. У жены на нетбуке стоит и Убунту и очень много прог под KDE, торможения, дефицита памяти не замечено! Я не говорю уже о своих 4-х ядрах и 3 ТБ :D:
Так что ставь k3b и не переживай. Но если у тебя Pentium 386 с 64 МБ ОЗУ и винтом на 1 ГБ, то лучше не рискуй. :wink:
QUOTE |
Я, пока, не знаю проги для Linux, которая умеет напрямую записывать из iso.wv или z.flac, но я и не искал. |
А вот знать бы такую прогу, чтобы понимала и писАла...
Narval
@ 04-10-2010, 17:53
to ZalexiQUOTE |
iso.wv он вообще записывать не умеет. А вот умеет ли открывать - не знаю. Я высказал пожелание, надеясь, а вдруг возможно. А вот знать бы такую прогу, чтобы понимала и писАла... |
Посмотрел описание k3b, про встроенные cue там ни слова. Brasero тоже не умеет. Поискал что-то ещё, не нашёл :( Видимо придётся скриптик написать и GUI к нему. Скрипт не проблема, но я никогда ничего не писал отличное от sh скриптов...
QUOTE |
На мой взгляд, это какое-то предубеждение, причём явно устаревшее. |
Возможно и устаревшее...я свой первый Mandrake установил в конце 90х :cool: Да и не люблю попусту загаживать систему. Плюс раздел / крутится на btrfs с компрессией и лишние 150 мегов могут отрицательно сказаться на производительности. А ещё одну виртуалку заводить не хочется и так 2 уже: с ХР и OpenBSD.
Zalexi
@ 05-10-2010, 14:22
QUOTE |
Видимо придётся скриптик написать и GUI к нему. |
Вот это интересно!
Зачем
мне всё это нужно.
Моя муз.коллекция хранится в формате iso.wv (пережимаю с cuetools и CUEBeautifer).
Для прослушивания использую Foobar2000 собственной сборки (там уже всё настроено для прослушивания, конвертирования и т.д.).
Для записи использую k3b (записываю и DVD и CD).
Неудобство во время записи - отсутствие возможности выбора отдельных треков с альбомов.
Думал, что k3b сможет записывать и выбирать потреково с одиночного файла z.flac.
Так как iso.wv еще широко не поддерживается, принималось за возможность конвертировать в z.flac для послледующей нормальной работы и использования в Linux. Хранить в z.flac не выгодно - размер (даже с уровнем 8) всё равно получается больше, чем в iso.wv.
Мое мнение.
1. Сделать конвертацию из iso.wv в z.flac, что практически уже сделано.
2. Сделать возможность записи, с выбором потреково, формата z.flac. Чем писать - не принципиально (Brasero, k3b, etc.). Как это будет осуществляться - посредством скрипта, GUI, терминала - также не принципиально.
Narval
@ 06-10-2010, 19:51
Я тут, вечерком, скриптик наваял.
Zrecord.sh называется. Умеет записывать iso.wv и z.flac на AUDIO-CD.
Синтаксис: sh zrecord.sh 'file'
Смещение не умеет. Дружит не со всеми русскими альбомами. Остальное вроде работает. По умолчанию стоит режим dummy, эмуляция записи без включения лазера (отключается в начале скрипта). Выбирает наименьшую из поддерживаемых скоростей записи. Если приводов несколько, в скрипте надо прописать нужный.
В общем, вставляем болванку, запускаем скрипт и через несколько минут идём слушать на стационаре :punk:
to Zalexi
QUOTE |
Так как iso.wv еще широко не поддерживается, принималось за возможность конвертировать в z.flac для послледующей нормальной работы и использования в Linux. Хранить в z.flac не выгодно - размер (даже с уровнем 8) всё равно получается больше, чем в iso.wv. |
iso.wv, к сожалению, не ещё, а вообще не поддерживается. Сдвигов нет и не предвидится (пара плееров и добавление поддержки в официальный WavePack, за несколько лет...это не серьёзно).
Насчёт размера: я точные тесты не проводил, но знаю, что разница небольшая. Даже если накопить пару терабайт музыки, лишние 40-50 гигов погоды не сделают.
Alexsor
@ 09-10-2010, 18:46
...
MusicBee v1.2.3909 Beta -
OKПрограммный проигрыватель и каталогизатор открыл тестовый файл <*.z.flac> с разделением на звуковые дорожки.
SPOILER ("Файл <*.z.flac> в MusicBee v1.2.3909 Beta") |
|
...
P.S.: MusicBee по-плечу и файлы <
*wv.iso.wv>. Развиваясь таким темпом, он скоро может начать наступать на пятки foobar-у.
А для кого-то он и сейчас уже подходящий.
SPOILER ("MusicBee пока недозрелый, но поспевает быстро...") |
|
...
Zalexi
@ 09-10-2010, 19:45
2 Alexsor
Формат z.flac как бы с упором на Linux задумывался. Так что MusicBee пока не очень интересен, т.к он только под Windows.
Narval
@ 10-10-2010, 01:08
to Zalexi
Ну я бы не был столь категоричным. Больше 90% человек в мире предпочитают Windows, и пренебрегать этим было-бы просто глупо (я вовсю использую виндовый Foobar под wine). Буду очень рад если появится конкурент, монополия не есть хорошо.
to all
Большое спасибо Alexsor и Zalexi за помощь в тестировании.
Я уже знаю алгоритм создания zflac под windows, осталось реализовать его в скрипте. Zflac задумывался как кроссплатформенный контейнер, толчком к созданию послужило то, что мой n810 не проигрывал iso.wv.
Попробуйте Ubuntu 10.04, вы будете приятно удививлены :wink:
Zalexi
@ 10-10-2010, 02:03
2 Narval
Про монополию согласен. Жаль, что под Линукс нет конкуренции у Фубара.
И версия сегодня Убунты будет уже 10.10 :wink:
Alexsor
@ 18-10-2010, 13:10
DeaDBeeF - Ultimate Music Player For GNU/Linux - release
0.4.2 is out - 2010/10/15 -
get it!
Narval
@ 19-10-2010, 02:05
А у меня DeadBeef с Ланчпада автоматом обновился :cool: В этой версии была заявлена поддержка обложек из APEv2. Но не срослось...во 1х поддержка APEv2 для wv по умолчанию выключена, во вторых открывает только 10-15% картинок (видимо умеет только jpeg и строго определённого размера). Хорошо, что с last.fm умеет картинки загружать. Исправить это, добавить конвертер и будет вообще отличный плеер.
Narval
@ 23-10-2010, 22:35
Случаянно наткнулся на один очень интересный плеер
http://github.com/tulskiy/musique/wiki/Screenshots. Как найду deb, установлю и потестирую. Не хочется из-за компиляции 1-го плеера ставить Sun JDK и Open JDK.
Гордый
@ 23-10-2010, 22:52
Кто-то сорсы от фубара сбондил... :diablo:
Narval
@ 23-10-2010, 23:50
Beta 4Добавлено:1) Поддержка национальных кодировок для преобразования в UTF-8 (задаются в начале скрипта)
2) Расширенная статистика: размер iso.wv и z.flac, коэффициент сжатия для iso.wv,
сводная таблица сжатия в зависимости от жанра для iso.wv. :punk:
3) Автоматическая загрузка с last.fm front_pic и artist_pic (если нет в iso.wv,
по умолчанию включена)
4) Режим запуска без указания папок (используется текущая папка, можно указать 1 папку)
5) Поддержка png и tiff при извлечении из APEv2 тегов iso.wv
6) Пропуск существующего файла, даже если он переименован в zip
7) Регулировка приоритета ресурсоёмких процессов (7z, zip, flac, wvunpack. По умолчанию nice 19)
8) Множество мелких исправлений и оптимизаций
Alexsor
@ 03-12-2010, 19:11
Колоссы-производители мультимедийных приложений не забывают о <
*.z.flac> в новых версиях своих программ.
SPOILER ("ArcSoft TotalMedia® Theatre 5 (The all-in-one media player for PCs)") |
|
~
Narval
@ 04-12-2010, 00:19
Т.е. он показывает песни как главы?
Alexsor
@ 04-12-2010, 10:36
QUOTE (Narval @ 04-12-2010, 00:19) |
Т.е. он показывает песни как главы? |
Да. Главы - песни (звуковые дорожки (треки)); заголовки - имена файлов <*.z.flac>.
~
<Edited>
P.S.: Нет: главы - это не песни, это временной промежуток примерно равный 3 минутам 54 секундам (при общей продолжительности файла <T9 - Vdoh-Vydoh.z.flac> получилось 20 глав, что случайно оказалось равно количеству треков в файле-контейнере).
Zalexi
@ 18-12-2010, 00:53
2
NarvalУпс. А у меня отказывается работать скрипт.
CODE |
$ zconv Joe\ Dassin\ -\ \[1995\]\ Greatest\ Hits.\[NL+0802\].iso.wv
Скрипт для перепаковки iso.wv в z.flac. Версия 0.1 Beta 4 Narval netlab.e2k.ru, http://code.google.com/p/zflac/ Синтаксис: sh zconv.sh "/home/alex/wv" "/home/alex/flac"
Коэффициент сжатия flac (0-8) = 5 Папка назначения не указана. Использую исходную: Joe Dassin - [1995] Greatest Hits.[NL+0802].iso.wv В папке Joe Dassin - [1995] Greatest Hits.[NL+0802].iso.wv отсутствуют файлы iso.wv |
Переименовываю в формат *.iso - все файлы на месте.
В чем может быть причина?
Zalexi
@ 18-12-2010, 06:34
*к предыдущему сообщению*
Запустил. Но это неудобно! Он конвертирует файлы ТОЛЬКО в папке.
У меня в папке лежит несколько десятков файлов формата iso.wv.
Хочу конвертировать только 1 (2,5,..).
Или мне конвертировать ВСЮ папку, или выбирать нужные, создавать временную папку, переносить туда выбранное, конвертировать, переносить результат обратно.
Слишком много лишних движений.
По крайней мере сделать возможность выбора: один или папку.
Теперь замечания и пожелания.
1. Неплохо было бы добавить для отображения прогресс-бар и индикатор оставшегося времени. Вот кодирую, а ничего не происходит, и не пойму или зависло, или медленно кодирует.
2. Очень неудобно каждый раз прописывать ПОЛНЫЙ путь к папке!
Скрипт у меня исполняемый и запускается просто: zconv /путь/к/папке/
Но к примеру. Файлы для конвертации: /home/user/music/tmp/, я нахожусь в папке music. В терминале должен ввести: zconv /tmp/ и начать конвертировать. А приходится вводить ПОЛНЫЙ путь: zconv /home/user/music/tmp/.
3. Конвертирование закончено. Вывод информации. Сообщение: "Обратите внимание на файл № 1". Обратил, посмотрел, заценил - красивый такой файл, очень органично смотрится в моей папке вместе с другими файлами :)
Если выводится предупреждение, то неплохо бы указать на ЧТО конкретно обратить внимание (выбор неполадок не так уж и велик) и желательно другим цветом.
Не думаю, что статистика среднего сжатия по жанру кому-то интересна. Общая - ещё возможно.
4. Не знаю есть ли сайты с обложками для русских исполнителей, но если есть, то пусть и с них тоже качает, определяя по наличию кириллицы в тегах.
Вроде все.
Вот неплохо бы еще как-то решить упаковку "муз.файл+cue+covers+info" в формат z.flac.
P.S. Ни Rythmbox, ни Banshee, ни Clementine не разбили созданные файлы по трекам :( Хорошо хоть обложки показали.
Вопрос: можно разбить файл по трекам, но так, чтобы прописать внутри каждого файла обложку?
Narval
@ 18-12-2010, 16:24
to Zalexi Версия 0.1 изначально писалась для преобразования всей коллекции iso.wv в z.flac (ну и для отработки основных механизмов преобразования музыкальных контейнеров). Т.е. указал папки и оставил на пол дня. Именно поэтому не стал делать прогресс бар, преобразование отдельных файлов и т.п.
QUOTE |
Но к примеру. Файлы для конвертации: /home/user/music/tmp/, я нахожусь в папке music. В терминале должен ввести: zconv /tmp/ и начать конвертировать. А приходится вводить ПОЛНЫЙ путь: zconv /home/user/music/tmp/. |
Попробуй:
zconv "./tmp/" - я не пробовал, но должно работать.
Полные пути это 100% гарантия правильного указания папок.
QUOTE |
Если выводится предупреждение, то неплохо бы указать на ЧТО конкретно обратить внимание (выбор неполадок не так уж и велик) и желательно другим цветом. Не думаю, что статистика среднего сжатия по жанру кому-то интересна. Общая - ещё возможно. |
Все неполадки выводятся во время кодирования файла, отмотать терминал и посмотреть не так сложно. Если файлов будет много, вывод неполадок в итоговой статистике только запутает пользователей. Я не знаю как в Ubuntu, стандартными средствами, делать вывод другим цветом. Статистику можно отключить в настройках.
QUOTE |
Не знаю есть ли сайты с обложками для русских исполнителей |
Сайты есть, но у них нет API. Одним словом: нет.
Т.к. версия 0.1 Beta 4 достаточно стабильно работает и в ней реализовано всё что планировалось, развитие ветки прекращаю. Буду вносить мелкие поправки и исправлять серьёзные ошибки. К лету выпущу релиз.
P.S. Сейчас пишу версию 0.2. Она изначально модульная. Это позволяет достаточно легко добавлять новые форматы и возможности. Сейчас процесс на начальной стадии, но уже работает преобразование из rar, zip и iso (кодеки ape, wv и flac) в zflac. Преобразует отдельные файлы или папки. Планирую добавить вывод в потрековый flac. Как появится более менее стабильная версия выложу alpha 1.
Zalexi
@ 18-12-2010, 18:33
2Narval
Благодарю.
Успехов!
Alexsor
@ 23-12-2010, 21:11
"Делёж" звуковых дорожек: <AIMP v
2.61 Build 583> vs <AIMP v
3.00 Build 810 Beta 1>.
<---
*.z.flac, но
--->
*.iso.wv.
...
Narval
@ 23-12-2010, 22:54
Beta... исправят к релизу.
Alexsor
@ 22-06-2011, 21:02
...
Album Player 2.6 (APlayer).
SPOILER ("<*.z.flac> & <Album Player 2.6>") |
|
...
Гордый
@ 22-06-2011, 21:19
QUOTE (Alexsor @ 22-06-2011, 20:02) |
... Album Player 2.6 (APlayer).
SPOILER ("<*.z.flac> & <Album Player 2.6>") | |
... |
*.iso.wv не хочет проигрывать. Да и проигрывает он фубару во всём. :pig:
Alexsor
@ 22-06-2011, 22:30
QUOTE (Гордый @ 22-06-2011, 21:19) |
*.iso.wv не хочет проигрывать. Да и проигрывает он фубару во всём. :pig: |
SPOILER ("Nena - Made in Germany.(2009).{NL+}.iso.wv") |
|
~
Гордый
@ 22-06-2011, 23:18
QUOTE (Alexsor @ 22-06-2011, 21:30) |
QUOTE (Гордый @ 22-06-2011, 21:19) | *.iso.wv не хочет проигрывать. Да и проигрывает он фубару во всём. :pig: |
SPOILER ("Nena - Made in Germany.(2009).{NL+}.iso.wv") | |
~ |
Ухты! А как ты добавил? У меня виснет всё-время... :(
Alexsor
@ 23-06-2011, 22:33
QUOTE (Гордый @ 22-06-2011, 23:18) |
Ухты! А как ты добавил? У меня виснет всё-время... :( |
- загрузил
Album Player 2.6;
- извлёк файлы проигрывателя из архива на рабочий стол в папку <APlayer>;
- скопировал в указанную папку файл-контейнер <Nena - Made in Germany.(2009).[NL+].iso.wv>;
- запустил <Album Player>;
- перенёс скопированный файл-контейнер в окно запущенного проигрывателя;
- нажал на кнопку <Play> в проигрывателе;
- услышал из динамиков акустических систем композицию в исполнении "NenЫ", сопровождённую показом сканированных изображений (вшитых в
*.iso.wv (и/или
*.z.flac)).
- всё -
P.S.: W7 Ult v.6.1, build 7601: SP 1, x64.