23 ноября | 2024г. | 15:19:38


АвторТема: Программа Srvidcreator  (Прочитано 3475 раз)

0 Пользователей и 1 Гость смотрят эту тему.

Онлайн Evg77734Автор темы

  • Мастер Джедай
  • ***
  • Сообщений: 1385
  • Поблагодарили: 8611
  • Уважение: +147
Программа Srvidcreator
« Первое сообщение: 05 апреля | 2023г. | 21:50:35 »
+2
Программа Srvidcreator, создает файл oscam.srvid для эмулятра oscam-ymod.
Как известно, если в конфиге стоит chaninfo = 1, то эмулятор вычитывает имена каналов из потока, с латинскими названиями проблем нет, но если название на кирилице, то кракозябры в логе.
oscam.srvid решает эту проблему в какой то мере.
Что то подобное встречал с оконным интерфейсом, но это консольное приложение.
Я написал его на чистом С (Си) для пробы.
Прошу не кидаться тапками)), я прекрасно знаю, что Си не для этого предназначен, но скорость его работы поражает. Взял более менее полезное задание и сделал.
В архиве три файла:
1. Srvidcreator.exe - программа для Windows. Копируем ваш файл lamedb в папку с программой и запускаем ее.
2. Srvidcreator_release - программа для компьютора на Linux. Копируем ваш файл lamedb в папку с программой и запускаем ее из контекстного меню командой Выполнить. (Не из терминала).
3. Srvidcreator_arm - программа для ресиверов с arm архитектурой процессора. Копируем файл ваш файл lamedb и файл Srvidcreator_arm в папку /tmp/ ресивера, даем ему права 755
и запускаем из терминала командой  /tmp/Srvidcreator_arm
Исходный код везде одинаков.
Во всех случаях в папке с программой должен появиться файл oscam.srvid, который можно подкинуть потом эмулятору oscam-ymod и после этого перезапустить его.
Тестировал на своей lamedb - проблем не было, скачал на других ресурсах, выложенные списки каналов, случайным образом, но чтобы было несколько спутников и тут пошли ошибки...
Начал разбираться: чего я только там не находил - и каналы без названия, без провайдера (это не страшно), без единого флага в базе, кодировку С:0000 и так далее.
В одной lamedb были вообше все каналы и кодированные и нет с признаком кодировки С:ffff.
Очевидно народ сканирует например слепым поиском и ни разу даже потом не клацнет на отсканированных каналах, нужно же некоторое время постоять на канале, чтобы и кодировка и флаги прописались в lamedb.
Переписал то же самое на Python и на двух lamedb поймал ошибку с UTF-8 - ту же что приводит к крешу в рендере программы EPG.
Ну не зря же в конце lamedb написано Have a lot of bugs!
В общем есть подводные камни.
Хорошо бы потестировать, если кому скучно...

Оффлайн sunriser

  • Друзья Джедаев
  • *****
  • Сообщений: 929
  • Поблагодарили: 4195
  • Уважение: +68
Программа Srvidcreator
« Ответ #1: 05 апреля | 2023г. | 22:43:28 »
+2
lamedb и файл Srvidcreator_arm
запускаем из терминала командой  /tmp/Srvidcreator_arm

Вот мой результат:
Спойлер   :
[ Гостям не разрешен просмотр вложений ]

Онлайн oleg8000

  • Мастер Джедай
  • ***
  • Сообщений: 820
  • Поблагодарили: 2405
  • Уважение: +8
Программа Srvidcreator
« Ответ #2: 06 апреля | 2023г. | 06:15:50 »
+1
Evg77734, На Windows запускал

Оффлайн AndGaz

  • Младший Джедай
  • **
  • Сообщений: 56
  • Поблагодарили: 45
  • Уважение: +1
Программа Srvidcreator
« Ответ #3: 06 апреля | 2023г. | 18:31:49 »
0
Srvidcreator_release - программа для компьютора на Linux.

Онлайн Evg77734Автор темы

  • Мастер Джедай
  • ***
  • Сообщений: 1385
  • Поблагодарили: 8611
  • Уважение: +147
Программа Srvidcreator
« Ответ #4: 06 апреля | 2023г. | 21:21:48 »
+1
Спасибо всем. Все в файлах oscam.srvid верно, кодировки расположены по алфавиту, если не указан провайдер, то он заменен на "n/a", так как ymod игнорирует строку без или с пустым провайдером. Формат:
CAID[,CAID]...:service ID|[provider]|[name]|[type]|[description]
Я не сомневаюсь, что везде все работает, более интересно дальнейшее взаимодействие файла oscam.srvid с oscam.ymod
У меня все верно отражает, пока не встретится на каком нибудь канале "бяка", тогда уже поможет только переключение на другой канал и перезапуск oscam.ymod. Ну это давняя известная проблема.

Теги:
 



X

Добро пожаловать!

Мы заметили, что у Вас установлено расширение AdBlock или ему подобное. Пожалуйста добавьте наш Клуб в белый список, внесите этим посильную лепту в его развитие. Спасибо!