Вход в биллинг - Billing entrance - www.CardsharingServer.com

English forum section

Автор Тема: Mgcamd  (Прочитано 578930 раз)

vikass

  • Новичок
  • *
  • Сообщений: 7
Re: Mgcamd
« Ответ #300 : 23 Декабря 2009, 00:11:24 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

xtruex

  • Главный помощник Moderatora
  • Ветеран
  • ****
  • Сообщений: 5016
  • DM 500HD OpenPli 4
Re: Mgcamd
« Ответ #301 : 23 Декабря 2009, 00:25:23 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

ftp
usr/keys открываешь файл newcamd.list, туда прописываешь строки полученные в биллинге
ICQ:290344
Бесплатный тест
http://www.cardsharingserver.com/index.php?module=test

vikass

  • Новичок
  • *
  • Сообщений: 7
Re: Mgcamd
« Ответ #302 : 23 Декабря 2009, 00:32:20 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

ftp
usr/keys открываешь файл newcamd.list, туда прописываешь строки полученные в биллинге
спасибо за бистрый ответ,с завтра начинаетса подписка сразу попробую. :)

vikass

  • Новичок
  • *
  • Сообщений: 7
Re: Mgcamd
« Ответ #303 : 23 Декабря 2009, 00:35:54 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

ftp
usr/keys открываешь файл newcamd.list, туда прописываешь строки полученные в биллинге
спасибо за бистрый ответ,с завтра начинаетса подписка сразу попробую. :)

а чем можно етот лист открыть с фтп не идёт?

xtruex

  • Главный помощник Moderatora
  • Ветеран
  • ****
  • Сообщений: 5016
  • DM 500HD OpenPli 4
Re: Mgcamd
« Ответ #304 : 23 Декабря 2009, 09:52:31 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

ftp
usr/keys открываешь файл newcamd.list, туда прописываешь строки полученные в биллинге
спасибо за бистрый ответ,с завтра начинаетса подписка сразу попробую. :)

а чем можно етот лист открыть с фтп не идёт?

В избранное!
http://dream.altmaster.net/forumdisplay.php?f=30
ICQ:290344
Бесплатный тест
http://www.cardsharingserver.com/index.php?module=test

vikass

  • Новичок
  • *
  • Сообщений: 7
Re: Mgcamd
« Ответ #305 : 23 Декабря 2009, 22:19:56 »
добрый вечер,сделал я сегодня подписку на VIP Германия  по протоколу Newcamd525 получил настройки а куда их засунут не знаю,ресивер Дримбох 800 ,имедж гемини 4.5 с Mgcamd 1.31 cs,извените может быть вопрос и тупой но я абсалутно новичок в кардшеринге,растолкуйте пожалуста по шагам ,что и куда.
с ув.vikass

ftp
usr/keys открываешь файл newcamd.list, туда прописываешь строки полученные в биллинге
спасибо за бистрый ответ,с завтра начинаетса подписка сразу попробую. :)

а чем можно етот лист открыть с фтп не идёт?

В избранное!
http://dream.altmaster.net/forumdisplay.php?f=30

спасибо большое xtruex,разобрался,все пошло.

polizei110

  • Пользователь
  • **
  • Сообщений: 23
Re: Mgcamd
« Ответ #306 : 22 Января 2010, 17:16:36 »
Вот такой конфиг стоИт у меня,может что-нибуть поменять чтоб улучшить процесс?Смотрю Платформу.
# EMM messages
#    00 don't show any EMMs (default)
#    01 show only valid EMMs
#    02 show valid and bad EMMs with complete data display
M: { 01 }

# ECM messages
#    00 don't show any ECMs
#    01 show only valid ECMs (default)
#    02 show valid and bad ECMs with complete data display
C: { 01 }

# AU
#    01 enable AU
#    02 AU Auto
#    03 network cards update only
A: { 00 }

# key update (sum 01 or 02 with 04)
#    01 update only new keys, default setting
#    02 update all keys (used for valid PMK checking)
#    04 replace (not add) http-aes keys, only first key replaced !
U: { 01 }

# config files folder (softcam, autoroll, ignore/priority)
#    00 files in /var/keys
#    01 files in /tmp
T: { 00 }

# network mode, use summ for several clients
#    00 no network (default)
#    01 newcamd netclient
#    02 radegast netclient
#    04 camd3 netclient
G: { 09 }

# network retry, use summ for several options
#    00 disable
#    01 retry every new ecm
#    02 try to connect to offline shares every Q: seconds
#    04 try to detect and fast reconnect to lost (and not used atm) server
N: { 07 }

# network ecm timeout in seconds
K: { 5 }

# newcamd dead routes connect retry, sec
Q: { 300 }

# network shares priority
# 00 newcamd, radegast, camd3 (default)
# 01 camd3, radegast, newcamd
# 02 newcamd, camd3, radegast
P: { 02 }

# on screen display type
#    00 No OSD (default)
#    01 neutrino
#    02 enigma
#    03 relook
O: { 00 }

# on screen display Options, summ of:
#    01 show emu ecm
#    02 show network shares messages
#    04 show decoding failed / fta
#    08 show emm keys update
S: { 03 }

# Log option, summ of:
#    00 Off
#    01 Network
#    02 console
#    04 file, appended ! delete it by yourself, before it eat all your hdd
L: { 03 } 172.16.1.1 8028 /DATA/hdb1/mgcamd.log

# keep ecm cache, seconds
E: { 15 }

# cache option, summ of:
#    00 Off (default)
#    01 Ecm pids cache, store pids used to decode in /tmp/ca_cache.list at exit, load at startup, same syntax as restore.list
#    02 Ecm data cache, remember CW for (E:) time
#    04 Emm cache for network cards, do not resend the same emm twice, cache not cleared until restart
H: { 06 }

# reread files, summ of:
#    00 No (default)
#    01 reread config file on channel change (including priority and ignore, but not replace/cache)
#    02 reread SoftCam.Key on channel change
#    04 reread SoftCam.Key if file changed
R: { 04 }

# debug, summ of
# 00 off (default)
# 01 debug ecm
# 02 debug emm
# 04 debug network ecm
# 08 debug network emm
# 16 debug network login
# 32 show mem/cpu stats every 1 min
# 64 add timestamp to log messages
D: { 0 }

# box type
# 00 autodetect, change only if you think wrong type detected.
# 01 dbox2
# 02 dreambox
# 03 triple-dragon
# 04 relook
# 05 openbox
B: { 00 }


# urls for aes keys update, any number or urls allowed,
# url data must contain key in format 0500:007C00:0000000000:00:key1:keyl
#W: { http://some.host.com/keys.php }
AzBox Premium 0.9.4219 MgCamd 1.35

uzas

  • Старожил
  • ****
  • Сообщений: 210
  • Cuberevo 3000 HD PVR
Re: Mgcamd
« Ответ #307 : 22 Января 2010, 20:47:05 »
Mgcamd 1.31

# EMM messages
#    00 don't show any EMMs (default)
#    01 show only valid EMMs
#    02 show valid and bad EMMs with complete data display
M: { 00 }

# ECM messages
#    00 don't show anything about ecm
#    01 normal mode, show pids processed, decoded ecm and cw
#    02 verbose mode, show valid and bad ECMs with data
C: { 01 }

# AU
#    00 disable, no emm pids processed
#    01 enable, emm pids always processed for soft-au and shared cards
#    02 auto, emm started only if channel cant be decoded
#    03 process emm pids for network cards update only
A: { 02 }

# key update (sum 01 or 02 with 04)
#    01 update only new keys, default setting
#    02 update all keys (used for valid PMK checking)
#    04 enable TPS au
#    + tps SID, which pmt pid contains au pid
U: { 01 } 0x12c0

# config files folder (softcam, autoroll, ignore/priority)
#    00 files in /var/keys
#    01 files in /tmp
T: { 00 }

# network mode, use summ for several clients
#    00 no network (default)
#    01 newcamd netclient
#    02 radegast netclient
#    04 camd3 netclient
#    08 gbox netclient
G: { 01 }

# network retry, use summ for several options
#    00 disable
#    01 retry every new ecm
#    02 try to connect to offline shares every Q: seconds
#    04 try to detect and fast reconnect to lost (and not used atm) server
#    + XX messages number and YY seconds to reconnect
#    mg will reconnect to server, if no answer to last XX ecm/keepalive or
#    if no answer for last ecm or keepalive sent for YY seconds
#    set to 0 to disable
N: { 07 }

# network ecm timeout in seconds
K: { 08 }

# newcamd dead routes connect retry, sec
Q: { 300 }

# network shares priority
# 00 gbox, newcamd, radegast, camd3 (default)
# 01 camd3, radegast, newcamd, gbox
# 02 newcamd, camd3, gbox, radegast
P: { 02 }

# on screen display type
#    00 No OSD (default)
#    01 neutrino
#    02 enigma
#    03 relook
#    + user password for http auth
O: { 00 } username password

# on screen display Options, summ of:
#    01 show emu ecm
#    02 show network shares messages
#    04 show decoding failed / fta
#    08 show emm keys update
#    + web port to use for osd
S: { 00 } 80

# Log option, summ of:
#    00 off
#    01 network udp log
#    02 log to console
#    04 file, appended ! delete it by yourself, before it eat all your hdd
#    + IP udp-port log-file-name
L: { 01 } 192.168.0.2 514 /tmp/mgcamd.log  (191.168.0.2)-cвой IP адрес смотреть лог

# keep ecm cache, seconds
# every cache entry takes 28 bytes, so 24h cache will take *only* 240-400kb of memory,
# for openbox/elanvision users with remote shares make sense to set it higher than default value,
# to not hammer cards while timeshifting or playing crypted recordings.
E: { 3600 }

# cache option, summ of:
#    00 Off (default)
#    01 Ecm pids cache, store pids used to decode in /tmp/ca_cache.list at exit, load at startup, same syntax as restore.list
#    02 Ecm data cache, remember CW for (E:) time
#    04 Emm cache for network cards, do not resend the same emm twice, cache not cleared until restart
H: { 07 }

# reread files, summ of:
#    00 No (default)
#    01 reread config file on channel change (including priority and ignore, but not replace/cache)
#    02 reread SoftCam.Key on channel change
#    04 reread SoftCam.Key if file changed
R: { 04 }

# debug, summ of
# 00 off (default)
# 01 debug ecm
# 02 debug emm
# 04 debug network ecm
# 08 debug network emm
# 16 debug network login
# 32 show mem/cpu stats every 1 min
# 64 add timestamp to log messages
D: { 00 }

# box type
# 00 autodetect, change only if you think wrong type detected.
# 01 dbox2
# 02 dreambox
# 03 triple-dragon
# 04 relook
# 05 openbox
B: { 00 }

Mgcamd 1.33

# EMM messages
#    00 don't show any EMMs (default)
#    01 show only valid EMMs
#    02 show valid and bad EMMs with complete data display
M: { 00 }

# ECM messages
#    00 don't show anything about ecm
#    01 normal mode, show pids processed, decoded ecm and cw
#    02 verbose mode, show valid and bad ECMs with data
C: { 01 }

# AU
#    00 disable, no emm pids processed
#    01 enable, emm pids always processed for soft-au and shared cards
#    02 auto, emm started only if channel cant be decoded
#    03 process emm pids for network cards update only
A: { 02 }

# key update (sum 01 or 02 with 04)
#    01 update only new keys, default setting
#    02 update all keys (used for valid PMK checking)
#    04 enable TPS au
#    + tps au pid
U: { 01 } 0x12c0

# config files folder (softcam, autoroll, ignore/priority)
#    00 files in /var/keys
#    01 files in /tmp
T: { 00 }

# network mode, use summ for several clients
#    00 no network (default)
#    01 newcamd netclient
#    02 radegast netclient
#    04 camd3 netclient
#    08 gbox netclient
G: { 01 }

# network retry, use summ for several options
#    00 disable
#    01 retry every new ecm
#    02 try to connect to offline shares every Q: seconds
#    04 try to detect and fast reconnect to lost (and not used atm) server
#    + XX messages number and YY seconds to reconnect
#    mg will reconnect to server, if no answer to last XX ecm/keepalive or
#    if no answer for last ecm or keepalive sent for YY seconds
#    set to 0 to disable
N: { 07 }

# network ecm timeout in seconds
K: { 08 }

# newcamd dead routes connect retry, sec
Q: { 300 }

# network shares priority
# 00 gbox, newcamd, radegast, camd3 (default)
# 01 camd3, radegast, newcamd, gbox
# 02 newcamd, camd3, gbox, radegast
P: { 02 }

# on screen display type
#    00 No OSD (default)
#    01 neutrino
#    02 enigma
#    03 relook
#    + user password for http auth
O: { 00 } root newcs

# on screen display Options, summ of:
#    01 show emu ecm
#    02 show network shares messages
#    04 show decoding failed / fta
#    08 show emm keys update
#    + web port to use for osd
S: { 00 } 80

# Log option, summ of:
#    00 off
#    01 network udp log
#    02 log to console
#    04 file, appended ! delete it by yourself, before it eat all your hdd
#    + IP udp-port log-file-name
L: { 01 } 192.168.0.2 514 /tmp/mgcamd.log

# keep ecm cache, seconds
# every cache entry takes 28 bytes, so 24h cache will take *only* 240-400kb of memory,
# for openbox/elanvision users with remote shares make sense to set it higher than default value,
# to not hammer cards while timeshifting or playing crypted recordings.
E: { 3600 }

# cache option, summ of:
#    00 Off (default)
#    01 Ecm pids cache, store pids used to decode in /tmp/ca_cache.list at exit, load at startup, same syntax as restore.list
#    02 Ecm data cache, remember CW for (E:) time
#    04 Emm cache for network cards, do not resend the same emm twice, cache not cleared until restart
H: { 06 }

# reread files, summ of:
#    00 No (default)
#    01 reread config file on channel change (including priority and ignore, but not replace/cache)
#    02 reread SoftCam.Key on channel change
#    04 reread SoftCam.Key if file changed
R: { 04 }

# debug, summ of
# 00 off (default)
# 01 debug ecm
# 02 debug emm
# 04 debug network ecm
# 08 debug network emm
# 16 debug network login
# 32 show mem/cpu stats every 1 min
# 64 add timestamp to log messages
D: { 00 }

# box type
# 00 autodetect, change only if you think wrong type detected.
# 01 dbox2
# 02 dreambox
# 03 triple-dragon
# 04 relook
# 05 openbox
# 12 Fortis
B: { 12 }

# urls for aes keys update, any number or urls allowed,
# url data must contain key in format 0500:007C00:0000000000:00:key1:keyl
# W: { http://some.host.com/keys.php }







polizei110

  • Пользователь
  • **
  • Сообщений: 23
Re: Mgcamd
« Ответ #308 : 23 Января 2010, 09:29:58 »
Спасибо за конфиг.Я поставил mgcamd 1.35 , стал намного стабильней работать.
AzBox Premium 0.9.4219 MgCamd 1.35

janka1

  • Новичок
  • *
  • Сообщений: 9
  • Dreambox500S,NABILO Ds2_tRUb_DM500S_4.img,mgcamd1.
Re: Mgcamd
« Ответ #309 : 28 Января 2010, 22:37:52 »
Я также поставил mgcamd1.35.Не получается снять лог с помощью SCSeslog.Вопрос к чекгуч-не будет ли за этот эмулятор БАН ?Мне тоже показалось,что этот эмулятор работает более стабильно,чем mgcamd1.31

xtruex

  • Главный помощник Moderatora
  • Ветеран
  • ****
  • Сообщений: 5016
  • DM 500HD OpenPli 4
Re: Mgcamd
« Ответ #310 : 28 Января 2010, 23:02:21 »
Стоит у меня mgcamd1.35
С 3CSyslog проблем нет
ICQ:290344
Бесплатный тест
http://www.cardsharingserver.com/index.php?module=test

janka1

  • Новичок
  • *
  • Сообщений: 9
  • Dreambox500S,NABILO Ds2_tRUb_DM500S_4.img,mgcamd1.
Re: Mgcamd
« Ответ #311 : 29 Января 2010, 23:26:03 »
Извиняюсь,разобрался,запрос ровно через 10 сек.Спасибо за быстрый ответ.

polizei110

  • Пользователь
  • **
  • Сообщений: 23
Re: Mgcamd
« Ответ #312 : 30 Января 2010, 00:53:09 »
У меня Mgcamd 1.35 делает запрос ключа каждые 15сек(у всех вроде каждые 10сек),в чем может быть проблема?
AzBox Premium 0.9.4219 MgCamd 1.35

janka1

  • Новичок
  • *
  • Сообщений: 9
  • Dreambox500S,NABILO Ds2_tRUb_DM500S_4.img,mgcamd1.
Re: Mgcamd
« Ответ #313 : 31 Января 2010, 23:58:34 »
Как я заметил ,то на нтв+ в основном секунд 10,а на триколоре-15.



jet

  • Пользователь
  • **
  • Сообщений: 18
Re: Mgcamd
« Ответ #314 : 30 Мая 2010, 00:44:45 »
Где можно прочитать,как расшифровать лог mgcamd?
Опенбокс S4.ADSL 2000.

kot

  • Новичок
  • *
  • Сообщений: 9
Re: Mgcamd
« Ответ #315 : 30 Мая 2010, 08:05:28 »
Вот нашел на просторах интернета.Тут все ,в том числе и то что Вы хотели.
КОПИРУЮ!

Настройка эмулятора Mgcamd

--------------------------------------------------------------------------------

Все файлы которые нужны для правильной работы mgcamd должны находиться в папке /var/keys и ни в какой другой. Также, поскольку мы в Linux, обратите внимание, что заглавные/прописные буквы в именах файлов должны быть как указано ниже. Все файлы - обычные текстовые файлы, которые желательно НЕ редактировать в Notepad/Wordpad, а в чем-то более продвинутом, что позволяет сохранить файлы формате Unix, то есть с правильными Unix-овскими символами перевода строк. Итак, файлы, которые понадобятся:

/var/keys/AutoRoll.Key
/var/keys/SoftCam.Key - в этих файлах хранятся ключи для чисто эмуляционной части mgcamd. Для шаринга эти файлы не нужны, но если поместить в них правильные ключи, то можно открыть некоторые каналы со "взломанными" кодировками, такими как Nagra2, BISS, Viaccess 2.3 и Cryptoworks вообще без шаринга. Где брать свежие файлы? Например на http://dvb-upload.com/. Только не надо качать всю ерунду подряд. Нужны только эти два файла и никакие больше! Не замусоривайте свою директорию конфигурации неизвестно чем.

Супер ценный совет!
Если вы собрались использовать softcam файл для одних каналов и шаринг для других, убедитесь, что в SoftCam.Key НЕТ ключей на те каналы, которые вы собираетесь шарить. mgcamd всегда смотрит сначала в SoftCam.Key и если находит там ключ (хоть и устаревший) он будет использовать его, и до шаринга не доберется. Поэтому очень рекомендую сначала временно убрать *.Key файлы из /var/keys, настроить шаринг, убедиться, что он работает, а потом уже смотреть, что можно дополнительно открыть на вашем спутнике используя SoftCam.


/var/keys/mg_cfg
/var/keys/newcamd.list
/var/keys/ignore.list
/var/keys/priority.list - эти файлы нужны для правильной работы шаринга. Если у вас остались ещё какие-то файлы в папке /var/keys и вы больше не пользуетесь никаким другим софтом, кроме mgcamd - можете все остальное переместить в другое место, чтобы не мозолило глаза. Итак, в файле mg_cfg содержится основная системная конфигурация mcgamd, типа настроек таймаутов при работе с сетью, опции отладки и лог-файлов. В файле newcamd.list прописываются параметры для коннекта на сервер(ы) шаринга, то есть сюда заносятся все параметры, полученные вами от конкретного шаринг провайдера. Файлы ignore.list и priority.list позволяют произвести "тонкую настройку", параметров шаринга, чтобы каналы которые идут в нескольких кодировках открывались быстрее (без этих двух последних файлов можно обойтись, если вас устраивает скорость открывания кодированных каналов).

Разберём теперь главный конфигурационный файл mg_cfg. Этот файл уже должен быть в папке /var/keys изначально, если вы поставили прошивку NLB. Каждая строка, начинающаяся с символа # в э том файле - это комментарий, который только для вас. Программа эти строки игнорирует. Параметры, считываемые программой при запуске имеют следующий вид:

буква: { цифра } дополнительные параметры

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




# Показ EMM-cообщений. В качестве значения выбрать одно из трех:
# 00 не показывать никаких EMM
# 01 показывать только верные EMM
# 02 показывать верные и неверные сообщения EMM включая весь дамп
# Это дело нам не понадобится, поэтому выбираем "не показывать":
M: { 00 }

# ECM messages
# Показ EСM-cообщений. В качестве значения выбрать одно из трех:
# 00 не показывать ничего
# 01 обычный режим: показывать PID, и декодированные ECM и CW
# 02 подробный режим: показывать всё подряд включая весь дамп
# Это дело лучше видеть, чтобы сразу было понятно, работает
# шаринг или нет, поэтому включим обычный режим:
C: { 01 }

# AU - автообновление. Выбрать одно из четырех:
# 00 выключить функцию AU
# 01 включить обработку EMM для софт-эмулятора и карт шаринга
# 02 авторежим, включать EMM только если канал не открывается
# 03 включить EMM обработку только для карт доступных по сети
# Насколько мне известно, это дело нужно было для пакета TPS на
# спутнике Hotbird, но теперь всё это дело прошлого. Поэтому выключаем.
A: { 00 }

# Обновление ключей. Нужно выбрать 2 параметра, как сумму 01/02 плюс 04
# 01 обновлять только новые ключи
# 02 обновлять все ключи (для валидации PMK)
# 04 включить функцию TPS AU (в дополнительных параметрах указать
# SID, в котором pmt pid содержит au pid)
# Это дело работает вместе с предыдущим параметром "A".
# Поскольку мы вырубили "A", выключаем и это дело тоже:
U: { 00 }

# Папка с файлами конфигурации (softcam, autoroll, ignore/priority)
# 00 файлы в папке /var/keys
# 01 файлы в /tmp
# Тут и так понятно, что нужно выбрать 00:
T: { 00 }

# Сетевой протокол для шаринга.
# Можно выбрать несколько значений, просуммировав отдельные опции.
# 00 сеть отсутствует (шаринга не предвидится)
# 01 клиент newcamd
# 02 клиент radegast
# 04 клиент camd3
# 08 клиент gbox
# Как говорится, стандарт индустрии, протокол newcamd:
G: { 01 }

# Повторная попытка при работе с сетью. Очень важный параметр!!!
# Можно выбрать несколько значений, просуммировав отдельные опции.
# 00 не пытаться повторить запрос
# 01 повторная попытка при каждом новом ECM
# 02 повторная попытка присоединиться к недоступному ранее серверу
# каждые Q секунд (Q дается как отдельный параметр "Q" ниже)
# 04 пробовать быстро пере-соединиться к отрубившемуся серверу:
# либо после XX ECM запросов без ответа от сервера,
# либо если нет ответа от сервера в течение YY секунд
# Числа XX и YY даются как дополнительные параметры
#
# Это самый важный параметр в этом файле. Рекомендую установить все опции
# 01 + 02 + 04, то есть их сумму = 07. В качестве дополнительных параметров
# XX и YY можно взять 360 запроса и 3600 секунды:
N: { 07 } 360 3600

# Значение в секундах для тайм-аута сетевого запроса.
# Поставим 7 секунды, так как обычно сервер должен ответить
# гораздо быстрее. Если сервер не отвечает за это время, см. предыдущий
# параметр "N".
K: { 07 }

# Пытаться коннектиться на "мертвый" сервер каждые 60 секунд.
Q: { 60 }

# Приоритет протоколов (если у вас их несколько)
# 00 gbox, newcamd, radegast, camd3
# 01 camd3, radegast, newcamd, gbox
# 02 newcamd, camd3, gbox, radegast
# нас интересует newcamd, поэтому поставим его на первое место:
P: { 02 }

# разновидность экранного интерфейса:
# 00 нет меню на экране
# 01 neutrino
# 02 enigma
# 03 relook
# + имя пароль (как дополнительные параметры для авторизации)
# Это всё нам не понадобится. Это для DreamBox'ов:
O: { 02 } username password

# Что показывать на экранном меню:
# 01 emu ecm
# 02 шару через сеть
# 04 показывать "некодированный канал" / "не могу открыть"
# 08 показывать обновление ключей EMM
# + web порт для экранного меню
S: { 03 } 80

# Опции для лог файлов, можно выбрать несколько параметров как сумму:
# 00 не вести лог
# 01 лог через сеть (по протоколу UDP Syslog)
# 02 лог на консоль
# 04 лог в файл (который будет всё время расти, и поэтому он может забить
# всю память - его вам придется чистить вручную)
#
# дополнтельные параметры: IP-адрес + UDP порт для сетевого лога + имя лог-файла
#
# Это очень важная опция для того, чтобы сразу увидеть где грабли, если
# что-то не работает, или работает не так как надо. Идеальней всего использовать
# лог по сети. Эта процедура описана ниже подробнее. Здесь же нужно указать
# IP адрес вашего обычного компьютера в вашей локальной сети, UDP порт, который
# обычно должен быть 514 и если хотите включить лог-файл на самом ресивере, то
# имя файла, где-нибудь, например в папке /tmp. Для включения лога на самом ресивере
# нужно поменять { 01 } на { 04 } или { 05 }:
#
L: { 02 } 192.168.1.1 514 /tmp/mgcamd.log

# кэширование ECM (в секундах)
# каждая запись в кэш отъедает 28 байт, поэтому 24 часа кэша отъест 240-400 КБ памяти
# вполне можно позволить себе такую роскошь, чтобы не обращаться заново к карте шаринга
# если у вас есть записанный материал, который закодирован. Хотя это больше теория, чем
# практика. Как записать кодированный материал для раскодирования позже я так и не нашёл.
#
E: { 00 }

# Что кэшировать? Значений может быть несколько как сумма следущих:
# 00 отключить кэширование
# 01 кэшировать Ecm pids, и сохранять в файле /tmp/ca_cache.list при перезапуске
# 02 вести кэш Ecm, и помнить значения столько секунд, сколько указано в опции "E" выше
# 04 вести кэш Emm для карт доступных по сети, чтобы не слать один и тот же EMM снова
# толку от этого достаточно мало, но включим все виды кэша на всякий пожарный:
H: { 00 }

# Cчитывать файлы конфигурации повторно.
# Параметр может быть суммой следующих значений:
# 00 считывать все файлы конфигурации только раз при запуске mgcamd
# 01 считывать файлы каждый раз при смене канала
# 02 считывать файл SoftCam.Key каждый раз при смене канала
# 04 считывать файл SoftCam.Key, если он изменился
# Поскольку меняться конфиги будут крайне редко, установим 00:
R: { 00 }

# Оладочная информация в лог-файле
# 00 off (default)
# 01 ecm
# 02 emm
# 04 network ecm
# 08 network emm
# 16 network login
# 32 показывать статистику загрузки памяти и CPU каждую минуту
# 64 добавить дату и время к каждой записи в лог
#
# обычно эту опцию включать не нужно, но ради интереса можно попробовать.
# в логе будет гораздо больше информации, чем обычно
D: { 31 }

# Тип устройства
# 00 авто
# 01 dbox2
# 02 dreambox
# 03 triple-dragon
# 04 relook
# 05 openbox
# рекомендуется оставить авто:
B: { 00 }

# map all 180x nagra caids to 1801
# default is 01
F: { 00 }

Далее следует самый важный файл для шаринга: newcamd.list. Он достаточно прост в своем синтаксисе - в нем указывается на какой сервер нужно коннектиться, с каки именем, паролем и по какому порту. Естественно, исходя из имени файла, всё это для коннекта на сервер(ы) по протоколу newcamd. Не пытайтесь вписать сюда серверы, которые не принимают клиентов по протоколу newcamd! Практически все данные для этого файла берутся из биллинга, а именно со страницы "мои настройки".
Комментарии в файле newcamd.list, так же как и ранее, начинаются со знака #. Вот пример:




# первые две строки - стандартная настройка, трогать не нужно
CWS_KEEPALIVE = 300
CWS_INCOMING_PORT = 12000
#CWS_KEEPALIVE - это время, через которое mgcamd обновляет соединение по портам сервера шары... делается для того, чтобы при
#включении ресивера из стендбая или переходе на канал из другого пакета на тратилось время на повторное залогинивание на
#сервере...

#300 - это время в секундах, через которое происходит пинг с сервером.

#Параметр не важный, но с ним хуже не будет.

# каждая последущая строка описывает ваш коннект на тот или иной пакет шаринга.
# если у вас несколько разных пакетов, на каждый пакет идет своя строчка конфигурации.
# даже если сервер один и тот же, на каждый пакет - свой отдельный порт, поэтому нужно
# прописать все отдельно. вся информация из биллинга. Формат строки следующий:
# CWS = адрес-сервера порт-сервера логин-биллинга пароль-биллинга строка-из-14-цифр-из-биллинга
# для примера, вы купили два пакета: НТВ и Platforma, значит у вас будет 2 строки
# (вcе параметры ниже ненастоящие, вам нужно взять вашу личную инфу из биллинга):

CWS = server1.com 1234 username password 01 02 03 04 05 06 07 08 09 10 11 12 13 14 # это НТВ


В принципе - это всё. Минимум для шаринга осуществлен.
Перегружайте ресивер и если у вас правильно настроена домашняя сеть, выход в Интернет и настройки файлов приведенных выше совпадают с биллингом, то всё должно заработать.

Но... можно пойти дальше и настроить mgcamd самым оптимальным образом. Особенно, если вы заметите, что некоторые каналы открываются по несколько секунд. Для этого нам понадобятся файлы ignore.list и priority.list. Но для того, чтобы понять что туда писать, лучше сначала понять что именно происходит при работе mgcamd с сервером шары. Поэтому сначала запустим всё как есть без этих файлов, и посмотрим в лог, где мы найдем информацию, которая поможет нам создать эти два файла. Информация по просмотру лога также полезна даже если вы не хотите заморачиваться с этими файлами ignore и priority, в частности, если что-то не работает, то первым делом вам нужно просмотреть именно лог.

Как правильно читать лог mgcamd?

Как уже было написано в примере конфига mg_cfg выше - есть 2 способа. Либо заставить mgcamd писать лог файл прямо на самом ресивере, либо заставить mgcamd слать тот же лог по сети, скажем на ваш обычный компьютер.

В первом случае не понадобится никакого дополнительного софта, и для просмотра лога можно просто зайти на ресивер через Telnet и наблюдать за работой mgcamd в реальном времени, выводя содержимое файл&#

kot

  • Новичок
  • *
  • Сообщений: 9
Re: Mgcamd
« Ответ #316 : 30 Мая 2010, 08:06:54 »
Отсюда уже сразу видно много интересного. Во-первых, видны карты, которые шарятся (число сразу за "caid"). Вот список наиболее часто используемых кодировок:

1xx=Seca
5xx=Viaccess
6xx=Irdeto
9xx=NDS/Videoguard
Bxx=Conax
Dxx=CryptoWorks
Exx=PowerVu
17xx=BetaCrypt
18xx=NagraVision
26xx=BISS
4Axx=DreCrypt

Из примера выше видно, что мы подключились к двум серверам. Первый шарит карточку с кодировкой NDS/Videoguard (потому что CAID начинается с 9), а второй сервер шарит карту в кодировке Viaccess (CAID начинается с 5). При чём, второй сервер шарит даже не одну, а "пять карточек" - это становится ясно из поля Idents. Посмотреть на все возможные CAID:Idents можно в ваших настройках в биллинге.

Получается, что при включении кодированного канала, у него должен совпасть CAID и IDENT с теми, что прислал сервер при подключении к нему. Только в этом случае на сервер пойдет запрос и mgcamd отошлёт на сервер так называемую последовательность Entitlement Control Message или ECM. Если на сервере всё впорядке, то он должен ответить на такой запрос последовательностью, которая называется Control Word или CW. Если вы получаете правильный код CW, то канал открывается. В зависимости от системы кодирования интервал между запросами на сервер может быть от 2-3 секунд до раза в минуту.

Посмотрим как это выглядит в логе:

[mg0] stoping camd..
[mg0] service 18A6 index 0 pmt pid 0 (65)
ECM: CaID: 0x090F -> CaPID: 0x18AF ProvID: 000000
[mg0] -> ECM to server1.com:1234
[mg0] <- CW from server1.com:1234 (23ms)
[mg0] 23 msec -- Sat Jan 31 15:09:42 2009
===== NDS ECM on CaID 0x090F, pid 0x18af ======
prov: 000000
cw0:0 09 8E E9 80 5E 2B 14 9D
cw1:0 CE 0A 98 70 66 C0 E9 0F


Пояснение к происходящему: первые две строки - это стандартное сообщение при переключении канала. Дальше имеем строку, начинающуюся с ECM. В ней информация о текущем канале. Из этого видно, что канал, который мы только что включили кодированный и открывается только одной картой, которая должна имеет пару CAID:ProvID = 090F:000000. Это как раз подходит по параметрам к тому, что нам ответил сервер server1.com при подключении к нему. По этому следующая строка - это посылка ECM-запроса на сервер server1.com. Далее виден ответ от сервера с кодом CW. Ответ пришел за 23мс, на что стоит обратить внимание (но об этом ниже, когда речь пойдёт о проблемах с шарингом). Последние 4 строки - подтверждение проделанной работы по запросу на сервер. Показаны кодиорвка, которая окрылась (NDS), идентификатор карты (CAID), идентификатор канала (PID), идентификатор провайдера (ProvID) и, наконец, сама последовательность CW0+CW1, то есть "ключик" к каналу, полученный от сервера. Дальше всё повторяется снова и снова, каждый раз когда меняется ECM.

Естетвенно, это всё лог "в идеале", то есть, когда всё правильно настроено, хорошо работает Инет и на сервере шары тоже всё ок. Проблемные ситуации рассмотрены ниже, а сейчас, поскольку вы умеете теперь читать лог, речь пойдет о настройке файлов priority.list и ignore.list.

Как настроить priority.list / ignore.list / replace.list для mgcamd

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

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

Получается, что один и тот же канал, в принципе, можно открыть совершенно разными картами, но по шарингу, обычно, доступна одна "карта", а не все возможные для этого канала. При включении канала mgcamd смотрит какими кодировками и провайдерами закодирован канал и начинает перебирать PIDы (комбинации карта+провайдер) по-порядку. Если получится так, что PID, который открывает канал, не первый в этом списке, то возникает задержка, пока mgcamd доберётся до нужной карты и откроет канал. Для избежания такой ситуации служит файл ignore.list, где можно указать какие CAID и/или ProvID нужно игнорировать, чтобы нужный вам PID (т.е. комбинация CAID+ProvID) оказался на первом месте в списке.

Ещё хуже, когда у вас коннект на несколько разных серверов (или портов) шары и из за того, что у некоторых провайдеров одинаковые ID для разных пакетов, запрос от вас может вообще пойти не на тот сервер, так как у канала на первом месте стоит не тот PID, что нужно. В таком случае каналы могут вообще открываться по 10 и 20 секунд и больше (смотря как настроены тайм-ауты mgcamd), пока от сервера куда пошёл запрос "не по теме" не прийдет тайм-аут. Для избежания такой ситуации используется файл priority.list.

Для более сложных ситуаций, иногда приходится использовать оба файла в комбинации друг с другом, хотя это необязательно, вопреки тому, что иногда пишут на форумах. Оба файла не зависят друг от друга, но файл ignore.list берет верх над priority.list. Поэтому бессмысленно иметь в этих файлах одинаковые записи.

Файл replace.list используется для "супер-тонкой" настройки, когда вы хотите достигнуть идеальной ситуации с открытием каналов (для чего придется немного попотеть, зато результат будет стоить того).

Так какой же результат можно считать идеальным? Какова финальная цель всего этого мероприятия?

Ответ прост - для каналов, у которых в потоке кодирования больше, чем один PID (то есть, грубо говоря, для каналов, которые кодированы сразу несколькими кодировками) наша цель - это используя файлы ignore.list/priority.list/replace.list сделать так, чтобы остался только один PID, который откроется картой, доступной нам. В очень редких случаях, цели могут быть другими, но когда вы поймете систему, вы разберетесь сами по обстоятельствам.

Рассмотрим на конкретных примерах с нарастающей сложностью.

Ценный совет:
Во время настроек, описанных ниже вам придется очень часто перезапускать mgcamd. Быстрее всего это делать подключившись по Telnet к ресиверу.
Из командной строки Linux можно рестартануть mgcamd, запустив скрипт /var/etc/start_cam для прошивок NLB или командой /var/bin/mgcamd-1.31_cam.sh restart для прошивок SifTeam.




1) Использование ignore.list для запрета карт

Допустим, мы смотрим по шаре исключительно один пакет каналов, переключаемся на кодированный канал этого пакета и видим в логе mgcamd такое:

[mg0] stoping camd..
[mg0] service 2E8 index 0 pmt pid 0 (345)
ECM: CaID: 0x0500 -> CaPID: 0x040A ProvID: 022B00
ECM: CaID: 0x0654 -> CaPID: 0x07F2 ProvID: 000000
[mg1] service 2E8 already started with index 0
[mg1] service 2E8 index 1 pmt pid 0 (346)
[mg0] No viaccess key(s) found for id 22B00 keynr 08
[mg0] network can't decode
[mg0] pid 0x040A failed to decode.
[mg0] No irdeto key(s) found for id 0 keynr 00
[mg0] -> ECM to newcamd server2.com:5678
[mg0] <- CW from newcamd server2.com:5678 (515ms)
[mg0] 515 msec -- Wed Jun 10 11:38:16 2009
===== Irdeto ECM on CaID 0x0654, pid 0x07f2 ======
prov: 000000
cw0:0 7D 31 4A F8 8D DA DF 46
cw1:0 F1 DC BB 88 BB B0 8C F7
[mg0] irdeto using chid 0001 version C3


Из строк, начинающихся с ECM видно, что канал кодируется двумя кодировками: Viaccess (PID=040A) и Irdeto (PID=07F2), и первой в списке у нас идет кодировка Viaccess. К сожалению, у нас нет ни подходящего ключа в SoftCam.Key, ни доступной карты Viaccess, о чем свидетельствуют собщения "No viaccess key(s) found..." и "network can't decode". Дальше видно, что у нас есть доступная карта Irdeto c CaID=0654, мы обращаемся к ней и получаем ключ.

Что здесь можно улучшить? Можно сказать mgcamd, что поскольку у нас нет и не будет карты Viaccess (c CaID=500), нужно просто игнорировать все PIDы с такой картой, чтобы они "не мешались под ногами".

Создаем файл ignore.list и пишем в него следующее:
X: {0500}

Иногда 0500 разбивают на пары цифр через пробел. Для mgcamd это непринципиально:

Х: { 05 00 }

Перезапускаем наш mgcamd, снова включаем тот же канал и видим теперь следующее:

[mg0] stoping camd..
[mg0] service 2E8 index 0 pmt pid 0 (345)
ECM: CaID: 0x0654 -> CaPID: 0x07F2 ProvID: 000000
[mg1] service 2E8 already started with index 0
[mg1] service 2E8 index 1 pmt pid 0 (346)
[mg0] No irdeto key(s) found for id 0 keynr 00
[mg0] -> ECM to newcamd server2.com:5678
[mg0] <- CW from newcamd server2.com:5678 (410ms)
[mg0] 410 msec -- Wed Jun 10 11:48:12 2009
===== Irdeto ECM on CaID 0x0654, pid 0x07f2 ======
prov: 000000
cw0:0 CD 5B 81 A9 E7 DA 76 37
cw1:0 7B 1B 19 AF 37 83 F7 B1
[mg0] irdeto using chid 0001 version C3



Больше нет никакого упоминания о карте Viaccess. Больше нет никаких побочных действий, и проб, и ошибок. Запрос ECM идет сразу, куда нужно, без задержек. Цель достигнута.

Что мы сделали? Cтроки, начинающиеся с X: в файле ignore.list (их может быть сколько угодно), означают что для всех каналов нужно игнорировать все PIDы, где CaID=0500. То есть, по сути дела, мы полностью запретили использование любых карт Viaccess: mgcamd теперь просто не будет видеть эту кодировку вообще. Осталось прощелкать по всем каналам нашего пакета и убедиться, что для всех каналов теперь находится только один PID с кодировкой Irdeto. Если возникают еще какие-то "левые" CaID, заносим их также в ignore.list по аналогии с Viaccess.


2) Использование ignore.list для запрета провайдеров

Польза от первого примера больше академическая. Понятно, что взять и запретить полностью все карты Viaccess - это мало кому пригодится. Шансы того, что вам понадобится карта Viaccess для того или иного пакета, в наши дни довольно велики, так как на оди и тот же CaID может быть куча разных провайдеров. В таких случаях мы можем использовать ignore.list для игнорирования только ненужных нам провайдеров той или иной кодировки, а не всю кодировку целиком. Для примера, откроем один из каналов, где есть больше чем один PID с кодировкой Viaccess, но нужный нам - только один:

[mg0] stoping camd..
[mg0] service 3786 index 0 pmt pid 85C (35)
ECM: CaID: 0x0500 -> CaPID: 0x0B57 ProvID: 032920
ECM: CaID: 0x0500 -> CaPID: 0x0B59 ProvID: 020810
ECM: CaID: 0x0100 -> CaPID: 0x0B63 ProvID: 00003D
ECM: CaID: 0x0500 -> CaPID: 0x0887 ProvID: 025100
ECM: CaID: 0x0500 -> CaPID: 0x0B58 ProvID: 024400 <- нам нужен только этот PID
[mg0] No viaccess key(s) found for id 32920 keynr 08
[mg0] network can't decode
[mg0] pid 0x0B57 failed to decode.
[mg0] No viaccess key(s) found for id 20810 keynr 08
[mg0] network can't decode
[mg0] pid 0x0B59 failed to decode.
[mg0] No seca key(s) found for id 3D keynr 0c
[mg0] network can't decode
[mg0] pid 0x0B63 failed to decode.
[mg0] No viaccess key(s) found for id 25100 keynr 08
[mg0] network can't decode
[mg0] pid 0x0887 failed to decode.
[mg0] No viaccess key(s) found for id 24400 keynr 08
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (18ms)
[mg0] 18 msec -- Tue Jun 14 12:45:59 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0b58 ======
prov: 024400
cw0:0 FC 6B AD 14 B1 68 5D 76
cw1:0 25 30 B3 08 E0 E2 2E F0



Из этого куска лога видно, что открывается канал только картой провайдера Viaccess, у которого ProvID=024400. Все остальные провайдеры нам не нужны и только замедляют открытие канала. Поэтому исключим их, используя такой файл ignore.list:

Код
V: {032920}
V: {020810}
S: {003D}
V: {025100}



Проверим теперь (после рестарта mgcamd) что имеется у нас в логе после переключения на этот же канал:

[mg0] stoping camd..
[mg0] service 3786 index 0 pmt pid 85C (35)
ECM: CaID: 0x0500 -> CaPID: 0x0B58 ProvID: 024400
[mg0] No viaccess key(s) found for id 24400 keynr 08
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (437ms)
[mg0] 437 msec -- Tue Jun 14 12:54:39 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0b58 ======
prov: 024400
cw0:0 EB 2F E6 00 50 4B 82 1D
cw1:0 06 BC A4 66 98 80 6C 84




Все ненужные провайдеры испарились, остался только один единственный, нужный, и канал открывается быстрее!


kot

  • Новичок
  • *
  • Сообщений: 9
Re: Mgcamd
« Ответ #317 : 30 Мая 2010, 08:07:21 »
Вы заметили, что в этом примере мы использовали тот же файл ignore.list, но разные буквы в начале строк.
Все варианты строк для ignore.list приведены ниже:

X: { XXXX } # для глобального игнорирования карт с CaiD=XXXX
V: { VVVVVV } # для глобального игнорирования провайдеров Viaccess (у которых CaiD=0500)
S: { SSSS } # для глобального игнорирования провайдеров Seca/Mediaguard (у которых CaiD=0100)
I: { IIII } # для глобального игнорирования чидов Irdeto (у которых CaiD=06xx)


Всё прекрасно, но бывают ситуации посложней.
Представим, что у нас есть 2 разных пакета каналов A и B. Пакет A открывается провайдером X, а пакет B открывается провайдером Y.
И при этом, пакет А также может открываться провайдером Y в принципе (то есть, присутствует ECM для провайдера Y), но не именно той картой, что доступна нам. Получается так, что если глобально запретить провайдера Y, чтобы он не мешался под ногами для пакета A, то пакет B вообще перестанет работать. Если не запрещать Y, то каналы будут открываться медленно в пакете A, потому что если не повезет, то при открытии канала A, сначала будет пробоваться провайдер Y и только потом уже провайдер X.

Для борьбы с подобной ситуацией есть два способа. Первый, с использованием файла priority.list, второй - с использованием файла replace.list. У обоих методов есть преимущества и недостатки. Рассмотрим их по-порядку.

3a) Использование priority.list для изменения порядка PIDов

Вот кусок лога, где мы включаем канал с несколькими провайдерами Viaccess:

[mg0] stoping camd..
[mg0] service 4EF2 index 0 pmt pid 110F (46)
ECM: CaID: 0x0500 -> CaPID: 0x0112 ProvID: 024100
ECM: CaID: 0x0500 -> CaPID: 0x0124 ProvID: 020810
ECM: CaID: 0x0500 -> CaPID: 0x0510 ProvID: 023B00
[mg0] No viaccess key(s) found for id 024100 keynr 02
[mg0] -> ECM to newcamd server1.com:1234 <- здесь и происходит "затык" без ответа
[mg0] -> ECM to newcamd server1.com:1234 <- и в телевизоре темно
[mg0] -> ECM to newcamd server1.com:1234 <- потому что запрос идет не на ту карту
[mg0] -> ECM to newcamd server1.com:1234 <- но удалить провайдера 024100 нельзя
[mg0] network can't decode
[mg0] pid 0x0112 failed to decode.
[mg0] No viaccess key(s) found for id 020810 keynr 0с
[mg0] network can't decode
[mg0] pid 0x0124 failed to decode.
[mg0] No viaccess key(s) found for id 23B00 keynr 08
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (155ms)
[mg0] 155 msec -- Tue Jun 15 13:58:17 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0110 ======
prov: 023B00
cw0:0 86 E7 92 FF ED CB B2 6A
cw1:0 4A 3E B2 3A 8F 99 37 5F


Из лога видно, что канал открывается провайдером Viaccess 023B00, и при этом очень долго. Получилось так, что первыми идут PIDы с другими провайдерами, один из которых (024100) нам тоже доступен, но для другого канала. Поэтому начинают идти запросы не на ту карту, которая, естественно, в ответ молчит. А на экране темно (иногда очень долго темно в зависимости от настроек в mg_cfg), пока mgcamd не перейдет к следующему, правильному PID. Все бы ничего, но взять и избавиться от "неправильного" провайдера 024100 мы не можем, потому что он нам нужен для другого канала, и если мы просто впишем его в ignore.list, то другой канал у нас работать не будет.

Исходя из этого, нам нужно решить проблему приоритета PIDов. Нужно сделать так, чтобы провайдер 023B00 шел первым в списке PIDов. Это позволит сразу пробовать правильный PID для открывания канала. Пусть даже останутся другие PIDы, до них очередь не дойдет, потому что сразу придет нужный ответ от сервера.

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

В нашем случае, нам нужно оставить 2 провайдера: 023B00 и 024100 (остальные можно в ignore.list, чтобы не путались под ногами). Нам также нужно, чтобы 023B00 имел приоритет над 024100. Поэтому создаем два файла:

ignore.list:

V: {020810}

priority.list:
V: {023B00}
V: {024100}

Перезагружаем эмулятор и снова включаем тот-же канал. Теперь видим такое:

[mg0] stoping camd..
[mg0] service 4EF2 index 0 pmt pid 110F (46)
ECM: CaID: 0x0500 -> CaPID: 0x0510 ProvID: 023B00
ECM: CaID: 0x0500 -> CaPID: 0x0112 ProvID: 024100
[mg0] No viaccess key(s) found for id 023B00 keynr 08
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (245ms)
[mg0] 245 msec -- Tue Jun 15 14:04:12 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0110 ======
prov: 023B00
cw0:0 CF A1 F8 68 FF 9F FF 9D
cw1:0 F3 BF C1 73 7C 03 C0 3F

У нас осталось 2 провайдера и первым идет тот, что нужен - запрос сразу идет на нужную карту без промедления.

Помните, что действие файлов ignore.list и priority.list распостраняется на АБСОЛЮТНО ВСЕ КАНАЛЫ ВСЕХ ПАКЕТОВ (естественно, если они применимы к картам и провайдерам отдельно взятого канала). То есть, эти файлы имеют глобальный эффект! Иногда можно увлечься удалением "ненужных" карт и провайдеров и не заметить, что у вас провайдер, которого вы запретили для одного пакета может потребоваться для другого. Если вы смотрите несколько пакетов со схожими кодировками, следите за тем, чтобы не внести в ignore.list карту или провайдера, которая нужна для другого пакета

Самая нехорошая ситуация возникает, когда у нескольких каналов есть два (или более) провайдера и оба эти провайдеры нужны (запретить их нельзя). Более того, для одной части каналов нужно чтобы в приоритете был один провайдер, а для другой части каналов - другой провайдер. Если мы будем пользоваться только файлом priority.list, то только одна часть каналов будет иметь правильный порядок провайдеров, а другая часть всегда будет натыкаться на ненужный PID. Это происходит потому что настройки из priority.list глобальны, и с помощью этого файла нельзя сказать: "вот этим каналам - такой нужен приоритет провайдеров, а вот этим каналам - другой". На помощь приходит файл replace.list

Что позволяет файл replace.list, в чем его суть? Он позволяет "волшебным образом" заменять CaID и/или ProvID и/или PID отдельно взятого канала на любые значения! Сперва можно подумать, мол, "зачем это вообще нужно?" Но на самом деле, это позволяет произвести тончайшую настройку PIDов для каждого канала персонально! При этом, по сути дела мы можем имитировать функциональность и ignore.list, и priority.list, используя только replace.list. Вы спросите, зачем же тогда вообще нужны ignore/priority, если можно гораздо точнее все настроить и без них? Недостаток replace.list в том, что если вы решите пойти таким путем, то вам придется прописать в этот файл по строчке для каждого кодированного канала. По одной строчке на каждый канал, это если в потоке канала только 2 PIDa, а если в потоке канала больше чем два PIDа, то на каждый канал нужно будет прописывать несколько строк (чтобы конфигурация PIDов была идеально "чистой"). Для ленивых - это точно неподходящее занятие. Те, кто готов потрудиться, будут вознаграждены самым быстрым возможным открыванием каналов, без задержек, железно, на 100%.

3b) Использование replace.list для упорядочивания PIDов (альтернатива priority.list + ignore.list)

Итак, классика жанра, (сами знаете какой) пакет каналов где используются три разных провайдера Viaccess: 023700, 020710 и 030600.
Для одной части каналов нужен один провайдер на первом месте, для другой части каналов - другой, а для HD - третий. Если просто вписать их в priority.list (как это часто советуют на форумах), то хорошо будет только одной из этих трех частей каналов. Две же других части будут напарываться каждый раз на ненужный PID, а одна из трех частей (самая невезучая) будет напарываться на целых 2 ненужных PIDa. Запретить провайдеров с помощью ignore.list тоже нельзя, тогда просто перестанет открываться часть каналов. Вот тут и приходит на помощь replace.list! Включим для примера HD канал (без ignore.list и без priority.list) и увидим в логе такое (все данные, которые нам потребуются для создания replace.list выделены):

[mg0] stoping camd..
[mg0] service 2F47 index 0 pmt pid 0 (45)
ECM: CaID: 0x0500 -> CaPID: 0x0FA3 ProvID: 023700
ECM: CaID: 0x0500 -> CaPID: 0x0BBB ProvID: 030600
[mg1] service 2F47 already started with index 0
[mg1] service 2F47 index 1 pmt pid 0 (46)
[mg0] No viaccess key(s) found for id 23700 keynr 08
[mg0] -> ECM to newcamd server1.com:1234
[mg0] network can't decode
[mg0] pid 0x0FA3 failed to decode.
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (174ms)
[mg0] 174 msec -- Wed Jun 10 01:13:31 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0bbb ====== <- смотрим здесь каким PIDом открывается канал
prov: 030600
cw0:0 00 00 7E 7E 0F 83 29 BB
cw1:0 C7 9C 0F 72 07 E0 00 E7

Видно, что первым попадается провайдер 023700, который не работает (идет запрос на сервер, но он нас посылает подальше).
Видно, что в конце концов канал открывается по PIDу 0BBB, у которого карта=0500 и провайдер=030600.

Создаем новый файл replace.list и пишем в него следующее:

Цитата
R:{{2F47}{0500}{023700}{0FA3}{0500}{030600}{0BBB}}

Что это значит? Это значит, что мы предписываем mgcamd следующее:

Для канала, у которого Service ID (или SID) = 2F47, поменяй PID с параметрами CaID=0500, ProvID=023700 и CaPID=0FA3 на PID, с параметрами CaID=0500, ProvID=030600 и CaPID=0BBB.

Что получается при перезапуске mgcamd? А вот что:


[mg0] stoping camd..
[mg0] service 2F47 index 0 pmt pid 0 (45)
ECM: CaID: 0x0500 -> CaPID: 0x0BBB ProvID: 030600
[mg1] service 2F47 already started with index 0
[mg1] service 2F47 index 1 pmt pid 0 (46)
[mg0] -> ECM to newcamd server1.com:1234
[mg0] <- CW from newcamd server1.com:1234 (174ms)
[mg0] 174 msec -- Wed Jun 10 01:15:31 2009
===== Viaccess ECM on CaID 0x0500, pid 0x0bbb ======
prov: 030600
cw0:0 78 03 FF 7A 67 98 00 FF
сw1:0 DF 33 18 2A 19 3E 1F 76



Одной строчкой в replace.list мы сделали сразу две вещи:
1) убили ненужный PID
2) превратили убитый PID в правильный, который работает

Только нужно помнить, что это мы сделали для одного единственного канала! У каждого канала на отдельно взятом транспондере всегда свой уникальный service ID (SID). Поэтому, для полного счастья поступаем таким же образом для остальных HD каналов, открывающихся по провайдеру 030600, и получаем вот что в replace.list для пяти каналов:


R:{{2F45}{0500}{023700}{0FA1}{0500}{030600}{0BB9}}
R:{{2F46}{0500}{023700}{0FA2}{0500}{030600}{0BBA}}
R:{{2F47}{0500}{023700}{0FA3}{0500}{030600}{0BBB}}
R:{{2F48}{0500}{023700}{0FA4}{0500}{030600}{0BBC}}
R:{{2F49}{0500}{023700}{0FA5}{0500}{030600}{0BBD}}



Теперь для этих пяти каналов будет совершенно не важно, что вы напишете в priority.list, ведь мы практически создали "локальный" ignore и priority специально для этих каналов, в результате чего всегда будет оставаться только один нужный PID.

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

kot

  • Новичок
  • *
  • Сообщений: 9
Re: Mgcamd
« Ответ #318 : 30 Мая 2010, 08:17:38 »
как свести к минимуму затыки

--------------------------------------------------------------------------------

Когда возникает затык, два параметра настройки mgcamd являются очень важными в плане того, как mgcamd будет реагировать на затыки (что по сути дела значит, как скоро можно ожидать возвращение картинки на экран). Это параметры K:{} и N:{} из файла mg_cfg.

Параметр K:{} описывает какое максимальное количество времени (в секундах) нужно ждать ответа от сервера на ECM запрос, по истечении которого mgcamd решает, что ответа нет. Чем больше это число, тем больше шансов получить ответ, если у вас плохой Интернет или глюкавый сервер шары. Кроме того, еще зависит от того, какие пакеты вы смотрите. Большинство карт обычно отвечают меньше, чем за 1 секунду. Но есть некоторые карты, где нормальное время отклика 1-2 секунды. В экстремальных случаях (известный пример - пакет Nova), ответ может приходить и за 3-5 секунд. Естественно, если вы установите K:{} равным 1 секунде, а сервер будет пытаться вам ответить через 2-3 секунды, то ничего хорошего из этого не выйдет. mgcamd все время будет думать, что сервер не ответил (по истечении секунды) и слать запросы повторно. От этого будет плохо всем, в основном, конечно, серверу, который будет завален запросами, ну и ресиверу тоже, который будет работать в таком случае не оптимально.

С другой стороны если взять и увеличить параметр K:{} на неразумно большую величину, типа 5 или больше секунд, то возникнет совершенно неблагоприятный эффект для вас. Представьте, что обычно вам ответы приходят за 0,5 секунды, и один раз ответ по какой-то причине не пришел. Теперь вы будете ждать целых 5 секунд, до тех пор, пока mgcamd не попытается снова послать запрос. За это время на некоторых каналах уже может случиться и затык, в то время, как если бы у вас повторный запрос пошел через, скажем, 2 секунды и пришел бы успешный ответ, никто бы ничего (на экране ТВ) не заметил!

Грубо говоря, когда есть проблемы с ответами от сервера, то чем меньше K:{}, тем хуже серверу шары из-за большего количества запросов, и чем больше K:{}, тем вероятнее вы получите затык. Хотя это все очень относительно и сильно зависит от конкретных пакетов. Есть пакеты (Премьера HD, Скай Италия и т.д.), где время ответа от карты критично. Для таких пакетов с кодировкой Videoguard, если вы не получите ключ за 0.6сек, то будет однозначный затык. Здесь можно спокойно ставить единицу в значение K:{}. С другой стороны, для таких пакетов, как Премьера SD или Nova и 2х секунд иногда недостаточно, и правильным значением должно быть 3.

Дальше, параметр N:{7} X Y влияет на то, как mgcamd ведет себя когда понимает, что ответ от сервера все же не пришел. Число X устанавливает количество неуспешных запросов на сервер (каждый из них длиной в K:{} секунд), после чего mgcamd отваливается от сервера и пытается к нему приконнектиться заново. Эта процедура нередко помогает, когда на сервере какие-то глюки, хотя конечно, постоянно это недолжно происходить. Параметр Y говорит mgcamd о том, что нужно отваливаться и реконнектиться заново, если не было никаких признаков жизни у сервера в течение Y секунд. Обычно до Y доходит дело крайне редко, потому как реконнект обычно происходит из за параметра X (в комбинации с K:{}).

TARUT1

  • Новичок
  • *
  • Сообщений: 7
Re: Mgcamd
« Ответ #319 : 21 Июня 2010, 11:25:19 »
помогите,пожалуйста,как установить mgcamd 1.35a в dreambox 500s