Loading...

Błąd OScam "pid not found": Przyczyny& Rozwiązania

Jeśli zagłębiasz się w świat OScam i napotkałeś przerażający błąd "pid not found", nie jesteś sam. Sam przez to przeszedłem. Ta wiadomość zazwyczaj pojawia się, gdy OScam napotyka zmianę kanału, ale nie może przypisać ECM PID do znanego CAID lub dostawcy dla tej usługi. To frustrujące, zwłaszcza gdy twój kanał pozostaje zaszyfrowany i nie możesz odszyfrować strumienia. W tym przewodniku podzielę się tym, czego się nauczyłem o rozwiązywaniu tego problemu, koncentrując się na OScam: pid not found решение.

Co oznacza "pid not found" w OScam

Wiadomość "pid not found" jest emitowana przez warstwę demultipleksera DVB, znaną jako dvbapi, gdy OScam rozpoznaje zmianę kanału, ale nie może znaleźć powiązanego ECM PID. Aby to zrozumieć, musimy wyjaśnić różne typy identyfikatorów zaangażowanych: PID strumienia transportowego, ECM PID (który jest przenoszony w CAT/PMT) oraz CAID.

Dokładna linia logu i miejsce, w którym się pojawia

Możesz zobaczyć wpis w logu, który wygląda tak:

[dvbapi] pid not found

Ta wiadomość zazwyczaj pojawia się w pliku oscam.log, gdy żądanie ECM jest wysyłane, ale OScam nie może znaleźć niezbędnego PID do dekodowania kanału.

PID vs ECM PID vs CAID: czego szuka OScam

Myśl o PID strumienia transportowego jako o adresie dla konkretnego kanału, podczas gdy ECM PID to to, czego OScam potrzebuje, aby odblokować ten kanał. CAID reprezentuje dostawcę. Więc jeśli OScam widzi kanał, ale nie może znaleźć odpowiedniego ECM PID, zazwyczaj oznacza to, że występuje problem z tym, jak dvbapi filtruje lub analizuje PMT.

Dlaczego to jest problem demux/mapping, a nie zawsze problem z kartą

Ten błąd często wskazuje, że OScam wykrył kanał, ale niezbędny ECM PID nie jest dostępny dla skonfigurowanych CAID. To niekoniecznie oznacza, że twoja karta jest przestarzała. Zamiast tego odzwierciedla problem z konfiguracją mapowania lub filtrowania w dvbapi.

Diagnozowanie błędu z oscam.log i dvbapi

Diagnozowanie problemu polega na zagłębieniu się w pliki logów i dokonaniu pewnych dostosowań. Zacznij od ustawienia odpowiednich poziomów logowania w pliku `oscam.conf`.

Podnoszenie poziomu logowania i włączanie flag debugowania

Aby uchwycić szczegółowe informacje, dostosuj `loglevel` do 2 lub 3 i ustaw `debug` na 1:

Ścieżka do twojego pliku logów zazwyczaj znajduje się w `/etc/tuxbox/config/oscam/oscam.log` lub `/var/tuxbox/config/oscam.log`. To pomoże ci zebrać więcej informacji o żądaniach ECM.

Odczytywanie wyników analizy PMT / CAT

Następnie sprawdź wyniki PMT i CAT, aby zobaczyć, które CAID i ECM PID są nadawane dla kanału. To może pomóc w zrozumieniu, z czym zmaga się twoja konfiguracja OScam.

Potwierdzenie, że dvbapi jest włączone i który tryb jest aktywny

Upewnij się, że sekcja `[dvbapi]` w twojej konfiguracji ma `enabled` ustawione na 1. Sprawdź również `boxtype`, `au`, `pmt_mode` i `request_mode`. Każde z tych ustawień może wpływać na to, jak OScam współdziała z strumieniem DVB.

Korzystanie z zakładek statusu i logów w interfejsie webowym OScam

Jeśli jeszcze tego nie zrobiłeś, uzyskaj dostęp do interfejsu webowego OScam, zazwyczaj podhttp://your-server-ip:8888 lubhttp://your-server-ip:16002. Strona Status pokaże ci, czy żądanie ECM dociera do czytnika.

Naprawa mapowania CAID, dostawcy i ECM PID

Teraz, gdy lepiej rozumiesz problem, czas wdrożyć kilka poprawek. Często problem wynika z tego, że OScam próbuje uzyskać dostęp do CAID, do którego twój czytnik nie jest uprawniony.

Dopasowanie CAID kanału do caid/ident czytnika

Aby to naprawić, dodaj odpowiednie linie `caid` i `ident` do konfiguracji czytnika w `oscam.server`. Na przykład:

priorytet oscam.dvbapi, ignoruj i mapuj wpisy

Reguły `oscam.dvbapi` mogą wymusić, aby OScam żądał CAID, który karta może dekodować. Używaj wpisów priorytetu (P), ignorowania (I) i mapowania (M) mądrze. Na przykład:

Obsługa wielu CAID-ów na jednym transponderze

Jeśli transponder obsługuje kilka CAID-ów, może być konieczne wyraźne określenie, które z nich chcesz, aby OScam żądał. Mapowanie może pomóc w takich przypadkach.

Dostosowania pmt_mode i request_mode

Dostosowanie `pmt_mode` może również mieć znaczenie, szczególnie jeśli twój STB nie przesyła aktualizacji PMT poprawnie. Spróbuj ustawić `pmt_mode` na 1 lub 2, w zależności od twojej konfiguracji. Podobnie, `request_mode` można przełączać między 0 a 1, aby sprawdzić, który poprawnie pobiera ECM PID-y.

Sprawdzanie czytnika, protokołu i połączenia

Nawet przy odpowiednim mapowaniu, żądanie ECM może się nie powieść, jeśli żaden czytnik nie obsługuje tego CAID-u. Oto, co należy sprawdzić:

Czytniki lokalne vs czytniki sieciowe (cccam/newcamd)

Dla czytników lokalnych zweryfikuj ścieżkę urządzenia, np. `/dev/sci0` lub `/dev/ttyUSB0`. Upewnij się, że ustawienia `protocol` i `detect` są poprawne. Dla czytników sieciowych sprawdź, czy są skonfigurowane do używania odpowiedniego protokołu (np. cccam na porcie 12000, newcamd na 15000).

Potwierdzenie, że czytnik jest ONLINE, a nie tylko CONNECTED

Czasami czytnik pokazuje jako CONNECTED, ale tak naprawdę nie jest ONLINE. Upewnij się, że czytnik oferuje niezbędne CAID-y, sprawdzając jego logi.

Dopasowanie grupy i etykiety między czytnikiem a klientem

Sprawdź, czy numery grup łączą czytnik i konto poprawnie w `oscam.user`. Niedopasowane grupy mogą prowadzić do nieudanych żądań ECM, nawet gdy wszystko inne wydaje się w porządku.

Sprawdzanie zapory i portów dla protokołów sieciowych

Konfiguracje sieciowe mogą być również problematyczne. Upewnij się, że ustawienia zapory pozwalają na ruch na niezbędnych portach. Może być konieczne przekierowanie portów dla czytników sieciowych, szczególnie jeśli jesteś za NAT.

Weryfikacja naprawy i zapobieganie powtórzeniu

Po wprowadzeniu poprawek ważne jest, aby zweryfikować, że wszystko działa zgodnie z oczekiwaniami. Udane dekodowanie pojawi się w logach z wpisem takim jak:

znaleziono → ECM OK (czas dekodowania: xx ms)

Potwierdzenie czystej odpowiedzi ECM OK

Szukaj tej wiadomości w logach, aby potwierdzić, że OScam poprawnie przetwarza żądanie ECM. Jeśli nadal widzisz "pid not found", często wskazuje to na problemy z autoryzacją, a nie z konfiguracją.

Obserwowanie czasu ECM i zachowania pamięci podręcznej

Zwróć uwagę na czasy odpowiedzi ECM. Powinny być poniżej 200 ms dla dobrej wydajności. Jeśli są stale wyższe, ponownie sprawdź konfigurację czytnika lub rozważ jakość swojego połączenia.

Higiena konfiguracji: kopie zapasowe i notatki o wersji

Przed wprowadzeniem jakichkolwiek zmian zawsze wykonaj kopię zapasową swoich plików `oscam.server`, `oscam.dvbapi` i `oscam.conf`. Zrób notatki o wersji OScam i wszelkich wprowadzonych zmianach, ponieważ opcje mogą różnić się w zależności od wersji. Po wprowadzeniu poprawek, uruchom OScam ponownie, aby upewnić się, że ponownie odczyta PMT.

Czy "pid not found" oznacza, że moja karta lub subskrypcja wygasła?

Zazwyczaj nie. Oznacza to, że OScam nie mogło przypisać ECM PID/CAID dla kanału do skonfigurowanego czytnika. Wygasłe karty częściej pokazują ECM 'odrzucone' lub konkretny status karty, a nie brakujący PID.

Dlaczego błąd pojawia się na niektórych kanałach, a na innych nie?

Te kanały używają innego CAID-u lub układu transpondera niż te, które działają. Dodaj brakujący CAID/identyfikator do czytnika lub użyj reguł priorytetu/mapowania oscam.dvbapi dla tego transpondera.

Gdzie znajduje się plik oscam.dvbapi i jak go edytować?

Znajduje się w katalogu konfiguracyjnym OScam, zwykle /etc/tuxbox/config/oscam/ lub /var/tuxbox/config/. Edytuj za pomocą edytora tekstu, użyj linii P/I/M dla priorytetu/ignorowania/mapowania, a następnie uruchom OScam ponownie, aby ponownie odczytał.

Jakiego pmt_mode lub request_mode powinienem użyć?

Spróbuj request_mode 1, jeśli PID-y są żądane niepoprawnie; dostosuj pmt_mode (wartości w przybliżeniu 0–6), gdy STB nie wysyła aktualizacji PMT. Dokładne zachowanie zależy od modelu i wersji OScam — zmieniaj jedno na raz i obserwuj logi.

Naprawiłem mapowanie CAID, ale nadal otrzymuję "pid not found" — co dalej?

Sprawdź, czy czytnik jest rzeczywiście ONLINE i oferuje ten CAID, zweryfikuj numery grup między czytnikiem a kontem, potwierdź, że zrzut PMT pokazuje ECM PID, i sprawdź zaporę/porty dla czytników sieciowych.

Czy włączenie AU (automatyczna aktualizacja EMM) może naprawić ten błąd?

Nie. AU obsługuje aktualizacje EMM/uprawnienia, a nie odkrywanie ECM PID. Może pomóc w utrzymaniu lokalnej karty w autoryzacji, ale nie rozwiąże problemu z mapowaniem PID lub niedopasowaniem CAID.