|
| |
Автор | Сообщение | Demagog (Демагог) |
---|
flegont V.I.P.
Сообщений : 355
| flegont | :: Сб Окт 27 2012, 08:28 | Сб Окт 27 2012, 08:28 | |
| Экспериментальный словарик для разрешения омографа ВСЕ/ВСЁ http://aloys.narod.ru/sof/1/YOhmg.zip
Только для программы Demagog версии 241 и выше.
Предварительное тестирование дало следующие результаты. Правильность применения правил ~ 94%. Ошибочные применения распределились так: 1% - подстановка ё где не надо, и 5% - не подстановка ё там где надо
P.S. "Только для Демагога" - это не потому, что я жлоб, а потому, что только Демагог поддерживает расширенный формат DIC-словарей, допускающий звездочки внутри правил, а не только в начале/конце правила; а также отдельно стоящие звездочки в правилах. И только Демагог применяет правила многократным проходом по DIC-словарю, выполняя замены до тех пор, пока это возможно. |
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| | | | Cahes Наблюдатель
Сообщений : 1
Репутация : 0
| Cahes | :: Сб Окт 05 2013, 13:16 | Сб Окт 05 2013, 13:16 | |
| Друзья, товарищи! Братья!!! Как прогу заставить русские тексты балаболить по русски?
Хэлп написан классно - но как справочник для тех - кто знает пользоваться, а не как пособие для новичков. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Сб Окт 05 2013, 14:09 | Сб Окт 05 2013, 14:09 | |
| Сами по себе ни Демагог, ни Балаболка по русски не заговорят. Они - лишь средство, с помощью которого мы можем обратиться к системе синтеза речи, изначально имеющейся в OS Windows. И выбрать нужный для чтения голос. Естественно, в Windows по умолчанию установлены только несколько английских голосов.
Надо установить на компьютер хотя бы один РУССКИЙ голосовой движок!
Он появится в выпадающем списке голосов, установленных на Вашем компе. Выбираете этот голос (программа запомнит выбор) и запускаете чтение текста.
Например, можно установить голос Nicolai
(Только потом в каталоге Program Files\Elan удалить или переименовать 2 текстовых файла: abb_rus.txt и exc_rus.txt. Это - убогие самодельные, якобы "родные" словари корректировки произношения движка Николай, составленные неизвестным хакером, страдавшим манией величия на почве орфографии русского языка На этом форуме полно более качественных словарей)
Кроме старичка Николая, есть более современные и качественные голоса, читайте данный Форум. Но и весят они поболе, скачивать дольше, и ставить сложнее. Ну, и читайте и перечитывайте хелп! И туман постепенно начнет рассеиваться |
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Пн Окт 21 2013, 23:47 | Пн Окт 21 2013, 23:47 | |
| Возможность отображения картинок прямо в тексте, безусловно понравится многим, предпочитающим читать, а не слушать. Я по-прежнему придерживаюсь мнения, что в TTS-программах лучше всё-таки книги слушать, занимаясь каким-то полезным или неполезным делом, чем таращить глаза в монитор, рискуя испортить зрение. Соглашусь - данное нововведение красиво и прогрессивно. Слушайте\читайте побольше интересных книг, и берегите глаза! |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вт Окт 22 2013, 09:35 | Вт Окт 22 2013, 09:35 | |
| Да, согласен. Режим показа картинок - это лишь вспомогательная опция, и по умолчанию она отключена. А коли включена, то картинки показываются в сторонке, справа от текста, чтоб не мозолить глаза И совсем на крайний случай, когда картинка важна для правильного понимания текста и должна быть показана в строго определенном месте текста - предусмотрен "книжный" режим показа. Например, книжка - справочник или путеводитель или т.п.
Ну, и конечно, есть категория пользователей, еще не вышедших из детства или снова впавших в него. Шучу. Если им понравится это нововведение, значит, число пользователей Демагога еще увеличится. И я, как автор программы, буду этому рад. |
|
| | | balabolka V.I.P.
Сообщений : 1228
Репутация : 986
| balabolka | :: Вт Окт 22 2013, 10:28 | Вт Окт 22 2013, 10:28 | |
| Новая опция в программе "Демагог" хороша, но при вставке картинок непосредственно внутрь текста появляются две проблемы.
1. Если текст хранить как обычный текстовый файл (с расширением TXT), то позиции картинок в тексте хранятся в отдельном файле. При редактировании текста, после того, как текст сохранен и осуществлен перезапуск программа, позиции картинок сместятся. Графические изображения могут оказаться не на своих местах, например, внутри слов. Как вариант, можно запретить редактирование текста в программе, если выбран такой режим показа картинок.
2. Отредактированный текст можно сохранить как файл формата RTF. В этом случае позиции картинок внутри текста останутся неизменными при любом редактировании. Но тут возникает другая проблема: все графические изображения вставляются в формате bitmap, в результате чего файл формата RTF будет занимать очень много места. Например, если открыть в программе книгу формата FB2 размером один мегабайт (с иллюстрациями) и сохранить ее как файл формата RTF, размер этого файла может достигать 10-15 мегабайт.
---
Будем надеяться, что когда-либо появится программный компонент, умеющий вставлять внутрь текста картинки без описанных выше проблем. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вт Окт 22 2013, 16:29 | Вт Окт 22 2013, 16:29 | |
| Все правильно - balabolka привел краткое и исчерпывающее описание проблем с отображением рисунков ВНУТРИ компонента RichEdit. После редактирования такого текста приходится сохранять его, как rtf, а затем снова открывать уже как txt. Тогда соответсвующий каталог с картинками и файл с их координатами в тексте - обновятся. А временный rtf можно тогда удалить. Морока. Потому я пока и не хочу ее автоматизировать
Помимо прочего, в режиме книжного показа картинок в меню появляется пункт "Правка - Вставить картинку". Открывается диалог выбора картинок, они могут быть где угодно на компе. Вставка происходит с позиции курсора в тексте. Затем... та же пляска с бубном, т.е. с сохранением в промежуточный rtf и чтением из него. Так можно получить иллюстрированный плоский текст. В нынешней реализации обойти эти тягомотности - проблематично, но у меня есть еще пара запасных вариантов. Просто этот мне было сделать легче, все строилось из готовых кирпичиков, уже имеющихся в программе.
По невнимательности допустил описку в исх.тексте и, (желающие могут убедиться), рисунки формата gif вызывают ошибку программы. Исправленную версию выложу сегодня поздно вечером по мск.
ИДЕАЛЬНЫМ решением был бы выход новой версии стандартного компонента Ричедит с поддержкой рисунков. Но дождемся ли?
UPDATE. 22.10.13 20:35 мск. Залил на сайт исправленную версию, теперь gif'ы обрабатываются нормально. |
|
| | | balabolka V.I.P.
Сообщений : 1228
Репутация : 986
| balabolka | :: Ср Окт 23 2013, 01:04 | Ср Окт 23 2013, 01:04 | |
| Если извлекаются позиции картинок в тексте, то можно добавить опцию автопрокрутки галереи картинок. Например, отслеживается верхняя строка видимой части текста; можно рассчитать, какая это будет позиция в тексте, и показывать в галерее ближайшую к этой позиции картинку. Если текст был прокручен, позиция первого символа верхней строки экрана изменилась - необходимо снова ее рассчитать и показать другую картинку. Дёшево и сердито.
Конечно, если текст будет отредактирован, то позиции картинок также могут сместиться. Но это будет не так фатально, как в случае со вставкой картинок непосредственно в текст. То есть картинка не окажется посередине слова; визуально она лишь чуть дольше останется на экране, чем надо, или сменится другой картинкой раньше положенного. Такое можно пережить.
Это будет обработка события вертикальной прокрутки OnVScroll; не знаю, есть ли оно в RichEdit. Если нет, придется обрабатывать сообщение WM_VSCROLL. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| | | | evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Вс Фев 23 2014, 03:02 | Вс Фев 23 2014, 03:02 | |
| - flegont пишет:
- Словарные замены в тексте по заданному списку словарей.
- есть ли возможность выполнять скрипт не из окна программы а из командной строки? как-то так: - Код:
-
demagog file.txt /пурум-пум-пум - если да, то можно ли в скрипте сделать запись результата в другой текстовый файл как для работы по вызову из окна программы? - Код:
-
WOpen(2,file) WFilter(2,0,homedic..'словарь.dic') WFilter(0,0,homedic..'словарь.rex') ... WSave(0;новый_файл.txt) |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вс Фев 23 2014, 08:22 | Вс Фев 23 2014, 08:22 | |
| Такой возможности нет, но идея мне нравится Я подумаю над ее реализацией.
Будет что-то вроде...
Скрипт:
WOpen(2,file) WFilter(2,0,homedic..'словарь.dic') WFilter(0,0,homedic..'словарь.rex') ... WSave(0;новый_файл.txt) ProgramExit()
Командная строка:
Demagog.exe файл_скрипта.txt /1 /m /r
Т.е. указанный файл открыть в окне с номером 1 (иначе откроется в том, которое было активно при прошлом выходе), программу запустить свернутой в значок, сразу после запуска выполнить загруженный скрипт
А последняя команда скрипта, в данном случае, указывает: закрыть программу |
|
| | | evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Сб Мар 01 2014, 18:54 | Сб Мар 01 2014, 18:54 | |
| подскажите как именно применяется одно отдельно взятое правило *.rex словаря к большому тексту? точнее говоря к какой его части за один раз? и возможно ли как-то реализовать "пропуск" определенного участка при замене? например если строка начинается, заканчивается или содержит...
при разметке файлов для чтения они (файлы) иногда содержат в себе служебную информацию - теги, символы разметки и прочее безобразие.
- Спойлер:
добавлять все варианты исключающие попадание таких "вариантов" разметки под каждое отдельно взятое правило задача довольно сложная... может есть какой-то способ попроще как обойти нужный участок текста при его обработке словарями.
возможно ли реализовать в программе поддержку форматов *.srt и *. ass субтитров? помимо прослушивания книг много используют голосовые синтезаторы для озвучивания субтитров. но запись в файл (аудио) не всегда лучший вариант. плееров поддерживающих озвучивание - один и тот "с приветом" хотелось бы иметь возможность редактировать и затем сохранять текст в таких файлах без изменения другой разметки. у каждого формата есть своя структура в которой можно легко выделить только текст но вот потом снова его сохранить на прежнем месте - задача , или это нереально сложно сделать? |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Сб Мар 01 2014, 20:38 | Сб Мар 01 2014, 20:38 | |
| - Цитата :
- как именно применяется одно отдельно взятое правило *.rex словаря к большому тексту?
Большой текст делится на фрагменты размером *в байтах) НЕ менее указанного в "Сервис - Общие настройки - Чтение - Читать текст последовательными блоками..." Границы блоков определяются по
1. Началу нового абзаца, т.е. #13#10#32 - хотя бы 1 пробел после перехода на новую строку 2. Или по пустой строке 3. Если границ типа 1 или 2 не обнаружено на протяжении 1024 байт, то деление на фрагменты производится отсчетом ЦЕЛЫХ строк
При переходе через очередную границу подсчитывается уже набранный размер блока для чтения. Как только он БОЛЬШЕ ИЛИ РАВЕН указанному в настройках, так очередной фрагмент текста запомнен во временном массиве.
Правила словарных замен, как rex, так и dic применяются поочередно к каждому фрагменту текста. Поэтому, возможен случай НЕ срабатывания правила, когда подходящие к нему слова находятся, соответственно, в конце одного и начале следующего фрагмента. Рецепт: увеличить в настройках размер фрагмента.
Очевидно, что фрагменты, вообще говоря, имеют разную длину. Например, попался последний абзац во фрагмент слишком длинный, он будет добавлен целиком. Предсказать, как конкретно будет разбит текст на фрагменты, вообще говоря, нельзя Разве что, задать длину фрагмента, равную 2 байта. Тогда фрагментом заведомо будет являться каждая строка текста.
- Цитата :
- возможно ли реализовать в программе поддержку форматов *.srt и *. ass субтитров?
Не планирую. |
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Пт Мар 28 2014, 23:59 | Пт Мар 28 2014, 23:59 | |
| Проверил конвертер fastencc - очень доволен! Хочу поделиться статистикой. Исходные данные: Записывал Алёной сериями по 5700 символов каждая. Подключён один словарь - Билингва. Настройки движка по умолчанию. Стат. при параметре строки fastencc.exe %1 %2 -br 320000 .mp3 - вав пишется 25-30 сек. конвертирует 12 сек. Но Алёна моно и такой огромный битрейт ей не нужен. Слышится металлический отзвук, мне ненавистный. Прописал fastencc.exe %1 %2 -br 640000 .mp3 - вав пишется 09-11 сек. конвертирует 5-6 сек. отзвук присустсвует. Определил fastencc.exe %1 %2 -br 40000 .mp3 - вав пишется 07-08 сек. конвертирует 2 сек. отзвука нет.
|
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Вт Мар 17 2015, 12:14 | Вт Мар 17 2015, 12:14 | |
| - Цитата :
- Кроме старичка Николая, есть более современные и качественные голоса, читайте данный Форум. Но и весят они поболе, скачивать дольше, и ставить сложнее.
Меня программа Demagog привлекает именно тем, что не требует установки голосовых движков, за которые требовалось бы перечислять оплату авторам, - в моей системе русским голосом глаголет Ирина, может ее тембры и менее влекущие, нежели у Алены, но денег не просит. Вопрос в связи с авторскими правами: не появится ли у меня повод сокрушаться над правовыми коллизиями, если вдруг аудиокнижка, созданная этой удивительной (безо всякого преувеличения) программой, попадет в широкие массы слушателей? Или все программы, собранные на сем интернет-ресурсе, предназначены лишь для частного утешения? Infovox уж больно жаден... |
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Вт Мар 17 2015, 14:59 | Вт Мар 17 2015, 14:59 | |
| - Higgs_boson пишет:
- Меня программа Demagog привлекает именно тем, что не требует установки голосовых движков, за которые требовалось бы перечислять оплату авторам
Что за бред?! Голосовые движки и TTS-программы (Demagog, Балаболка и пр.) это совершенно разные вещи. Всё ставится отдельно; если в ОС нету платного\бесплатного голоса, то и в Demagog'е его не будет. |
|
| | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Ср Мар 18 2015, 04:27 | Ср Мар 18 2015, 04:27 | |
| Higgs_boson !
вопросы по авторскому праву надо задавать юристам. я сам недавно с племянником спорил по этому вопросу. самому интересно почитать грамотные разъяснения по этому поводу. по моему мнению - всё с точностью до наоборот. если ты сделал аудиокнигу, то она является твоим "продуктом", на который ты имеешь авторские права. любой патент можно использовать "для себя", это в коммерческих целях нельзя. обычно судятся между собой крупные компании/фирмы. я по этому поводу не заморачиваюсь. с простым человеком им судиться не резон. они на судебных издержках могут потерять гораздо больше, чем отжать с человека. да и потом, думаешь человек добровольно за свой счёт поедет в "америку", что-бы они его там "посудили"? может кто-то более грамотно ответит. действительно интересно.
|
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Ср Мар 18 2015, 08:13 | Ср Мар 18 2015, 08:13 | |
| evmir_troll-hunter - Цитата :
- Что за бред?!
Что за тон?! Вы не считаете, сударь, что Ваши манеры уместны лишь в узком кругу Ваших приятелей,- если таковые имеются,- снисходительно воспринимающих Ваши обычаи? telo - Цитата :
- добровольно за свой счёт поедет в "америку", что-бы они его там "посудили"?
Я продаю свой авторский продукт на нескольких мировых рынках, в том числе и на американских площадках - так что, за санкциями мне не придется "ехать"... Как правило, авторы прекрасно знают насколько их продукт законен по мнению различных юрисдикций. Тот факт, что автор Demagog'а ссылается на рейтинги массовых печатных изданий, для меня служит лучшей рекомендацией. Хотя от использования голоса "Nicolai" я предпочту воздержаться до момента, пока сам не обнаружу явных указаний от его разработчиков, что они не возражают против свободного самостоятельного включения этого голоса пользователями в состав их ПО. Не думаю, чтобы "Николай" дорого стоил (тем более, что судя по информации в сети, он уже и не поддерживается авторами), не дорого стоит и "Alyona" (хотя, по мнению acapela, установленный персонально голос не может быть интегрирован в "читалки",- вероятно, имеется ввиду не сложность работы установленного на компьютер голоса в составе "читалки", а запрет на интеграцию этого "голоса" в программную "читалку" для широкого распространения среди неопределенного количества потребителей). Собственно относительно функционала самой программы Demagog: как "научить" Microsoft Irina Desktop расставлять ударения? Попытки подружить ее со словарем DemagogSimple.dic (Николая?) - безуспешны: запрет следовать правилам SAPI5 ("галочка" в соответствующих настройках) приводит лишь к тому, что она начинает проговаривать сами знаки ударения ("меньше", "больше"), без этой "галочки" слова из словаря читаются, похоже, в символах юникода. Возможно, где-то не сем ресурсе есть ссылка на правила, применяемые для SAPI5, прошедшая мимо моего внимания. Кажется, сам автор посещает сей форум, но буду признателен за ответ любому знающему особенность программы человеку. |
|
| | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Ср Мар 18 2015, 09:49 | Ср Мар 18 2015, 09:49 | |
| если ты добропорядочный и законопослушный человек (а такие есть, я точно знаю), то покупай лицензионное и не морочь себе голову. ты же сам понимаешь, что это для тебя единственный путь. тем более если опасаешься "ответных санкций" относительно своих продуктов.
"хотя, по мнению acapela, установленный персонально голос не может быть интегрирован в "читалки" "
это скорее всего прописано в их лицензионном соглашении. что-бы нести за это ответственность, нужно прежде подписать это соглашение.
спорить не будем, т.к. скорее всего ты больше моего понимаешь в авторском праве, поскольку продаёшь свой авторский продукт.
|
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Ср Мар 18 2015, 10:42 | Ср Мар 18 2015, 10:42 | |
| Боюсь, что Infovox никогда не окупится , при этом, некоторые примеры аудиокнижек, которые я сегодня слушал, впечатляют качеством, и сделаны, по уверениям авторов, с использованием ПО, которое собрано на здешнем ресурсе. И ударения в них безупречны (во всяком случае, в демонстрационных примерах).
В продолжение вопроса (постом выше) о расстановке ударений в Demagog'е: реальна ли установка ударений в отдельных словах текста (не через общий словарь, а подобно возможности в RussAcc)? — положим я озвучиваю текст, содержащий архаизмы, и, кроме того, намерен подчеркнуть "местечковость" в произношении определенных слов,— позволят ли мне средства Demagog'а или нет?
|
|
| | | apokrif V.I.P.
Сообщений : 304
Репутация : 85
| apokrif | :: Ср Мар 18 2015, 16:30 | Ср Мар 18 2015, 16:30 | |
| - telo пишет:
- если ты добропорядочный и законопослушный человек (а такие есть, я точно
знаю), то покупай лицензионное и не морочь себе голову. ты же сам понимаешь, что это для тебя единственный путь. тем более если опасаешься "ответных санкций" относительно своих продуктов. Могут быть разные лицензии в зависимости от вариантов использования. Например, если есть Personal or Commercial, первая, в отличие от второй, скорее всего не дает права распространять результат работы продукта. Могут быть разные варианты Commercial... Думаю, что только сам Infovox ответит на эти вопросы.
|
|
| | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Ср Мар 18 2015, 17:24 | Ср Мар 18 2015, 17:24 | |
| apokrif !
спасибо ! буду знать. сам я в это слишком глубоко не вникал, т.к. не планировал ни чего покупать. сыровато оно всё, не тянет на коммерческий продукт. да и с английским у меня никак. сам удивляюсь, как умудряюсь выживать в современном мире без него (полу-шутка, полу-всерьёз ).
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Ср Мар 18 2015, 22:14 | Ср Мар 18 2015, 22:14 | |
| Всем доброго времени суток!
Размещенный на сайте программы "Демагог" словарь DemagogSimple.dic предназначен для движка "Николай" и только для него. В нем использованы принятые в Николае знаки ударения: символы < > У других движков символы ударения другие или их может вообще не быть. Скажем, для движка Ольга ударениями, если правильно помню, являются символы ^ и '
В SAPI5, к большому горю поклонников Николая, те же самые символы < > служат для обозначения т.н. "управляющих тегов", применяемых в SAPI5 для регулирования громкости голоса, тембра, скорости чтения и т.п. Поэтому любой текст с применением словарей для Николая в SAPI5 будет читаться неправильно или же вовсе будет выдано сообщение об ошибке.
Галочка для игнорирования тегов SAPI5 в Демагоге как раз и предназначена, чтобы обойти эту трудность - тогда символы < > по-прежнему будут интерпретироваться Николаем, как ударения.
Тот факт, что Microsoft Irina Desktop читает эти символы вслух, как раз и означает, что для нее они НЕ являются знаками ударения. Что вместо них? Честное слово, не знаю Может, кто подскажет?
Следует отметить, что некоторые современные движки имеют собственные системы корректировки произношения. Например Lexicon Manager в движке Алена.
Если для голосового движка существует специальный символ, срабатывающий как ударение при его вставке в слово, то расставлять ударения в "особых", "местечковых" или жаргонных словах можно и вручную. Демагог, помимо всего прочего - это еще и довольно развитый текстовый редактор. |
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Чт Мар 19 2015, 08:58 | Чт Мар 19 2015, 08:58 | |
| flegontСпасибо, что отреагировали на мой призыв. Хотя сообщенные Вами сведения не выглядят сколько-нибудь утешительными , но, поскольку человеку свойственно полагать автора "истиной в последней инстанции", контакт с ним нам всегда будет представляться совершенно необходимым. Ваша программа хорошо документирована, поэтому акценты, расставленные в ответе, были ожидаемы. Программа очень хорошая, и все, что в ней — "помимо всего прочего", в ней совершенно уместно. "Сообщений об ошибках" я не наблюдал, но при попытке открыть .тхт, записанный в Юникоде, выбрасывалось окно с замечанием "Модуль Word не обнаружен". Обнаружить его — нет никакой возможности, т.к. пользуюсь OpenOffice (на машине нет другого софта кроме лицензионного, и очень много OpenSource-ПО). Файл тхт, перезаписанный в UTF-8, Демагог прочитал без проблем. Печально, что Ирина не освоит "актерское мастерство", "Николай" не заговорит голосом Терновского, а Гугл никогда не переведет как Голышев.
Я попытаюсь поискать на иноязычных ресурсах что-нибудь "проливающее свет" на особенности Microsoft Irina Desktop, но заранее предполагаю неудачу, т.к. мне кажется (возможно, я - "сильно не в теме" ), что обсуждаемый на здешнем форуме сам пользовательский подход к "читалкам", и само авторское ПО, — специфичны и востребованы ограниченно. Впрочем, здесь же, не без удивления, читал запросы на японские голоса... |
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Чт Мар 19 2015, 10:45 | Чт Мар 19 2015, 10:45 | |
| Беглое "гугление" по ключевым словам sapi sdk tts stressed syllable stress patterns и т.п. показало, что волшебство пунктуации, способной обратиться в озвученную разметку, вероятнее всего, останется долго несбыточной мечтой. Как и ожидалось, stress patterns, главным образом, оформляются в словари (sdk предоставляют простор для фантазии и изобретательности даже исключительно "певучим" языкам) - в это уже нужно вникать глубоко и серьезно... |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Чт Мар 19 2015, 20:03 | Чт Мар 19 2015, 20:03 | |
| - Цитата :
- ...окно с замечанием "Модуль Word не обнаружен"
Причина в том, что Демагог не поддерживает Юникод. Он распознает эту кодировку и преобразует ее в кодировку ANSI. При этом Демагог использует ANSI-кодировку того национального варианта Windows, который установлен на компьютере пользователя.
Самую популярную из юникодных кодировок: UTF-8 - Демагог преобразует в ANSI самостоятельно. Для менее употребительных вариантов: Unicode BE, Unicode LE - Демагог призывает на помощь MS Word и выполняет преобразование в ANSI через него. Если Word на компьютере не установлен, то увы... Может быть, позже я сделаю преобразование и этих видов юникода непосредственно Демагогом.
Отсутствие поддержки Юникода приводит к тому, что "Демагог" не может отображать и читать вслух тексты, ANSI-колировка которых НЕ соответствует установленной на компьютере национальной версии Windows. Например, я на своем компьютере не могу читать или слушать в подлиннике труды китайского философа Конфуция
От этого недостатка свободна "Балаболка", автор которой, Илья Морозов приложил большие усилия для перевода своего проекта с ANSI на Unicode.
Однако, следует учесть, что для юникодной кодировки не работают алгоритмы быстрого поиска-замены, созданные для ANSI и использованные в Демагоге. Неизвестно также: будут ли в юникоде эффективны алгоритмы "словарных хеш-таблиц", применяемые сейчас в Демагоге для работы со словарями формата DIC. Во всяком случае, тривиальное переписывание программного кода с Delphi 2007 (не поддерживающей юникод) на Delphi XE дает эффект: "что раньше летало, то теперь ползает"
Поэтому, прежде чем спешить создавать юникодную версию "Демагога", я хотел бы глубже разобраться в существе вопроса. Дабы Демагог не потерял ценимую многими пользователями способность к быстрой обработке текстов.
|
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Чт Мар 19 2015, 20:50 | Чт Мар 19 2015, 20:50 | |
| - flegont пишет:
- Поэтому, прежде чем спешить создавать юникодную версию "Демагога", я хотел бы глубже разобраться в существе вопроса. Дабы Демагог не потерял ценимую многими пользователями способность к быстрой обработке текстов.
Так как я подготавливаю большие сборники, быстрая обработка текстов для меня бесценна! Спорный вопрос различных кодировок легко решается буфером обмена... открыть текст любым редактором, скопировать в буфер и вставить в Демагог может и школьник.
|
|
| | | apokrif V.I.P.
Сообщений : 304
Репутация : 85
| apokrif | :: Пт Мар 20 2015, 00:09 | Пт Мар 20 2015, 00:09 | |
| - flegont пишет:
- Поэтому, прежде чем спешить создавать юникодную версию "Демагога", я хотел бы глубже разобраться в существе вопроса.
Посмотрите на MultiByteToWideChar() и WideCharToMultiByte() - UTF-16 и UTF-8 преобразует в ANSI без проблем Delphi 2007. А UTF-16BE вроде редко встречается... |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Пт Мар 20 2015, 09:18 | Пт Мар 20 2015, 09:18 | |
| - Цитата :
- Посмотрите на MultiByteToWideChar() и WideCharToMultiByte()
Спасибо, попробую. |
|
| | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Пт Мар 20 2015, 18:12 | Пт Мар 20 2015, 18:12 | |
| flegont - Цитата :
- Тот факт, что Microsoft Irina Desktop читает эти символы вслух, как раз и означает, что для нее они НЕ являются знаками ударения. Что вместо них? Честное слово, не знаю Smile
Может, кто подскажет? Не особо рассчитываю Вас удивить, т.к., полагаю, что все соответствующие ресурсы Вами много тщательнее моего изучены, но вот здесь имеется определенное указание на знак "1" как на "stress", к сожалению, единственный тег из SAPI5, который не смог быть мною опробован в программе Демагог - это как раз тег "pron sym" ("ошибка голосового движка..."), причем, Unicode я не использовал... Использую теги SAPI, можно добиться вполне "живого" голоса от моей Microsoft Irina Desktop, Но паллиативом ударениям я использовал знаки, уместность которых может быть поставлена под сомнение: - Спойлер:
- Код:
-
<pitch middle="-5"> Опять в <pitch absmiddle="5"><emph>Черногорию</emph><pitch absmiddle="-5">? <volume level="90"><rate speed="-1">удивлялись<rate speed="1"> мно''гие<volume level="100">, слыша от меня, что я собираюсь побывать в третий раз в прелестн'ом приадриатическом княжестве. <pitch middle="5"> <rate speed="-2"> <partofsp part="noun"> А </partofsp> <partofsp part="noun"> П </partofsp> <silence msec="100"/><rate speed="2">присоединится к нам поздне'е Словари приходится отключать все, но потребность создать регулярное выражение, которое бы позволило воспроизводить вопросительную интонацию, очевидна. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| | | | Higgs_boson Новичок
Сообщений : 10
Репутация : 1
| Higgs_boson | :: Сб Мар 21 2015, 16:12 | Сб Мар 21 2015, 16:12 | |
| Действительно, Microsoft Zira Desktop (English) охотно проговаривает этот тег,— отчего же Irina (Russian) так нелюбезна? Насчет разницы согласен - как-то малоразличимо, надо по спектрам сравнивать. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| | | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Вс Июн 07 2015, 12:55 | Вс Июн 07 2015, 12:55 | |
| Сравнительная статистика - Цитата :
- Выводы и примечания:
- безусловно 25Мб. Щедрин + его монструозная Endian’ская копия это чересчур! Но это пока единственная уникальный сборник, и из чисто академического интереса, а демонстрирует поразительную (относительно!) быстроту.
- стало ясно, что оптимальная (адекватная), рабочая скорость обеспечивается на сборниках до 10Мб.
Всё что больше нужно или разделять или не подключать chisla_Ven.rex
- chisla_Ven.rex - экспериментальный, модифицированный Венедиктом Ли словарь chisla.rex. На форуме он публиковаться не будет.
В дальнейшем evilone_ подкорректирует chisla.rex для эффективной работы в Демагоге. Пока же его НЕ рекомендуется подключать к Demagog 7.28.295β
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вс Июн 07 2015, 15:24 | Вс Июн 07 2015, 15:24 | |
| Спасибо за статистику! Очень показательные результаты.
Словари регулярных выражений (*.rex) - это наиболее мощное и гибкое средство корректировки текстов для исправления ошибок произношения в голосовых движках.
Поэтому важно было добиться достаточного быстродействия этого уникального инструмента в Юникоде.
Раньше, для ANSI ситуация была намного проще - есть кодовая страница, в ней всего 256 символов. Поэтому поиск соответствий в тексте выполнялся быстро. Теперь же мы имеем в Демагоге почти такую же скорость обработки регулярных выражений и для Юникода.
Что касается словарей формата dic, для которых я использую в Демагоге алгоритм собственного изобретения, то результаты в Юникоде также весьма удовлетворительные. Еще раз спасибо.
P.S. Чтобы не оставлять неясностей, добавлю, что я не применял большого насилия к словарю chisla.rex скорректировав в нем всего 2 строчки:
\d+)\s?(<[a-z\d]+>)?\s?(Кб\.?\b|\kb\.?\b)=$1$2 <kilo><byt> (\d+)\s?(<[a-z\d]+>)?\s?(Кбит\.?\b|\kbit\.?\b)=$1$2 <kilo><bit>
А именно, убрал лишний обратный слэш перед буквой k (отмечен красным). Потому что в PCRE насколько помню, \k означает "обратную ссылку". А здесь требуется всего лишь заменить фрагменты kb и kbit
Скорректированные таким образом правила правильно работают и в Балаболке и в Демагоге, что подтверждает правильность сделанных изменений, извините за каламбур |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Пн Июн 08 2015, 13:47 | Пн Июн 08 2015, 13:47 | |
| ПУТЬ САМУРАЯ Как была решена проблема с медленной работой словарей регулярных выражений в Юникоде, и кто в этом очень помог http://aloys.narod.ru/part3.htm
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вт Июн 09 2015, 11:37 | Вт Июн 09 2015, 11:37 | |
| ИМЕЕТ ЛИ ДЖЕНТЛЬМЕН ПРАВО НА ЛЕВО? или, что такое Copyleft.
Лицензия MPL (MozillaPublicLicense) создана в конце 1990-х гг.и стала затем влиятельной типовой лицензией благодаря тому, что она написана на высоком профессиональном уровне, отличается четким и подробным изложением условий лицензирования. MPL относится к авторско-левым лицензиям, т.е. лицензиаты должны распространять далее полученный по MPL оригинальный код или производный от него код по той же лицензии MPL.
В Demagog'e, в версии 7.28.295 beta использована библиотека для работы с регулярными выражениями SkRegExp, созданная Shuichi Komiya и защищенная лицензией MPL. В соответствии с требованиями лицензии, в выходных данных Demagog'a (Помощь - О программе) отражен факт использования MPL-защищенного ПО, а в состав дистрибутива включены его исходные тексты.
Эта же библиотека SkRegExp использована в вышедшей сразу за указанной версией Demagog'a "Балаболке" 2.11.0.581. Достаточно посмотреть на файл balabolka.exe в обычном Блокноте (сняв предварительно ее защиту от просмотра утилитой upx: upx -d balabolka.exe)
Сухой фразы в Справке (причем, только в русском экземпляре): "Балаболка" использует библиотеку, реализующую работу регулярных выражений в стиле Perrl и на Форуме: Спасибо Венедикту Ли - недостаточно.
Имеет место нарушение лицензии: сокрытие факта использования MPL-защищенного ПО, отсутствуют исходные коды данного ПО или указание, где их можно получить.
Пользователи "Балаболки" должны иметь ввиду, что этот программный продукт в настоящее время не является юридически чистым с точки зрения международного права, и взять на себя ответственность за возможные правовые риски.
|
|
| | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Вт Июн 09 2015, 12:34 | Вт Июн 09 2015, 12:34 | |
| flegont !
не совсем понятен смысл твоего поста. есть какая-то недосказанность. раньше вы с балаболкой очень мирно жили и общались. не понятна сама суть. что случилось-то? ты считаешь, что балаболка нарушает твои права? и балаболка отказывается мирным путём урегулировать сложившуюся ситуацию? короче, ничё не понял.
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Вт Июн 09 2015, 14:25 | Вт Июн 09 2015, 14:25 | |
| - Цитата :
- есть какая-то недосказанность
В прежней версии Демагога я в отдельном каталоге держал его исходные тексты и позволял любому ими пользоваться. Моё - и мне не жалко. Воспользовались в разное время, но в таком порядке: - Илья Морозов (Балаболка) (одно время использовал мой хеш-алгоритм словарных замен); - Александр Корольков (часть кода для проекта Meteonova - погодный робот); - Виктор Портнов (на основе написал собственную "говорилку" для личных целей - то ли диплом, то ли что) - и бог знает, кто еще.
Но сейчас ситуация иная. В дистрибутиве юникодного Демагога НЕ МОЙ исходник! Это - находка для любого Delphi-программиста - библиотека SkRegExp для работы с регулярными выражениями - созданная японским программистом Шуичи Комия. И он особо оговорил условия использования: лицензия MPL. То есть любое использование и возможные модификации должны оставлять исходные коды библиотеки SkRegExp доступными для пользователей и защищенными той же лицензией. Я так и сделал, скомпилировав эту версию Демагога, в выходных данных программы сказал об использовании ПО под MPL, в дистрибутиве в отдельном каталоге, добросовестно поместил исходные коды SkRegExp. Каждый файл исходника начинается с заголовочного абзаца лицензии MPL и имени автора: Shuichi Komiya. Не заметить нельзя. Рядом поместил readme.1st Все программисты знают, что название файла читается "Read me first" - Прочти меня первым. И там тоже особо оговорил: It is licensed under the MPL 2.0. Author of the project: Shuichi Komiya (http://skregexp.komish.com/ ) И тут Балаболка спокойно берет и коммуниздит это дело, не обращая внимания на все кругом расставленные предупреждения. Не упоминает об использовании в своей программе MPL-защищенного ПО, не предъявляет его исходные тексты. В общем, чихал он на лицензию. Похоже, меня держат за болвана. И перед Шуичи Комия неудобно (хотя он пока ничего не знает), вроде как я помог сп..ть его очень даже неплохую работу. Такова суть. А со мной ничего урегулировать не надо. Надо просто исполнить требования лицензии: поместить исходники SkRegExp в дистрибутив с объявлением о той же лицензии MPL. Работы - на 10 минут. |
|
| | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Ср Июн 10 2015, 15:03 | Ср Июн 10 2015, 15:03 | |
| flegont !
спасибо за столь развёрнутое и исчерпывающее объяснение. комментировать или оценивать ситуацию очень затруднительно. ситуация из разряда недоразумений. будем надеяться, что балаболка в ближайшее время приведёт всё в соответствующий вид.
балаболка !
очень многие люди относятся к тебе с уважением и благодарностью, за твою программу, за твой труд. не пристало тебе с твоей репутацией попадать в непонятные истории.
|
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Ср Июн 10 2015, 16:30 | Ср Июн 10 2015, 16:30 | |
| - telo пишет:
- будем надеяться, что балаболка в ближайшее время приведёт
всё в соответствующий вид. У программы "Балаболка" закрытый исходный код. Есть три варианта выхода из данной ситуации:- поместить исходники SkRegExp в дистрибутив с объявлением о лицензии MPL
- изъять SkRegExp из программы "Балаболка"
- оставить всё как есть - потеря деловой репутации!
А деловая репутация есть. И. Морозов автор платной программы "Cross+A"... стоимость регистрации: 1200 рублей. P.S. подчеркну, что И. Морозов с просьбой перевести на украинский язык фразы - "Регулярные выражения (regular expressions) - универсальное средство быстрого выполнения любых сложных операций с текстом. "Балаболка" использует библиотеку, реализующую работу регулярных выражений в стиле Perl" ко мне не обращался.
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| | | | telo Участник
Сообщений : 58
Репутация : 25
| telo | :: Пт Июн 12 2015, 00:42 | Пт Июн 12 2015, 00:42 | |
| flegont !
повторюсь : я не могу оценить ситуацию с правовой точки зрения. все эти лицензии... если оценивать с моральной стороны, то балаболка очень не прав. он должен был хотя-бы попытаться объясниться с тобой, раз ты к нему обращаешься. он тебя игнорирует. |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Пт Июн 12 2015, 09:10 | Пт Июн 12 2015, 09:10 | |
| - Цитата :
- опиши ситуацию именно у него в ветках "Балаболка"
Как хозяин своей ветки, он такой коммент тут же удалит, как удалил размещенные мною там выдержки из лицензии MPL (английский был текст и русский перевод)
- Цитата :
- "быстрые словари". если мне не изменяет память, он использовал твои
наработки Да, давняя история. Он тогда написал мне письмо с просьбой воспользоваться, я разрешил. Правда ссылка на меня была только в русской Справке к Балаболке, в остальных Справках просто говорилось, что используется особый "быстрый алгоритм". Я тогда отнесся снисходительно, а теперь понимаю, что надо было сразу поставить вопрос ребром. А когда он мигрировал проект "Балаболка" с ANSI на Юникод, то возникли какие-то трудности с адаптацией хеш-алгоритма под Юникод и пришлось ему это дело бросить. Где-то на Форуме этот момент сохранился.
О нарушением лицензии MPL я в корректной форме упомянул на своем сайте, в главе, где описана миграция проекта Демагог на Юникод. Можно еще дать соответствующий комментарий в дистрибутиве Демагога, там где лежат исходники SkRegExp. Шуичи Комия - просто гений и забывать его заслуги считаю неэтичным. Особенно меня тронула ситуация, когда, тестируя SkRegExp 3.0.7 я обнаружил в библиотеке серьезную ошибку - бесконечный цикл при обработке некоего класса регулярных выражений - прога мертво виснет и всё. Послал разработчику извещение об ошибке. Новая версия SkRegExp 3.0.8 была выложена на его сайте через 2 часа 23 минуты! И с разъяснением, в чем состояла ошибка. То есть, как настоящий самурай он сразу сел за комп, разбираться и исправлять. Молодец.
P.S. Очень интересный обзор разных видов лицензий на свободноe ПО. Вот, в частности, цитата из раздела про MPL:
Часть 3 лицензии MPL содержит условия осуществления переработки кода, защищенного лицензией, и распространения производных произведений, созданных в результате такой переработки. Пользователь обязан распространять производную программу только на условиях лицензии MPL, а также предоставлять приобретателям ее исходный код. Кроме того, при распространении производной программы приобретателю должна сообщаться информация о первоначальном и последующих разработчиках и об изменениях, внесенных в оригинальный код и в его последующие модификации последним разработчиком (пользователем).
|
|
| | | evmir_troll-hunter Admin
Сообщений : 616
Репутация : 208
| evmir_troll-hunter | :: Ср Июн 17 2015, 22:07 | Ср Июн 17 2015, 22:07 | |
| - flegont пишет:
7.28.296 Изменения: 1) Добавлена опция "Сервис - Статистика - Необработанные омографы"; За скромным названием скрывается вот что; возникла идея списка строк "неучтённых омографов"... но как?
1). открыть текст, отметить галочками словарь alenka.hmg и все словари замен
2). включить опцию, и программа отобразит строки со всеми омографами, не входящими в состав правил замен
Упрощённые примеры: правило в словаре - анализ крови=анализ крОви фраза в тексте - анализ его крови показал...
Демагог прописывает строку - крови | анализ его крови показал... ------ правило в словаре - арки ворот=арки ворОт фраза в тексте - у арки замковых ворот...
Демагог прописывает строки - ворот | у арки замковых ворот... замковых | у арки замковых ворот...
Некоторые замечания: a. у моих примеров 3-4 слова всего, Демагог же прописывает строку с омографом в окружении пяти предшествующих и пяти следующих слов.
b. в принципе анализируются только 3 *.dic словаря - Словарь замены ударений, Большой словарь замен и Расширенный словарь замен. Т.к. другие не ассоциируются с alenka.hmg. Но если кто-то захочет поэкспериментировать с *.rex - пожалуйста.
c. есть возможность запретить программе отображать строки с указанными омо. Перед поиском омографов выдается запрос: какие не искать. Введите перечень через ;
Данная функция полезна для "все\всё всем\всём" потому что:- на данном этапе задача омографа "все\всё всем\всём" нерешаема
- из форумских .dic-словарей изъяты все правила с этими омо
- Венедикт Ли подтвердил и уточнил мою догадку, что словарь vse_vsyo.rex эффективен на 60%
- если пользователям захочется помучиться, они смогут отобразить строки с "все\всё всем\всём" намного быстрее с помощью Поиска и Шаблона DIC
Ну и самый главный вопрос - зачем это надо?!
Проанализировав полученный список каждый пользователь имеет возможность быстро сформировать свой собственный словарь замен... сообразно своих литературных предпочтений. Ведь список будет содержать омограф в контексте.
Спасибо автору за воплощение идеи. |
|
| | | apokrif V.I.P.
Сообщений : 304
Репутация : 85
| apokrif | :: Вт Сен 08 2015, 21:18 | Вт Сен 08 2015, 21:18 | |
| Flegont, Если не сложно, не могли бы вы собрать command line конвертер, например для .epub? Просто переводить все предложение в lowercase и проставлять ударения uppercase-ом: замОк/зАмок Получившийся .epub можно озвучивать на любом устройстве, подключив словари для ударений... Если идея бессмысленная, можно объяснить почему, в 2-х словах?
|
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Ср Сен 09 2015, 00:22 | Ср Сен 09 2015, 00:22 | |
| Хм, я не понял: а откуда конвертер будет знать, где какие ударения ставить? Уточните Вашу мысль, пожалуйста. |
|
| | | apokrif V.I.P.
Сообщений : 304
Репутация : 85
| apokrif | :: Ср Сен 09 2015, 02:07 | Ср Сен 09 2015, 02:07 | |
| - flegont пишет:
- а откуда конвертер будет знать, где какие ударения ставить?
А Demagog (Демагог) ему не подскажет? |
|
| | | flegont V.I.P.
Сообщений : 355
Репутация : 476
| flegont | :: Ср Сен 09 2015, 05:59 | Ср Сен 09 2015, 05:59 | |
| Ну, если иметь словарь ударений русского языка в формате dic или rex, какие приняты в Демагоге, то сам Демагог все и сделает. Если правильно помню, где-то на Форуме есть словарь ударений для Алены, который как раз и ставит ударение в виде большой буквы. Тогда выходит, что проблема в том, что исходный текст в формате epub? А не стандартный txt? Демагог не поддерживает epub. По сравнению с fb2 он малораспространен и я пока не решил, нужна ли его поддержка в Демагоге. А чем не устраивает Балаболка? Она поддерживает epub и имеется консольная ее версия - работающая из командной строки. Вот Вам и готовый конвертер. Или я чего-то не понимаю? . |
|
| | | apokrif V.I.P.
Сообщений : 304
Репутация : 85
| apokrif | :: Ср Сен 09 2015, 17:32 | Ср Сен 09 2015, 17:32 | |
| - flegont пишет:
- Демагог не поддерживает epub. По сравнению с fb2 он малораспространен и я пока не решил, нужна ли его поддержка в Демагоге.
Да они вроде не сильно отличаются?
- flegont пишет:
- А чем не устраивает Балаболка? Она поддерживает epub и имеется консольная ее версия - работающая из командной строки. Вот Вам и готовый конвертер. Или я чего-то не понимаю?
Скорее я (не понимаю). Т.е. консольная Балаболка сделает из исходного epub-а epub с ударениями, а не wav или еще что-то?
|
|
| | | | Demagog (Демагог) |
---|
| |