У Вас отключён JavaScript
на нашем форуме karaoke.bbfast
это категорически запрещено!!!


Яндекс.Погода

KARAOKE FUN

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » KARAOKE FUN » СПРАШИВАЛКА » Поиск по тексту


Поиск по тексту

Сообщений 1 страница 17 из 17

1

Всем доброго!
Скажите как обстоят дела с поиском по тексту? в karafun player

Отредактировано artem.la222 (2016-12-01 14:02:50)

0

2

В общем задача такая - необходима вытащить тексты из kfn файлов. И на основе этих текстов создать индексы для поиска по тексту песен.
Может у кого есть инфа по формату kfn ?

0

3

artem.la222 написал(а):

В общем задача такая - необходима вытащить тексты из kfn файлов. И на основе этих текстов создать индексы для поиска по тексту песен.
Может у кого есть инфа по формату kfn ?

      А вам, собственно, зачем формат KFN? Вы хотите сами написать программу, которая будет искать фонограммы KFN по тексту песни в них? А как вы себе представляете использование такой программы отдельно от проигрывателя?
      Поделиться сведениями о формате KFN я могу, но поможет ли это вам? Судя по тому, что вы задали этот вопрос - вы не программист.

      Не буду глубоко вдаваться в подробности формата KFN, но по вашему вопросу могу сообщить следующее.
      Формат KFN - закрытый формат. Разработан он французской фирмой - разработчиком KaraFUN. По сути своей KFN - это контейнер, который содержит все файлы проекта и блоки с различной информацией. В начале контейнера располагаются звуковые и видео файлы. В конце - заголовки, лирика, фреймы и прочая информация.
      Если KFN-файл не блокированный, то данная информация лежит в нём в открытом виде и извлечь её оттуда не составляет труда. Если файл блокированный, то вся информация, кроме звуковых файлов, видео и картинок кодируется в бинарный вид, в том числе и лирика. Поэтому извлечь из кодированного файла можно только звуковые, видео файлы и картинки.
      Чтобы получить наглядное представление откройте любой не блокированный KFN-файл редактором NOTEPAD++. Этот текстовый редактор хорошо поддерживает структурированные файлы и работает со всеми кодировками. перейдите в конец файла. Там вы увидите интересующую вас лирику. Записывается она в контейнере - EFF#, который обозначает номер дорожки. Хранится лирика в KFN-файле в кодировке UTF-8. Поэтому если она будет отражаться некорректно, то поменяйте кодировку в настройках редактора. Формат контейнера лирики внутри файла KFN следующий:

[Eff2] <---- номер дорожки (в редакторе KarFUN Studio, нумерация сверху вниз)
ID=1 <---- идентификатор текстовой дорожки (их может быть несколько)
InPractice=1 <--- имеет текст
Enabled=-1 <--- префикс активной дорожки (-1 - дорожка активная)
Locked=0 <--- префикс блокировки (0 - не блокировано)
Sync0=1947,1960,1993,2010,2033,2050,2088,2112,2137,2342,2358,2376,2390,2417,2441,2472,2511,2531,2562,2581,2755,2769,2798,2835,2862,2887,2912,2939,2969,2997,3200,3235,3261,3283,3302,3314,3339,3365,3393,3423,3449 <--- блок синхронизации слогов или слов по времени в миллисекундах до разрыва (проигрыша, где выводится на экран тайм-линия)
Sync1=7059,7097,7114,7135,7156,7173,7189,7220,7248,7267,7487,7521,7537,7569,7604,7628,7649,7678,7706,7737,7916,7953,7975,7998,8017,8044,8063,8079,8116,8140,8299,8322,8349,8377,8416,8432,8471,8488,8510,8527,8572
Sync2=8602,9167,9193,9223,9241,9279,9310,9339,9372,9398,9422,9483,9606,9624,9662,9684,10020,10043,10067,10087,10128,10150,10166,10195,10225,10242,10266,10308,11766,11804,11818,11837,11856,11870,11882,11898,11994
Sync3=12019,16857,16893,16911,16943,16969,16988,17007,17033,17126,17158
Font=Arial*280 <--- Имя шрифта, которым выводится текст на экране
ActiveColor=#FFFFFFFF <--- Цвет текста песни после пропения
InactiveColor=#0000FFFF <--- Цвет текста песни до пропения
FrameColor=#0000FFFF <--- Цвет подложки текста после пропения
InactiveFrameColor=#FFFFFFFF <--- Цвет подложки текста до пропения
FrameType=Frame5 <--- Размер шрифта текста песни
Alignment=Center <--- Режим центрирования текста при выводе на экран
Trajectory=PlainBottomToTop*1.000000*1.000000*1.000000*1.000000 <--- Параметры траектории движения текста
SelTextEffect=NoEffect*1.000000*1.000000*1.000000*1.000000 <--- Эффект исчезновения текста после пропения
OffsetX=0 <--- Смещение начальной точки вывода текста по оси X
OffsetY=0 <--- Смещение начальной точки вывода текста по оси Y
OffsetZ=31 <--- Смещение глубины (перспектива)
IsFade=1 <--- Режим вывода текста (вертикальный текст/караоке)
AspectRatio=1.1 <--- Масштаб текста
IsFill=1 <--- Заполнение текста (прозрачность)
NbAnim=0 <--- Анимация текста
TextCount=19 <--- Количество строк в лирике
Text0=За/иг/ра/ло тан/го неж/ных роз <--- Строка лирики с разбиением на слоги
Text1=В тан/це/валь/ном за/ле на пар/ке/те
Text2=В вол/шебст/ве дви/же/ний рук и ног
Text3=За/жи/га/ли в тан/це на/ши де/ти
Text4=
Text5=На/ше тан/го в го/родс/ком са/ду
Text6=на/ше тан/го На реч/ном при/ча/ле
Text7=На/зы/ва/ли нас с то/бой тог/да
Text8=луч/шей па/рой
Text9=в пят/над/ца/том квар/та/ле
Text10=
Text11=Где се/реб/ром тво/е
Text12=иск/ри/лось плать/е
Text13=тво/и сло/ва
Text14=В подъ/ез/де  по/це/лу/и и объ/ять/я
Text15=
Text16=Все же бы/ло на/ше тан/го бы/ло
Text17=
Text18=Все же бы/ло на/ше тан/го бы/ло
InSync=1 <--- Префикс полного режима синхронизации

      Если вы хотите вы хотите вытащить из не блокированного  KFN-файла лирику и искать в ней совпадение с заданным шаблоном, то нужно написать некую программу обработчик, которая будет открывать KFN-файл, искать в нём Переменную TextCount, считывать её значение. Далее в этой программе должен быть парсер, который будет пасрить лирику (приводить её в текстовый вид). Этот парсер должен получить значение переменной TextCount (в нашем примере TextCount=19), далее считать следующие за этой переменной 19 строк. Потом отбросить в начале каждой строки префикс Text0= и удалить из оставшегося текста все символы "/". В результате, на выходе из парсера мы получим исходную лирику. Теперь программа должна выполнить символьное сравнение словосочетания образца для поиска с содержанием лирики (для этого так же нужно писать алгоритм). Если словосочетание найдено необходимо пометить файл, как искомый, если нет, то перейти к следующему.
      И как, вы сами понимаете производить каждый раз такой поиск по всем файлам KFN, если их у вас несколько тысяч - дело не быстрое. Поэтому необходимо задуматься об использовании СУБД. В БД будет хранится предварительно вынутая из KFN-файлов лирика. А СУБД выполнит запрос на поиск требуемого шаблона в имеющихся наборах лирики песен.
      Вот как-то так. Можете пробовать писать такую систему поиска. Если получится - поделитесь со всеми форумчанами. Они будут вам благодарны.

+3

4

Спасибо, Lexx_1971, за столь развернутый ответ. Да, я  уже позже в кодировке utf-8 псомотрел... с форматом все понятно . С неблокированных вытащить текст не составит проблем.  Про блокированные мне кажется здесь спрашивать бессмысленно))

+1

5

Yesss)))   Блокированные файлы тоже победил

+1

6

Обращайтесь кому нужно разблокировать))))

+1

7

artem.la222 написал(а):

Обращайтесь кому нужно разблокировать))))

Вы хотите сказать, что научились снимать блокировку с файлов kfn?
Если так, то я бы дал Вам Нобелевскую премию.
НАУЧИТЕ, КАК ???
Я в программе Notepad++ искал слово "Locked" в кодированных файлах, чтоб поменять на "0", но не нашел.
Печалька...

0

8

Да, блокировку можно снять. Там чуть-чуть сложнее чем просто найти слово locked.
Как это практически делается, я наверное корректно умолчу)) Будем уважать труды людей-форумчан.
Меня всего лишь поиск по тексту песен интересовал.

0

9

jorgebesito написал(а):

Вы хотите сказать, что научились снимать блокировку с файлов kfn?
Если так, то я бы дал Вам Нобелевскую премию.
НАУЧИТЕ, КАК ???
Я в программе Notepad++ искал слово "Locked" в кодированных файлах, чтоб поменять на "0", но не нашел.
Печалька...

+1

10

Lexx_1971 написал(а):

Эта информация с сайта: http://k.....

Забавно... Ещё один сайт, который накачав KFN с разных источников, начинает ими торговать. Развелось шарлатанов выше крыши! Скачивают бесплатно, изменяют дизайн для придания одинакового вида и продают. Укатайка! Про цены вообще промолчим... Только полный идиот может платить подобные суммы в долларах. И замечу один момент - нет ни физического адреса; ни сведений о том, кому пренадлежит сайт"; нет конкретных реквизитов хозяина сайта. Это просто очередной поход за лохами!
Только-только пошла на спад волна торгующими взломанным Encore, а тут новая авантюра. Не удивлюсь, если за всеми этими "махинациями" стоят одни и те же люди. Кстати, хорошо известные в кругах, близких к караоке-тематике.

+2

11

artem.la222 написал(а):

Да, блокировку можно снять. Там чуть-чуть сложнее чем просто найти слово locked.
Как это практически делается, я наверное корректно умолчу)) Будем уважать труды людей-форумчан.

Конечно, вы правы. Это я не подумав сморозил глупость. Прошу прощения. Конечно, нужно уважать чужой труд. Согласен на все 100.

0

12

Lexx_1971
Признаю, написал глупость, не подумав. Это подло, взламывать чужие работы, согласен. Ну не подумал, каюсь. Извините, буду впредь внимательней.
Я уважаю очень этот форум и не хочу делать ничего никому во вред.

P.S. Решил еще вот дописать. Понимаете, в чем тут дело. Ведь меня, собственно, совершенно не интересуют чьи-то заблокированные карафаны, поверьте. Я в состоянии написать kfn любой сложности и на любую тематику. Тут просто чисто спортивный интерес, ну, просто интересно, как любознательному человеку, и не более того.

Отредактировано jorgebesito (2016-12-06 23:08:02)

0

13

А я уже вот-вот доделаю "Екстрактор текстов" из kfn. как закончу выложу в общее пользование

+1

14

artem.la222 написал(а):

Обращайтесь кому нужно разблокировать))))

не могли бы вы разблокировать эту песню https://cloud.mail.ru/public/KdEA/jNv3LZcU9
за ранние спасибо

0

15

В общем бэта-версия. Абсолютно не претендует на правильность и оптимизацию когда, главное работает. Есть разные баги. Блокированные файлы не подсовывайте)) 
Как пользоваться:
1. Столбец path должен содержать список абсолютных путей до ваших KFNок. Получить можно через тотал командер, если базу не ведете.
2. Есть два запроса Extract_Lyrik и Group_Lirik
Первый просканирует и извлекет текст в таблицу, второй заполнит поле LYRIK_INDX - лирика без повторов слов.

... Теперь можно искать дубликаты по тексту..,   и много-много чего..

+3

16

artem.la222 написал(а):

В общем бэта-версия.

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

0

17

Карабас-барабас написал(а):

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

Какая версия access у вас?

0


Вы здесь » KARAOKE FUN » СПРАШИВАЛКА » Поиск по тексту