This file is bringing to you by *MediaMaster* Http://FreeTV.Notrix.de Http://FreeTV.cjb.net Kurze Anleitung fuer den Dekoder: Funktionsprinzip: Der Dekoder dekodiert Videosignale von Premiere und anderen, nach dem gleichen Verfahren (Nagravision) arbeitende PayTV-Programme z. B. TeleClub. Diverse englische PayTV-Programme arbeiten nach Videocrypt und koennen hiermit nicht dekodiert werden. Zur Dekodierung wird das Videosgnal von einer, mit dem Bt848-Chip arbeitenden Videokarte (Hauppauge WinTV-PCI u. aehnliches) benutzt. Das Dekodierverfahren beruht auf der Analyse des Bildinhaltes, wodurch es keine Schluessel oder aehnliches benoetigt, allerdings auch Schwierigkeiten bei bestimmten Bildinhalten auftreten. Da es sich hierbei um Videodatenverarbeitung in Echtzeit handelt, werden hohe Ansprueche an den verwendeten Rechner gestellt. Systemvorraussetzungen: - CPU mindestens Pentium-MMX oder kompatibel - Mainboard mit neuerem PCI-Chipsatz (Chipsets vor "Triton" sind viel zu langsam hinsichtlich Speicher und PCI-Bus) - min. 32 MB (besser 64 MB) schneller Hauptspeicher (SDRAM auf TX-Board ist empfohlen) - Win95 oder Win98 - Videokarte mit Bt848-Chip (z. B Hauppauge WinTV, Miro PCTV) - halbwegs schnelle Grafikkarte mit Direct-Draw-Treiber (DirectX 3 oder hoeher - wird auch fuer WinTV benoetigt) - 30 MB Festplattenplatz Installation: - alle Dateien in ein Verzeichnis kopieren (die Datei "TESTBI.BIN" ist nicht unbedingt notwendig) - wichtige Daten noch laufender Programme speichern - es muessen jetzt noch min. 28 MB Festplattenplatz frei sein - Das Programm "GENCRC2.EXE" starten. Es erzeugt eine 28 MB grosze Hashtable (dauert ca. 5 min). - den eigentlichen Dekoder "DEK.EXE" starten, Parameter wie folgt Kommandozeilenparameter: /iname: Name der INI-Datei (default: DEK.INI) /cKxx: Kanal einstellen (K2..K12,S4..S41,K21..K70 waehlbar) default ist S20 /c0: Video-in benutzen /c500.00: Tunerfrequenz direkt angeben (in MHz) /a[x]: Auto-Bildschirmmodus einstellen: Bildschirmmodus wird nach DirectDraw-Infos ausgewaehlt, man gibt nur die Bildschirmaufloesung an: 0 oder gar nichts: Bildschirmmodus nicht wechseln; auf Desktop darstellen 1: 800 * 600 2: 640 * 480 (es wird nur der mittlere Ausschnitt des Bildes dargestellt - guenstig fuer langsme Rechner) /mx: Bildschirmmodus explizit einstellen: 0: RGB, eigene Oberflaeche 800*600 HiColor 64K Farben (default) 1: RGB, eigene Oberflaeche 1024*768 HiColor 64K Farben 2: RGB, auf Desktop mit HiColor 64K Farben 3: YUV-Overlay auf Desktop 4: YUV-Overlay mit 800*600 HiColor 5: YUV-Overlay mit 800*600 TrueColor 6: mit YUV-Blit auf Desktop 7: mit YUV-Blit auf 800*600 HiColor 8: mit YUV-Blit auf 800*600 TrueColor 9 .. 14 ... Erklaerung: - die RGB-Modi sind sehr langsam - YUV-Blit bedeutet, dasz die Videodaten im YUV-Modus in den nicht sichtbaren Teil des Videospeichers geschrieben werden, und dann mit Hardware-Blit mit Colorspace-Konvertierung auf den sichtbaren Videospeicher geschrieben werden - Empfehlung: Modus 4 oder 5 bei verschiedenen S3-Karten (alle neueren mueszten das koennen) Modus 8 oder 7 bei ELSA-Winner 2000-Office, Matrox - bei irgendwelchen DDraw-Fehlern alle Modi durchprobieren - wenn kein Bildschirmmodus angegeben ist, wird der AutoModus genommen /fname: Name einer Testbilddatei zum laden angeben (default ist "TESTBI.BIN") /t: Testmode, es wird eine Testbilddatei geladen und in einer Endlosschleife laufen gelassen. Die WinTV-Karte wird nicht initialisiert und braucht auch nicht im Rechner stecken. im Testmode wird die gemessene Framrate auf die Konsole aus- gegeben. /v: Vebose-Mode (diverse Testausgaben auf die Konsole) /hxxx: horizontale Pixelzahl (Wertebereich 350..800) Default: - 768 bei normalen Modi - 704 bei Videoausgabe (richtig zum Fernsehen mit der ELSA-Winner 2000-Office) gibt die Anzahl der Pixel, wie sie von der WinTV kommen an (ist entscheidend fuer die Geschwindigkeit - weniger Pixel ist schneller) /2 Anzahl Pixel bei Ausgabe verdoppeln (zur Wahrung des Hoehen-/Seiten- verhaeltnisses bei wenig Pixeln. Wird keine Pixelzahl vorgegeben, dann wird die default-Pixelzahl halbiert Default: aus Einige Parameter koennen auch in der INI-Datei angegeben werden, Vorrang haben aber die Kommandozeilenparameter. Die Bedienung erfolgt ueber Hotkeys wie folgt: Ausgabemodi: 'X' Farbausgabe mit MMX-Routinen (default bei MMX) 'C' Farbausgabe ohne MMX (default ohne MMX) 'M' Monochrome Ausgabe ohne MMX-Benutzung (ohne MMX schneller) 'T' Testausgabe-Modus (Es wird nichts in den Bildspeicher geschrieben) Einstellungen fuer Dekodierung: 'A' Automatik fuer Dekodierung einschalten (erkennt anhand der Daten in Bildaustastluecke ob verschluesselt gesendet wird oder unverschluesselt) Defaulteinstellung 'E' schaltet zwischen entschluesselter und unentschluesselter Darstellung um. Gleichzeitig wird die Automatik ausgeschalten 'B' Zeigt Bildaustastluecke an (Entschluesselung wird abgeschalten) Nochmaliges druecken: Normale Darstellung Testbilddaten: 'R' liest die Testbild-Datei ein und stellt sie in Endlosschleife dar mit Messung der Framerate 'W' schreibt die aktuellen Videodaten in die Datei "TESTBI.BIN". Die Datei beinhaltet 10 Vollbilder (0.4 s) in der Form wie sie von der WinTV-Karte kommen und ist ca. 9 MB grosz. Kanaleinstellung: '+' und '-' auf Nummernblock: Kanal vom Anfangs eingestellten vorwaerts bzw. rueckwaerts durchschalten. Folgende Reihenfolge ist festgelegt: - VHF Kanal K2..12 - Sonderkanaele S4..41 - UHF Kanal K21..70 Das Umschalten funktioniert nicht bei Angabe einer Frequenz und bei Video-in sonstige Funktionen: 'I' Bild auf volles Bild zoomen (bei Desktopausgabe) und wieder Normalgroesze bei nochmaligen druecken 'S' Bildausgabe stoppen (Standbild), nochmal druecken zum laufen lassen 'N' Neues Bild im Standbildmodus 'V' Verbose-Modus ein-/ausschalten (diverse Testausgaben auf die Konsole) 'K' Taktzaehlung fuer jedes Vollbild ausgeben '1' nur 1. Halbbild dekodieren (besser, als gar kein Bild bei schlechter Qualitaet oder langsamen Rechner) 'F' Vollen Bildschirm anzeigen (bei Breitwandfilmen werden sonst die schwarzen Balken nicht angezeigt - ist auch schneller) ESC Programm beenden ausgewaehlte Ini-Parameter: Sektion [Settings] -AudioControl: gibt Registerwert fuer die Audiosteuerung an, ist bei Videokarten verschiedener Hersteller unterschiedlich. Bei falschem Wert kommt kein Ton vom Tuner. Werte von 0 bis 15 moeglich. - ReadMapFile: wenn auf 1 gesetzt wird das 28 MB grosze HashFile komplett in den Speicher gelesen und auch alles, was sonst von der Platte gebraucht wird. Vorteil: - hoehere Dekodiergeschwindigkeit, kaum noch Platten- aktivitaeten nach einigen Minuten Laufzeit - man kann die Platten ueber das Powermanagment abschalten Nachteil: Geht nur wenn mind. 64 MB Speicher vorhanden sind, sonst kommt es zu dauernden Festplattenaktivitaeten Einge Eintraege in dieser Sektion sind obsolet, wenn der AutoMode benutzt wird. Sektion [AutoMode] - UseRGB: immer RGB-Modus zu Ausgabe benutzen (CPU-Intensiv, aber offensichtlich bei einigen Grafikkarten schneller als andere Modi - preferOverlay: wenn YUV-Blit und Overlay moeglich, dann Overlay bevorzugen default wird YUV-Blit bevorzugt Performance-Probleme: Das Programm verlangt sehr viel Rechenleistung, weshalb man alle Rechenzeit- intensiven Prgramme beenden bzw. stoppen sollte: - DOS-Boxen schlafen lassen durch Druecken der PAUSE-Taste - Windows-Programme beenden, wenn sie sich als Rechenzeit-Verschwender ausweisen (Acrobat-Reader ist z. B. ein solches). Die Rechenzeitverschwender lassen sich durch die max. Framerate im Test- Modus erkennen. Bei ausreichender Rechenleistung ist das aber selten noetig, da das Programm seine Prioritaet entsprechend hoeher setzt. Soweit das System nicht instabil wird alle Setup-Parameter, die mit Speichergeschwindigkeit zu tun haben auf "besonders schnell" stellen. Nicht-MMX-Prozessoren werden derzeit nicht unterstuetzt ! Da die Ausgaben im Verbose-Modus auch ziemlich viel Zeit brauchen, sollten sie default aus sein ! Sonstige Probleme: Tuner: Falls die Sendereinstellung nicht funktioniert ist der Tunertyp falsch eingestellt (INI). Aeltere WinTV-Karten und Miro-PCTV haben einen Temic-Tuner neuere WinTV-Karten haben einen Philips-Tuner. Evtl. gibt es auch Karten mit noch unbekannten Tuner. Kartentreiber: Das Programm benutzt einen eigenen Treiber, zur Ansprache des Bt848-Chips. Der Kartentreiber wird nicht benoetigt kann aber installiert sein. Ist der Kartentreiber installiert darf man Ihn aber nicht disablen (das Problem habe ich noch nicht genauer untersucht) ! Evtl. musz man den Kartentreiber unter Windows 98 installieren, da die Karte sonst keinen Interrupt abbekommt ! AutoMode: Der AutoMode funktioniert nicht richtig, wenn die Direct-Draw-Infos vom Treiber falsch sind oder die Auto-Mode-Erkennung buggt. Derzeit ist der AutoModus auch noch ziemlich unvollstaendig (z. B. keine Truecolor-Anzeige). Testmode: Beim Testmode werden 20 Frames roher Bilddaten mit den normalen Routinen dekodiert und angezeigt, so wie es im laufenden Betrieb auch passiert. Damit ist eine brauchbare Performance-Messung moeglich. Im Testmodus ("/t" in der Kommandozeile) wird die WinTV-Karte nicht initialisiert. Wenn man dagegen 'R' im laufenden Programm drueckt ist die WinTV-Karte initialisiert und liest weiter die Videodaten in den Hauptspeicher, was unterschiedliche Frameraten erklaert. Im Testmodus sollte die Frame-Rate fuer eine lueckenlose Darstellung min. 27 bis 28 Frames/s sein. Breitwandfilme (mit schwarzem Rand oben und unten) lassen sich einfacher dekodieren, als Filme im vollen Format, wodurch auch hoehere Frameraten erreicht werden. Falls irgendwas nicht funktioniert erstmal Testmode benutzen, das zeigt, ob Direct-Draw und das Programm an sich laeuft. Dann einen unverschluesselten Kanal ansehen. Geht das nicht, liegt wohl irgendein Problem mit der WinTV-Karte vor (IRQ und Memory der WinTV mit den Werten in der Systemsteuerung vergleichen !) Evtl. macht ein gesharter IRQ Probleme. Ansonsten bitte Konsolenausgaben des Programms in Datei umleiten und mir geben (Verbose-Mode einschalten) ! Falls im Normal-Modus nur die Meldung "kein Speicher" kommt, hat der Treiber nicht genuegend nonpaged Speicher vom Kernel bekommen (3*900K). Da der Kernel-Heap vom Win95 offensichtlich keine Garbage-Collection macht, hilft dann meist nur booten ! Eine bessere Loesung ist mir noch nicht eingefallen. Von der CPU wird erwartet, dasz sie den CPUID-Befehl kennt und einen Timestamp-Counter besitzt ! Falls die Entschluessel-Automatik nicht richtig arbeitet (schlechtes Signal oder anderes Programm) mit 'E' im Handbetrieb schalten ! Aufzeichnungen des verschluesselten Signals auf dem Videorekorder werden nur sehr schlecht oder gar nicht dekodiert ! Videoausgabe mit ELSA-Winner 2000/Office: Das Programm behherscht auch die Videoausgabe auf der ELSA-Winner 2000/OFfice inclusive notwendiger Syncronisation um das dekodierte Signal auf den Fernseher oder Videorecorder zu bekommen. Dazu wird der Video-Out-Teil des Permedia-2-Chips und die Philips-IC's SAA7125 und SAA7111 entsprechend programmiert. Dies erfolgt direkt, da kein brauchbares Treiberinterface zur Verfuegung steht. Die Programmierung des Permedia2 wurde nur durch Probieren herausbekommen (keine Doku), so dasz unerwartete Probleme nicht auszuschlieszen sind. Aus dem oben gesagten ergibt sich: - Video-Out-Treiber der ELSA-Karte sollten nicht installiert sein (meist gehts aber auch mit) - die Syncronisierung erfolgt ueber 3 Videobuffer, da die direkte Syncronisierung des Video-Out nicht moeglich ist. Das ist sehr Videospeicherintensiv, das Programm warnt wenn es nicht 3 Videobuffer bekommen hat, laeuft aber trotzdem. In diesem Fall ist diverses Flackern und Zittern des Fernseh-Bildes moeglich. Bei 4 MB Bildspeicher reicht es gerade, fuer den Bildschirmmodus 1024*768 in Hicolor und 3 Videobuffer. - Wer hat eine Doku vom Chip Permedia-2 (Hersteller: 3DLabs) ? Aktivieren des Video-Out: - sicherstellen, dasz der Treiber PERM2.VXD im Dekoderverzeichnis liegt - Bei Benutzung des AutoMode in der Sektion [AutoMode] VideoOut=1 setzen ! Da die Vide-Ausgabe im Huntergrund erfolgt kann das Videofenster auf dem Desktop auch minimiert werden. In der Sektion [Permedia2] lassen sich diverse Parameter zur Videoausgabe einstellen. This file is bringing to you by *MediaMaster* Http://FreeTV.Notrix.de Http://FreeTV.cjb.net