Instalacja Kaffeine 0.8.8 oraz newcs. Cyfra+ i Linux.

We wcześniejszym wpisie omawiałem sposób instalacji karty DVB-S Skystar2 w Arch Linux. Sposób jest ten w pełni legalny gdyż jest to jedynie odczyt legalnej karty kodowej w celu odkodowania obrazu przez kartę DVB.

Dzisiaj przyszedł czas na trudniejsze wyzwanie: instalację oprogramowania do obsługi tej karty. Zaznaczam przy tym, że to jest moja droga a Ty możesz dokonać tego w inny, sprawdzony dla ciebie sposób.

Wpis będzie przydatny także osbom, które posiadają inny system operacyjny (konfiguracja newcs) a także inną telewizję np: Telewizję na Kartę.

Trochę teorii.

Nie jestem zbytnim ekspertem w tej dziedzinie ale postaram się wytłumaczyć kilka istotnych rzeczy.

Phoenix – urządzenie w którym umieszczamy kartę kodową wybranej telewizji (artykuł dotyczy Cyfry+). Na dzień dzisiejszy z polskich TV jeszcze TNK oferuje pozostałą możliwość, gdyż podobnie jak i Cyfra+ nie “paruje” swoich kart z dekoderami.

NewCS jest to programowy czytnik kart (software card reader) z podłączonego przez USB Phoenix-a (ale i nie tylko).

Oprogramowanie:

Kaffeine 0.8.8 – ostatnia wersja kaffeine przed 1.x. Niestety nie powstała jeszcze odpowiednia wtyczka na Kaffeine 1.x z tego względu należy się zaopatrzyć właśnie w tą wersję.

kaffeine-sc-plugin-0.4.0 – i wyższa. plugin do kaffeine współpracujący z serwerem newcs.

NewCS 1.66 – i wyższa. Serwer NewCS. Dostępne są różne wersje (procesory/proty). Ja użyłem newcs.i686.usb.

Poniżej znajdują się pliki do pobrania. Jako, że jest to wpis dla 2 platform: Archlinux i Ubuntu ściągnijcie rozważnie.

Do pobrania ArchLinux/Ubuntu:

newcs-1_67RC1

Do pobrania Ubuntu/Debian

kaffeine_0.8.8-0ubuntu1~mtron2_i386.deb

kaffeine-sc-plugin-0.4.2-svn_0.4.2-SVN-1_i386.deb

Instalacja w Archlinux

Instalacja kaffeine

Potrzebujemy spełnić na początku zależności tak więc ściągmy paczki: kdelibs3 libcdio libxtst xine-lib

# su -
# pacman -S kdelibs3 libcdio libxtst xine-lib
# mkdir kaffeine
# cd kaffeine
# wget http://aur.archlinux.org/packages/kaffeine-kde3/PKGBUILD
# chmod +x ./PKGBUILD
# makepkg PKGBUILD
# sudo pacman -U kaffeine-kde3-0.8.8-1-i686.pkg.tar.xz

Powinniśmy mieć już zainstalowane kaffeine. Teraz pozostaje najtrudniejsza część instalacja pluginu sc. Normalnie proponował bym ściągnięcie PKGBUILDa ale w tym momencie raczej konieczne będzie ściągniecie paczki tar.gz ze względu na modyfikacje jakie musimy poczynić. Nie obawiajcie się nie jest to wcale trudne.

cd ..
mkdir kaffeine-sc
cd kaffeine-sc
wget http://kaffeine-sc-plugin.googlecode.com/files/kaffeine-sc-plugin-0.4.0.tar.gz
tar -xvf kaffeine-sc-plugin-0.4.0.tar.gz
cd kaffeine-sc-plugin-0.4.0
gedit kaffeine-sc-plugin-0.4.0/src/FFdecsa/Makefile

Tutaj musimy zmienić 2 rzeczy.

Pierwsza: kompilator. U mnie należało zahashować linijkę z g++-3.4 a odhashować g++

COMPILER=g++
 #COMPILER=g++-3.4

Po drugie należy wybrać platformę (procesor – a dokładnie instrukcje jakie obsługuje niezbędne od sprawnego odkodowywania).

#FLAGS += -march=pentium-mmx
 #FLAGS += -march=pentium2
 #FLAGS += -march=pentium3
 FLAGS += -march=pentium4
 #FLAGS += -march=prescott
 #FLAGS += -march=athlon
 #FLAGS += -march=athlon-xp
 #FLAGS += -march=athlon64

U mnie jak widzieliście jest to pentium4 u Was może być coś innego. Najlepiej się upewnić przez wynik polecenia:

less /proc/cpuinfo – które udzieli nam informacji o procesorze. Więcej tutaj: http://pl.wikipedia.org/wiki/X86

processor       : 0
 vendor_id       : GenuineIntel
 cpu family      : 6
 model           : 23
 model name      : Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
 stepping        : 10
 cpu MHz         : 2999.266
 cache size      : 6144 KB
 physical id     : 0

Wydajemy niezbędne polececenia aby nie było błędów związanych z dowiązaniem do bibliotek Qt (na których oparty jest kaffeine).

source /etc/profile.d/qt3.sh
export QMAKESPEC=/opt/qt/mkspecs/linux-g++

Kompilujemy:

./configure --without-arts
make
sudo make install

Plugin w postaci bibliotek powinien znaleźć się w katalogu: /opt/kde/lib/kde3/

Oto i one:

libkaffeinedvbsc.la
 libkaffeinedvbsc.so
 libkaffeinedvbsc.so.0
 libkaffeinedvbsc.so.0.0.0

Niestety zauważyłem pewną przypadłość. Otóż kaffeine w trybie TV uruchomił się raz a drugi raz już nie chciał. W konsoli pojawił się błąd:

kaffeine: symbol lookup error: /usr/lib/xine/plugins/1.29/xineplug_inp_dvb.so: undefined symbol: xine_get_homedir

Okazało się, że winny jest plik ~/.xine/catalog.cache w nim zapis:

[/usr/lib/xine/plugins/1.29/xineplug_inp_v4l2.so]
 size=8028
 mtime=1291005555
 type=1
 api=17
 id=v4l2
 version=10119
 input_priority=4000

Kaffeine po zakończeniu swojej pracy nadpisuje plik catalog.cache i zmienia  wartość dotyczącą pliku xineplug_inp_v4l2.so na size=8028. Postanowiłem w skrypcie związanym z uruchomieniem kaffeine kopiować ten plik z tego samego pliku ale pod inną nazwą.

Utworzyłem plik ~/.xine/catalog.cache1 ze zmienioną wartością size=20000.

cp ~/.xine/catalog.cache ~/.xine/catalog.cache1
gedit ~/.xine/catalog.cache1

zmieniamy wartość

Tworzymy skrypt do uruchomienia kaffeine

sudo gedit /usr/bin/kaffeine.sh

W pliku zapisujemy

#!/bin/bash
cp ~/.xine/catalog.cache1 ~/.xine/catalog.cache
cd /opt/kde/bin/
./kaffeine &

Konfiguracja Kaffeine.

Po uruchomieniu trybu TV, klikamy w menu DVB/Configure DVB a tam po lewej stronie w “DVB Plugins”. Powinna być dostępna wtyczka “Softcam 0.4.0″ Dodajemy nowy wpis: new entry. Uzupełniamy ją o wartości:

hostname: localhost
user: dummy2
password: dummy
port: 12010
config key: 0102030405060708091011121314
ca: 100
ProvId: 68

Instalacja NewCS

Ściągmy plik newcs-1_67RC1.zip

wget http://www.skystar.org/arsiv/index.php?dir=cardsharing/newcs/&file=newcs-1_67RC1.zip
unzip newcs-1_67RC1.zip

kopiujemy plik

sudo cp newcs-1.67_RC1/bin/newcs.i686.usb /usr/bin/newcs
sudo chmod +x /usr/bin/newcs

ściągamy plik niezbędny do działania newcs

wget http://cytrynek.rapidmedia.pl/newcs.xml
sudo cp newcs.xml /etc
sudo chmod 666 /etc/newcs.xml

uruchaniamy newcs

sudo newcs

W w ustawieniach pliku newcs.xml

    <newcamdserver>
            <enabled>Yes</enabled>
            <name>newcs</name>
            <deskey>01 02 03 04 05 06 07 08 09 10 11 12 13 14</deskey>
            <user><status>access</status>
                <name>dummy2</name>
                <password>dummy2</password>
                <au>on</au>
                <sidoverride>on</sidoverride>
                <spider>on</spider>
                                <rate>2</rate>
                <port>12010</port>

            </user>

<deskey> -Data Encryption Systems. Software protection and data protection devices. Klucz zabezpieczający urządzenia. Standardowo wypełniony od 01 do 14

Użytkownik ma <status> access – czyli ma dostęp

Nazwa i hasło użytkownika to dummy2

Jak ktoś miał wcześniej ten plik to musi wykasować sekcję <pincode>0000</pincode>. Niestety ja tego nie zrobiłem i straciłem dobre 2h na kombinowanie :)

Program powinien wyświetlić coś takiego:

cyt@cytarch ~]$ sudo newcs
This is NewCS 1.66 [Build: 82] - the New CardServer by the Butter-team..
Compiled on May 22 2009 at 11:54:29
Reading Config file from /etc/newcs.xml
TCP-log password is enabled, set to: NewCSpwd
level: internal
type: all
output: console,tcp
logger config: level 16777215 type 255 output 5
Console log options: level 16777215 type 255
TCP log options: level 1 type 255
[ 10:16:11 ] [ Box detect ] Box type 1 (General Boxtype - Generic)
[ 10:16:11 ] [ Config ] Option <blockc0> for device 0 (Phoenix on USB) not present, defaulting to NO
[ 10:16:11 ] [ Config ] Option <crypto-special> for device 0 (Phoenix on USB) not present, defaulting to NO
[ 10:16:11 ] [ Config ] Option <sid> for device 0 (Phoenix on USB) not present, no static sids added to filter
[ 10:16:11 ] [ Config ] Option <protectedsid> for device 0 (Phoenix on USB) not present, no PIN Code will be sent
[ 10:16:11 ] [ Config ] /dev/ttyUSB0 ECM priority: round
[ 10:16:11 ] [ DNS ] Resolved Hostname localhost to: 127.0.0.1
[ 10:16:11 ] [ Newcamd ] Server name : newcs
[ 10:16:11 ] [ Newcamd ] Des key     : 0102030405060708091011121314
[ 10:16:11 ] [ Config ] Option <hostname> or <port> not present for User: dummy2, DISABLING reverse login
[ 10:16:11 ] [ Config ] Option <readers> not present for User: dummy2, NO reader control enabled
[ 10:16:11 ] [ Newcamd ] User 2: dummy2, Pass: dummy2, Host none, Port: 12010, Au: On, Spider allowed: Yes, Sidoverride: Yes, level: 0
[ 10:16:11 ] [ httpd ] httpd-user: newcs, password: newcs, accesslevel: admin
[ 10:16:11 ] [ httpd ] httpd-user: cyt, password: wolnaamerykanka, accesslevel: admin
[ 10:16:11 ] [ EMM Cache ] Initialising dynamic Cache
[ 10:16:11 ] [ ECM Cache ] Initialising dynamic Cache
[ NewCS ] Process ID is: 8191
[ 10:16:11 ] Calibrating delay loops
[ 10:16:11 ] usleep(5) takes: 0 s 6 us
[ 10:16:11 ] usleep(10) takes: 0 s 11 us
[ 10:16:11 ] usleep(100) takes: 0 s 108 us
[ 10:16:11 ] usleep(500) takes: 0 s 500 us
[ 10:16:11 ] Allocation memory for 200 regular users
[ 10:16:11 ] [ Loader ] Starting Telnet on port 1001
[ 10:16:11 ] [ SockSrv ] Server thread started
[ 10:16:11 ] [ Loader ] Started HTTP-server on port: 8080
[ 10:16:11 ] [ Loader ] Reader type 2 on node /dev/ttyUSB0
[ 10:16:11 ] [ CardMan ] Reseting reader parameters
[ 10:16:11 ] [ Phoenix ] Opening device /dev/ttyUSB0
[ 10:16:11 ] [ Phoenix ] Setting Parity to: ODD
[ 10:16:11 ] [ Phoenix ] Setting 2 Stop bits on node /dev/ttyUSB0
[ 10:16:11 ] [ Phoenix ] Setting Baud to standard 9600
[ 10:16:12 ] [ Phoenix ] Normal RESET on node /dev/ttyUSB0
[ 10:16:13 ] [ Serial ] Read on fd 5 (len=16 timeout=5300ms)
[ 10:16:13 ] Phoenix_read:
0000: 3b f7 11 00 01 40 96 70 70 0a 0e 6c b6 d6 90 00  ;....@.pp..l....
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=25 timeout=15300ms)
[ 10:16:14 ] Phoenix_read:
0000: 00 68 34 59 12 52 41 3b 00 31 20 10 20 20 20 20  .hCYFRA+ 1      
0010: 10 20 00 37 24 34 2b 23 11                         .gD.+3.
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=1 timeout=15300ms)
[ 10:16:14 ] Phoenix_read: 0000: 150 
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=1 timeout=15300ms)
[ 10:16:14 ] Phoenix_read: 0000: 00  
[ 10:16:14 ] [ Seca ] Status Word from Card: 9000
[ 10:16:14 ] [ KeymaN ] Adding key 0000000034673b4 type 1 on Provider 000068 for caid 0100 ID=1
[ 10:16:14 ] [ Seca ] Sending to Card: C234021223
[ 10:16:14 ] Phoenix_write: 0000: c1 56 13 b2 12
[ 10:16:14 ] [ Serial ] Write on fd 5 (len=5)
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=5 timeout=15500ms)
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=1 timeout=15300ms)
[ 10:16:14 ] Phoenix_read: 0000: 12
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=25 timeout=15300ms)
[ 10:16:14 ] Phoenix_read:  0000: 00 65 43 59 46 52 41 2b 20 32 20 20 20 20 20 20  .eCYFRA+ 2      
0010: 20 20 00 00 00 00 04 21 00                         .....!.
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=1 timeout=15300ms)
[ 10:16:14 ] Phoenix_read: 0000: 90                                               .
[ 10:16:14 ] [ Serial ] Read on fd 5 (len=1 timeout=15300ms)
[ 10:16:14 ] Phoenix_read: 0000: 00                                               .
[ 10:16:14 ] [ Seca ] Status Word from Card: 9000
[ 10:16:14 ] [ KeymaN ] Adding key 00000000000000 type 1 on Provider 000065 for caid 0100 ID=2
[ 10:16:14 ] Card reader unlocked for reader Phoenix on USB [/dev/ttyUSB0]
[ 10:16:14 ] [ 0100 ] Init took: 0.772715
[ 10:16:14 ] [ Loader ] Card 0100 on port /dev/ttyUSB0 ready
[ 10:16:14 ] [ Card queue /dev/ttyUSB0 ] Starting...
[ 10:16:14 ] [ Loader ] Starting Newcamd Server on port 12010
[ 10:16:14 ] [ Loader ] Starting Radegast Server on port 10001
[ 10:16:14 ] [ Newcamd ] Newcamd thread Server started on port 12010
[ 10:16:14 ] [ SockSrv ] Server thread started
newcamd: main loop
[ 10:16:14 ] [ NewCS ] Ready to GO! :) 

W razie problemów należy usunąć newcs z pamięci:

sudo killall newcs

Jeśli to nie skutkuje poszukać numeru PID i wtedy jak jeszcze będzie proces wyrzucić. (polecenia ps ax i później sudo kill PID).

Teraz mamy możliwość zalogowania się do serwera przez stronę www.
W przeglądarce wpisujemy: localhost:8080


Dodatkowe pliki:

zmieniona lista transporderów z Hotbirda – przydatna przy skanowaniu satelity (stan na 20.07.2011) – należy ją umieścić w katalogu ~/.kde/share/apps/kaffeine/dvb-s/

lista kanałów - niestety niepełna ale może komuś się przyda umieszczamy ją w katalogu ~/.kde/share/apps/kaffeine/

~ - autor: cytrynek w dniu Lipiec 20, 2011.

Jedna odpowiedź to “Instalacja Kaffeine 0.8.8 oraz newcs. Cyfra+ i Linux.”

  1. instalacja Kaffeine 0.8.8 na ubuntu 11.10 może komuś sie przyda :)

Dodaj komentarz

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Zmień )

Twitter picture

You are commenting using your Twitter account. Log Out / Zmień )

Facebook photo

You are commenting using your Facebook account. Log Out / Zmień )

Connecting to %s

 
Follow

Otrzymuj każdy nowy wpis na swoją skrzynkę e-mail.