# &kmplayer;-håndbogen

Koos
Vriezen

    koos dot vriezen at gmail dot com

&erik.kjaer.pedersen.role;

2002
2006
Koos Vriezen
&FDLNotice;
2003-12-24
0.05.00

&kmplayer; er et program som er en &kde;-grænseflade for Mplayer, Xine og GStreamer.

KDE
kdemultimedia
MPlayer
konqueror
video

## Indledning

&kmplayer; er en simpel grænseflade for Mplayer, Xine, Gstreamer og FFMpeg. Du kan bruge det til at kigge på alle filmfilformat som Mplayer, Xine eller Gstreamer understøtter, samt kigge på en dvd, vcd eller tv og kamera.

Dokumentationen for &kappname; var ikke færdig da &kde; blev installeret på denne computer.

Hvis du behøver mere hjælp, kig på KDE's hjemmeside for opdateringer, eller send dit spørgsmål til &kde;'s e-mail-liste for brugere.

&kde;-gruppen

## Brugergrænsefladen

Programvinduet består af såkaldte dokningsbare vinduer. Det centrale visningsvindue findes altid. Desuden er der et valgfrit spillelistevindue. Endelig er der et informationsvindue, som kun vises når der er en information at vise.

### Spillelistevinduet

Spillelistevinduet har fem kategorier når dette skrives, nuværende punkt, Optiske diske, Television, Bevarede spillelister og Nyligste. Ved et klik på en kategoris tekst vises dens indhold under linjen. Der skal naturligvis være noget indhold, se for eksempel TV-indstillinger om hvordan man tilføjer indhold for kategorien Television. Kategorien Nyligste udfyldes i når lokale mediafiler eller netværks-url'er afspilles. Denne kategori kan indeholde 60 punkter, hvoraf de sidste 50 er under grenen Mere....

#### Kategorien Bevarede spillelister

Det er muligt at opbevare dine favoritlink i menuen Bogmærker, men de er enkelte punkter. Hvis du vil oprette en liste med punkter som spilles i rækkefølge, skal du bruge kategorien Bevarede spillelister.

Den nemmeste måde at tilføje et punkt til listen er at trække det fra Nyligste og slippe det på Bevarede spillelister. Som du vil se, vises en menu når du slipper det, hvor du kan vælge at tilføje det til denne liste eller oprette en ny gruppe. Punkter på øverste niveau opfører sig som bogmærkepunkter, men punkter i grupper afspiller hele gruppen som de indgår i. Punkter i denne kategori kan nemt flyttes, kopieres, tilføjes til en ny gruppe eller fjernes, blot ved at trække punktet til et andet sted i kategorien. Desuden er der valgmulighederne Slet punkt, Flyt opad og Flyt nedad i den sammenhængsafhængige menu (ved klik med højre museknap på et punkt).

Du kan naturligvis tilføje grupper til grupper for at få et dybere hierarki. Ved klik på et punkt, kopieres dets gruppe og alle undergrupper til den nuværende kategori, og afspilning begynder på det klikkede punkts position.

##### Opbevaringsformat

Data opbevares i `~/.kde/share/apps/kmplayer/playlist.xml`, og dets format er som i dette eksempel. Kig her om hvordan man håndterer denne data direkte.

    <playlist>
        <group title="feeds">
            <item url="http://www.lugradio.org/episodes.rss"/>
            <item url="http://science.nasa.gov/podcast.xml"/>
            <item url="http://www.theworld.org/rss/tech.xml"/>
        </group>
        <group title="iradio">
            <group title="sunny">
                <item mplayeropts="-cache 256" url="http://www.swissgroove.ch/listen.m3u"/>
                <item url="http://www.boombasticradio.com/shoutcast/64.pls"/>
            </group>
            <group title="rainy">
                <item url="http://www.radioparadise.com/musiclinks/rp_64.m3u"/>
                <item url="http://www.woxy.com/stream/wma64.asx"/>
                <item url="http://radionigel.com/winmedia.asx"/>
                <item url="rtsp://livestreams.omroep.nl/live/vpro/vpro3voor12radioalt.rm"/>
            </group>
        </group>
    </playlist>

Bemærk også at egne tilvalg kan indstilles med flaget `mplayeropts` for Mplayer. &kmplayer; søger opad i træet efter dette flag, så du kan indstille det for en hel gruppe og sætte det ud af kraft for en undergruppe eller for et punkt.

### Direkte XML-redigering

Kategorierne Seneste, Television og Bevarede spillelister kan også håndteres ved at redigere deres XML-opbevaring. Man kan naturligvis gøre det når &kmplayer; ikke kører, og redigere de forskellige filer i `~/.kde/share/apps/kmplayer/`, men også i selve programmet. Klik blot på en kategorioverskrift, og vælg derefter Vis og siden Redigeringstilstand. Du kan også klikke på en undergren og så ser du kun XML-indholdet for grenen.

Efter at du har redigeret noget XML, klikkes på Synkronisér med spilleliste og afmarkér enten tilvalget Redigeringstilstand eller klik på en anden kategori.

Alle ændringer går tabt hvis du forlader redigeringstilstand eller vælger en anden gren uden at synkronisere med spillelisten.

På grund af dovenskab blandt &kmplayer;s forfattere, kan visse funktioner kun aktiveres ved at redigere XML.

## Opsætning

### Animering ved start og afslutning

Deaktivering af start- og slutanimeringen kan udføres ved at redigere `~/.kde/share/config/kmplayerrc` og ændre

    [General Options]
      No Intro=0

ovenstående tilvalg til '1'. Tilføj blot dette tilvalg hvis der ikke allerede er der.

Det er også muligt at angive alternative animeringer. Kmplayer kigger på `~/.kde/share/apps/kmplayer/intro.xml` og `~/.kde/share/apps/kmplayer/exit.xml`. Formatet skal være en XML-fil som understøttes.

Den indledende animering behøver ikke være kort, eftersom den automatisk slutter når en anden kilde åbnes. Dette ville naturligvis være noget irriterende for slutanimeringen, men brugeren kan altid afslutte programmet to gange.

Et simpelt eksempel på en indledning, som viser dit favoritfoto kunne være

    <smil>
      <body>
        <img dur="indefinite" src="file:///home/bruger/lillemor.gif" fit="meet"/>
      </body>
    </smil>

I Kmplayers kildekodepakke, under `tests/` er der nogle eksempler på SMIL som Kmplayer understøtter.

## Afspilningsgrænsefladen

&kmplayer; bruger eksterne programmer til at udføre selve afspilningen.

### MPlayer

Der er et indstillingsfaneblad for Mplayer i &kmplayer;s indstillingsdialog. Der kan man blandt andet indstille søgestien til Mplayer og dets cachestørrelse for netværksstrømme.

#### Fejlsøgning

Den bedste måde at fejlsøge i grænsefladen er at starte &kmplayer; fra et terminalprogram såsom konsole. Start derefter en film med Kmplayer og se nøjagtigt den kommandolinje som bruges til at starte Mplayer i terminalprogrammet. Kopiér og indsæt den nu i et andet terminalprogram, fjerne flaget '-wid 12344' og spil den. Formodentlig er det blot om at vælge rigtige parametre for -ao og -vo. Sørg også for at Mplayer ikke er forudindstillet til at starte med en grafisk grænseflade.

Et andet fejlsøgningsværktøj er knappen 'Terminal' i Kmplayers værktøjslinje. Der kan du se uddataen fra Mplayer.

### Xine

Når &kmplayer; er konfigureret med understøttelse for Xine, er der indstillingsfaneblade for Xine i &kmplayer;s indstillingsdialog. Der kan du indstille diverse tilvalg. Disse tilvalg hentes dynamisk fra Xines bibliotek. Brug den sammenhængsafhængige hjælp til at få information om hvad valgmulighederne gør (dvs. klikke på spørgsmålstegnet i dialogens navnelist og klik derefter på et tilvalg).

Tilvalgene gemmes i `.kde/share/apps/kmplayer/xine_config` som et tekstdokument.

#### Fejlsøgning

Hovedsageligt på samme måde at fejlsøge som for Mplayer, men med progravnavnet `kxineplayer`.

### GStreamer

Der er intet indstillingsfaneblad for Gstreamer i &kmplayer;s indstillingsdialog. De sædvanlige valgmulighederne for f.eks. dvd-enheder bruges når det passer.

#### Fejlsøgning

Hovedsagelig på samme måde at fejlsøge som for Mplayer, men med programnavnet `kgstplayer`.

## Kilder som kan afspilles

&kmplayer; kan afspille forskellige kilder. Disse kilder listes i menuen Kilde.

### TV

&kmplayer; kan afspille fra et tv-kort med Mplayer eller Xvideo (ved brug af kxvplayer). Inden du kan kigge på tv skal du indstille hvilken enhed som skal bruges, og tv-kanalerne. Du kan bruge søgefunktionen i indstillingsdialogen til dette, eller redigere indstillingsfilen manuelt.

Indstillingsfilen for tv-indstillingerne er en XML-fil, med navnet `~/.kde/share/apps/kmplayer/tv.xml`. Kig her om hvordan man håndterer denne data direkte. XML-formatet er som følgende eksempel:

    <tvdevices>
        <device path="/dev/video0" width="320" height="240" name="BT878 video (Hauppauge (bt878))" audio=""
                  minwidth="48" minheight="32" maxwidth="924" maxheight="576" playback="0" xvport="240">
            <input name="Television" id="0" tuner="1" norm="PAL" xvenc="0">
                <channel name="Ned1" frequency="21600"/>
                <channel name="VCR" frequency="59490"/>
            </input>
            <input name="Composite1" id="1" xvenc="7"/>
            <input name="S-Video" id="2" xvenc="14"/>
            <input name="Composite3" id="3"/>
        </device>
        <device path="/dev/video1" width="640" height="480" name="Philips 740 webcam" audio=""
                  minwidth="160" minheight="120" maxwidth="640" maxheight="480" playback="1">
            <input name="Webcam" id="0"/>
        </device>
    </tvdevices>

Bemærk at elementerne input som har kanaler, skal have egenskaben tuner indstillet til 1.

Xvideo bruger kun egenskaberne xvport og xvenc og kan kun indstilles ved at redigere filen manuelt. Egenskabernes værdier kan hentes ved at køre kxvplayer i et terminalvindue såsom konsole. For hver port skriver kxvplayer linjer ud som vises nedenfor, og værdierne kan indstilles for de nævnte egenskaber.

        xvport 240
        ....
        encoding: 0 PAL-television
        encoding: 1 NTSC-television
        encoding: 2 SECAM-television
        ....

Desuden ignoreres egenskaberne bredde og højde af Xvideo-afspilleren. Afspilleren henter størrelserna fra X-serveren. En af de gode ting ved Xvideo er at skalering gøres i hardware af videokortet, hvilket giver understøttelse for fuldskærmsvisning uden processorbrug og uden at ændre billedskærmens opløsning. Desuden opstår der ikke noget irriterende flimmer når et andet vindue overlapper videovinduet.

Se afsnittet VDR for mere information om at bruge Xvideo.

### VDR

For at indstille VDR-indstillinger i Kmplayer, bruges indstillingsfeltet Kilde -> VDR -> Xvideo port. Der skal være detekterede porte, hvorfra du skal vælge en. Du skal regne ud hvilken kodning du skal bruge (i vesteuropa er det f.eks. PAL) og formodentlig har den rigtige et navn som indeholder dvb.

Jeg har for eksempel et tv-kort, et DVB-S kort og en web-kamera sluttet til i mit system. Med disse har mine indstillinger tre porte. Den første har en lang liste med NTSC(-JP)/PAL(-M)/SECAM-indgange som alle indeholder noget med television/composite/svideo (mit tv-kort). Den anden har NTSC-dvb/PAL-dvb/SECAM-dvb (mit DVB-S kort). Den tredje har endelig kun ntsc/pal (formodentlig mit web-kamera). Derfor skal jeg indstille (blot ved at markere den) den anden port og den anden indgang (PAL-dvb).

Eftersom VDR-understøttelse i Kmplayer kun kan bruge Xvideo, burde Xvideo naturligvis virke (og jeg tror at denne måde at kigge på videoenheder kun virker med Linux). Dette virker også kun på den første skærm (:0.0). Sørg altså for at udvidelsen videoforlinux virker med X-serveren. For XFree86-serveren, skal følgende være i indstillingsfilen (`/etc/X11/XF86Config`):

    Section "Module"
         ....
         Load    "v4l"
    EndSection

Desværre skal du indstille dette igen ligeså snart du opdaterer din videodriver.

### Kommandolinje

Internt bruger Kmplayer distinkte navne for kilder. På det tidspunkt hvor dette skrives er de "dvdnavsource", "dvdsource", "exitsource", "hrefsource", "introsource", "pipesource", "tvscanner", "tvsource", "urlsource", "vcdsource" og "vdrsource". Når de aktiveres begynder de som regel at spille listen med spilbare punkter.

Du kan aktivere en bestemt kilde med URL `kmplayer://`. Angiv blot værtsdelen som kildens navn og den valgfrie del som ekstra argument, hvilket vil kunne se ud som `kmplayer://vdrsource/22 MTV 2` for en kanal fra "vdrsource". For eksempel starter følgende script Kmplayer med "dvdnavsource" og bruger DCOP til at afspille i fuldskærmstilstand.

    /bin/bash
    kmplayer kmplayer://dvdnavsource/ &
    PID=$!
    sleep 2
    dcop kmplayer-$PID KMediaPlayer toggleFullScreen

Dette udfører ikke meget for visse kilder, eftersom de ikke er beregnede til normal afspilning. Det er deaktiveret for "pipesource", eftersom det naturligvis ville være et alvorligt sikkerhedshul.

## Spørgsmål, svar og tips

### Ofte stillede spørgsmål

Xine starter langsomt, hvorfor skal den måle min processorydelse hele tiden?

Bemærk at svaret nedenfor er forældet. kxineplayer gemmer den automatisk til den seneste værdi, så xine udfører kun processortesten første gangen.

Grænsefladen for Xine i &kmplayer;, kxineplayer, bruger `~/.kde/share/apps/kmplayer/xine_config` til sine indstillinger. Indstillingerne for Xine er i indstillingsdialogen General Options|Xine. (Hvis du ændrer et punkt der og gemmer det, indeholder `~/.kde/share/apps/kmplayer/xine_config` også en del forklaringer). Målingen af processorydelse forårsages af at punktet `misc.memcpy_method` er indstillet til `probe`. For at finde ud af hvilken version af hukommelseskopiering som er hurtigst for dig, aktiveres Vis terminaludskrift i menuen Vis og kig på resultatet af målingen når du spiller noget med Xine. Indstil `misc.memcpy_method` til metoden med kortest tid.

Nogle tip til at gøre cdrom-enheden mere stille når den bruges til afspilning (ikke VCD://)?

Selvfølgelig, prøv `hdparm -E 8 /dev/cdrom` som systemadministrator, efter at have monteret enheden. Men sørg for at du dobbelttjekker at `/dev/cdrom` peger på cdrom-enheden.

## Medvirkende og licens

&kmplayer; ophavsret 2002, 2003 Koos Vriezen

&underFDL; &underGPL;

&documentation.index;