Welcome, Guest. Please login or register.
+  Linux Soft Forum
|-+  Īnvaţă» Tips&Tricks» Vizionare TV şi captură video sub Linux
[Picture 161] [Picture 160] [Picture 159]
Username:
Password:
 
Pages: [1]   Go Down
  Print  
Author Topic: Vizionare TV şi captură video sub Linux  (Read 2022 times)
0 Members and 1 Guest are viewing this topic.
vulcaneanul
Membru
*


« on: October 18, 2006, 09:40:15 AM »

Am cautat mult despre cum se configureaza si cum se face o captura in linux si am gasit.
Acest ghid nu imi apartine si a fost copiat de pe www.fizica.org

"1. Introducere
Am scris acest mini-HOWTO cu speranţa că va fi util. Scopul lui este acela de a ajuta utilizatorii Linux să pună la punct īntr-un timp cāt mai scurt un sistem pentru vizionarea programelor TV, respectiv captură cu ajutorul unui PC suficient de performant care dispune de o placă TV. Să īncepem cu cerinţele hardware şi software.
2. Cerinţe hardware
Procesor minim 500 MHz (recomandat > 800MHz), Memorie minim 128 MB, spaţiu liber pe harddisk minim 2 GB
(nu este necesar spaţiu foarte mare deoarece vom face encoding on the fly), placa TV, placa de sunet.
3. Cerinţe software
Avem nevoie de urmatoarele programe

    * Lame (pentru codare īn format MP3) http://mitiok.cjb.net
    * FFmpeg (pentru codare īn format AVI) http://ffmpeg.sourceforge.net
    * Divx4linux (trebuie precizat ceva?)
    * Xvid (codec OpenSource de calitate) http://www.xvid.org
    * Xawdecode (program de vizionare şi captură TV) http://xawdecode.sourceforge.net
    * MPlayer (player video de calitate, se poate folosi şi pentru vizionare, respectiv captură TV http://www.mplayerhq.hu
    * avidemux (pentru editarea ulterioară a fişierului AVI) http://fixounet.free.fr/avidemux

4. Configurarea plăcii TV
Metoda prezentată mai jos este independentă de distribuţie. Īnainte de toate aruncaţi o privire īn fişierul
/usr/src/linux/Documentation/video4linux/bttv/CARDLIST pentru a identifica numărul plăcii dumneavostră.
De exemplu, eu am un Jetway BT878, prin urmare card=78.
Dacă folosiţi un kernel din seria 2.4 introduceţi următoarele linii īn /etc/modules.conf

alias char-major-89 i2c-dev
options i2c-core i2c_debug=1
options i2c-algo-bit bit_test=1

alias char-major-81 videodev
alias char-major-81-0 bttv
options bttv card=numarul_placii_tv radio=1 automute=0
options tuner debug=1

Dacă placa dumneavoastră nu are suport pentru FM radio, folosiţi opţiunea radio=0.
Pentru kernelul 2.6 editaţi /etc/modprobe.conf.
Apoi adăugaţi Load  "v4l" īn fişierul /etc/X11/XF86Config sau /etc/X11/xorg.conf la secţiunea de module
.

Observaţie: Unele distribuţii Linux, cum ar fi Mandrake, SuSE sau Fedora, includ utilitare grafice de configurare, īnsă acestea nu funcţionează īntotdeauna aşa cum ne aşteptăm şi de multe ori tot la editarea fişierelor de configurare ajungem.

5. Compilarea şi instalarea programelor folosite
S-ar putea ca distribuţia Linux pe care o utilizaţi să includă deja o parte din programele prezentate. Totuşi recompilarea acestoara nu este o pierdere de timp, deoarece astfel ele vor fi optimizate pentru procesorul īn cauză.

5.1 Lame
Compilarea Lame este foarte simplă. După dezarhivare lansaţi următoarele comenzi:
./configure --enable-shared && make && make install
5.2 FFmpeg
La compilarea ffmpeg trebuie să aveţi grijă să folosiţi opţiunile --enable-shared şi --enable-mp3lame!

./configure --enable-mp3lame --enable-vorbis --enable-shared
make && make install
5.3 Divx4linux
Sincer să fiu, nu-mi place deloc divx4linux. La teste nu s-a comportat prea bine (calitatea īnregistrărilor obţinute cu ffmpeg şi xvid a fost mult mai bună). Pe deasupra este şi un proiect closed source. Dacă doriţi totuşi să utilizaţi acest codec, iată cum se instalează. Extrageţi arhiva īntr-un director oarecare
tar zxvf divx4linux-stc-20030428.tar.gz
apoi rulaţi scriptul install.sh (ca root, evident)
./install.sh
5.4 Xvid
Īnainte să treceţi la compilarea xvid, verificaţi dacă aveţi instalat Nasm.

tar jxvf xvidcore-0.9.1.tar.bz2
cd xvidcore-0.9.1
cd build/generic
./configure
make && make install

5.5 MPlayer
MPlayer este un player video excelent pentru Linux şi alte sisteme Unix-like (poate fi compilat sub *BSD, Solaris etc.)
Pe lāngă codul de sursă propriu-zis vom copia următoarele pachete de codecuri: dmocodecs, qt6dlls, qtextra, rp9, win32.
Conţinutul acestor arhive se va copia īn /usr/lib/win32. Pentru compilarea MPlayer se vor folosi comenzile obişnuite:
./configure --enable-gui && make && make install

5.6 Xawdecode
Xawdecode va fi programul nostru principal pentru vizionarea programelor TV şi pentru captură. După părerea mea īmbină īntr-un mod fericit simplitatea cu numărul destul de mare de facilităţi. Printre acestea amintesc următoarele:

    * dispune de un editor de canale simplu
    * conţine filtre de deinterlacing
    * poate utiliza codecurile ffmpeg, xvid şi divx pentru encoding on the fly la īnregistare.

Compilarea se realizează prin comenzile care sper că deja v-au intrat īn sānge:
./configure && make && make install
Verificaţi dacă la configurare sunt găsite bibliotecile libffmpeg.so, libxvidcore.so, libdivxencore.so şi libmp3lame.so.
Dacă respectivele biblioteci nu sunt găsite, verificaţi dacă fişierul /etc/ld.so.conf conţine linia /usr/local/lib (programele compilate local se instalează implicit īn /usr/local). Dacă este necesar, adăugaţi linia respectivă şi nu uitaţi să rulaţi după aceea ldconfig.
5.7 Avidemux
Avidemux2 este un editor video destul de simplist şi care utilizează puţine resurse. Veţi folosi avidemux pentru a elimina reclamele supărătoare din capturile dumneavoastră sau pentru postprocesarea acestora. Dispune de un GUI intuitiv. Instalarea se realizează prin comenzile obişnuite.

6. Televizor sub Linux
Să trecem acum la vizionarea programelor TV. La prima lansare xawdecode va face un benchmarking, apoi puteţi să treceţi la configurarea programului. Acesta dispune de un GUI care se poate accesa prin mouse click dreapta (alternativ se poate edita manual fişierul ~/.xawdecode/xawdecoderc). Opţiunile sunt suficient de intuitive.
Norma TV folosită la noi īn ţară este PAL, iar tabela de frecvenţe pal-europe-east.
Canalele salvate se pot accesa prin mouse click stānga.
Pentru o calitate cāt mai bună a imaginii folosiţi un filtru de deinterlacing. Recomand Linear Blend.

7. Captură video
Pentru captura video vom folosi codarea on the fly. Avantajul acestei metode este acela că nu avem nevoie de spaţii uriaşe pe harddisc. Puteţi să folosiţi oricare din cele trei codecuri prezentate mai sus. Recomandarea mea este ffmpeg, deoarece are cel mai bun raport calitate/resurse utilizate.
Īn meniul xawdecode, la Video Record Options am selectat următorii parametri:
width-576, height-432, bitrate - 900 kbits/s, fps - 25, Quality - EPZS (medium quality), min. quantizer - 2, max. quantizer - 8. La Audio Record Options am lăsat setările implicite (comprimare MP3 cu Lame).
Acum puteţi să vă īnregistraţi programele preferate de pe televizor. Verificaţi să nu aveţi dropped frames, atāt la video cāt şi la audio. Pentru a se īnregistra şi sonorul, verificaţi cu ajutorul unui program de mixer (kmix sau gnome volume control) ca īnregistrarea să fie activată pe intrarea Line In a plăcii de sunet.
8. Īn loc de īncheiere
Probabil vă īntrebaţi pe ce fel de sistem am testat programele amintite.
Athlon XP1600+, Mem. 256MB, placa TV Jetway BT878, placa de sunet Creative Ensoniq Audio PCI (cu ALSA).
Şi iată log-ul obţinut cu xawdecode la o īnregistrare de aprox. 1 h 30 min. După cum se observă, nu am avut dropped video frames.

Recording started Sat Jul 24 23:25:20 2004
Recording stopped Sun Jul 25 00:52:56 2004
recording time = 5255.975879 seconds,  fps = 25.000000
131383 video frames recorded (5255.320000 seconds)
131385 audio frames recorded (131385 audio buffers, 5255.400000 seconds)
0 dropped video frames (fpscod=24.996880 fpscapt=24.996880)
14 dropped audio buffers (0.560000 seconds)
file size = 970.8 Mb,  mean bitrate = 1549.457 kbps

Īn final  nu-mi rămāne decāt să vă doresc īnregistrări video cāt mai reuşite sub Linux. Dacă aveţi īntrebări şi/sau sugestii,
le puteţi adresa prin e-mail la adresa boera@rdslink.ro

Acest mini-HOWTO este lansat sub licenta GNU Free Documentation License."
« Last Edit: October 19, 2006, 10:09:44 PM by vulcaneanul » Logged

The best way to make your dreams come true is to wake up.
Intrebari destepte
Pages: [1]   Go Up
  Print  
 
Jump to: