diff options
Diffstat (limited to 'Documentation/dvb/avermedia.txt')
-rw-r--r-- | Documentation/dvb/avermedia.txt | 301 |
1 files changed, 0 insertions, 301 deletions
diff --git a/Documentation/dvb/avermedia.txt b/Documentation/dvb/avermedia.txt deleted file mode 100644 index e44c009ac6c5..000000000000 --- a/Documentation/dvb/avermedia.txt +++ /dev/null @@ -1,301 +0,0 @@ -HOWTO: Get An Avermedia DVB-T working under Linux - ______________________________________________ - - Table of Contents - Assumptions and Introduction - The Avermedia DVB-T - Getting the card going - Receiving DVB-T in Australia - Known Limitations - Further Update - -Assumptions and Introduction - - It is assumed that the reader understands the basic structure - of the Linux Kernel DVB drivers and the general principles of - Digital TV. - - One significant difference between Digital TV and Analogue TV - that the unwary (like myself) should consider is that, - although the component structure of budget DVB-T cards are - substantially similar to Analogue TV cards, they function in - substantially different ways. - - The purpose of an Analogue TV is to receive and display an - Analogue Television signal. An Analogue TV signal (otherwise - known as composite video) is an analogue encoding of a - sequence of image frames (25 per second) rasterised using an - interlacing technique. Interlacing takes two fields to - represent one frame. Computers today are at their best when - dealing with digital signals, not analogue signals and a - composite video signal is about as far removed from a digital - data stream as you can get. Therefore, an Analogue TV card for - a PC has the following purpose: - - * Tune the receiver to receive a broadcast signal - * demodulate the broadcast signal - * demultiplex the analogue video signal and analogue audio - signal (note some countries employ a digital audio signal - embedded within the modulated composite analogue signal - - NICAM.) - * digitize the analogue video signal and make the resulting - datastream available to the data bus. - - The digital datastream from an Analogue TV card is generated - by circuitry on the card and is often presented uncompressed. - For a PAL TV signal encoded at a resolution of 768x576 24-bit - color pixels over 25 frames per second - a fair amount of data - is generated and must be processed by the PC before it can be - displayed on the video monitor screen. Some Analogue TV cards - for PCs have onboard MPEG2 encoders which permit the raw - digital data stream to be presented to the PC in an encoded - and compressed form - similar to the form that is used in - Digital TV. - - The purpose of a simple budget digital TV card (DVB-T,C or S) - is to simply: - - * Tune the received to receive a broadcast signal. - * Extract the encoded digital datastream from the broadcast - signal. - * Make the encoded digital datastream (MPEG2) available to - the data bus. - - The significant difference between the two is that the tuner - on the analogue TV card spits out an Analogue signal, whereas - the tuner on the digital TV card spits out a compressed - encoded digital datastream. As the signal is already - digitised, it is trivial to pass this datastream to the PC - databus with minimal additional processing and then extract - the digital video and audio datastreams passing them to the - appropriate software or hardware for decoding and viewing. - _________________________________________________________ - -The Avermedia DVB-T - - The Avermedia DVB-T is a budget PCI DVB card. It has 3 inputs: - - * RF Tuner Input - * Composite Video Input (RCA Jack) - * SVIDEO Input (Mini-DIN) - - The RF Tuner Input is the input to the tuner module of the - card. The Tuner is otherwise known as the "Frontend" . The - Frontend of the Avermedia DVB-T is a Microtune 7202D. A timely - post to the linux-dvb mailing list ascertained that the - Microtune 7202D is supported by the sp887x driver which is - found in the dvb-hw CVS module. - - The DVB-T card is based around the BT878 chip which is a very - common multimedia bridge and often found on Analogue TV cards. - There is no on-board MPEG2 decoder, which means that all MPEG2 - decoding must be done in software, or if you have one, on an - MPEG2 hardware decoding card or chipset. - _________________________________________________________ - -Getting the card going - - In order to fire up the card, it is necessary to load a number - of modules from the DVB driver set. Prior to this it will have - been necessary to download these drivers from the linuxtv CVS - server and compile them successfully. - - Depending on the card's feature set, the Device Driver API for - DVB under Linux will expose some of the following device files - in the /dev tree: - - * /dev/dvb/adapter0/audio0 - * /dev/dvb/adapter0/ca0 - * /dev/dvb/adapter0/demux0 - * /dev/dvb/adapter0/dvr0 - * /dev/dvb/adapter0/frontend0 - * /dev/dvb/adapter0/net0 - * /dev/dvb/adapter0/osd0 - * /dev/dvb/adapter0/video0 - - The primary device nodes that we are interested in (at this - stage) for the Avermedia DVB-T are: - - * /dev/dvb/adapter0/dvr0 - * /dev/dvb/adapter0/frontend0 - - The dvr0 device node is used to read the MPEG2 Data Stream and - the frontend0 node is used to tune the frontend tuner module. - - At this stage, it has not been able to ascertain the - functionality of the remaining device nodes in respect of the - Avermedia DVBT. However, full functionality in respect of - tuning, receiving and supplying the MPEG2 data stream is - possible with the currently available versions of the driver. - It may be possible that additional functionality is available - from the card (i.e. viewing the additional analogue inputs - that the card presents), but this has not been tested yet. If - I get around to this, I'll update the document with whatever I - find. - - To power up the card, load the following modules in the - following order: - - * modprobe bttv (normally loaded automatically) - * modprobe dvb-bt8xx (or place dvb-bt8xx in /etc/modules) - - Insertion of these modules into the running kernel will - activate the appropriate DVB device nodes. It is then possible - to start accessing the card with utilities such as scan, tzap, - dvbstream etc. - - The frontend module sp887x.o, requires an external firmware. - Please use the command "get_dvb_firmware sp887x" to download - it. Then copy it to /usr/lib/hotplug/firmware or /lib/firmware/ - (depending on configuration of firmware hotplug). - -Receiving DVB-T in Australia - - I have no experience of DVB-T in other countries other than - Australia, so I will attempt to explain how it works here in - Melbourne and how this affects the configuration of the DVB-T - card. - - The Digital Broadcasting Australia website has a Reception - locatortool which provides information on transponder channels - and frequencies. My local transmitter happens to be Mount - Dandenong. - - The frequencies broadcast by Mount Dandenong are: - - Table 1. Transponder Frequencies Mount Dandenong, Vic, Aus. - Broadcaster Channel Frequency - ABC VHF 12 226.5 MHz - TEN VHF 11 219.5 MHz - NINE VHF 8 191.625 MHz - SEVEN VHF 6 177.5 MHz - SBS UHF 29 536.5 MHz - - The Scan utility has a set of compiled-in defaults for various - countries and regions, but if they do not suit, or if you have - a pre-compiled scan binary, you can specify a data file on the - command line which contains the transponder frequencies. Here - is a sample file for the above channel transponders: -# Data file for DVB scan program -# -# C Frequency SymbolRate FEC QAM -# S Frequency Polarisation SymbolRate FEC -# T Frequency Bandwidth FEC FEC2 QAM Mode Guard Hier -T 226500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE -T 191625000 7MHz 2/3 NONE QAM64 8k 1/8 NONE -T 219500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE -T 177500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE -T 536500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE - - The defaults for the transponder frequency and other - modulation parameters were obtained from www.dba.org.au. - - When Scan runs, it will output channels.conf information for - any channel's transponders which the card's frontend can lock - onto. (i.e. any whose signal is strong enough at your - antenna). - - Here's my channels.conf file for anyone who's interested: -ABC HDTV:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:2307:0:560 -ABC TV Melbourne:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_ -4:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:65 -0:561 -ABC TV 2:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:562 -ABC TV 3:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:563 -ABC TV 4:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:564 -ABC DiG Radio:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:0:2311:56 -6 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 -5 -TEN Digital 1:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -586 -TEN Digital 2:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -587 -TEN Digital 3:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -588 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 -9 -TEN Digital 4:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -590 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 -1 -TEN HD:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_64:T -RANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:0:1592 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 -3 -Nine Digital:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QA -M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:513:660:10 -72 -Nine Digital HD:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2 -:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:0:1 -073 -Nine Guide:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_ -64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:670:1074 -7 Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_6 -4:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1328 -7 Digital 1:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1329 -7 Digital 2:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1330 -7 Digital 3:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1331 -7 HD Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QA -M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:833:834:133 -2 -7 Program Guide:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3 -:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:865:866: -1334 -SBS HD:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64:T -RANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:102:103:784 -SBS DIGITAL 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:161:81:785 -SBS DIGITAL 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:162:83:786 -SBS EPG:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64: -TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:163:85:787 -SBS RADIO 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:201:798 -SBS RADIO 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:202:799 - _________________________________________________________ - -Known Limitations - - At present I can say with confidence that the frontend tunes - via /dev/dvb/adapter{x}/frontend0 and supplies an MPEG2 stream - via /dev/dvb/adapter{x}/dvr0. I have not tested the - functionality of any other part of the card yet. I will do so - over time and update this document. - - There are some limitations in the i2c layer due to a returned - error message inconsistency. Although this generates errors in - dmesg and the system logs, it does not appear to affect the - ability of the frontend to function correctly. - _________________________________________________________ - -Further Update - - dvbstream and VideoLAN Client on windows works a treat with - DVB, in fact this is currently serving as my main way of - viewing DVB-T at the moment. Additionally, VLC is happily - decoding HDTV signals, although the PC is dropping the odd - frame here and there - I assume due to processing capability - - as all the decoding is being done under windows in software. - - Many thanks to Nigel Pearson for the updates to this document - since the recent revision of the driver. - - February 14th 2006 |