Merge svn changes up to r27332

This commit is contained in:
Uoti Urpala committed 2008-07-21 15:03:49 +03:00
commit 2d4656e070
54 files changed
+1364 -1381

No files matched your search

+36 -27
View File
@@ -1,4 +1,4 @@
.\" Synced with r26909
.\" Synced with r27236
.\" MPlayer (C) 2000-2008 MPlayer Team
.\" Ezt a man oldalt Gabucino, Diego Biurrun és Jonas Jermann készíti/készítette
.\" Karbantartó: Gabrov
@@ -33,7 +33,7 @@
.\" Név
.\" --------------------------------------------------------------------------
.
.TH MPlayer 1 "2008. 06. 02." "MPlayer Project" "A film lejátszó"
.TH MPlayer 1 "2008. 07. 18." "MPlayer Project" "A film lejátszó"
.
.SH NÉV
mplayer \- film lejátszó
@@ -63,7 +63,7 @@ mencoder \- film k
.
.br
.B mplayer
[dvd|dvdnav]://[sáv|[kezdő_sáv]\-vég_sáv]
[dvd|dvdnav]://[sáv|[kezdő_sáv]\-vég_sáv][/eszköz]
[opciók]
.
.br
@@ -825,7 +825,7 @@ Csak a cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix, xover, xv
meghajtók támogatják.
.
.TP
.B \-correct\-pts (kísérleti)
.B \-correct\-pts (KÍSÉRLETI)
Átváltja az MPlayert egy kísérleti módba, melyben a videó kockák időbélyege
másképp lesz kiszámítva és támogatottak lesznek azok a szűrők, melyek új kockákat
szúrnak be vagy a meglévőek időbélyegét módosítják.
@@ -872,7 +872,7 @@ Jelenleg a k
xmga, xv, xvidix és dfbmga.
.
.TP
.B \-framedrop (lásd még \-hardframedrop, \-no\-correct\-pts nélkül csak kísérleti jelleggel)
.B \-framedrop (lásd még \-hardframedrop, \-nocorrect\-pts nélkül csak kísérleti jelleggel)
Néhány képkocka megjelenítésének hanyagolása, hogy lassú rendszereken is
megfelelő legyen az A/V szinkron. A videó szűrők nem vonatkoznak ezekre
a képkockákra.
@@ -889,7 +889,7 @@ Nem m
Rövid segítő szöveg kiírása.
.
.TP
.B \-hardframedrop (\-no\-correct\-pts nélkül csak kísérleti jelleggel)
.B \-hardframedrop (\-nocorrect\-pts nélkül csak kísérleti jelleggel)
Intenzívebb képkockaeldobás (a dekódolási minőség rovására).
Torz képekhez vezet!
Figyelj rá, hogy különösen a libmpeg2 dekódolóval ez összeomolhat,
@@ -905,15 +905,15 @@ Az MPlayer ezt a parancsot ellen
hogy ne okozzon biztonsági problémát (pl.\& győződj meg róla, hogy teljes elérési
utakat használsz, ha a "." benne van az elérési utadban, mint Windows alatt).
.sp 1
Ezt "ki lehet használni" az olyan képernyővédő letiltásához, amely nem támogatja
ehhez a megfelelő X API-t.
Ha úgy gondolod, hogy ez túl komplikált, kérd meg a képernyővédő szerzőjét, hogy
támogassa a szükséges X API-kat.
Ezt "ki lehet használni" az olyan képernyővédő letiltásához, amely nem
támogatja ehhez a megfelelő X API-kat.
Ha úgy gondolod, hogy ez túl komplikált, kérd meg a képernyővédő
szerzőjét, hogy támogassa a szükséges X API-kat.
.sp 1
.I PÉLDA az xscreensaver-hez:
mplayer \-heartbeat\-cmd "xscreensaver\-command \-deactivate" fájl
.sp 1
.I PÉLDA a gnome képernyővédőjéhez:
.I PÉLDA a GNOME képernyővédőjéhez:
mplayer \-heartbeat\-cmd "gnome\-screensaver\-command \-p" fájl
.RE
.PD 1
@@ -1039,6 +1039,10 @@ t
Szükséges a dvd menükben a gombok kiválasztásához.
.
.TP
.B \-noar
Kikapcsolja az AppleIR távirányító támogatását.
.
.TP
.B \-noconsolecontrols
Megtiltja az MPlayernek a billentyűzet események olvasását a standard
input-ról. Hasznos, ha a standard input-ról olvasol be adatot.
@@ -1057,10 +1061,6 @@ Joystick t
LIRC támogatás kikapcsolása.
.
.TP
.B \-noar
Kikapcsolja az AppleIR távirányító támogatását.
.
.TP
.B \-nomouseinput
Kikapcsolja az egérgomb nyomás/\:felengedés input-ot (a mozplayerxp
helyzetérzékeny menüje igényli ezt a kapcsolót).
@@ -1901,7 +1901,7 @@ L
Beállítja a tunert az <érték> csatornára.
.IPs chanlist=<érték>
elérhető: europe-east, europe-west, us-bcast, us-cable, stb.
.IPs channels=<csatorna>\-<név>,<csatorna>\-<név>,...
.IPs channels=<csatorna>\-<név>[=<norma>],<csatorna>\-<név>[=<norma>],...
Csatornák neveinek beállítása.
.I MEGJEGYZÉS:
Ha a <csatorna> 1000-nél nagyobb egész, frekvenciaként lesz értelmezve (kHz-ben)
@@ -5371,7 +5371,7 @@ a lej
Ez az audió \'átlépő\' ms-einek normál sebességű lejátszásával történik,
ehhez \'átlépés*módosítás\' ms bemeneti audiót használ fel.
Az előző lépés utáni audióból összegyűjti a lépéseket a lépések egyesített
'átfedés'%-aival.
\'átfedés\'%-aival.
Opcionálisan egy rövid statisztikai analízist is lefuttat az audió következő
\'keresési\' ms-éig a legjobb átfedési pozíció meghatározásához.
.PD 0
@@ -5400,7 +5400,7 @@ Lass
Beállítja a választ a sebesség változására.
.RSss
.IPs tempo
A tempót a sebességgel szinkronban módosítja (alapértelmezett)
A tempót a sebességgel szinkronban módosítja (alapértelmezett).
.IPs pitch
Megfordítja a szűrő hatását.
Módosítja a hangmagasságot a tempó módosítása nélkül.
@@ -5409,9 +5409,9 @@ az input.conf-odba a zenei f
.I FIGYELMEZTETÉS:
Elveszti a szinkronizációt a videóval.
.IPs both
Módosítja mind a tempót, mind a hangmagasságot
Módosítja mind a tempót, mind a hangmagasságot.
.IPs none
Figyelmen kívül hagyja a sebességváltozásokat
Figyelmen kívül hagyja a sebességváltozásokat.
.RE
.RE
.sp 1
@@ -5523,8 +5523,11 @@ Haszn
.
.TP
.B rectangle[=w:h:x:y]
Ez a szűrő az input.conf 'change_rectangle' direktívájának megfelelője,
melynek két paramétere van.
Kirajzol egy téglalapot a megadott szélességgel és magassággal a megadott
koordinátákon a kép fölé és kiírja a téglalap adatait a konzolra.
Ez az optimális vágási paraméterek megtalálásában segíthet.
Ha az input.conf 'change_rectangle' direktívájához hozzárendelsz gombokat,
menet közben mozgathatod és átméretezheted a téglalapot.
.PD 0
.RSs
.IPs <w>,<h>
@@ -7398,7 +7401,7 @@ A kimeneti f
A codec specifikus kódolási paramétereket a következő szintaxissal adhatod meg:
.
.TP
.B \-<codec>opts <opció1[=érték],opció2,...>
.B \-<codec>opts <opció1[=érték1]:opció2[=érték2]:...>
.
.PP
Ahol a <codec> lehet: lavc, xvidenc, lame, toolame, twolame,
@@ -10547,6 +10550,10 @@ jelenleg csak MPEG[12] eset
Néha szükséges növelni a "buffer alulcsordulás" elkerüléséhez.
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: nem dokumentált
.
.TP
.B packetsize=<méret>
A kiválasztott formátum egységes csomagmérete, bájtokban kifejezve.
MPEG[12] implementációkba történő muxálásánál az alapértelmezett értékek:
@@ -10559,10 +10566,6 @@ m
időbélyeg (DTS) között bármelyik jelenlévő folyamnál
(késleltetés demux-ból dekódolásba).
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: nem dokumentált
.
.
.
.\" --------------------------------------------------------------------------
@@ -10716,6 +10719,12 @@ FIXME: Ezt m
.B VIDIX_CRT
FIXME: Ezt még dokumentálni kell.
.
.TP
.B VIDIXIVTVALPHA
Ha ennek az értéke 'disable', a VIDIX vezérlő nem fogja változtatni az
alphablending beállításait.
Te továbbra is tudod módosítani őket az 'ivtvfbctl' paranccsal.
.
.SS osdep:
.
.TP
+7
View File
@@ -990,6 +990,9 @@ Specifica il file di configurazione dell'input se diverso da quello di default
~/\:.mplayer/\:input.conf.
Se il parametro è senza percorso completo viene considerato
~/\:.mplayer/\:<nomefile>.
.IPs ar-dev=<dispositivo>
Dispositivo da usare per il telecomando Apple IR (solo Linux, rilevato
automaticamente di default).
.IPs ar-delay
Ritardo in msec prima di cominciare ad autoripetere un tasto (0 per disabilitare)
.IPs ar-rate
@@ -3499,6 +3502,8 @@ esegui MPlayer con l'opzione \-v e dai un'occhiata alle linee segnate
con [xv common] all'inizio.
.PD 0
.RSs
.IPs adaptor=<numero>
Seleziona un adattatore XVideo specifico (vedi l'emissione di xvinfo).
.IPs port=<numero>
Seleziona una porta XVideo specifica.
.IPs ck=<cur|use|set>
@@ -3548,6 +3553,8 @@ Video Motion Compensation) di XFree86 4.x. per velocizzare la decodifica
dei formati MPEG-1/2 e VCR2.
.PD 0
.RSs
.IPs adaptor=<numero>
Seleziona un adattatore XVideo specifico (vedi l'emissione di xvinfo).
.IPs port=<numero>
Seleziona una porta XVideo specifica.
.IPs (no)benchmark
+10 -11
View File
@@ -1,7 +1,6 @@
# Makefile for generating the HTML documentation
# List of subdirectories to be processed.
SUBDIRS = en es fr hu it pl cs de ru zh_CN
include ../../config.mak
# Generated chunked HTML files go here.
HTML_CHUNKED = ../HTML
@@ -14,10 +13,10 @@ all: html-chunked html-single
help:
@echo "Targets:"
@echo "********"
@echo "all : Build everything (default)."
@echo "html-single : Build HTML documentation (single file)."
@echo "all : Build everything for configured languages (default)."
@echo "html-single : HTML documentation for configured languages (single file)"
@echo "html-single-LANG : As above, but only one language."
@echo "html-chunked : Build HTML documentation (multiple files)."
@echo "html-chunked : HTML documentation for configured languages (multiple files)"
@echo "html-chunked-LANG : As above, but only one language."
@echo "xmllint : Check syntax of all xml files."
@echo "xmllint-LANG : Check syntax of LANG xml files."
@@ -29,17 +28,17 @@ help:
@echo "clean-LANG : Remove HTML files for one language."
@echo "releaseclean-LANG : Remove generated files for one language."
@echo "distclean-LANG : Remove ALL generated files for one language."
@echo "Substitute LANG for one of $(SUBDIRS)"
@echo "Substitute LANG for one of $(DOC_LANG_ALL)"
html-chunked: xsltproc.sh xmllint.sh chunked-dir $(addprefix html-chunked-,$(SUBDIRS))
html-chunked: xsltproc.sh xmllint.sh chunked-dir $(addprefix html-chunked-,$(DOC_LANGS))
chunked-dir:
-mkdir -p $(HTML_CHUNKED)
html-single: xsltproc.sh xmllint.sh single-dir $(addprefix html-single-,$(SUBDIRS))
html-single: xsltproc.sh xmllint.sh single-dir $(addprefix html-single-,$(DOC_LANGS))
single-dir:
-mkdir -p $(HTML_SINGLE)
xmllint: xmllint.sh $(addprefix xmllint-,$(SUBDIRS))
xmllint: xmllint.sh $(addprefix xmllint-,$(DOC_LANG_ALL))
clean-html-chunked:
-rm -rf $(HTML_CHUNKED)
@@ -47,7 +46,7 @@ clean-html-chunked:
clean-html-single:
-rm -rf $(HTML_SINGLE)
releaseclean: $(addprefix releaseclean-,$(SUBDIRS))
releaseclean: $(addprefix releaseclean-,$(DOC_LANG_ALL))
-rm -f html-chunk.xsl html-single.xsl xsltproc.sh xmllint.sh
distclean: clean releaseclean
@@ -78,7 +77,7 @@ releaseclean-$(1):
$(MAKE) HTMLDIR=../$(HTML_CHUNKED)/$(1) -C $(1) distclean
endef
$(foreach lang, $(SUBDIRS),$(eval $(call lang-def,$(lang))))
$(foreach lang, $(DOC_LANG_ALL),$(eval $(call lang-def,$(lang))))
.PHONY: all help html-chunked* chunked-dir html-single* single-dir xmllint*
.PHONY: clean-html-chunked clean-html-single releaseclean* distclean* clean*
+1 -1
View File
@@ -152,7 +152,7 @@ else
echo "Found docbookx.dtd at $_dtd"
fi
for lang in `grep 'SUBDIRS =' Makefile|cut -d= -f2`; do
for lang in `grep 'DOC_LANGS =' ../../config.mak|cut -d= -f2`; do
cat > $lang/main.xml << EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!-- **************************************************
+3 -3
View File
@@ -106,7 +106,7 @@ núcleo 2.4.x es recomendado.
</sect2>
<sect2>
<sect2 id="seccion_codecs">
<title>Codecs</title>
<itemizedlist>
@@ -415,7 +415,7 @@ funciona con los siguientes controladores:
</sect2>
<sect2>
<sect2 id="caracteristicas">
<title>Características</title>
<itemizedlist>
@@ -778,7 +778,7 @@ Hay muchas maneras de conseguirlo:
<command>konwert</command> o <command>iconv</command>.
</para><para>
<table>
<table id="algunas_urls">
<title>Algunas URLs</title>
<tgroup cols="2">
<thead>
+3 -3
View File
@@ -90,7 +90,7 @@ se inserta en el archivo de destino... y ¡ya está todo hecho!
</para></step>
</procedure>
<example>
<example id="example_3_pass">
<title>Ejemplo de codificación en 3-pasadas</title>
<para>
<screen>rm frameno.avi</screen>
@@ -448,7 +448,7 @@ archivos <filename>.idx</filename> y <filename>.sub</filename> ya existen.
Debería borrarlos antes de comenzar.
</para>
<example>
<example id="copiando_dos_subtitulos_dvd_mientras_codificacion">
<title>Copiando dos subtítulos desde un DVD mientras se hace la
codificación en 3-pasadas</title>
<screen>
@@ -459,7 +459,7 @@ mencoder dvd://1 -oac copy -ovc divx4 -pass 2 -vobsubout subtitles -vobsuboutind
--></screen>
</example>
<example>
<example id="copying_a_french_subtitle_from_an_mpeg_file">
<title>Copiando un subtítulo francés desde un archivo MPEG</title>
<screen>
rm subtitles.idx subtitles.sub
+1 -1
View File
@@ -123,7 +123,7 @@ usando la opción <option>-input <replaceable>conf</replaceable></option>
(ruta relativa a <filename>$HOME/.mplayer</filename>).
</para>
<example>
<example id="input_control_file">
<title>Un archivo de control simple</title>
<programlisting>
##
+1 -1
View File
@@ -668,7 +668,7 @@ en la (si está presente) banda negra.
</varlistentry>
</variablelist>
<table>
<table id="teclas_sdl">
<title>Teclas solo para SDL</title>
<tgroup cols="2">
<thead>
+1 -1
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21537 -->
<!-- synced with r26990 -->
<chapter id="audio">
<title>Audió kimeneti eszközök</title>
<sect1 id="sync">
+1 -1
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r23225 -->
<!-- synced with r26990 -->
<appendix id="bugreports">
<title>Hogyan jelentsd a hibákat</title>
+1 -1
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r23516 -->
<!-- synced with r26990 -->
<appendix id="bugs">
<title>Ismert hibák</title>
+7 -7
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24346 -->
<!-- synced with r26990 -->
<chapter id="cd-dvd">
<title>CD/DVD használat</title>
@@ -226,11 +226,11 @@ Egy Video CD (VCD) CD-ROM XA szektorokból áll, pl. CD-ROM 2-es módban
<itemizedlist>
<listitem><para>
Az első sáv 2-es módban, 2-es formátumban van, ami azt jelenti, hogy L2
hibajavítást használ. A sáv ISO-9660 fájlrendszert tartalmaz 2048
bájt/szektorral. Ez a fájlrendszer VCD metaadat információkat tartalmaz,
hibajavítást használ. A sáv ISO-9660 fájl rendszert tartalmaz 2048
bájt/szektorral. Ez a fájl rendszer VCD metaadat információkat tartalmaz,
valamint gyakran a menükben alkalmazott képkockákat. A menük MPEG
szegmensei is ezen az első sávon tárolhatóak, de az MPEG-eket fel kell
osztani 150 szektoros csonkokra. Az ISO-9660 fájlrendszer tartalmazhat
osztani 150 szektoros csonkokra. Az ISO-9660 fájl rendszer tartalmazhat
egyéb fájlokat vagy programokat, amik a VCD működése szempontjából nem
lényegesek.
</para></listitem>
@@ -241,7 +241,7 @@ Egy Video CD (VCD) CD-ROM XA szektorokból áll, pl. CD-ROM 2-es módban
Ezek 2-es mód 1-es formátumban vannak, így több adatot tárolnak
szektoronként némi hibajavítás elveszítése árán. Lehet CD-DA sáv is a
VCD-n az első sáv után. Némelyik operációs rendszeren van egy kis csalás,
amivel ezek a nem-ISO-9660 sávok megjelennek a fájlrendszerben. Más
amivel ezek a nem-ISO-9660 sávok megjelennek a fájl rendszerben. Más
operációs rendszereken, például GNU/Linux-on ez nem így van (még). Itt
az MPEG adat <emphasis role="bold">nem mountolható</emphasis>. Mivel a
legtöbb film ilyen típusú sávon belül van, először próbáld ki a
@@ -250,7 +250,7 @@ Egy Video CD (VCD) CD-ROM XA szektorokból áll, pl. CD-ROM 2-es módban
<listitem><para>
Léteznek olyan VCD lemezek is, melyeken nincs meg az első sáv (egy sáv és
egyáltalán nincs fájlrendszer). Ezek szintén lejátszhatóak, de nem lehet
egyáltalán nincs fájl rendszer). Ezek szintén lejátszhatóak, de nem lehet
őket becsatolni.
</para></listitem>
@@ -274,7 +274,7 @@ elérést az alkalmazásoknak). Linux alatt nem tudod átmásolni vagy lejátsza
az ilyen fájlokat (szemét van bennük). Windows alatt lehetséges, mivel az
iso9660 vezérlője a sávok nyers olvasását emulálja ebben a fájlban. A .DAT
fájlok lejátszásához szükséged lesz egy kernel vezérlőre, ami a PowerDVD
Linuxos verziójában található. Ez egy módosított iso9660 fájlrendszer vezérlőt
Linuxos verziójában található. Ez egy módosított iso9660 fájl rendszer vezérlőt
(<filename>vcdfs/isofs-2.4.X.o</filename>) tartalmaz, ami képes a nyers sáv
emulációra ezen ál .DAT fájlon keresztül. Ha az ő vezérlőjük segítségével
csatolod be a lemezt, át tudod másolni és le tudod játszani a .DAT fájlt az
+5 -8
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r26729 -->
<!-- synced with r27102 -->
<chapter id="codecs">
<title>Codec-ek</title>
@@ -96,8 +96,8 @@ lehetséges pár formátumba, melyeket támogat is a
<para>
Az összes támogatott
<ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC19">videó</ulink>
és <ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC20">audió</ulink>
<ulink url="http://ffmpeg.mplayerhq.hu/general.html#SEC6">videó</ulink>
és <ulink url="http://ffmpeg.mplayerhq.hu/general.html#SEC7">audió</ulink>
codec-ek listájáért látogasd meg az FFmpeg weboldalát.
</para>
@@ -174,10 +174,7 @@ mivel jobb a sebessége.
<filename class="directory">/usr/local/include/</filename>könyvtárba.
</para></step>
<step><para>
Fordítsd újra az <application>MPlayer</application>t a
<option>--with-xvidlibdir=<replaceable>/eleresi/ut/</replaceable>libxvidcore.a</option>
<option>--with-xvidincdir=<replaceable>/eleresi/ut/</replaceable>xvid.h</option>
kapcsolókkal.
Fordítsd újra az <application>MPlayer</application>t.
</para></step>
</procedure>
</sect2>
@@ -386,7 +383,7 @@ eleget teszel az <systemitem class="library">x264</systemitem> követelményeine
Voxware audió (DirectShow DLL használatával)
</para></listitem>
<listitem><para>
alaw és ulaw, számos gsm, adpcm és pcm formátum és más, egyszerű, régi
alaw és ulaw, számos GSM, ADPCM és PCM formátum és más, egyszerű, régi
audió codec
</para></listitem>
<listitem><para>
+6 -10
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24056 -->
<!-- synced with r27107 -->
<chapter id="containers">
<title>Konténerek</title>
@@ -83,7 +83,7 @@ jelenti, hogy egy MPEG fájlt szabványos fájl eszközökkel (például
</para>
<para>
Az MPG-k egyik legfontosabb tulajdonsága, hogy van egy mezőjük, mely a
Az MPEG-ek egyik legfontosabb tulajdonsága, hogy van egy mezőjük, mely a
videó folyam képarányát írja le. Például az SVCD-knek 480x480 felbontású
videójuk van, a fejlécben ilyenkor ez a mező 4:3 arányra van állítva, ezért
játszódnak le 640x480-ban. Az AVI fájlokból gyakran hiányzik ez a mező,
@@ -321,8 +321,8 @@ a Return to Castle Wolfenstein.
<title>OGG/OGM fájlok</title>
<para>
Ez egy új fájlformátum a
<ulink url="http://www.xiph.org">Xiphophorus</ulink>-tól.
Ez egy új fájl formátum a
<ulink url="http://www.xiph.org">Xiph.Org Alapítvány</ulink>tól.
Bármilyen videó és audió codec-et tartalmazhat, CBR vagy VBR. El kell végezned
a <systemitem class="library">libogg</systemitem> és a
<systemitem class="library">libvorbis</systemitem> telepítését az
@@ -395,7 +395,7 @@ További infók a <ulink url="http://www.matroska.org/">hivatalos weboldalukon</
<para>
A NUT az <application>MPlayer</application>es és az <application>FFmpeg</application>es
emberkék által kifejlesztett konténer formátum. Mindkét projekt támogatja.
További infókat a <ulink url="http://www.nut.hu/">hivatalos weboldalon</ulink> olvashatsz.
További infókat a <ulink url="http://www.nut-container.org/">hivatalos weboldalon</ulink> olvashatsz.
</para>
</sect2>
@@ -508,7 +508,7 @@ kapcsolókat adhatsz tovább a <application>cdparanoia</application>-nak.
<para>
Az <application>MPlayer</application> fel tudja használni az <application>XMMS</application>
bemeneti plugin-jeit több fájl formátum lejátszásához. Van plugin SNES játék hangok, SID
hangok (Commodore 64), sok Amiga formátum, .xm, .it, VQF, musepack, Bonk,
hangok (Commodore 64), sok Amiga formátum, .xm, .it, VQF, Musepack, Bonk,
és számos egyéb lejátszásához. Megtalálhatóak az
<ulink url="http://www.xmms.org/plugins.php?category=input">XMMS bemeneti plugin oldalán</ulink>.
</para>
@@ -517,10 +517,6 @@ hangok (Commodore 64), sok Amiga formátum, .xm, .it, VQF, musepack, Bonk,
Ehhez a képességhez <application>XMMS</application> és
<filename>./configure --enable-xmms</filename> kapcsolóval fordított
<application>MPlayer</application> kell.
Ha ez nem működik, pontosan meg kell adnod az <application>XMMS</application>
plugin és függvénykönyvtár elérési útvonalát a
<option>--with-xmmsplugindir</option> és <option>--with-xmmslibdir</option>
kapcsolókkal.
</para>
</sect2>
</sect1>
+17 -21
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r25566 -->
<!-- synced with r27211 -->
<bookinfo id="toc">
<title><application>MPlayer</application> - The Movie Player</title>
@@ -48,11 +48,9 @@ olvasd el a <xref linkend="faq"/>-t, vagy greppelj a file-okban. A legtöbb
kérdésre fogsz választ találni, amire pedig nem, az nagy valószínűséggel már
megválaszolásra került valamelyik
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">levelezési listán</ulink>.
<!-- FIXME: This refers to nonexistent links
Nézd meg az
<ulink url="http://lists.mplayerhq.hu/cgi-bin/s-arch.cgi">archivumot</ulink>,
<ulink url="https://lists.mplayerhq.hu/mailman/listinfo">archivumot</ulink>,
mert rengeteg értékes információt tartalmaz.
-->
</para>
</preface>
@@ -61,17 +59,16 @@ mert rengeteg értékes információt tartalmaz.
<para>
Az <application>MPlayer</application> egy Linuxon működő videolejátszó (fut
számos más Unix-on és akár <emphasis role="bold">nem-x86</emphasis> processzorokon
is, lásd <xref linkend="ports"/>).
Le tudja játszani a legtöbb MPEG, VOB, AVI, OGG/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4,
számos más Unix-on és nem-x86 processzorokon is, lásd <xref linkend="ports"/>).
Le tudja játszani a legtöbb MPEG, VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4,
FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ, PVA, és Matroska file-t, és ezekhez
felsorakoztat jónéhány natív, XAnim, RealPlayer és Win32 DLL codecet. Nézhetsz vele
<emphasis role="bold">VideoCD-t, SVCD-t, DVD-t, 3ivx, RealMedia, Sorenson, Theora</emphasis>
és <emphasis role="bold">MPEG-4 (DivX)</emphasis> filmet is. Az <application>MPlayer</application>
Video CD-t, SVCD-t, DVD-t, 3ivx, RealMedia, Sorenson, Theora
és MPEG-4 (DivX) filmet is. Az <application>MPlayer</application>
másik nagy előnye a megjelenítési módok széles választékában rejlik.
Működik X11, Xv, DGA, OpenGL, SVGAlib,
fbdev, AAlib, libcaca, DirectFB, sőt SDL-lel vagy GGI-vel is (beleértve ezáltal
az SDL/GGI drivereit is), és néhány alacsonyszintű kártyaspecifikus vezérlő
az SDL/GGI drivereit is), és néhány alacsony szintű kártyaspecifikus vezérlő
(Matrox, 3dfx, Radeon, Mach64, Permedia3) is használható!
Legtöbbjük támogat szoftveres vagy hardveres nagyítást, így a teljesképernyős
mód is elérhető. Az <application>MPlayer</application> támogat továbbá hardveres
@@ -79,14 +76,14 @@ MPEG kártyákkal történő dekódolást/megjelenítést, így például a
<link linkend="dvb">DVB</link> és <link linkend="dxr3">DXR3/Hollywood+</link>
kártyákon!
És még nem is szóltam a szép, élsímított, árnyékolt feliratozásról
(<emphasis role="bold">14 támogatott típus!</emphasis>),
ami támogat európai/ISO-88592-1,2 (magyar, angol, cseh, stb), cirill és koreai
fontokat, valamint az OSD-ről!
(14 támogatott típus!), ami támogat európai/ISO-88592-1,2 (magyar, angol, cseh,
stb), cirill és koreai fontokat, valamint az OSD-ről!
</para>
<para>
A lejátszó sziklaszilárdan játszik le hibás MPEG file-okat (hasznos néhány
VCD-nél), és minden olyan hibás AVI-t, amit a csodás Windows Media Player nem.
VCD-nél), és minden olyan hibás AVI-t, amit a csodás
<application>Windows Media Player</application> nem.
Még az index chunk nélküli AVI-k is lejátszhatók, sőt az indexet ideiglenesen
fel is lehet építeni az <option>-idx</option> opcióval (vagy véglegesen a
<application>MEncoder</application>rel), így tekerni is lehet bennük! Amint
@@ -99,13 +96,12 @@ videó-audió szerkesztéshez.
A <application>MEncoder</application> (<application>MPlayer's</application> Movie
Encoder) egy egyszerű film kódoló, az <application>MPlayer</application> által
ismert formátumok
(<emphasis role="bold">AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA</emphasis>)
(AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA)
más <application>MPlayer</application> által lejátszható formátumokba való
átalakításához (lásd lejjebb).
Sokféle codec-kel tud kódolni, például <emphasis role="bold">MPEG-4 (DivX4)</emphasis>-gyel
Sokféle codec-kel tud kódolni, például MPEG-4-gyel (DivX4)
(egy vagy két menetes), a <systemitem class="library">libavcodec</systemitem>-et
alkotó codec-ekkel, audiót tekintve pedig
<emphasis role="bold">PCM/MP3/VBR MP3</emphasis> a választék.
alkotó codec-ekkel, audiót tekintve pedig PCM/MP3/VBR MP3 a választék.
</para>
<itemizedlist>
@@ -119,7 +115,7 @@ alkotó codec-ekkel, audiót tekintve pedig
által támogatott összes formátumba tud tömöríteni
</para></listitem>
<listitem><para>
Videó grabbelés <emphasis role="bold">V4L kompatibilis TV tunerekről</emphasis>
Videó grabbelés V4L kompatibilis TV tunerekről
</para></listitem>
<listitem><para>
Helyes index-szel rendelkező AVI fájlok kódolása/multiplexelése
@@ -131,7 +127,7 @@ alkotó codec-ekkel, audiót tekintve pedig
1, 2 vagy 3 menetes kódolás
</para></listitem>
<listitem><para>
<emphasis role="bold">VBR</emphasis> MP3 audió
VBR MP3 audió
<important><para>
a VBR-es MP3-akat nem minden Windows rendszerre elérhető lejátszó kezeli helyesen!
</para></important>
@@ -143,7 +139,7 @@ alkotó codec-ekkel, audiót tekintve pedig
Stream másolás
</para></listitem>
<listitem><para>
Bemeneti file A/V szinkronizálása (PTS-alapú, az
Bemeneti file A/V szinkronizálása (pts-alapú, az
<option>-mc 0</option> opcióval kikapcsolható)
</para></listitem>
<listitem><para>
+17 -17
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r26925 -->
<!-- synced with r26990 -->
<chapter id="encoding-guide">
<title>Kódolás a <application>MEncoder</application>rel</title>
@@ -438,7 +438,7 @@ tengelyen, a másik a kék-sárga tengelyen).
Ha a film szélessége és magassága nem 16 többszöröse, a kódoló akkor is
elegendő 16x16-os makroblokkot fog használni, hogy lefedje a teljes
képet, a maradék hely veszendőbe megy.
Így ha a minőség maximalizálása a cél egy fix fájlmérettel, akkor
Így ha a minőség maximalizálása a cél egy fix fájl mérettel, akkor
eléggé rossz ötlet nem 16 valamelyik többszörösét használni méretként.
</para>
@@ -1185,8 +1185,8 @@ Az egyetlen dolog, amit szeretnél, a videó nagyon könnyű zajszűrőn törté
bitek jobb felhasználásáról van szó: miért vesztegessük el őket a zaj
kódolására, ha ezt a zajt lejátszás közben is hozzá tudod adni? A
<option>hqdn3d</option> paramétereinek növelésével még jobb tömörítettséget
érhetsz el, de ha túl magasra állítod az értékeket, rontod a kép
láthatóságát.
érhetsz el, de ha túl magasra állítod az értékeket, akkor láthatóan rontod
a kép minőségét.
A fent javasolt értékek (<option>2:1:2</option>) eléggé konzervatívak;
kísérletezz szabadon nagyobb értékekkel és ellenőrizd az eredményeket magad.
</para>
@@ -1548,7 +1548,7 @@ PCM-be az <application>MPlayer</application>rel), a szeletek hibásan maradnak
benne és csak képkocka eldobással/duplázással lehet javítani.
Amíg a <application>MEncoder</application> látja az audiót a videó kódolása
közben, meg tudja csinálni ezt az eldobást/duplázást (ami általában rendben
van, mert teljesen sötét/jelentetváltásos helyeken történik), de ha a
van, mert teljesen sötét/jelentet váltásos helyeken történik), de ha a
<application>MEncoder</application> nem látja az audiót, csak feldolgoz
minden képkockát úgy ahogy van és nem fog illeszkedni a végső audió folyamhoz
ha például összeilleszted az audió és a videó sávodat egy Matroska fájlba.
@@ -2226,7 +2226,7 @@ mencoder dvd://1 -oac copy -vf pullup,softskip
mezőpárokat, hogy azok egy komplett képkockát adjanak. A <option>filmdint</option>
deinterlace-lni fogja az egyedi mezőket, amelyeket nem tud egyeztetni,
míg a <option>pullup</option> egyszerűen csak eldobja őket. A két szűrő
különböző detektáló kódot alkalmaz és a filmdint néha túl kevés mezőt
különböző detektáló kódot alkalmaz és a <option>filmdint</option> néha túl kevés mezőt
egyeztet. Az, hogy melyik szűrő a jobb, a bemeneti videótól és az egyéni
ízléstől függ; kísérletezz szabadon a szűrők opcióinak finomhangolásával,
ha valamelyikkel problémád van (lásd a man oldalt a részletekért).
@@ -2384,7 +2384,7 @@ Az időtartam/hely alapján kell döntened.
<para>
Bátran használhatod a <option>pullup</option>-ot (a <option>softskip</option>pel
együtt) a progresszív videókon és ez általában jó ötlet, hacsak a forrás
nem egyértelműen teljesen progresszív. A teljesítményveszteség kicsi az
nem egyértelműen teljesen progresszív. A teljesítmény veszteség kicsi az
esetek többségében. Nagyon ritka kódolási esetekben a <option>pullup</option>
a <application>MEncoder</application> 50%-os lassulását okozhatja.
A zenefeldolgozás hozzáadása és a fejlett <option>lavcopts</option>
@@ -2849,7 +2849,7 @@ Ez szép is lenne, de sajnos nehezen megvalósítható, mert a különböző
kódolási opciók különböző minőséget eredményeznek, mely függ a forrás
anyagtól is.
Ez azért van, mert a tömörítés függ a szóbanforgó videó vizuális tulajdonságaitól.
Például az anime és az élő felvétel két nagyon különböző anyag és
Például az Anime és az élő felvétel két nagyon különböző anyag és
így különböző opciókat követelnek meg az optimális kódoláshoz.
A jó hír, hogy néhány opciót soha sem lehet elhagyni, mint például az
<option>mbd=2</option>, <option>trell</option> és <option>v4mv</option>.
@@ -2889,7 +2889,7 @@ Olvass tovább a gyakori kódolási opciók leírásához.
Kísérletezz a 0 (alapértelmezett), 2 (hadamard), 3 (dct) és 6 (ráta
torzítás) értékekkel!
0 a leggyorsabb és és elegendő a precmp-hez.
A cmp-hez és subcmp-hez 2 jó, ha anime és 3 ha élő akció.
A cmp-hez és subcmp-hez 2 jó, ha Anime és 3 ha élő akció.
A 6 vagy jobb vagy nem, de mindenképpen lassabb.
</para></listitem>
<listitem><para>
@@ -2934,7 +2934,7 @@ Olvass tovább a gyakori kódolási opciók leírásához.
általad megadott küszöb és ebben az esetben egyszerűen "változtatás nélkül"
kerül elkódolásra a blokk.
Ez biteket ment meg és talán gyorsít is a kódoláson. A vlelim=-4 és
vcelim=9 látszólag jók az élő filmekhez, de nem segítenek az anime-nál;
vcelim=9 látszólag jók az élő filmekhez, de nem segítenek az Anime-nál;
ha animációt kódolsz, inkább hagyd őket változatlanul.
</para></listitem>
<listitem><para>
@@ -2942,7 +2942,7 @@ Olvass tovább a gyakori kódolási opciók leírásához.
Az MPEG-4 fél pixeles precíziót használ a mozgáskereséshez alapértelmezésként,
ezért ez az opció plusz terhelést hoz, mivel több információ tárolódik az
elkódolt fájlban. A tömörítési nyereség/veszteség a filmtől függ, de
általában nem hatékony anime-oknál.
általában nem hatékony Anime-oknál.
A qpel mindig jelentős dekódolási CPU idő igénnyel jár (+25% a gyakorlatban).
</para></listitem>
<listitem><para>
@@ -3341,7 +3341,7 @@ ha a következő rész túl zavarosnak tűnik.
<listitem><para>
<emphasis role="bold">hq_ac</emphasis>
Bekapcsol egy jobb együttható kölcségbecslő módszert, ami kissé
csökkenti a fájlméretet, kb. 0,15-0,19% között (ami kevesebb, mint
csökkenti a fájl méretet, kb. 0,15-0,19% között (ami kevesebb, mint
0,01dB-es PSNR növekedésnek felel meg), miközben jelentéktelen
hatása van a sebességre. Ezért ajánlott mindig bekapcsolva hagyni.
</para></listitem>
@@ -3374,7 +3374,7 @@ ha a következő rész túl zavarosnak tűnik.
csak a luma-t (grayscale) használja.
Ez 5-10%-kal lassítja a kódolást, de eléggé javítja a vizuális
minőséget a blokkosodási effektusok csökkentésével és csökkenti
a fájlméretet kb. 1,3%-kal.
a fájl méretet kb. 1,3%-kal.
Ha a sebesség érdekel, kapcsold ki ezt az opciót, mielőtt
elkezdenél töprengeni a <option>me_quality</option> csökkentésén.
</para></listitem>
@@ -3666,7 +3666,7 @@ A következő táblázat megmutatja, hogy melyik profil mit támogat.
<entry>X</entry>
</row>
<row>
<entry>Quaterpixel</entry>
<entry>Quarterpixel</entry>
<entry></entry>
<entry></entry>
<entry></entry>
@@ -3950,7 +3950,7 @@ elért bitráta különbségből adódik.
valószínűleg jóval kevesebb, mint 0.1dB PSNR-t veszítesz, ami
túl kicsi különbség ahhoz, hogy észrevedd.
Bár a <option>frameref</option> különböző értékei alkalmanként
befolyásolhatják a frametype döntéseket.
befolyásolhatják a képkocka típus döntéseket.
Ezek legtöbbször ritka, szélsőséges esetek, de ha teljesen biztos
akarsz lenni, gondolkozz el rajta, hogy van-e a videódban teljes
képernyős ismétlődő, csillogó minta vagy nagyon nagy ideiglenes
@@ -4419,7 +4419,7 @@ opciókat, ha a codec hibázik vagy rossz kimenetet ad.
</row>
<row>
<entry>m3jpeg32.dll</entry>
<entry>Morgan Motion JPEG Codec (MJPG)</entry>
<entry>Morgan Motion JPEG Codec (MJPEG)</entry>
<entry>1cd13fff5960aa2aae43790242c323b1</entry>
<entry></entry>
</row>
@@ -4792,7 +4792,7 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
<screen>mplayer narnia.avi -dumpaudio -dumpfile narnia.aac
mplayer narnia.avi -dumpvideo -dumpfile narnia.h264</screen>
A fájlnevek fontosak; az <application>mp4creator</application>
A fájl nevek fontosak; az <application>mp4creator</application>
<systemitem>.aac</systemitem> kiterjesztésű AAC audió folyamot és
<systemitem>.h264</systemitem> kiterjesztésű H.264 videó folyamot vár.
</para>
+2 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24035 -->
<!-- synced with r27230 -->
<chapter id="faq" xreflabel="FAQ">
<title>Gyakran ismételt kérdések</title>
@@ -832,7 +832,7 @@ Az <application>MPlayer</application> nem támogatja a DVD menüket súlyos
tervezési korlátok miatt, amik megakadályozzák a still images és az interaktív
tartalom használatát. Ha szép menüket akarsz használni, másik lejátszót kell
használnod, mint pl. a <application>xine</application>,
a <application>vlc</application> vagy az <application>Ogle</application>.
a <application>VLC</application> vagy az <application>Ogle</application>.
Ha DVD navigációt akarsz látni az <application>MPlayer</application>ben,
neked magadnak kell megcsinálnod, de vigyázz, nagy fába vágod a fejszédet.
</para></answer>
+1 -1
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21537 -->
<!-- synced with r26990 -->
<appendix id="history">
<title>Történelem</title>
+3 -3
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24087 -->
<!-- synced with r26990 -->
<chapter id="install">
<title>Telepítés</title>
@@ -288,7 +288,7 @@ ln -s <replaceable>$PREFIX/share/mplayer/arial-24</replaceable> $PREFIX/share/mp
<para>
A betűtípusoknak rendelkezniük kell egy megfelelő <filename>font.desc</filename>
fájllal, ami leképezi a unicode betűpozíciókat az aktuális felirat szöveg
fájllal, ami leképezi a Unicode betűpozíciókat az aktuális felirat szöveg
kódlapjára. A másik megoldás UTF-8 kódolású feliratok használata és a
<option>-utf8</option> kapcsoló megadása vagy add meg a felirat
fájl neveként ugyan azt a nevet, mint a videó fájlé, de <filename>.utf</filename>
@@ -368,7 +368,7 @@ Három fajta időzítési eljárás van az <application>MPlayer</application>ben
kapcsoló engedélyezi, de megfelelően beállított kernel kell hozzá.
Ha 2.4.19pre8 vagy későbbi kernelt használsz, beállíthatod a maximum
RTC frekvenciát a sima felhasználóknak a <systemitem class="systemname">/proc
</systemitem> fájlrendszer segítségével. Használd az alábbi két parancs
</systemitem> fájl rendszer segítségével. Használd az alábbi két parancs
valamelyikét az RTC normál felhasználók számára történő engedélyezéséhez:
<screen>echo 1024 &gt; /proc/sys/dev/rtc/max-user-freq</screen>
<screen>sysctl dev/rtc/max-user-freq=1024</screen>
+1 -1
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r26258 -->
<!-- synced with r26990 -->
<chapter id="mencoder">
<title>A <application>MEncoder</application> használatának alapjai</title>
+5 -5
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r26936 -->
<!-- synced with r26990 -->
<chapter id="ports" xreflabel="Ports">
<title>Portok</title>
@@ -68,7 +68,7 @@ a <ulink url="http://rpm.livna.org/">Livna repository</ulink>-ban.
<para>
A Mandrake/Mandriva RPM csomagok a
<ulink url="http://plf.zarb.org/">P.L.F.</ulink> oldalán találhatóak.
A SuSE régen az <application>MPlayer</application> egy csonkított verzióját tartalmazta,
A SUSE régen az <application>MPlayer</application> egy csonkított verzióját tartalmazta,
de az utóbbi kiadásokból már kiszedték. SuSE-val működő csomagok a
<ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>
oldalon találhatóak.
@@ -324,11 +324,11 @@ hogy le tudsz játszani 4 GB-nál nagyobb DVD lemezt:
</para></listitem>
<listitem><para>
Egy hasonló hiba van a hsfs(7FS) fájlrendszer kódjában is (alias ISO9660),
Egy hasonló hiba van a hsfs(7FS) fájl rendszer kódjában is (alias ISO9660),
a hsfs nem támogatja a 4 GB-nál nagyobb partíciókat/lemezeket, minden adat
modulo 4GB-vel lesz elérve
(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>).
Ez a hiba a 109764-04 (sparc) / 109765-04
Ez a hiba a 109764-04 (SPARC) / 109765-04
(x86) jelzésű patch-ek telepítése után megszűnik.
</para></listitem>
</itemizedlist>
@@ -768,7 +768,7 @@ A későbbi példák mind MacPorts-on alapszanak.
<para>
Például az <application>MPlayer</application> lefordítása OSD támogatással:
<screen>sudo port install pkgconfig</screen>
<screen>sudo port install pkg-config</screen>
Ez telepíti a <application>pkg-config</application>-ot, ami a függvénykönyvtárak
fordítási/szerkesztési flag-jeinek kezelését végző rendszer.
Az <application>MPlayer</application> <systemitem>configure</systemitem> script-je
+3 -3
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21612 -->
<!-- synced with r26990 -->
<appendix id="skin">
<title><application>MPlayer</application> skin formátum</title>
@@ -1107,14 +1107,14 @@ Az alábbi üzeneteket generálják a gombok, potméterek és menüpontok.
<varlistentry>
<term><emphasis role="bold">evLoadSubtitle</emphasis></term>
<listitem><para>
Felirat fájl betöltése (a fájlválasztóval)
Felirat fájl betöltése (a fájl választóval)
</para></listitem>
</varlistentry>
<varlistentry>
<term><emphasis role="bold">evLoadAudioFile</emphasis></term>
<listitem><para>
Audió fájl betöltése (a fájlválasztóval)
Audió fájl betöltése (a fájl választóval)
</para></listitem>
</varlistentry>
+3 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24604 -->
<!-- synced with r27050 -->
<chapter id="tv">
<title>TV</title>
@@ -194,7 +194,8 @@ tudják hardveres korlátok miatt.
<title>Teletext</title>
<para>
A teletext jelenleg csak a v4l és v4l2 vezérlőkkel használható az MPlayerben.
A teletext jelenleg csak a v4l és v4l2 vezérlőkkel használható
az <application>MPlayerben</application>.
</para>
<sect2 id="tv-teletext-implementation-notes">
+2 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r25146 -->
<!-- synced with r26990 -->
<chapter id="usage">
<title>Használat</title>
@@ -427,7 +427,7 @@ Ez el fogja menteni a
<replaceable>http://217.71.208.37:8006</replaceable> szerveren stream-elt
tartalmat a <replaceable>stream.asf</replaceable> fájlba.
Ez működik az <application>MPlayer</application> által támogatott
összes protokollal, mint MMS, RSTP és így tovább.
összes protokollal, mint MMS, RTSP és így tovább.
</para>
</sect2>
</sect1>
+55 -64
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r26914 -->
<!-- synced with r27044 -->
<chapter id="video">
<title>Videó kimeneti eszközök</title>
@@ -198,7 +198,7 @@ van xv támogatás, de maga a kártya túl lassú, így jobb, ha eladod.
<para>
Már van natív framebuffer vezérlő az S3 Virge kártyákhoz, hasonlóan a tdfxfb-hez.
Állítsd be a framebuffer-ed (pl. add hozzá a
"<option>vga=792 video=vesa:mtrr</option>" opciót a kernel parancssorához) és használd
"<option>vga=792 video=vesa:mtrr</option>" opciót a kernel parancs sorához) és használd
a <option>-vo s3fb</option> opciót (<option>-vf yuy2</option> és <option>-dr</option>
szintén segíthet).
</para>
@@ -856,7 +856,12 @@ buffereléssel. Működik mind a framebuffer konzolon, mind X alatt, de csak
<para>
Ezen vezérlő Linux 2.6.x alatti verziója itt található:
<ulink url="http://attila.kinali.ch/mga/"/>.
<ulink url="http://attila.kinali.ch/mga/"/> vagy nézz rá az mga_vid külső
Subversion repository-jára, melyet checkout-olhatsz így:
<screen>
svn checkout svn://svn.mplayerhq.hu/mga_vid
</screen>
</para>
<procedure>
@@ -1545,11 +1550,16 @@ kérjük jelezd ezt a fejlesztőknek is. A helyes módszer a VIDIX argumentumok
nélküli használata, és így az automatikus detektálás engedélyezése.
</para>
<sect2 id="svgalib_helper">
<title>svgalib_helper</title>
<para>
Mivel a VIDIX-nek direkt hardver elérés kell, futtathatod root-ként vagy
beállíthatod a SUID bit-et az <application>MPlayer</application> binárisán
(<emphasis role="bold">Figyelem: Ez biztonsági kockázatot jelent!</emphasis>).
Alternatívaként használhatsz egy speciális kernel modult, így:
Alternatívaként, ha 2.4.x-es Linux kernelt futtatsz, használhatsz egy
speciális kernel modult, így:
</para>
<procedure>
@@ -1574,18 +1584,17 @@ Alternatívaként használhatsz egy speciális kernel modult, így:
<filename class="directory">svgalib_helper</filename> könyvtárban rootként.
</para></step>
<step><para>
Mozgasd át az <filename class="directory">svgalib_helper</filename> könyvtárat
a <filename class="directory">vidix</filename> alkönyvtárba az
<application>MPlayer</application> forrásfájában.
</para></step>
<step><para>
Töröld a megjegyzést az "svgalib_helper"-t tartalmazó CFLAGS sor elől a
<filename class="directory">vidix/Makefile</filename>-ban.
Ezután futtasd le a <filename>configure</filename>-t újra és add meg neki a
<option>--enable-svgalib_helper</option> és a
<option>--with-extraincdir=/eleresi/ut/svgalib_helper/forrasahoz</option>
paramétereket, az svgalib_helper kicsomagolt forrását tartalmazó könyvtárnak
megfelelően.
</para></step>
<step><para>
Forgass újra.
</para></step>
</para></step>
</procedure>
</sect2>
<sect2 id="vidix-ati">
@@ -2348,7 +2357,7 @@ a Matrox G450/G550 TV-kimenet utasításaiért lásd a következő részt!
<option>-vo x11 -fs -zoom</option> kapcsolókat, de
<emphasis role="bold">LASSÚ</emphasis> lesz,
és <emphasis role="bold">Macrovision</emphasis> másolásvédelem van rajta
(ezzel a <ulink url="http://avifile.sf.net/mgamacro.pl">perl script</ulink>-tel
(ezzel a <ulink url="http://avifile.sf.net/mgamacro.pl">Perl script</ulink>-tel
"megkerülheted" a Macrovisiont).
</para>
</listitem>
@@ -2362,40 +2371,19 @@ a Matrox G450/G550 TV-kimenet utasításaiért lásd a következő részt!
használhatatlanok erre. Engedélyezned kell az ÖSSZES matroxfb-specifikus
tulajdonságot a fordítás alatt (kivéve a MultiHead-et) és
<emphasis role="bold">modulokba</emphasis> kell fordítanod!
Az engedélyezett I2C-re is szükséged lesz.
Az I2C-t is engedélyezned kell és a
<application>matroxset</application>, <application>fbset</application>
és <application>con2fb</application> eszközöknek az elérési úton kell lenniük.
</para>
<procedure>
<step><para>
Lépj be a <filename class="directory">TVout</filename>-ba és írd be:
<command>./compile.sh</command>. Telepítsd a
<filename>TVout/matroxset/matroxset</filename>-et
valahova a <envar>PATH</envar>-odon belülre.
Majd töltsd be a <systemitem>matroxfb_Ti3026, matroxfb_maven, i2c-matroxfb,
matroxfb_crtc2</systemitem> modulokat a kerneledbe. A szöveges-módú
konzolod framebuffer módba vált (nincs visszaút!).
</para></step>
<step><para>
Ha nincs telepítve <command>fbset</command>-ed, tedd a
<filename>TVout/fbset/fbset</filename>-et
valahova a <envar>PATH</envar>-odba.
</para></step>
<step><para>
Ha nincs <command>con2fb</command>-ed telepítve, tedd a
<filename>TVout/con2fb/con2fb</filename>-t
valahova a <envar>PATH</envar>-odba.
</para></step>
<step><para>
Majd lépj be a <filename class="directory">TVout/</filename>
könyvtárba az <application>MPlayer</application> forrásában és
futtasd le a <filename>./modules</filename>-t root-ként. A
szöveges módú konzolod átvált framebuffer módba (nincs visszaút!).
</para></step>
<step><para>
Ezután ÍRD ÁT és futtasd a <filename>./matroxtv</filename> script-et. Ez
egy roppant egyszerű menüt kínál neked. Nyomd meg a <keycap>2</keycap>-est
és az <keycap>Enter</keycap>-t. Most már ugyan azt a képet kell látnod
a monitorodon és a TV-n. ha a TV (PAL alapértelmezettként)
képén furcsa csíkok vannak, a script nem tudta beállítani jól a
felbontást (640x512-ra alapesetben). Próbálj meg másik felbontást
a menüből és/vagy kísérletezz az fbset-tel.
Ezután állítsd be a monitorod és a TV-t a kedvednek megfelelően a fenti eszközökkel.
</para></step>
<step><para>
Yoh. A következő dolog, hogy a kurzort eltűntesd a tty1-ről (vagy
@@ -2436,29 +2424,6 @@ mplayer -vo mga -fs -screenw 640 -screenh 512 <replaceable>filename</replaceable
</listitem>
</varlistentry>
</variablelist>
<formalpara><title>Matrox TV-kimeneti kábel készítése</title>
<para>
Senki sem vállal ezért semmilyen felelősséget, sem garanciát bármilyen,
ezen leírásból származó kárért.
</para>
</formalpara>
<formalpara><title>Kábel a G400-hoz</title>
<para>
A CRTC2 csatlakozójának negyedik pin-je a kompozit videó jel. A
földelés a hatodik, hetedik és nyolcadik pin. (az infót Rácz Balázs
adta)
</para>
</formalpara>
<formalpara><title>Kábel a G450-hez</title>
<para>
A CRTC2 csatlakozójának első pin-je a kompozit videó jel. A
földelés az ötödik, hatodik, hetedik és tizenötödik (5, 6, 7, 15)
pin. (az infót Kerekes Balázs adta)
</para>
</formalpara>
</sect2>
<!-- ********** -->
@@ -2492,6 +2457,32 @@ A szükséges kernel javítás és a bővebb HOWTO letölthető:
<!-- ********** -->
<sect2 id="tv-out_matrox_cable">
<title>Matrox TV-kimeneti kábel készítése</title>
<para>
Senki sem vállal ezért semmilyen felelősséget, sem garanciát bármilyen,
ezen leírásból származó kárért.
</para>
<formalpara><title>Kábel a G400-hoz</title>
<para>
A CRTC2 csatlakozójának negyedik pin-je a kompozit videó jel. A
földelés a hatodik, hetedik és nyolcadik pin. (az infót Rácz Balázs
adta)
</para>
</formalpara>
<formalpara><title>Kábel a G450-hez</title>
<para>
A CRTC2 csatlakozójának első pin-je a kompozit videó jel. A
földelés az ötödik, hatodik, hetedik és tizenötödik (5, 6, 7, 15)
pin. (az infót Kerekes Balázs adta)
</para>
</formalpara>
</sect2>
<!-- ********** -->
<sect2 id="tvout-ati">
<title>ATI kártyák</title>
+1 -1
View File
@@ -241,7 +241,7 @@ może zostać prawidłowo odtworzony przez odtwarzacze inne niż
<application>MPlayer</application>.
</para>
<example>
<example id="encode_to_macromedia_flash_format">
<title>kodowanie do formatu Macromedia Flash</title>
<para>
Tworzenie zbioru Macromedia Flash video, nadającego się do odtwarzania
+1 -1
View File
@@ -235,7 +235,7 @@ AVI容器是<application>MEncoder</application>的基本容器格式,也就是
<application>MPlayer</application>之外的播放器中播放。
</para>
<example>
<example id="encode_to_macromedia_flash_format">
<title>编码为Macromedia Flash格式</title>
<para>
生成Macromedia Flash视频,以便在安装有Macromedia Flash插件的网页浏览器中播放:
+5 -5
View File
@@ -822,8 +822,8 @@ install-dirs:
install-%: %$(EXESUF) install-dirs
$(INSTALL) -m 755 $(INSTALLSTRIP) $< $(BINDIR)
install-mplayer-man: $(foreach lang,$(MAN_LANG_ALL),install-mplayer-man-$(lang))
install-mencoder-man: $(foreach lang,$(MAN_LANG_ALL),install-mencoder-man-$(lang))
install-mplayer-man: $(foreach lang,$(MAN_LANGS),install-mplayer-man-$(lang))
install-mencoder-man: $(foreach lang,$(MAN_LANGS),install-mencoder-man-$(lang))
install-mplayer-man-en:
$(INSTALL) -d $(MANDIR)/man1
@@ -843,8 +843,8 @@ install-mencoder-man-$(lang): install-mplayer-man-$(lang)
cd $(MANDIR)/$(lang)/man1 && ln -sf mplayer.1 mencoder.1
endef
$(foreach lang,$(MAN_LANG),$(eval $(MPLAYER_MAN_RULE)))
$(foreach lang,$(MAN_LANG),$(eval $(MENCODER_MAN_RULE)))
$(foreach lang,$(filter-out en,$(MAN_LANG_ALL)),$(eval $(MPLAYER_MAN_RULE)))
$(foreach lang,$(filter-out en,$(MAN_LANG_ALL)),$(eval $(MENCODER_MAN_RULE)))
install-gui: install-mplayer
-ln -sf mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
@@ -859,7 +859,7 @@ uninstall:
rm -f $(prefix)/share/pixmaps/mplayer.xpm
rm -f $(prefix)/share/applications/mplayer.desktop
rm -f $(MANDIR)/man1/mplayer.1 $(MANDIR)/man1/mencoder.1
rm -f $(foreach lang,$(MAN_LANG),$(foreach man,mplayer.1 mencoder.1,$(MANDIR)/$(lang)/man1/$(man)))
rm -f $(foreach lang,$(MAN_LANGS),$(foreach man,mplayer.1 mencoder.1,$(MANDIR)/$(lang)/man1/$(man)))
clean:
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.o /*.a /*.ho /*~, $(addsuffix $(suffix),$(dir))))
Vendored
+88 -58
View File
@@ -191,7 +191,9 @@ case `echo -n` in
*) _echo_n='-n ' _echo_c= ;; # BSD echo
esac
LANGUAGES=`echo help/help_mp-??.h help/help_mp-??_??.h | sed "s:help/help_mp-\(..\).h:\1:g" | sed "s:help/help_mp-\(.....\).h:\1:g"`
msg_lang_all=`echo help/help_mp-??.h help/help_mp-??_??.h | sed -e "s:help/help_mp-\(..\).h:\1:g" -e "s:help/help_mp-\(.....\).h:\1:g"`
man_lang_all=`echo DOCS/man/??/mplayer.1 | sed -e "s:DOCS/man/\(..\)/mplayer.1:\1:g"`
doc_lang_all=`echo DOCS/xml/??/ DOCS/xml/??_??/ | sed -e "s:DOCS/xml/\(..\)/:\1:g" -e "s:DOCS/xml/\(.._..\)/:\1:g"`
show_help(){
cat << EOF
@@ -417,7 +419,7 @@ Miscellaneous options:
translated man pages, the first language is used for
messages and the GUI (the environment variable
\$LINGUAS is also honored) [en]
(Available: $LANGUAGES all)
(Available: all $msg_lang_all)
--with-install=PATH path to a custom install program
Advanced options:
@@ -1573,6 +1575,7 @@ if x86 && test "$_runtime_cpudetection" = no ; then
if test "$1" = kernel_check ; then
echocheck "kernel support of $2"
cat > $TMPC <<EOF
#include <stdlib.h>
#include <signal.h>
void catch() { exit(1); }
int main(void) {
@@ -2410,7 +2413,7 @@ echocheck ".align is a power of two"
if test "$_asmalign_pot" = auto ; then
_asmalign_pot=no
cat > $TMPC << EOF
int main(void) { asm (".align 3"); }
int main(void) { asm (".align 3"); return 0; }
EOF
cc_check && _asmalign_pot=yes
fi
@@ -2481,7 +2484,7 @@ if arm ; then
echocheck "ARMv5TE (Enhanced DSP Extensions)"
if test $_armv5te = "auto" ; then
cat > $TMPC << EOF
int main(void) { __asm__ __volatile__ ("qadd r0, r0, r0"); }
int main(void) { __asm__ __volatile__ ("qadd r0, r0, r0"); return 0; }
EOF
_armv5te=no
cc_check && _armv5te=yes
@@ -2491,7 +2494,7 @@ EOF
echocheck "ARMv6 (SIMD instructions)"
if test $_armv6 = "auto" ; then
cat > $TMPC << EOF
int main(void) { __asm__ __volatile__ ("sadd16 r0, r0, r0"); }
int main(void) { __asm__ __volatile__ ("sadd16 r0, r0, r0"); return 0; }
EOF
_armv6=no
cc_check && _armv6=yes
@@ -2501,7 +2504,7 @@ EOF
echocheck "iWMMXt (Intel XScale SIMD instructions)"
if test $_iwmmxt = "auto" ; then
cat > $TMPC << EOF
int main(void) { __asm__ __volatile__ ("wunpckelub wr6, wr4"); }
int main(void) { __asm__ __volatile__ ("wunpckelub wr6, wr4"); return 0; }
EOF
_iwmmxt=no
cc_check && _iwmmxt=yes
@@ -2600,30 +2603,39 @@ echores "$_langinfo"
echocheck "language"
test -z "$_language" && _language=$LINGUAS
_language=`echo $_language | sed 's/,/ /g'`
echo $_language | grep all > /dev/null || LANGUAGES="$_language en"
for lang in $_language ; do
test "$lang" = all && lang=en
if test -f "help/help_mp-${lang}.h" ; then
_language=$lang
break
else
echo ${_echo_n} "$lang not found, ${_echo_c}"
_language=`echo $_language | sed "s/$lang *//"`
fi
done
test -z "$_language" && _language=en
_mp_help="help/help_mp-${_language}.h"
test -f $_mp_help || die "$_mp_help not found"
for lang in $LANGUAGES ; do
if test -f "DOCS/man/$lang/mplayer.1" ; then
MAN_LANG_ALL="$lang $MAN_LANG_ALL"
fi
done
MAN_LANG="$(echo $MAN_LANG_ALL | sed 's/en//')"
_doc_lang=$_language
test -d DOCS/xml/$_doc_lang || _doc_lang=en
echores "using $_language (man pages: $MAN_LANG_ALL)"
_language=`echo $_language | tr , " "`
if $(echo $_language | grep -q all) ; then
doc_lang=en ; doc_langs=$doc_lang_all
man_lang=en ; man_langs=$man_lang_all
msg_lang=en
else
for lang in $_language ; do
if test -d DOCS/man/$lang ; then
tmp_man_langs="$tmp_man_langs $lang"
fi
if test -d DOCS/xml/$lang ; then
tmp_doc_langs="$tmp_doc_langs $lang"
fi
done
man_langs=$tmp_man_langs
doc_langs=$tmp_man_langs
for lang in $_language ; do
if test -f "help/help_mp-${lang}.h" ; then
msg_lang=$lang
break
else
echo ${_echo_n} "$lang not found, ${_echo_c}"
_language=`echo $_language | sed "s/$lang *//"`
fi
done
fi
test -z "$doc_langs" && doc_langs=en
test -z "$man_langs" && man_langs=en
test -z "$doc_lang" && doc_lang=$(echo $doc_langs | cut -f1 -d" ")
test -z "$man_lang" && man_lang=$(echo $man_langs | cut -f1 -d" ")
test -z "$msg_lang" && msg_lang=en
_mp_help="help/help_mp-${msg_lang}.h"
echores "messages: $msg_lang - man pages: $man_langs - documentation: $doc_langs"
echocheck "enable sighandler"
@@ -2646,7 +2658,7 @@ echores "$_runtime_cpudetection"
echocheck "restrict keyword"
for restrict_keyword in restrict __restrict __restrict__ ; do
echo "void foo(char * $restrict_keyword p); int main(void) {}" > $TMPC
echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
if cc_check; then
_def_restrict_keyword=$restrict_keyword
break;
@@ -3015,8 +3027,9 @@ fi
echocheck "dynamic loader"
cat > $TMPC << EOF
#include <stddef.h>
#include <dlfcn.h>
int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
int main(void) { dlopen(NULL, 0); dlclose(NULL); dlsym(NULL, NULL); return 0; }
EOF
_dl=no
for _ld_tmp in "" "-ldl" ; do
@@ -3124,6 +3137,7 @@ int main(void) {
if (iconv_close(icdsc) == -1)
;
}
return 0;
}
EOF
_iconv=no
@@ -3283,7 +3297,9 @@ fi #if sunos
echocheck "termcap"
if test "$_termcap" = auto ; then
cat > $TMPC <<EOF
int main(void) { tgetent(); return 0; }
#include <stddef.h>
#include <term.h>
int main(void) { tgetent(NULL, NULL); return 0; }
EOF
_termcap=no
for _ld_tmp in "-lncurses" "-ltinfo" "-ltermcap"; do
@@ -3529,6 +3545,7 @@ int main(void) {
EnterMovies();
ExitMovies();
CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
return 0;
}
EOF
if cc_check -framework Carbon -framework QuickTime -framework CoreAudio; then
@@ -3553,7 +3570,7 @@ EOF
cat > $TMPC <<EOF
#include <Carbon/Carbon.h>
#include <QuartzCore/CoreVideo.h>
int main(void) {}
int main(void) { return 0; }
EOF
if cc_check -framework Carbon -framework QuartzCore -framework OpenGL; then
_vosrc="$_vosrc vo_macosx.m"
@@ -3745,6 +3762,7 @@ struct vis_identifier ident;
struct fbgattr attr;
ioctl(0, VIS_GETIDENTIFIER, &ident);
ioctl(0, FBIOGATTR, &attr);
return 0;
}
EOF
_xvr100=no
@@ -3957,13 +3975,13 @@ if test "$_x11" = yes ; then
#include <X11/Xutil.h>
#include <X11/Xatom.h>
#include <X11/extensions/dpms.h>
int main(void) { (void) DPMSQueryExtension(0, 0, 0); }
int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
EOF
cc_check -lXdpms && _xdpms3=yes
cat > $TMPC <<EOF
#include <X11/Xlib.h>
#include <X11/extensions/dpms.h>
int main(void) { (void) DPMSQueryExtension(0, 0, 0); }
int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
EOF
cc_check -lXext && _xdpms4=yes
fi
@@ -5187,9 +5205,14 @@ fi
echores "$_openal"
echocheck "ALSA audio"
if test "$_alloca" != yes ; then
_alsa=no
_res_comment="alloca missing"
fi
if test "$_alsa" != no ; then
_alsa=no
cat > $TMPC << EOF
#include <sys/time.h>
#include <sys/asoundlib.h>
#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
#error "alsa version != 0.5.x"
@@ -5199,6 +5222,7 @@ EOF
cc_check -lasound $_ld_dl $_ld_pthread && _alsaver='0.5.x'
cat > $TMPC << EOF
#include <sys/time.h>
#include <sys/asoundlib.h>
#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
#error "alsa version != 0.9.x"
@@ -5207,6 +5231,7 @@ int main(void) { return 0; }
EOF
cc_check -lasound $_ld_dl $_ld_pthread && _alsaver='0.9.x-sys'
cat > $TMPC << EOF
#include <sys/time.h>
#include <alsa/asoundlib.h>
#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
#error "alsa version != 0.9.x"
@@ -5216,6 +5241,7 @@ EOF
cc_check -lasound $_ld_dl $_ld_pthread && _alsaver='0.9.x-alsa'
cat > $TMPC << EOF
#include <sys/time.h>
#include <sys/asoundlib.h>
#if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
#error "alsa version != 1.0.x"
@@ -5224,6 +5250,7 @@ int main(void) { return 0; }
EOF
cc_check -lasound $_ld_dl $_ld_pthread && _alsaver='1.0.x-sys'
cat > $TMPC << EOF
#include <sys/time.h>
#include <alsa/asoundlib.h>
#if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
#error "alsa version != 1.0.x"
@@ -5586,6 +5613,7 @@ echocheck "fontconfig"
if test "$_fontconfig" = auto ; then
cat > $TMPC << EOF
#include <stdio.h>
#include <stdlib.h>
#include <fontconfig/fontconfig.h>
int main(void) {
int err = FcInit();
@@ -5681,6 +5709,7 @@ echores "$_fribidi"
echocheck "ENCA"
if test "$_enca" = auto ; then
cat > $TMPC << EOF
#include <sys/types.h>
#include <enca.h>
int main(void) {
const char **langs;
@@ -5880,7 +5909,7 @@ if test "$_speex" = auto ; then
_speex=no
cat > $TMPC << EOF
#include <speex/speex.h>
int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); }
int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
EOF
cc_check -lspeex $_ld_lm && _speex=yes
fi
@@ -6020,12 +6049,14 @@ echocheck "libmpcdec (musepack, version >= 1.2.1 required)"
if test "$_musepack" = auto ; then
_musepack=no
cat > $TMPC << EOF
#include <stddef.h>
#include <mpcdec/mpcdec.h>
int main(void) {
mpc_streaminfo info;
mpc_decoder decoder;
mpc_decoder_set_streaminfo(&decoder, &info);
mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
return 0;
}
EOF
cc_check -lmpcdec $_ld_lm && _musepack=yes
@@ -6283,7 +6314,7 @@ if test "$_live" = auto && test "$_network" = yes ; then
#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
#error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
#endif
int main(void) {}
int main(void) { return 0; }
EOF
_live=no
@@ -6654,7 +6685,7 @@ echocheck "zr"
if test "$_zr" = auto ; then
#36067's seem to identify themselves as 36057PQC's, so the line
#below should work for 36067's and 36057's.
if grep -e "Multimedia video controller: Zoran Corporation ZR36057" /proc/pci > /dev/null 2>&1; then
if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc/pci ; then
_zr=yes
else
_zr=no
@@ -7109,7 +7140,7 @@ short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B
int main(void) { return (int)ascii_name; }
EOF
if cc_check ; then
if strings $TMPEXE | grep -l MPlayerBigEndian >/dev/null ; then
if strings $TMPEXE | grep -q -l MPlayerBigEndian ; then
_big_endian=yes
else
_big_endian=no
@@ -7178,7 +7209,7 @@ if test "$_inet6" = auto ; then
#else
#include <ws2tcpip.h>
#endif
int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); }
int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
EOF
_inet6=no
if cc_check $_ld_sock ; then
@@ -7199,7 +7230,7 @@ cat > $TMPC << EOF
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
int main(void) { gethostbyname2("", AF_INET); }
int main(void) { gethostbyname2("", AF_INET); return 0; }
EOF
_gethostbyname2=no
if cc_check ; then
@@ -7222,7 +7253,7 @@ if test "$_gui" = yes ; then
# Required libraries
if test "$_libavcodec" != yes ||
! echo $_libavdecoders | grep PNG_DECODER >/dev/null 2>&1 ; then
! echo $_libavdecoders | grep -q PNG_DECODER ; then
die "The GUI requires libavcodec with PNG support (needs zlib)."
fi
test "$_freetype" = no && test "$_bitmap_font" = no && \
@@ -7456,8 +7487,8 @@ echores "$_lircc"
if arm; then
# Detect maemo development platform libraries availability (http://www.maemo.org),
# they are used when run on Nokia 770
echocheck "maemo (Nokia 770)"
# they are used when run on Nokia 770|8x0
echocheck "maemo (Nokia 770|8x0)"
if test "$_maemo" = auto ; then
_maemo=no
cat > $TMPC << EOF
@@ -7592,8 +7623,12 @@ cat > config.mak << EOF
# Ensure that locale settings do not interfere with shell commands.
export LC_ALL = C
MAN_LANG = $MAN_LANG
MAN_LANG_ALL = $MAN_LANG_ALL
DOC_LANG = $doc_lang
DOC_LANGS = $doc_langs
DOC_LANG_ALL = $doc_lang_all
MAN_LANG = $man_lang
MAN_LANGS = $man_langs
MAN_LANG_ALL = $man_lang_all
DESTDIR =
prefix = \$(DESTDIR)$_prefix
@@ -7827,7 +7862,7 @@ ff_config_enable () {
_nprefix=$3;
test -z "$_nprefix" && _nprefix='CONFIG'
for part in $1; do
if ` echo $2 | grep -E "(^| )$part($| )" > /dev/null `; then
if ` echo $2 | grep -q -E "(^| )$part($| )" `; then
echo "#define ${_nprefix}_$part 1"
echo "#define ENABLE_$part 1"
else
@@ -8591,20 +8626,15 @@ Config files successfully generated by ./configure $_configuration !
Optimizing for: $_optimizing
Languages:
Messages/GUI: $_language
EOF
echo ${_echo_n} " Manual pages: $MAN_LANG_ALL ${_echo_c}"
test "$LANGUAGES" = en && echo ${_echo_n} " (no localization selected, use --language=all)${_echo_c}"
echo
cat << EOF
Messages/GUI: $msg_lang
Manual pages: $man_langs
Enabled optional drivers:
Input: $_inputmodules
Codecs: $_codecmodules
Audio output: $_aomodules
Video output: $_vomodules
Disabled optional drivers:
Input: $_noinputmodules
Codecs: $_nocodecmodules
@@ -8622,7 +8652,7 @@ EOF
if test "$_mtrr" = yes ; then
echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$_doc_lang/video.html#mtrr)"
echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
echo
fi
@@ -8649,7 +8679,7 @@ If you used one of these options (except --enable-gui and similar ones that
turn on internal features) and experience a compilation or linking failure,
make sure you have passed the necessary compiler/linker flags to configure.
If you suspect a bug, please read DOCS/HTML/$_doc_lang/bugreports.html.
If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
EOF
+1
View File
@@ -11,6 +11,7 @@
#include <stdlib.h>
#include <string.h>
#include "mp_msg.h"
#include "get_path.h"
#ifdef MACOSX_BUNDLE
#include <CoreFoundation/CoreFoundation.h>
+1 -1
View File
@@ -1069,7 +1069,7 @@ static LRESULT CALLBACK EventProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM
return DefWindowProc(hWnd, message, wParam, lParam);
}
inline void startplay(gui_t *gui)
static void startplay(gui_t *gui)
{
handlemsg(gui->mainwindow, evDropFile);
}
+684 -737
View File
File diff suppressed because it is too large. Load diff
+232 -232
View File
File diff suppressed because it is too large. Load diff
+6 -6
View File
@@ -88,7 +88,7 @@ How to generate these data:
/* Center front (-5 degree) - not 0 degree in order to create a clear
front image from a finite distance */
float cf_filt[128] = {
static const float cf_filt[128] = {
-0.00008638082319075036, 0.0003198059946385229,
-0.0005010631339162132, 0.0011424741331126876,
-0.001584220794688753, 0.001742715363246275,
@@ -155,7 +155,7 @@ float cf_filt[128] = {
-0.005469203016468759, -0.004355784273189485
};
/* Front, same side (30 degree) */
float af_filt[128] = {
static const float af_filt[128] = {
-0.004140580614755493, 0.005790934614385445,
0.003318916682081112, 0.014257145544366063,
0.007328442487127339, -0.06550381777876194,
@@ -222,7 +222,7 @@ float af_filt[128] = {
-0.0005083025643192044, 0.00035096963769606926
};
/* Front, opposite (-30 degree) */
float of_filt[128] = {
static const float of_filt[128] = {
-0.000013472538374193126, -0.00008048061877079751,
0.000043927265781258155, -0.000017931700794858892,
-0.000034774602476112886, -0.00009576223008735474,
@@ -289,7 +289,7 @@ float of_filt[128] = {
-0.0013726264946164232, -0.0020075119315034313
};
/* Rear, same side (135 degree) */
float ar_filt[128] = {
static const float ar_filt[128] = {
0.004573315040810066, 0.0013592578059426913,
0.01553271930902704, -0.0002356117224941317,
-0.05746098219774702, 0.03430688963370445,
@@ -356,7 +356,7 @@ float ar_filt[128] = {
-0.0026884314856593368, -0.004084181815125924
};
/* Rear, opposite (-135 degree) */
float or_filt[128] = {
static const float or_filt[128] = {
0.0001220944028243897, -0.000021785381808441314,
5.823057988603169e-6, -0.00001217768176447613,
-0.00006123604397345513, 5.574117262531134e-6,
@@ -423,7 +423,7 @@ float or_filt[128] = {
-0.001852908777923165, -0.002540339553144362
};
/* Center rear (180 degree) */
float cr_filt[128] = {
static const float cr_filt[128] = {
-0.00005989110716536726, -0.00022790291829128702,
0.0002659166098971966, -0.0003774772716776257,
0.0004540309551867803, -0.000420238187386368,
+10 -10
View File
@@ -25,8 +25,8 @@
w filter taps
x input signal must be a circular buffer which is indexed backwards
*/
inline FLOAT_TYPE af_filter_fir(register unsigned int n, FLOAT_TYPE* w,
FLOAT_TYPE* x)
inline FLOAT_TYPE af_filter_fir(register unsigned int n, const FLOAT_TYPE* w,
const FLOAT_TYPE* x)
{
register FLOAT_TYPE y; // Output
y = 0.0;
@@ -48,11 +48,11 @@ inline FLOAT_TYPE af_filter_fir(register unsigned int n, FLOAT_TYPE* w,
s output buffer stride
*/
FLOAT_TYPE* af_filter_pfir(unsigned int n, unsigned int d, unsigned int xi,
FLOAT_TYPE** w, FLOAT_TYPE** x, FLOAT_TYPE* y,
const FLOAT_TYPE** w, const FLOAT_TYPE** x, FLOAT_TYPE* y,
unsigned int s)
{
register FLOAT_TYPE* xt = *x + xi;
register FLOAT_TYPE* wt = *w;
register const FLOAT_TYPE* xt = *x + xi;
register const FLOAT_TYPE* wt = *w;
register int nt = 2*n;
while(d-- > 0){
*y = af_filter_fir(n,wt,xt);
@@ -69,7 +69,7 @@ FLOAT_TYPE* af_filter_pfir(unsigned int n, unsigned int d, unsigned int xi,
filter. xq must be n*2 by k big, s is the index for in.
*/
int af_filter_updatepq(unsigned int n, unsigned int d, unsigned int xi,
FLOAT_TYPE** xq, FLOAT_TYPE* in, unsigned int s)
FLOAT_TYPE** xq, const FLOAT_TYPE* in, unsigned int s)
{
register FLOAT_TYPE* txq = *xq + xi;
register int nt = n*2;
@@ -99,7 +99,7 @@ int af_filter_updatepq(unsigned int n, unsigned int d, unsigned int xi,
returns 0 if OK, -1 if fail
*/
int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, FLOAT_TYPE* fc,
int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, const FLOAT_TYPE* fc,
unsigned int flags, FLOAT_TYPE opt)
{
unsigned int o = n & 1; // Indicator for odd filter length
@@ -238,7 +238,7 @@ int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, FLOAT_TYPE* fc,
returns 0 if OK, -1 if fail
*/
int af_filter_design_pfir(unsigned int n, unsigned int k, FLOAT_TYPE* w,
int af_filter_design_pfir(unsigned int n, unsigned int k, const FLOAT_TYPE* w,
FLOAT_TYPE** pw, FLOAT_TYPE g, unsigned int flags)
{
int l = (int)n/k; // Length of individual FIR filters
@@ -316,7 +316,7 @@ static void af_filter_prewarp(FLOAT_TYPE* a, FLOAT_TYPE fc, FLOAT_TYPE fs)
Return: On return, set coef z-domain coefficients and k to the gain
required to maintain overall gain = 1.0;
*/
static void af_filter_bilinear(FLOAT_TYPE* a, FLOAT_TYPE* b, FLOAT_TYPE* k,
static void af_filter_bilinear(const FLOAT_TYPE* a, const FLOAT_TYPE* b, FLOAT_TYPE* k,
FLOAT_TYPE fs, FLOAT_TYPE *coef)
{
FLOAT_TYPE ad, bd;
@@ -417,7 +417,7 @@ static void af_filter_bilinear(FLOAT_TYPE* a, FLOAT_TYPE* b, FLOAT_TYPE* k,
return -1 if fail 0 if success.
*/
int af_filter_szxform(FLOAT_TYPE* a, FLOAT_TYPE* b, FLOAT_TYPE Q, FLOAT_TYPE fc,
int af_filter_szxform(const FLOAT_TYPE* a, const FLOAT_TYPE* b, FLOAT_TYPE Q, FLOAT_TYPE fc,
FLOAT_TYPE fs, FLOAT_TYPE *k, FLOAT_TYPE *coef)
{
FLOAT_TYPE at[3];
+7 -7
View File
@@ -44,26 +44,26 @@
#define ODD 0x00000010 // Make filter HP
// Exported functions
extern FLOAT_TYPE af_filter_fir(unsigned int n, FLOAT_TYPE* w, FLOAT_TYPE* x);
extern FLOAT_TYPE af_filter_fir(unsigned int n, const FLOAT_TYPE* w, const FLOAT_TYPE* x);
extern FLOAT_TYPE* af_filter_pfir(unsigned int n, unsigned int k,
unsigned int xi, FLOAT_TYPE** w,
FLOAT_TYPE** x, FLOAT_TYPE* y,
unsigned int xi, const FLOAT_TYPE** w,
const FLOAT_TYPE** x, FLOAT_TYPE* y,
unsigned int s);
//extern int af_filter_updateq(unsigned int n, unsigned int xi,
// FLOAT_TYPE* xq, FLOAT_TYPE* in);
extern int af_filter_updatepq(unsigned int n, unsigned int k, unsigned int xi,
FLOAT_TYPE** xq, FLOAT_TYPE* in, unsigned int s);
FLOAT_TYPE** xq, const FLOAT_TYPE* in, unsigned int s);
extern int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, FLOAT_TYPE* fc,
extern int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, const FLOAT_TYPE* fc,
unsigned int flags, FLOAT_TYPE opt);
extern int af_filter_design_pfir(unsigned int n, unsigned int k, FLOAT_TYPE* w,
extern int af_filter_design_pfir(unsigned int n, unsigned int k, const FLOAT_TYPE* w,
FLOAT_TYPE** pw, FLOAT_TYPE g,
unsigned int flags);
extern int af_filter_szxform(FLOAT_TYPE* a, FLOAT_TYPE* b, FLOAT_TYPE Q,
extern int af_filter_szxform(const FLOAT_TYPE* a, const FLOAT_TYPE* b, FLOAT_TYPE Q,
FLOAT_TYPE fc, FLOAT_TYPE fs, FLOAT_TYPE *k,
FLOAT_TYPE *coef);
+1
View File
@@ -19,6 +19,7 @@
#include <ctype.h>
#include <math.h>
#include <string.h>
#include <alloca.h>
#include "config.h"
#include "subopt-helper.h"
+8 -10
View File
@@ -3,6 +3,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <limits.h>
#include "config.h"
#include "mp_msg.h"
@@ -50,9 +51,12 @@ static inline int check_varlen(uint8_t *ptr, uint8_t *endptr, int len) {
}
static void asf_descrambling(unsigned char **src,unsigned len, struct asf_priv* asf){
unsigned char *dst=malloc(len);
unsigned char *dst;
unsigned char *s2=*src;
unsigned i=0,x,y;
if (len > UINT_MAX - MP_INPUT_BUFFER_PADDING_SIZE)
return;
dst = malloc(len + MP_INPUT_BUFFER_PADDING_SIZE);
while(len>=asf->scrambling_h*asf->scrambling_w*asf->scrambling_b+i){
// mp_msg(MSGT_DEMUX,MSGL_DBG4,"descrambling! (w=%d b=%d)\n",w,asf_scrambling_b);
//i+=asf_scrambling_h*asf_scrambling_w;
@@ -79,19 +83,12 @@ static void init_priv (struct asf_priv* asf){
asf->vid_ext_frame_index=-1;
}
#ifdef USE_LIBAVCODEC
#include "libavcodec/avcodec.h"
#else
#define FF_INPUT_BUFFER_PADDING_SIZE 8
#endif
static void demux_asf_append_to_packet(demux_packet_t* dp,unsigned char *data,int len,int offs)
{
if(dp->len!=offs && offs!=-1) mp_msg(MSGT_DEMUX,MSGL_V,"warning! fragment.len=%d BUT next fragment offset=%d \n",dp->len,offs);
dp->buffer=realloc(dp->buffer,dp->len+len+FF_INPUT_BUFFER_PADDING_SIZE);
dp->buffer=realloc(dp->buffer,dp->len+len+MP_INPUT_BUFFER_PADDING_SIZE);
fast_memcpy(dp->buffer+dp->len,data,len);
memset(dp->buffer+dp->len+len, 0, FF_INPUT_BUFFER_PADDING_SIZE);
memset(dp->buffer+dp->len+len, 0, MP_INPUT_BUFFER_PADDING_SIZE);
mp_dbg(MSGT_DEMUX,MSGL_DBG4,"data appended! %d+%d\n",dp->len,len);
dp->len+=len;
}
@@ -488,6 +485,7 @@ static int demux_asf_fill_buffer(demuxer_t *demux, demux_stream_t *ds){
}
if(len<0 || (p+len)>p_end){
mp_msg(MSGT_DEMUX,MSGL_V,"ASF_parser: warning! segment len=%d\n",len);
len = p_end - p;
}
mp_dbg(MSGT_DEMUX,MSGL_DBG4," seg #%d: streamno=%d seq=%d type=%02X len=%d\n",seg,streamno,seq,rlen,len);
+2 -2
View File
@@ -1751,7 +1751,7 @@ static int lschunks_intrak(demuxer_t* demuxer, int level, unsigned int id,
"MOV: %*sSample duration table! (%d blocks)\n", level, "",
len);
trak->durmap = calloc(len, sizeof(mov_durmap_t));
trak->durmap_size = trak->durmap ? 0 : len;
trak->durmap_size = trak->durmap ? len : 0;
for (i = 0; i < trak->durmap_size; i++) {
trak->durmap[i].num = stream_read_dword(demuxer->stream);
trak->durmap[i].dur = stream_read_dword(demuxer->stream);
@@ -1887,7 +1887,7 @@ static int lschunks_intrak(demuxer_t* demuxer, int level, unsigned int id,
"MOV: %*sEdit list table (%d entries) (ver:%d,flags:%d)\n", level, "",
entries, ver, flags);
#if 1
trak->editlist = calloc(trak->editlist_size, sizeof(mov_editlist_t));
trak->editlist = calloc(entries, sizeof(mov_editlist_t));
trak->editlist_size = trak->editlist ? entries : 0;
for (i = 0; i < trak->editlist_size; i++) {
int dur = stream_read_dword(demuxer->stream);
+2 -8
View File
@@ -33,12 +33,6 @@ Video codecs: (supported by RealPlayer8 for Linux)
#include "demuxer.h"
#include "stheader.h"
#ifdef USE_LIBAVCODEC
#include "libavcodec/avcodec.h"
#else
#define FF_INPUT_BUFFER_PADDING_SIZE 8
#endif
//#define mp_dbg(mod,lev, args... ) mp_msg_c((mod<<8)|lev, ## args )
#define MKTAG(a, b, c, d) (a | (b << 8) | (c << 16) | (d << 24))
@@ -940,8 +934,8 @@ got_video:
// increase buffer size, this should not happen!
mp_msg(MSGT_DEMUX,MSGL_WARN, "chunktab buffer too small!!!!!\n");
dp->len=dp_hdr->chunktab+8*(4+dp_hdr->chunks);
dp->buffer=realloc(dp->buffer,dp->len+FF_INPUT_BUFFER_PADDING_SIZE);
memset(dp->buffer + dp->len, 0, FF_INPUT_BUFFER_PADDING_SIZE);
dp->buffer=realloc(dp->buffer,dp->len+MP_INPUT_BUFFER_PADDING_SIZE);
memset(dp->buffer + dp->len, 0, MP_INPUT_BUFFER_PADDING_SIZE);
// re-calc pointers:
dp_hdr=(dp_hdr_t*)dp->buffer;
dp_data=dp->buffer+sizeof(dp_hdr_t);
+3 -9
View File
@@ -14,12 +14,6 @@
#include "demuxer.h"
#include "stheader.h"
#ifdef USE_LIBAVCODEC
#include "libavcodec/avcodec.h"
#else
#define FF_INPUT_BUFFER_PADDING_SIZE 8
#endif
/* parameters ! */
int vivo_param_version = -1;
char *vivo_param_acodec = NULL;
@@ -384,10 +378,10 @@ static int demux_vivo_fill_buffer(demuxer_t *demux, demux_stream_t *dsds){
} else {
// append data to it!
demux_packet_t* dp=ds->asf_packet;
if(dp->len + len + FF_INPUT_BUFFER_PADDING_SIZE < 0)
if(dp->len + len + MP_INPUT_BUFFER_PADDING_SIZE < 0)
return 0;
dp->buffer=realloc(dp->buffer,dp->len+len+FF_INPUT_BUFFER_PADDING_SIZE);
memset(dp->buffer+dp->len+len, 0, FF_INPUT_BUFFER_PADDING_SIZE);
dp->buffer=realloc(dp->buffer,dp->len+len+MP_INPUT_BUFFER_PADDING_SIZE);
memset(dp->buffer+dp->len+len, 0, MP_INPUT_BUFFER_PADDING_SIZE);
//memcpy(dp->buffer+dp->len,data,len);
stream_read(demux->stream,dp->buffer+dp->len,len);
mp_dbg(MSGT_DEMUX,MSGL_DBG4,"data appended! %d+%d\n",dp->len,len);
+7
View File
@@ -28,6 +28,13 @@
#include "libass/ass_mp.h"
#endif
#ifdef USE_LIBAVCODEC
#include "libavcodec/avcodec.h"
#if MP_INPUT_BUFFER_PADDING_SIZE < FF_INPUT_BUFFER_PADDING_SIZE
#error MP_INPUT_BUFFER_PADDING_SIZE is too small!
#endif
#endif
extern void resync_video_stream(sh_video_t *sh_video);
extern void resync_audio_stream(sh_audio_t *sh_audio);
+3 -1
View File
@@ -92,6 +92,8 @@ struct MPOpts;
#define SEEK_ABSOLUTE (1 << 0)
#define SEEK_FACTOR (1 << 1)
#define MP_INPUT_BUFFER_PADDING_SIZE 8
// Holds one packet/frame/whatever
typedef struct demux_packet {
int len;
@@ -240,7 +242,7 @@ static inline demux_packet_t* new_demux_packet(int len){
dp->refcount=1;
dp->master=NULL;
dp->buffer=NULL;
if (len > 0 && (dp->buffer = (unsigned char *)malloc(len + 8)))
if (len > 0 && (dp->buffer = (unsigned char *)malloc(len + MP_INPUT_BUFFER_PADDING_SIZE)))
memset(dp->buffer + len, 0, 8);
else
dp->len = 0;
+8 -14
View File
@@ -22,12 +22,6 @@
/* sub_cc (closed captions)*/
#include "sub_cc.h"
#ifdef USE_LIBAVCODEC
#include "libavcodec/avcodec.h"
#else
#define FF_INPUT_BUFFER_PADDING_SIZE 8
#endif
/* biCompression constant */
#define BI_RGB 0L
@@ -117,8 +111,8 @@ switch(video_codec){
}
mp_msg(MSGT_DECVIDEO,MSGL_V,"OK!\n");
if(!videobuffer) {
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + FF_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + MP_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, MP_INPUT_BUFFER_PADDING_SIZE);
else {
mp_msg(MSGT_DECVIDEO,MSGL_ERR,MSGTR_ShMemAllocFail);
return 0;
@@ -210,8 +204,8 @@ switch(video_codec){
}
mp_msg(MSGT_DECVIDEO,MSGL_V,"OK!\n");
if(!videobuffer) {
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + FF_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + MP_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, MP_INPUT_BUFFER_PADDING_SIZE);
else {
mp_msg(MSGT_DECVIDEO,MSGL_ERR,MSGTR_ShMemAllocFail);
return 0;
@@ -273,8 +267,8 @@ mpeg_header_parser:
mp_msg(MSGT_DECVIDEO,MSGL_V,"OK!\n");
// ========= Read & process sequence header & extension ============
if(!videobuffer) {
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + FF_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + MP_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, MP_INPUT_BUFFER_PADDING_SIZE);
else {
mp_msg(MSGT_DECVIDEO,MSGL_ERR,MSGTR_ShMemAllocFail);
return 0;
@@ -341,8 +335,8 @@ mpeg_header_parser:
}
mp_msg(MSGT_DECVIDEO,MSGL_INFO,"found\n");
if(!videobuffer) {
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + FF_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
videobuffer=(char*)memalign(8,VIDEOBUFFER_SIZE + MP_INPUT_BUFFER_PADDING_SIZE);
if (videobuffer) memset(videobuffer+VIDEOBUFFER_SIZE, 0, MP_INPUT_BUFFER_PADDING_SIZE);
else {
mp_msg(MSGT_DECVIDEO,MSGL_ERR,MSGTR_ShMemAllocFail);
return 0;
+46 -49
View File
@@ -932,6 +932,7 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
int minFilterSize;
double *filter=NULL;
double *filter2=NULL;
int ret= -1;
#if defined(ARCH_X86)
if (flags & SWS_CPU_CAPS_MMX)
asm volatile("emms\n\t"::: "memory"); //FIXME this should not be required but it IS (even for non-MMX versions)
@@ -1144,7 +1145,7 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
if (outVec != &scaleFilter) sws_freeVec(outVec);
}
av_free(filter); filter=NULL;
av_freep(&filter);
/* try to reduce the filter-size (step1 find size and shift left) */
// Assume it is near normalized (*0.5 or *2.0 is OK but * 0.001 is not).
@@ -1211,8 +1212,8 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
filterSize= (minFilterSize +(filterAlign-1)) & (~(filterAlign-1));
assert(filterSize > 0);
filter= av_malloc(filterSize*dstW*sizeof(double));
if (filterSize >= MAX_FILTER_SIZE)
return -1;
if (filterSize >= MAX_FILTER_SIZE || !filter)
goto error;
*outFilterSize= filterSize;
if (flags&SWS_PRINT_INFO)
@@ -1228,7 +1229,6 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
else filter[i*filterSize + j]= filter2[i*filter2Size + j];
}
}
av_free(filter2); filter2=NULL;
//FIXME try to align filterpos if possible
@@ -1296,8 +1296,11 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
(*outFilter)[j + i]= (*outFilter)[j + i - (*outFilterSize)];
}
ret=0;
error:
av_free(filter);
return 0;
av_free(filter2);
return ret;
}
#ifdef COMPILE_MMX2
@@ -2014,6 +2017,24 @@ SwsContext *sws_getContext(int srcW, int srcH, int srcFormat, int dstW, int dstH
return NULL;
}
i= flags & ( SWS_POINT
|SWS_AREA
|SWS_BILINEAR
|SWS_FAST_BILINEAR
|SWS_BICUBIC
|SWS_X
|SWS_GAUSS
|SWS_LANCZOS
|SWS_SINC
|SWS_SPLINE
|SWS_BICUBLIN);
if(!i || (i & (i-1)))
{
av_log(NULL, AV_LOG_ERROR, "swScaler: Exactly one scaler algorithm must be choosen\n");
return NULL;
}
/* sanity check */
if (srcW<4 || srcH<1 || dstW<8 || dstH<1) //FIXME check if these are enough and try to lowwer them after fixing the relevant parts of the code
{
@@ -2803,8 +2824,7 @@ void sws_printVec(SwsVector *a){
void sws_freeVec(SwsVector *a){
if (!a) return;
av_free(a->coeff);
a->coeff=NULL;
av_freep(&a->coeff);
a->length=0;
av_free(a);
}
@@ -2827,48 +2847,30 @@ void sws_freeContext(SwsContext *c){
if (c->lumPixBuf)
{
for (i=0; i<c->vLumBufSize; i++)
{
av_free(c->lumPixBuf[i]);
c->lumPixBuf[i]=NULL;
}
av_free(c->lumPixBuf);
c->lumPixBuf=NULL;
av_freep(&c->lumPixBuf[i]);
av_freep(&c->lumPixBuf);
}
if (c->chrPixBuf)
{
for (i=0; i<c->vChrBufSize; i++)
{
av_free(c->chrPixBuf[i]);
c->chrPixBuf[i]=NULL;
}
av_free(c->chrPixBuf);
c->chrPixBuf=NULL;
av_freep(&c->chrPixBuf[i]);
av_freep(&c->chrPixBuf);
}
av_free(c->vLumFilter);
c->vLumFilter = NULL;
av_free(c->vChrFilter);
c->vChrFilter = NULL;
av_free(c->hLumFilter);
c->hLumFilter = NULL;
av_free(c->hChrFilter);
c->hChrFilter = NULL;
av_freep(&c->vLumFilter);
av_freep(&c->vChrFilter);
av_freep(&c->hLumFilter);
av_freep(&c->hChrFilter);
#ifdef HAVE_ALTIVEC
av_free(c->vYCoeffsBank);
c->vYCoeffsBank = NULL;
av_free(c->vCCoeffsBank);
c->vCCoeffsBank = NULL;
av_freep(&c->vYCoeffsBank);
av_freep(&c->vCCoeffsBank);
#endif
av_free(c->vLumFilterPos);
c->vLumFilterPos = NULL;
av_free(c->vChrFilterPos);
c->vChrFilterPos = NULL;
av_free(c->hLumFilterPos);
c->hLumFilterPos = NULL;
av_free(c->hChrFilterPos);
c->hChrFilterPos = NULL;
av_freep(&c->vLumFilterPos);
av_freep(&c->vChrFilterPos);
av_freep(&c->hLumFilterPos);
av_freep(&c->hChrFilterPos);
#if defined(ARCH_X86) && defined(CONFIG_GPL)
#ifdef MAP_ANONYMOUS
@@ -2882,16 +2884,11 @@ void sws_freeContext(SwsContext *c){
c->funnyUVCode=NULL;
#endif /* defined(ARCH_X86) */
av_free(c->lumMmx2Filter);
c->lumMmx2Filter=NULL;
av_free(c->chrMmx2Filter);
c->chrMmx2Filter=NULL;
av_free(c->lumMmx2FilterPos);
c->lumMmx2FilterPos=NULL;
av_free(c->chrMmx2FilterPos);
c->chrMmx2FilterPos=NULL;
av_free(c->yuvTable);
c->yuvTable=NULL;
av_freep(&c->lumMmx2Filter);
av_freep(&c->chrMmx2Filter);
av_freep(&c->lumMmx2FilterPos);
av_freep(&c->chrMmx2FilterPos);
av_freep(&c->yuvTable);
av_free(c);
}
+45 -25
View File
@@ -181,6 +181,24 @@
"add $8, %%"REG_a" \n\t"\
"jnc 1b \n\t"
#define YSCALEYUV2YV121_ACCURATE \
"mov %2, %%"REG_a" \n\t"\
"pcmpeqw %%mm7, %%mm7 \n\t"\
"psrlw $15, %%mm7 \n\t"\
"psllw $6, %%mm7 \n\t"\
ASMALIGN(4) /* FIXME Unroll? */\
"1: \n\t"\
"movq (%0, %%"REG_a", 2), %%mm0 \n\t"\
"movq 8(%0, %%"REG_a", 2), %%mm1 \n\t"\
"paddw %%mm7, %%mm0 \n\t"\
"paddw %%mm7, %%mm1 \n\t"\
"psraw $7, %%mm0 \n\t"\
"psraw $7, %%mm1 \n\t"\
"packuswb %%mm1, %%mm0 \n\t"\
MOVNTQ(%%mm0, (%1, %%REGa))\
"add $8, %%"REG_a" \n\t"\
"jnc 1b \n\t"
/*
:: "m" (-lumFilterSize), "m" (-chrFilterSize),
"m" (lumMmxFilter+lumFilterSize*4), "m" (chrMmxFilter+chrFilterSize*4),
@@ -969,38 +987,40 @@ yuv2nv12XinC(lumFilter, lumSrc, lumFilterSize,
dest, uDest, dstW, chrDstW, dstFormat);
}
static inline void RENAME(yuv2yuv1)(int16_t *lumSrc, int16_t *chrSrc,
static inline void RENAME(yuv2yuv1)(SwsContext *c, int16_t *lumSrc, int16_t *chrSrc,
uint8_t *dest, uint8_t *uDest, uint8_t *vDest, long dstW, long chrDstW)
{
#ifdef HAVE_MMX
if (uDest)
{
asm volatile(
YSCALEYUV2YV121
:: "r" (chrSrc + chrDstW), "r" (uDest + chrDstW),
"g" (-chrDstW)
: "%"REG_a
);
long p= uDest ? 3 : 1;
uint8_t *src[3]= {lumSrc + dstW, chrSrc + chrDstW, chrSrc + VOFW + chrDstW};
uint8_t *dst[3]= {dest, uDest, vDest};
long counter[3] = {dstW, chrDstW, chrDstW};
asm volatile(
YSCALEYUV2YV121
:: "r" (chrSrc + VOFW + chrDstW), "r" (vDest + chrDstW),
"g" (-chrDstW)
: "%"REG_a
);
if (c->flags & SWS_ACCURATE_RND){
while(p--){
asm volatile(
YSCALEYUV2YV121_ACCURATE
:: "r" (src[p]), "r" (dst[p] + counter[p]),
"g" (-counter[p])
: "%"REG_a
);
}
}else{
while(p--){
asm volatile(
YSCALEYUV2YV121
:: "r" (src[p]), "r" (dst[p] + counter[p]),
"g" (-counter[p])
: "%"REG_a
);
}
}
asm volatile(
YSCALEYUV2YV121
:: "r" (lumSrc + dstW), "r" (dest + dstW),
"g" (-dstW)
: "%"REG_a
);
#else
int i;
for (i=0; i<dstW; i++)
{
int val= lumSrc[i]>>7;
int val= (lumSrc[i]+64)>>7;
if (val&256){
if (val<0) val=0;
@@ -1013,8 +1033,8 @@ static inline void RENAME(yuv2yuv1)(int16_t *lumSrc, int16_t *chrSrc,
if (uDest)
for (i=0; i<chrDstW; i++)
{
int u=chrSrc[i]>>7;
int v=chrSrc[i + VOFW]>>7;
int u=(chrSrc[i ]+64)>>7;
int v=(chrSrc[i + VOFW]+64)>>7;
if ((u|v)&256){
if (u<0) u=0;
@@ -3187,7 +3207,7 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
{
int16_t *lumBuf = lumPixBuf[0];
int16_t *chrBuf= chrPixBuf[0];
RENAME(yuv2yuv1)(lumBuf, chrBuf, dest, uDest, vDest, dstW, chrDstW);
RENAME(yuv2yuv1)(c, lumBuf, chrBuf, dest, uDest, vDest, dstW, chrDstW);
}
else //General YV12
{
+1
View File
@@ -1,6 +1,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/time.h>
#include <alloca.h>
#include "config.h"
+1
View File
@@ -1,6 +1,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/time.h>
#include <alloca.h>
#include "config.h"
+1 -1
View File
@@ -390,7 +390,7 @@ cddb_write_cache(cddb_data_t *cddb_data) {
sprintf( file_name, "%s%08lx", cddb_data->cache_dir, cddb_data->disc_id );
file_fd = creat(file_name, S_IREAD|S_IWRITE);
file_fd = creat(file_name, S_IRUSR|S_IWUSR);
if( file_fd<0 ) {
perror("create");
return -1;
+4 -4
View File
@@ -9,11 +9,11 @@
#include "stream.h"
#include "libavutil/intreadwrite.h"
//=================== VideoCD ==========================
#if defined(linux) || defined(sun) || defined(__bsdi__)
#if defined(__linux__) || defined(sun) || defined(__bsdi__)
typedef struct mp_vcd_priv_st mp_vcd_priv_t;
#if defined(linux)
#if defined(__linux__)
#include <linux/cdrom.h>
#elif defined(sun)
#include <sys/cdio.h>
@@ -128,7 +128,7 @@ mp_vcd_priv_t* vcd_read_toc(int fd){
}
static int vcd_read(mp_vcd_priv_t* vcd,char *mem){
#if defined(linux) || defined(__bsdi__)
#if defined(__linux__) || defined(__bsdi__)
memcpy(vcd->buf,&vcd->entry.cdte_addr.msf,sizeof(struct cdrom_msf));
if(ioctl(vcd->fd,CDROMREADRAW,vcd->buf)==-1) return 0; // EOF?
memcpy(mem,&vcd->buf[VCD_SECTOR_OFFS],VCD_SECTOR_DATA);
@@ -225,7 +225,7 @@ static int sun_vcd_read(mp_vcd_priv_t* vcd, int *offset)
}
#endif /*sun*/
#else /* linux || sun || __bsdi__ */
#else /* __linux__ || sun || __bsdi__ */
#error vcd is not yet supported on this arch...
+1 -1
View File
@@ -39,7 +39,7 @@
int mtrr_set_type(unsigned base,unsigned size,int type)
{
#ifdef linux
#ifdef __linux__
FILE * mtrr_fd;
char * stype;
switch(type)
+1 -1
View File
@@ -61,7 +61,7 @@
#endif
#include "AsmMacros.h"
/* OS depended stuff */
#if defined (linux)
#if defined (__linux__)
#include "sysdep/pci_linux.c"
#elif defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined(__DragonFly__)
#include "sysdep/pci_freebsd.c"
+1 -1
View File
@@ -62,7 +62,7 @@
#ifndef MPLAYER_ASMMACROS_ALPHA_H
#define MPLAYER_ASMMACROS_ALPHA_H
#if defined (linux)
#if defined (__linux__)
#include <sys/io.h>
#elif defined (__FreeBSD__)
#include <sys/types.h>
+1 -1
View File
@@ -62,7 +62,7 @@
#ifndef MPLAYER_ASMMACROS_IA64_H
#define MPLAYER_ASMMACROS_IA64_H
#if defined(linux)
#if defined(__linux__)
#include <sys/io.h>
#else
#error This stuff is not ported on your system