LINUX.ORG.RU

ГОЛОСОВОЙ ДВИЖОК


0

1

Разрабатываю голосовой движок работа кипела до одного момента ,а именно до функции определения кодировки текста (просто как опция поддержка любой кодировки) так вот все вы понимаете что реализовать то несложно в принципе но вот то что кодировка символов то часто похожа и результаты такого определения будут мягко говоря хз какими может кто чем подскажет? пишу на си(так к слову)

Ответ на: комментарий от Jetty

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

Squeeze
() автор топика

кстати где взять все кодировки которые только существуют
попробую методом исключений + динамически будет проверятся граматика читаемого слова и если на выходе кракозябра то это мои анализаторы заметят

Squeeze
() автор топика
Ответ на: комментарий от Squeeze

Так не заморачивайся по этому поводу. Или ты собрался поддержку всех возможных кодировок включить? Если так, то делай как офис - спрашивай у пользователя в какой кодировке он дает файл.

mopsene ★★★
()
Ответ на: комментарий от Squeeze

А в чем проблема определения кодировки ? :)
У тебя же вебформа, верно ? (иначе поясни что такое «голосовой движок») А значит ты можешь выставить кодировку страницы и все такое.

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

нет у меня не вэб приложение а библиотека(набор библиотек ) для синтеза голоса
динамически проверяет орфографию ,пунктуацию,и прочие параметры текста на основе них текст скриптуется и динамически интерпритируется звуковым движком
который собственно и производит голосовой синтез ,но вся фишка в том что у меня слова не тупо переводятся в звуки а проверяются целые блоки текста ,слова сопостовляются вычисляется тон и интонация в зависимости от знаков препинания и типа слов и ещё огромной кучи факторов ,работы ещё не меряно поэтому и шлифую всё до блеска

Squeeze
() автор топика
Ответ на: комментарий от Jetty

Да че ты паришься, просто укажи как требование файлы в кодировке UTF-8 или UTF-16 :)

нет так нельзя инструмент должен быть гибким на то он и инструмент

Squeeze
() автор топика

Могу посоветовать посмотреть сорцы текстовых редакторов, gedit или geany например. Они умеют и кодировку определять, и перекодировать.

Dragon59 ★★
()
Ответ на: комментарий от Squeeze

Дело в том что группы языков весьма схожи по написанию и табличке символов могут сильно отличаться по звукоряду словам и произношению. У меня нет даже идей, как отличить русский от укр от бел если в тексте нет характерных символов. С центрально европейскими языками та же фигня.

Jetty ★★★★★
()
Ответ на: комментарий от Dragon59

уже еду в этом направлении спасибо

Squeeze
() автор топика
Ответ на: комментарий от mopsene

Не сопротивляйся - это единственно верный способ, если даже во всех офисах устроенно именно так.

верный но неудобный для конечного пользователя

Squeeze
() автор топика
Ответ на: комментарий от Jetty

Дело в том что группы языков весьма схожи по написанию и табличке символов могут сильно отличаться по звукоряду словам и произношению

попал в точку ,я тоже голову ломал :) но решение простое оказалось единственный необходимый параметр по сути это указание программе на каком собствено языке текст ему дают так как проверяется всё от и до грамматика и прочее ну я уже говорил +автоматически может подхватить и правильно обработать английский текст английзкого языка ,поддержка языка скриптуится набором правил правда их у меня огромное количество ,хоть проект по идее мультиязычный упор всё же на русский и могучий делается то есть обработка правил работает только для одного языка полнофункционально, всё что он не поймёт то пропускает то есть молчит тут решений проблем много ,но они займут кучу времени ,а я не супермен писать код сутками на пролёт

Squeeze
() автор топика
Ответ на: комментарий от Dragon59

Сначала сделай так, что-бы он говорил, а потом решай второстепенные проблемы.

дык он и базарит вовсю :) точнее она ,голос женский :) я вот кокрас о первостепенных вещах говорю ,сляпать синтезатор голоса не трудно трудно заставить его говорить так чтобы можно было слова понять а после этого ещё трудней сделать голос похожим на человеческий ну а потом его как ребёнка нужно учить ПРАВИЛЬНО И С ИНТОНАЦИЕЙ расказывать стишки :)

Squeeze
() автор топика
Ответ на: комментарий от Squeeze

Проект-то хоть свободный? Можно уже сырцы поковырять? Себе на домашний компьютер электронную рабыню запилить? =)

mopsene ★★★
()
Ответ на: комментарий от mopsene

Проект-то хоть свободный? Можно уже сырцы поковырять? Себе на домашний компьютер электронную рабыню запилить? =)

будет да свободный ,но пока только локально у меня наработано очень много поэтому просто выкладывать пока не буду, страхово немного, да и быдлокода много :) сделанного по быстрому, вот пофиксю выложу на sor. for. тогда и ковыряйте на здоровье (к слову предложил тут один купить проект и был послан на..уй) вообщем пока что я жадный но это временно

Squeeze
() автор топика

KWrite вроде как это все умеет. А можно просто передавать кодировку в виде параметра

Harald ★★★★★
()

Используйте libenca

AITap ★★★★★
()

Для этого достаточно либ. В гугл!

Могу вспомнить libenca.

PS. Не стыдно?

движок работа

Не кажется ли тебе, что здесь должна была быть точка?

момента ,

Перед запятой пробел не ставится.

И где знаки препинания?

Deleted
()
Ответ на: комментарий от mopsene

Когда выложишь по свободной лицензией, если не сложно, создай тред в Development и скастуй меня в него.

нет не сложно, позову, но вот только когда это будет я даже прогноз дать не могу

Squeeze
() автор топика
Ответ на: комментарий от Squeeze

Все равно спасибо, полезное дело делаешь. Как представлю, что комп будет меня встречать красивым женским голосом, докладывать время, зачитывать вбросы в толксах...

mopsene ★★★
()
Ответ на: комментарий от Harald

А можно просто передавать кодировку в виде параметра

если передавать кодировку в виде параметра напрямую как я делал уже без какой либо фильтрации то знаешь какой дурдом получается смотреть и слушать страшно

Squeeze
() автор топика
Ответ на: комментарий от mopsene

Все равно спасибо, полезное дело делаешь. Как представлю, что комп будет меня встречать красивым женским голосом, докладывать время, зачитывать вбросы в толксах...

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

Squeeze
() автор топика
Ответ на: комментарий от Zhbert

спасибо :) не ну честно самому стыдно ,после того как я переписывал все правила русского языка в сишный код ,по идее должен был бы набратся уму разуму ,ан нет знаки припинания ставить и очепятки исправить лень.Стыдно но лень.

Squeeze
() автор топика
Ответ на: комментарий от Deleted

Вот что я не люблю,так это зависимости от тучи библиотек,так что либо статически прикручивать,либо своими силами вопросы решать (чаще так легче),иначе в принципе почти всё, можно из сторонних библиотек сляпать,но тогда получится ,,,,,,,,,

Squeeze
() автор топика
Ответ на: комментарий от Deleted

велосипедить в некоторых случаях очень даже нужно так как у меня проект не только под unix системы,линковать целые библиотеки ради пары функций смешно,и целесообразней написать (или списать)их самому,проект также предпологается использовать во встраиваемых системах где размер библиотек очень важен,я не выбираю лёгкий путь,моя программа независима,переносима на что угодно,я не пишу её чисто под UNIX подобные системы,сейчас я пишу независимый неот чего вариант с широкими возможностями портирования.

Squeeze
() автор топика
Ответ на: комментарий от Squeeze

велосипедить в некоторых случаях очень даже нужно

Нужно, но это явно не твой случай.

у меня проект не только под unix системы

И что? libenca кроссплатформенный.

линковать целые библиотеки ради пары функций смешно

Это если твоя пара функций не идет ни в какое сравнение с размерами библиотеки. libenca - маленькая, и ее основная функция - как раз то, что тебе нужно.

проект также предпологается использовать во встраиваемых системах где размер библиотек очень важен

:D Зачем на таких встраиваемых системах работа с текстом в разных кодировках? И уж тем более, зачем на подобных встраиваемых системах голосовой движок?

моя программа независима,переносима на что угодно,я не пишу её чисто под UNIX подобные системы,сейчас я пишу независимый неот чего вариант с широкими возможностями портирования.

libenca - тоже переносима на что угодно. Хоть на винду, хоть на Unix-like. На всяких AVR (которые не AVR32) оно, конечно, работать не будет, но там оно и не нужно.

PS. Вообще-то после запятых принято ставить пробелы. И хотя бы стараться писать грамотно. А то после твоего поста глаза вытекают. А еще в русском языке есть такая замечательная вещь - прописные буквы. А еще у тебя обилие ошибок пунктуации.

Deleted
()
Ответ на: комментарий от Deleted

Возникать не буду, во многом ты прав, замечания учту, libenca мне подошла.

Зачем на таких встраиваемых системах работа с текстом в разных кодировках?

Ты прав, там будет только одна кодировка.

PS. Вообще-то после запятых принято ставить пробелы. И хотя бы стараться писать грамотно. А то после твоего поста глаза вытекают. А еще в русском языке есть такая замечательная вещь - прописные буквы. А еще у тебя обилие ошибок пунктуации.

Ну что тут казать? Виноват.

но там оно и не нужно.

А на счёт того, что и где нужно, решать пока только мне.

Squeeze
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.