DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ÊÓÆµ -- MPlayer -- LinuxϵĵçÓ°²¥·ÅÆ÷

2.3.1 ÊÓÆµÊä³öÉ豸

2.3.1.1 MTRRµÄÉèÖÃ

Ç¿ÁÒ½¨ÒéÄã¼ì²éÄãµÄMTRR×¢²áÊÇ·ñÕýÈ·µÄÉ趨ÁË£¬ÒòΪËûÃÇÄܼ«´óµÄÌá¸ßÐÔÄÜ¡£

ÔËÐÐ'cat /proc/mtrr':

--($:~)-- cat /proc/mtrr
reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9
reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1

ÕâÊÇÕýÈ·µÄ£¬ÏÔʾÎÒµÄMatrox G400ÓÐ16MBÏÔ´æ´æ¡£ÎÒ´ÓXFree 4.x.xµÃµ½Õâ¸ö£¬Ëü»á×Ô¶¯µØÉ趨MTRR×¢²á¡£

Èç¹ûûÓÐʲô×Ô¶¯¹¤×÷£¬Ä㽫²»µÃ²»ÊÖ¹¤×ö¡£Ê×ÏÈ£¬Äã±ØÐëÕÒµ½»ùµØÖ·¡£ÄãÓÐ3ÖÖ·½·¨ÕÒËü£º

½Ó×ÅÈÃÎÒÃÇÀ´È·¶¨ÏÔ´æ´óС¡£ÕâÊ®·ÖÈÝÒ×£¬Ö»Òª°ÑÏÔ´æ´óС±äΪʮÁù½øÖÆ£¬»òÕßʹÓÃÕâ¸ö±í¸ñ£º

  1 MB0x100000
2 MB0x200000
4 MB0x400000
8 MB0x800000
16 MB0x1000000
32 MB0x2000000

ÄãÖªµÀÁË»ùµØÖ·ºÍÏÔ´æ´óС£¬ÏÂÃæÈÃÎÒÃǽøÐÐMTRR×¢²á£¡ÀýÈ磬¶ÔÓÚÉÏÊö32MBÏÔ´æ( size=0x2000000 )µÄMatroxÏÔ¿¨(base=0xd8000000)¾ÍÔËÐУº

  echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr

²¢·ÇËùÓÐCPU¶¼Ö§³ÖMTRR¡£±ÈÈç½ÏÀϵÄK6-2[266MHz×óÓÒ£¬²½½øÖµ0]²»Ö§³ÖMTRR£¬µ«ÊDz½½øÖµ12µÄ¾Í Ö§³Ö(ÓÃ'cat /proc/cpuinfo'ÃüÁî¼ì²é)¡£

2.3.1.2 ´«Í³ÏÔ¿¨µÄÊÓÆµÊä³ö

2.3.1.2.1 Xv

ÔÚXFree86 4.0.2»òÕ߸üеİ汾Ï£¬ÄãÄÜʹÓÃXVideoÀ©Õ¹À´Ê¹ÓÃÄãµÄÏÔ¿¨µÄÓ²¼þYUVÀý³Ì¡£ÕâÊǾÍÊÇ'-vo xv'ËùʹÓõġ£Í¬Ê±£¬ ÕâÊÇÖ§³Öµ÷½ÚÁÁ¶È/¶Ô±È¶È/É«Ïà/µÈµÈµÄÇý¶¯(³ý·ÇÄãʹÓþɵ쬻ºÂýµÄDirectShow DivX½âÂëÆ÷£¬Ê²Ã´Çý¶¯Ëü¶¼Ö§³Ö)£¬²Î¼ûman page¡£

ΪÁËʹËü¹¤×÷£¬È·ÐÅ×öÈçϼì²é£º

2.3.1.2.1.1 3dfxÏÔ¿¨

ÀϵĵÄ3dfxÇý¶¯´æÔÚXVideo¼ÓËÙµÄÎÊÌ⣬Ëü²»Ö§³ÖYUY2»òÕßYV12Ö®ÀàµÄ¸ñʽ¡£È·¶¨ÄãµÄXFree86°æ±¾ÔÚ4.2.0ÒÔÉÏ£¬ ËüÔÚYV12ºÍYUY2ģʽϹ¤×÷ºÜºÃ¡£ÒÔǰµÄ°æ±¾£¬°üÀ¨4.1.0£¬»áÔÚYV12ϱÀÀ£¡£Èç¹ûÄãʹÓÃ-vo xvʱÓöµ½Ææ¹ÖµÄÎÊÌ⣬ ³¢ÊÔʹÓÃSDL(ËüÒ²ÓÐXVideo)¿´ÊÇ·ñÓаïÖú¡£Ï¸½ÚÇë²ì¿´SDL²¿·Ö¡£

»òÕߣ¬ÊÔÊÔеÄ-vo tdfxfbÇý¶¯£¡ ²Î¼ûtdfxfb²¿·Ö¡£

2.3.1.2.1.2 S3ÏÔ¿¨

S3 Savage3DÓ¦¸ÃÄÜÕý³£¹¤×÷£¬²»¹ý¶ÔÓÚSavage4£¬ÇëʹÓÃXFree86 4.0.3»ò¸üеİ汾(Èç¹ûͼÏóÓÐÎÊÌ⣬ÊÔÊÔ16bpp)¡£ ÖÁÓÚS3 Virge£¬ËäÈ»ÓÐxvÖ§³Ö£¬µ«ÊÇÕâÖÖÏÔ¿¨ÊµÔÚÌ«Âý£¬Òò´ËÄã×îºÃÂôÁËËü¡£

×¢Ò⣺Ŀǰ²»Çå³þSavage½á¹¹µÄÄǸö²¿·ÖȱÉÙYV12Ö§³Ö£¬¶øÊÇÓÃÇý¶¯½øÐÐת»»µÄ(ºÜÂý)¡£Èç¹ûÄ㻳ÒÉÄãµÄÏÔ¿¨£¬ÕÒÒ» ¸öеÄÇý¶¯£¬»òÕßÔÚmplayer-usersµÄÓʼþÁбíÉÏÀñòµÄѯÎÊÖ§³ÖMMX/3DNowµÄÇý¶¯¡£

2.3.1.2.1.3 nVidiaÏÔ¿¨

nVidiaÔÚLinuxϲ»ÊǺܺõÄÑ¡Ôñ(nVidiaÈÏΪ£¬Õâ²¢·ÇÕæÊµÇé¿ö).. Ä㽫²»µÃ²»Ê¹Óöþ½øÖƵķǿªÔ´µÄnVidiaÇý¶¯£¬nVidiaµÄÍøÕ¾¿ÉÒÔÕÒµ½¡£±ê×¼XFree86Çý¶¯Ã»ÓÐÕâЩÏÔ¿¨µÄXVideoÖ§³Ö£¬ ÒòΪnVidiaûÓй«¿ªÔ´Âë/¹æ¸ñ¡£

¾ÝÎÒËùÖª×îеÄXFree86Çý¶¯°üº¬ÁËGeForce2ºÍ3µÄXVideoÖ§³Ö¡£

Riva128ÏÔ¿¨¼´Ê¹ÓÃnVidiaµÄÇý¶¯Ò²Ã»ÓÐXVideoÖ§³Ö:(ÏònVidia±§Ô¹È¥°É¡£

2.3.1.2.1.4 ATIÏÔ¿¨

2.3.1.2.1.5 NeoMagicÏÔ¿¨

ÕâЩÏÔ¿¨ÄÜÔÚÐí¶à±Ê¼Ç±¾µçÄÔÀïÕÒµ½¡£²»ÐÒµÄÊÇ£¬X 4.2.0µÄÇý¶¯²»ÄÜʹÓÃXv£¬µ«ÊÇÎÒÃÇΪÄã×¼±¸ÁËÒ»¸ö¾­¹ýÐ޸ģ¬Äܹ»Ê¹ÓÃXv µÄÇý¶¯¡£µ½ÕâÀïÏÂÔØ¡£ Õâ¸öÇý¶¯ÊÇÓÉStefan SeyfriedÌṩµÄ¡£

ÏñÕâÑùÐÞ¸ÄÄãµÄXF86Configʹ֮ÄܽøÐÐDVD´óСµÄÄÚÈݵIJ¥·Å£º

Section "Device"
    [...]
    Driver "neomagic"
    Option "OverlayMem" "829440"
    [...]
EndSection

2.3.1.2.1.6 TridentÏÔ¿¨

Èç¹ûÄãÏëÒªÔÚTridentÏÔ¿¨ÉÏʹÓÃxv£¬ËüÔÚ4.1.0ϲ»¹¤×÷£¬³¢ÊÔXFree×îеÄCVS»òÕߵȺòXFree 4.2.0¡£×îеÄCVS¼ÓÈë ÁËCyberblade XPÏÔ¿¨µÄÈ«ÆÁXvÖ§³Ö¡£

2.3.1.2.1.7 Kyro/PowerVR cards

Èç¹ûÄãÏëÔÚÒ»¿é»ùÓÚKyroµÄÏÔ¿¨(ÀýÈçHercules Prophet 4000XT)ÉÏʹÓÃXv£¬ÄãÓ¦¸Ã´ÓPowerVRµÄÍøÕ¾ÉÏÏÂÔØÇý¶¯¡£

2.3.1.2.2 DGA

ÒýÑÔ

Õⲿ·ÖÎĵµÊÔͼ»¨Ð©Æª·ùÀ´½âÊÍDGA´ó¸ÅÊÇʲôÒÔ¼°MPlayerµÄDGAÊÓÆµÊä³öÇý¶¯ÄܸÉʲô(ºÍ²»ÄܸÉʲô)¡£

DGAÊÇʲô

DGAÊÇDirect Graphics AccessµÄ¼ò³Æ£¬ÊÇÒ»ÖÖʹ³ÌÐòÈÆ¹ýX-·þÎñÆ÷Ö±½ÓÐÞ¸ÄÖ¡»º³åÏÔ´æµÄ·½·¨¡£´Ó¼¼Êõ½Ç¶È˵ ÕâÊÇͨ¹ý°ÑÖ¡»º³åÏÔ´æÓ³Éäµ½ÄãµÄ´¦ÀíÆ÷µÄÄڴ淶Χ֮ÄÚ¡£Ö»ÓÐÄãÓг¬¼¶Óû§È¨ÏÞµÄʱºòÄں˲ÅÔÊÐíÕâÖÖ²Ù×÷¡£ÓÃrootµÇ¼»òÕß ¸øMPlayerµÄÖ´ÐÐÎļþÉèÖÃSUIDλ(ÍÆ¼öʹÓã¡)¿ÉÒÔ×öµ½ÕâÒ»µã¡£

DGAÓÐÁ½ÖÖ°æ±¾£º DGA1ÓÃÓÚXFree 3.x.xºÍDGA2´ÓXFree 4.0.1¿ªÊ¼ÒýÈë¡£

DGA1Ö»ÌṩÁËǰÊöµÄÖ¡»º³åÖ±½Ó²Ù×÷¹¦ÄÜ¡£Äã²»µÃ²»Ê¹ÓÃXVidModeÀ©Õ¹À´Çл»ÊÓÆµÐźŵķֱæÂÊ¡£

DGA2½áºÏÁËXVidModeÀ©Õ¹µÄÌØÐÔ¶øÇÒÒ²ÔÊÐíÇл»ÏÔʾµÄÉ«²ÊÉî¶È¡£Òò´Ë£¬ËäȻһ°ãʹÓÃ32λɫX·þÎñÆ÷£¬ÄãÒ²ÄÜÇл»µ½15λɫÉ·´Ö®ÒàÈ»¡£

È»¶øDGAÒ²ÓÐһЩ±×¶Ë¡£ËüËÆºõÓÐЩÒÀÀµÓÚÄãʹÓõÄͼÐÎоƬºÍX·þÎñÆ÷ÖпØÖƸÃоƬµÄÊÓÆµÇý¶¯¡£Òò´Ë£¬Ëü²¢²»ÊǶÔËùÓеÄϵͳ¶¼Æð×÷Óá£

ΪMPLAYER°²×°DGAÖ§³Ö

Ê×ÏÈÈ·±£X×°ÔØÁËDGAÀ©Õ¹£¬²ì¿´/var/log/XFree86.0.log:

    (II) Loading extension XFree86-DGA

¿É¼û£¬Ç¿ÁÒÍÆ¼öXFree86 4.0.x»ò¸ü¸ß°æ±¾£¬MPlayerµÄDGAÇý¶¯ÔÚ./configureʱ»á×Ô¶¯¼ì²âµ½£¬·ñÔòÄã¿ÉÒÔÓÃ--enable-dgaÇ¿ÐбàÒëËü¡£

Èç¹ûÄãµÄÇý¶¯²»ÄÜÇл»µ½Ò»¸ö½ÏСµÄ·Ö±æÂÊ£¬³¢ÊÔʹÓÃ-vm(Ö»ÓÃÓÚX 3.3.x)£¬-fs£¬-bpp£¬-zoomÑ¡ÏîÕÒÒ»¸öÊʺÏÄãµÄµçÓ°µÄÊÓÆµÄ£Ê½¡£Ä¿Ç°Ã»ÓÐת»»¹¦ÄÜ:(

³ÉΪroot¡£DGAÐèÒªrootȨÏÞÀ´Ö±½ÓдÏÔ´æ¡£Èç¹ûÄãÏëÓÃÆÕͨÓû§ÔËÐÐËü£¬¸øMPlayerÉèÖÃSUID rootȨÏÞ£º

    chown root /usr/local/bin/mplayer
    chmod 750 /usr/local/bin/mpl er
    chmod +s /usr/local/bin/mplayer

ËüÏÖÔÚÒ²Äܱ»ÆÕͨÓû§Ê¹ÓÃÁË¡£

¾¯¸æ£º°²È«·çÏÕ
ÕâÊÇÒ»¸öºÜ´óµÄ°²È«·çÏÕ£¡ÓÀÔ¶²»ÒªÔÚ³ýÁËÄãÖ®Í⻹ÓÐÈË¿ÉÒÔʹÓõķþÎñÆ÷ÉÏÕâÑù×ö£¬ÒòΪËûÃÇÄÜͨ¹ýSUID rootµÄMPlayer»ñµÃrootȨÏÞ¡£

ÏÖÔÚʹÓÃ-vo dgaÑ¡Ï¿ªÊ¼Ê¹ÓÃ(Èç´ËÏ£Íû:))£¡ ÄãÒ²Ó¦¸Ã³¢ÊÔ¿´¿´-vo sdl:dgaÑ¡ÏîÄÜ·ñÕý³£¹¤×÷¡£Ëü¿ìµÃ¶à¡£

Çл»·Ö±æÂÊ

DGAÇý¶¯ÔÊÐíÇл»Êä³öÐźŵķֱæÂÊ¡£ÕâÑùÄܱÜÃâʹÓÃ(»ºÂýµÄ)Èí¼þËõ·ÅͬʱÓÖÌṩȫÆÁͼÏó¡£ÀíÏëÇé¿öÏ£¬Ëü½«¾«È·Çл»³ÉÊÓÆµÊý¾Ý µÄ·Ö±æÂÊ(³ýÁËΪÁ˱£³Ö³¤¿í±È)£¬µ«ÊÇX·þÎñÆ÷½öÔÊÐíÇл»µ½/etc/X11/XF86Config(XFree 4.0.Xʹ ÓÃ/etc/X11/XF86Config-4ÓÃÓÚÇø±ð)ÖÐÔ¤¶¨ÒåµÄ·Ö±æÂÊ¡£ËüÃDZ»ËùνµÄmodelines¶¨Òå²¢ÇÒÒÀÀµÓÚÄãµÄÊÓÆµÓ²¼þµÄ ÄÜÁ¦¡£X·þÎñÆ÷Æô¶¯Ê±É¨ÃèÕâ¸öÅäÖÆÎļþ²¢ÇÒ½ûÓÃÄÇЩ²»ÊÊÓÃÓÚÄãµÄÓ²¼þµÄmodelines¡£ÄãÄÜͨ¹ýX11µÄlogÎļþÕÒ³öÄÄЩ·½Ê½¿ÉÓá£ËüÄÜ ÔÚÕâÀïÕÒµ½£º/var/log/XFree86.0.log¡£

ÏÂÃæµÄÀý×Ó¶ÔÓÚÒ»¿éRiva128оƬ¹¤×÷Á¼ºÃ£¬Ê¹ÓÃX serverµÄÇý¶¯Ä£¿énv.o¡£

  Section "Modes"
    Identifier    "Modes[0]"
    Modeline	"800x600"  40     800 840 968 1056  600 601 605 628
    Modeline	"712x600"  35.0   712 740 850 900   400 410 412 425
    Modeline	"640x480"  25.175 640 664 760 800   480 491 493 525
    Modeline 	"400x300"  20     400 416 480 528   300 301 303 314 Doublescan
    Modeline	"352x288"  25.10  352 368 416 432   288 296 290 310
    Modeline	"352x240"  15.750 352 368 416 432   240 244 246 262 Doublescan
    Modeline	"320x240"  12.588 320 336 384 400   240 245 246 262 Doublescan
  EndSection

DGA & MPLAYER

MPlayerÔÚÓÐÁ½ÖÖ·½·¨Ê¹ÓÃDGA£ºSDLÇý¶¯ÄÜʹÓÃËü(-vo sdl:dga)£¬DGAÇý¶¯(-vo dga)ҳʹÓÃËü¡£ÉÏÃæËµµÄÄÚÈݶÔÁ½Õß¶¼ÓÐЧ£» ÔÚÏÂÁеÎÖÐÎÒ½«½âÊÍMPlayerÖÐDGAÇý¶¯ÊÇÈçºÎ¹¤×÷µÄ¡£

ÌØÐÔ

DGAÇý¶¯Í¨¹ýÃüÁîÐÐÖеÄ-vo dgaÑ¡Ïîµ÷Óá£Ä¬ÈϲÙ×÷ÊÇת»»³ÉÓëÔ­À´µÄÊÓÆµ¾¡¿ÉÄܽӽüµÄ·Ö±æÂÊ¡£Ëü½«ºöÂÔ-vmºÍ-fsÑ¡Ïî(¿ªÆôÊÓÆµÄ£Ê½Çл»ºÍÈ«ÆÁ·½Ê½) -- Ëü×ÜÊÔͼͨ¹ýÇл»ÏÔʾģʽ¾¡¿ÉÄܶàµÄ¸²¸ÇÄãµÄÆÁÄ»£¬ÕâÑù×è°­ÄãµÄCPUʹÓÃÒ»¸öµ¥Ò»µÄ¸½¼ÓµÄÖÜÆÚÀ´·Å´óͼÏñ¡£ Èç¹ûÄ㲻ϲ»¶ËüÑ¡ÔñµÄģʽÄãÄÜÇ¿ÆÈËüÑ¡Ôñ×î½Ó½üÓÚÄãͨ¹ý-xºÍ-yÑ¡Ïî¹æ¶¨µÄ·Ö±æÂʵÄģʽ¡£Ê¹ÓÃ-vÑ¡ÏDGAÇý¶¯½«ÔÚÒ»´ó¶Ñ±ðµÄ¶«Î÷ÖдòÓ¡³öÄã µ±Ç°XF86-ConfigÎļþÖ§³ÖµÄËùÓзֱæÂʵÄÁÐ±í¡£ Èç¹ûÊÇDGA2ÄãÒ²ÄÜͨ¹ýʹÓÃ-bppÑ¡ÏîÇ¿ÆÈËüʹÓÃÒ»¶¨µÄÉ«²ÊÉî¶È¡£ÓÐЧµÄÉ«ÉîÊÇ15£¬16£¬24ºÍ32¡£ÕâÈ¡¾öÓÚÄãµÄÓ²¼þ¶ÔÕâЩɫÉîÊÇ·ñ±¾µØÖ§³Ö£¬ »¹ÊÇͨ¹ýijÖÖ(ÓпÉÄܺÜÂý)µÄת»¯À´Íê³ÉµÄ¡£

Èç¹ûÄã·Ç³£ÐÒÔË£¬ÓÐ×ã¹»ÏÔ´æµÄÆÁÍ⻺³åÇøÀ´´æ·ÅÕû¸öͼÏó£¬DGAÇý¶¯½«Ê¹ÓÃË«ÖØ»º³å£¬ÕâÄÜʹµçÓ°²¥·Å¸ü¼Óƽ»¬¡£Ëü»á¸æËßÄãË«ÖØ»º³åÊÇ·ñ±»´ò¿ª¡£

Ë«ÖØ»º³åµÄÒâ˼ÊÇÔÚÄãµÄÊÓÆµµÄµ±Ç°Ö¡±»ÏÔʾʱ£¬ÏÂÒ»Ö¡ÔÚÆÁÍ⻺³åÇøÖб»»æÖÆ¡£µ±ÏÂÒ»Ö¡×¼±¸Íê±Ïʱ£¬ ͼÐÎоƬ±»¸æÖªÏÂÒ»Ö¡ÔÚÏÔ´æÖеÄλÖò¢ÇÒÖ±½Ó´ÓÄÇÀォҪÏÔʾµÄÊý¾Ý¶Á³öÀ´¡£ÔÚ´ËÆÚ¼äÆäËüÔÚ¼ÇÒäÖеĻº³åÆ÷½«ÔÙÒ»´Î±»×°ÂúеÄÊÓÆµÊý¾Ý¡£

Ë«ÖØ»º³å¿ÉÒÔÓÃ-doubleÑ¡ÏÆôÒ²¿ÉÒÔÓÃ-nodoubleÑ¡Ïî½ûÖ¹¡£Ä¿Ç°È±Ê¡Ñ¡ÏîÊǽûÓÃË«ÖØ»º³å¡£ÆÁÄ»ÏÔʾ¹¦ÄÜ(OSD)ÔÚʹÓÃDGAÇý¶¯Ä£Ê½Ê±±ØÐë´ò¿ªË«ÖØ»º³å¹¦ÄÜ¡£ È»¶ø£¬Ê¹ÓÃË«ÖØ»º³å¿ÉÄܵ¼Ö½ϴóµÄËÙ¶ÈϽµ(ÔÚÎÒµÄK6-II+ 525ÉÏËü¶àÕ¼ÓÃ20%µÄCPUʱ¼ä£¡)£¬Ï½µ³Ì¶ÈÈ¡¾öÓÚDGA²Ù×÷ÄãµÄÓ²¼þµÄ·½·¨¡£

ËÙ¶ÈÎÊÌâ

Ò»°ãÀ´Ëµ£¬DGAÖ¡»º³åÖÁÉÙÓ¦¸Ã¸úX11Çý¶¯Ò»Ñù¿ìͬʱ»¹ÓÐÈ«ÆÁͼÏóµÄ¸½¼ÓºÃ´¦¡£¶ÔMPlayer´òÓ¡³öµÄ°Ù·Ö±ÈËÙ¶ÈµÄÆÀ¼ÛÓ¦¸ÃСÐÄ£¬ ±ÈÈçX11Çý¶¯ËüÃDz¢²»°üÀ¨X-·þÎñÆ÷ÕæÕý»æÖÆËùÓõÄʱ¼ä¡£¿ªÒ»¸öÖÕ¶ËÁ¬µ½ÄãµÄ»úÆ÷µÄ´®¿ÚÉÏÔËÐÐtopÃüÁî¿´¿´ÄãµÄ»úÆ÷ÕæÕýÔÚ¸Éʲô...

Ò»°ãÀ´Ëµ£¬Ê¹ÓÃDGAÏà¶Ô¡°ÆÕͨµÄ¡±Ê¹ÓÃX11Ëù²úÉúµÄËÙ¶ÈÌá¸ß¸ß¶ÈÒÀÀµÓÚÄãµÄÏÔ¿¨£¬ÒÔ¼°X-·þÎñÆ÷ÖÐËüµÄÄ£¿é×öÁ˶àÉÙÓÅ»¯¡£

Èç¹ûÄãµÄϵͳ½ÏÂý£¬×îºÃʹÓÃ15»òÕß16bitÉ«ÉÒòΪËûÃǽö½öÒªÇó32bitÏÔʾµÄÏÔ´æ´ø¿íµÄÒ»°ë¡£

¼´Ê¹ÄãµÄÏÔ¿¨×ÔÉí¾ÍÖ§³Ö32bitÉ«ÉʹÓÃ24bitµÄÉ«ÉîÒ²ÊǸöºÃÖ÷Ò⣬ÒòΪËü±»32/32·½Ê½ÉÙ´«Êä25%µÄÊý¾Ý¡£

ÎÒÔø¼û¹ýһЩAVIÎļþÄÜÔÚPentium MMX 266Éϲ¥·Å¡£AMD K6-2 CPUÔÚ400 MHZÒÔÉϵÄÓ¦¸Ã¿ÉÒÔ¹¤×÷¡£

ÒÑÖªµÄBUG

àÅ£¬¾ÝһЩXFreeµÄ¿ª·¢Õß˵£¬DGAÏñÍ·Ò°ÊÞ¡£ËûÃǸæËßÄ㲻ҪʹÓÃËü¡£²¢·Ç¶ÔÈκÎоƬµÄÇý¶¯ËüµÄ²Ù×÷¶¼ÊÇûÓÐ覴õġ£

2.3.1.2.3 SDL

SDL(Simple Directmedia Layer)»ù±¾ÉÏÊÇÒ»ÖÖͳһµÄÊÓÆµ/ÒôƵ½Ó¿Ú¡£Ê¹ÓÃËüµÄ³ÌÐòÖ»ÒªÖªµÀSDL£¬¶ø²»ÐèÒªÁ˽âSDLʵ¼ÊÉÏʹÓõÄÊÓÆµ»òÒôƵÇý¶¯¡£ ÀýÈçʹÓÃSDLµÄDoomÒÆÖ²ÄÜÔÚsvgalib£¬aalib£¬X£¬fbdev£¬ºÍÆäËû¶«Î÷ÉÏʹÓã¬Äã½öÐèÒªÓû·¾³±äÁ¿SDL_VIDEODRIVER¹æ¶¨(ÀýÈç)ʹÓõÄÊÓÆµÇý ¶¯¡£àÅ£¬ÖÁÉÙÔÚÀíÂÛÉÏ¡£

ÔÚMPlayerÖУ¬ÎÒÃÇʹÓÃËüµÄX11Çý¶¯µÄÈí¼þËõ·Å¹¦ÄÜ£¬ÓÃÓÚ²»Ö§³ÖXVideoµÄоƬ/ÏÔ¿¨£¬Ö±µ½ÎÒÃÇ×ö³öÎÒÃÇ×Ô¼ºµÄ(¸ü¿ì£¬¸üºÃ)µÄÈí¼þËõ·Å´úÂë¡£ ͬʱÎÒÃÇʹÓÃËüµÄaalibÊä³ö£¬µ«ÊÇÏÖÔÚÎÒÃÇ×Ô¼ºµÄ¸üºÏÊʵÄÁË¡£ËüµÄDGAģʽ±ÈÎÒÃǵĺã¬Ö±µ½×î½ü¡£ÏÖÔÚÃ÷°×ÁË£¿ :)

Ëü¶ÔһЩbuggyµÄÇý¶¯/ÏÔ¿¨Ò²ÓаïÖú£¬ÀýÈçÊÓÆµÌøÔ¾(²»ÊÇϵͳ»ºÂýµÄÎÊÌâ)£¬»òÕßÒôƵÑÓ³Ù¡£

SDLÊÓÆµÊä³öÖ§³ÖÔÚµçÓ°ÏÂÃæ£¬(Èç¹û³öÏÖ)µÄºÚÌõÉÏÏÔʾ×ÖÄ»¡£

ÕâÀïÊÇһЩ¹ØÓÚSDLÊä³öµÄ¿ØÖÆÑ¡Ï

-vo sdl:name
¹æ¶¨Ê¹ÓõÄsdlÊÓÆµÇý¶¯(ÀýÈçaalib£¬dga£¬x11)
-ao sdl:name
¹æ¶¨Ê¹ÓõÄsdlÒôƵÇý¶¯(ÀýÈçdsp£¬esd£¬arts)
-noxv
½ûÓÃXVideoÓ²¼þ¼ÓËÙ
-forcexv
³¢ÊÔÇ¿ÖÆXVideo¼ÓËÙ

SDL¿ØÖƼü£º

FÇл»È«ÆÁ/´°¿Ú·½Ê½
CÑ­»·Çл»¿ÉÓõÄÈ«ÆÁ·½Ê½
WÓëS*ºÍ/µÄÓ³Éä(ÒôÁ¿¿ØÖÆ)

ÒÑÖªµÄBUG£º

2.3.1.2.4 SVGAlib

°²×°

Äã±ØÐë°²×°svgalibºÍËüµÄ¿ª·¢°üÀ´Ê¹MPlayer±àÒëËüµÄSVGAlibÇý¶¯(×Ô¶¯¼ì²â£¬µ«ÊÇÒ²ÄÜÇ¿ÖÆÊ¹ÓÃ)£¬ ±ðÍüÁ˱༭/etc/vga/libvga.configÀ´ÅäºÏÄãµÄÏÔ¿¨&¼àÊÓÆ÷¡£

×¢Òâ

Ò»¶¨²»ÒªÓÃ-fsÑ¡ÏÒòΪËü½«µ¼ÖÂʹÓÃÈí¼þËõ·Å£¬ËÙ¶È»áºÜÂý£¬Èç¹ûÄãȷʵÐèÒª£¬Ê¹ÓÃ-sws 4Ñ¡Ï ÖÊÁ¿»áÓеã²î£¬µ«ÊÇÎÞÂÛÈçºÎËü¸ü¿ì¡£

EGA(4BPP)Ö§³Ö

SVGAlib½áºÏÁËEGAlib£¬Ê¹µÃMPlayerÓпÉÄÜÓÃ16ÖÖÑÕÉ«²¥·ÅÈκεçÓ°£¬ÏÂÁеÄÅäÖÆÖпÉÒÔʹÓãº

bpp(ÿÏóËØ±ÈÌØÊý)µÄÖµ±ØÐëÊÖ¹¤ÉèΪ4£º
    -bpp 4
µçÓ°¿ÉÄܱØÐë±»°´±ÈÀýËõСµ½EGAÊʺϵÄģʽ£º
   -vf scale=640:350»òÕß
   -vf scale=320:200
Ϊ×öµ½ÕâÒ»µãÎÒÃÇÐèҪʹÓÿìËÙµ«µÍÖÊÁ¿µÄÀý³Ì£º
   -sws 4
Ò²Ðí×Ô¶¯¾ÀÕý³¤¿í±ÈµÄ¹¦ÄÜÐèÒª¹Ø±Õ£º
   -noaspect

×¢Ò⣺¸ù¾ÝÎҵľ­ÑéÓÃ-vf eq=-20:0ÉÔÉÔ½µµÍÁÁ¶È¿ÉÒÔÔÚEGAÆÁÄ»ÉÏ»ñµÃ×îºÃµÄͼÏóÖÊÁ¿¡£ÔÚÎÒµÄ »úÆ÷ÉÏÎÒÒ²Òª½µµÍÒôƵ²ÉÑùÂÊ£¬ÒòΪÉùÒôÔÚ44kHzʱºÜ²î£º-srate 22050.

ÄãÖ»Óдò¿ªexpandÂ˾µ²ÅÄÜʹÓÃOSDºÍ×ÖÄ»¡£¾ßÌå²ÎÊý²Î¼ûman page¡£

2.3.1.2.5 Ö¡»º³åÊä³ö(FBdev)

ÊÇ·ñ±àÒëFBdevÄ¿±êÊÇÔÚ./configureÆÚ¼ä×Ô¶¯¼ì²âµÄ¡£ÔĶÁÄÚºËÔ´ÂëÖеÄÖ¡»º³åµÄÎĵµ(Documentation/fb/*)À´Á˽â¸ü¶àÐÅÏ¢¡£

Èç¹ûÄãµÄÏÔ¿¨²»Ö§³ÖVBE 2.0±ê×¼(½Ï¾ÉµÄISAÓëPCIÏÔ¿¨£¬ÖîÈçS3 Trio64)£¬½öÖ§³ÖVBE 1.2(»òÕ߸üÀϵÄ?)£º àÅ£¬VESAfbÈÔÈ»ÊÇ¿ÉÓõ쬵«ÊÇÄ㽫±ØÐëÔÚÆô¶¯LinuxÖ®Ç°×°ÔØSciTech Display Doctor(´Óǰ½ÐUniVBE )¡£ ÓÃDOSÆô¶¯ÅÌ»òËæ±ãʲô¡£Í¬Ê±£¬±ðÍüÁË×¢²áÄãµÄUniVBE ;))

FBdevÊä³öÓÐЩ³ýÁËÒÔǰ˵¹ýµÄ²ÎÊýÍâµÄ¸½¼Ó²ÎÊý£º

-fb
¹æ¶¨Ê¹ÓõÄÖ¡»º³åÉ豸(/dev/fb0)
-fbmode
ʹÓõÄģʽÃû(°´ÕÕ/etc/fb.modesÎļþ)
-fbmodeconfig
ģʽµÄÅäÖÃÎļþ·½Ê½(ĬÈÏΪ/etc/fb.modes)
-monitor-hfreq
-monitor-vfreq
-monitor-dotclock
ÖØÒªµÄ²ÎÊý£¬²Î¼ûexample.conf

Èç¹ûÄãÏëÒªÇл»µ½Ä³¸ö¾ßÌåģʽ£¬ÄÇôʹÓÃ

    mplayer -vm -fbmode (NameOfMode) filename

×¢Ò⣺ʹÓÃVESA Ö¡»º³åʱFBdevÊÓÆµ·½Ê½²»Äܸı䣬Ҳ²»ÒªÒªÇóÕâ¸ö¹¦ÄÜ£¬ÒòΪËü²»ÊÇÓÉÓÚMPlayer×ÔÉíµÄÏÞÖÆ¡£

2.3.1.2.6 MatroxÖ¡»º³å(mga_vid)

ÕâÒ»¶ÎÊǹØÓÚMatrox G200/G400/G450/G550 BES (Back-End Scaler)µÄÖ§³Ö£¬mga_vidÄÚºËÇý¶¯¡£ËüÏÖÔÚÊÇÓÉA'rpi¿ª·¢£¬ ËüÓÐÈýÖØ»º³åµÄÓ²¼þVSYNCÖ§³Ö¡£ËüÔÚÖ¡»º³å¿ØÖÆÌ¨ÏºÍX϶¼¿ÉÒÔ¹¤×÷¡£

¾¯¸æ£ºÔÚ·ÇLinuxϵͳ(ÔÚFreeBSDÉϲâÊÔ¹ý)ÉÏ£¬ÒªÊ¹ÓÃVIDIXʵÏÖmga_vid£¡

°²×°:

  1. ΪÁËʹÓÃËü£¬ÄãÊ×ÏȱØÐë±àÒëmga_vid.o£º

    cd drivers
    make

  2. È»ºó´´½¨/dev/mga_vidÉ豸£º

    mknod /dev/mga_vid c 178 0

    È»ºóÕâÑù¼ÓÔØÇý¶¯

    insmod mga_vid.o

  3. ÄãÓ¦¸ÃʹÓÃdmesgÃüÁî¼ì²éÏÔ´æ´óСµÄ¼ì²â½á¹û¡£Èç¹û²»¶Ô£¬ÄÇôʹÓÃmga_ram_sizeÑ¡Ïî(ÏÈrmmod mga_vid)£¬ÒÔMBΪµ¥Î»Ö¸¶¨ÏÔ¿¨µÄÏÔ´æ´óС£º

    insmod mga_vid.o mga_ram_size=16

  4. ΪÁËʹËüÔÚÐèҪʱ×Ô¶¯µØ¼ÓÔØ/Ð¶ÔØ£¬Ê×ÏÈÔÚ/etc/modules.confµÄĩβ¼ÓÉÏÏÂÃæÕâÒ»ÐУº

    alias char-major-178 mga_vid

    È»ºó°Ñmga_vid.oÄ£¿é¸´ÖƵ½/lib/modules/<kernel version>/somewhereϵÄÊʵ±Î»Öá£

    È»ºóÔËÐÐ

    depmod -a

  5. ÄãÏÖÔÚÐèÒª(ÖØÐÂ)±àÒëMPlayer£¬configure½«¼ì²âµ½/dev/mga_vid²¢ÇÒ±àÒë'mga'Çý¶¯¡£Èç¹ûÄãʹÓÃmatroxfb¿ØÖÆÌ¨£¬ ÔÚMPlayerÖÐÓÃ-vo mgaʹÓÃËü£¬»òÕßÔÚXFree86 3.x.x»òÕß4.x.xϵÄʹÓÃ-vo xmga¡£

mga_vidÇý¶¯ÄÜÓëXvЭͬ¹¤×÷¡£

¿ÉÒÔÔĶÁ/dev/mga_vidÉ豸Îļþ(ÀýÈçcat /dev/mga_vid)À´²éÕÒһЩÐÅÏ¢£¬ Ò²¿ÉÒÔͨ¹ýдËüÀ´µ÷ÕûÁÁ¶È£ºecho "brightness=120" > /dev/mga_vid

2.3.1.2.7 3dfx YUVÖ§³Ö(tdfxfb)

Õâ¸öÇý¶¯Ê¹ÓÃÄں˵ÄtdfxÖ¡»º³åÇý¶¯À´ÀûÓÃYUV¼ÓËÙ²¥·ÅµçÓ°¡£ÄãÐèÒªÒ»¸öÖ§³ÖtdfxfbµÄÄںˣ¬ È»ºóÓÃ./configure --enable-tdfxfbÖØÐ±àÒë

2.3.1.2.8 OpenGLÊä³ö

MPlayerÖ§³ÖʹÓÃOpenGLÏÔʾµçÓ°£¬µ«ÊÇÈç¹ûÄãµÄƽ̨/Çý¶¯Ö§³Öxv£¬¾ÍÏóʹÓÃlinuxµÄPC»úÄÇÑù£¬¾ÍʹÓÃxv£¬OpenGLµÄЧ¹ûÓëËüÏà±ÈÏ൱»µ¡£ Èç¹ûÄãÖ»ÓÐûÓÐxvÖ§³ÖµÄX11³ÌÐò£¬OpenGLÊÇ¿ÉÓõÄÑ¡Ôñ¡£

²»ÐÒµÄÊDz¢·ÇËùÓÐÇý¶¯¶¼Ö§³ÖÕâ¸öÌØÐÔ¡£Utah-GLXÇý¶¯(Õë¶ÔXFree86 3.3.6)¶ÔËùÓÐÏÔ¿¨¶¼Ö§³ÖËü¡£·ÃÎÊhttp://utah-glx.sourceforge.netÁ˽ⰲװËüµÄϸ½ÚÎÊÌâ¡£

XFree86(DRI) 4.0.3ÒÔÉÏÖ§³ÖMatroxºÍRadeonÏÔ¿¨µÄOpenGL£¬4.2.0»ò¸üа汾֧³ÖRage128¡£ ·ÃÎÊhttp://dri.sourceforge.netÒÔѰÕÒÏÂÔØºÍ°²×°Ö¸µ¼¡£

2.3.1.2.9 AAlib -- Îı¾·½Ê½ÏÔʾ

AAlib ÊÇÒ»¸öÓÃÓÚÔÚÎı¾Ä£Ê½ÏÂÏÔʾͼÐεĿ⣬ËüʹÓÃÇ¿´óµÄASCIIäÖȾÆ÷¡£ÓÐÐí¶à³ÌÐòÌṩ¶ÔËüµÄÖ§³Ö£¬ÏñDoom£¬QuakeµÈµÈ¡£ MPlayer°üº¬Ò»¸öÕë¶ÔËüµÄʵÓõÄÇý¶¯¡£Èç¹û./configure·¢ÏÖ°²×°ÁËaalib£¬aalibµÄlibvoÇý¶¯½«±»±àÒë¡£

ÄãÄÜÔÚAA´°¿ÚÖÐʹÓÃһЩ¿ØÖƼüÀ´¸Ä±ääÖȾ²ÎÊý£º

  1  ¼õÉٶԱȶÈ
2Ôö¼Ó¶Ô±È¶È
3¼õÉÙÁÁ¶È
4Ôö¼ÓÁÁ¶È
5´ò¿ª/¹Ø±Õ¿ìËÙäÖȾ
6ÉèÖö¶¶¯·½Ê½(²»¶¶¶¯, Îó²î·Ö²¼Ëã·¨, Floyd SteinbergËã·¨)
7·´×ªÍ¼Ïó
aת»»aaºÍMPlayerµÄ¿ØÖƼü

ÏÂÁеÄÃüÁîÐÐÑ¡ÏîÄܹ»Ê¹Óãº

-aaosdcolor=V
¸Ä±äOSDÑÕÉ«
-aasubcolor=V
¸Ä±ä×ÖÄ»ÑÕÉ«

VµÄÖµ¿ÉÒÔÊÇ£º(0/Õý³££¬1/°µÉ«£¬2/´ÖÌ壬3/´ÖÌå×ÖÌ壬4/·´×ª£¬5/ÌØÊâ)

AAlib×ÔÉíÒ²ÌṩÁË´óÁ¿µÄÑ¡Ïî¡£ÕâÀïÊÇÒ»Ð©ÖØÒªµÄ£º

-aadriver
ÉèÖÃÍÆ¼öaaµÄÇý¶¯( X11£¬curses£¬Linux )
-aaextended
ʹÓÃËùÓеÄ256¸ö×Ö·û
-aaeight
ʹÓÃ8±ÈÌØµÄASCII
-aahelp
ÁгöËùÓеÄaalibÑ¡Ïî

×¢Ò⣺äÖȾЧ¹ûÊÇÊ®·ÖÏûºÄCPUµÄ£¬ÌرðÊÇʹÓÃAA-on-X(ÔÚXÉÏʹÓÃaalib)£¬ÔÚ±ê×¼µÄ·ÇÖ¡»º³å¿ØÖÆÌ¨ÉϵÄCPUÏûºÄÊÇ×îСµÄ£¬ ÓÃSVGATextModeÉèÖÃÒ»¸ö´óµÄÎı¾Ä£Ê½£¬È»ºóÔÙÐÀÉ͵çÓ°£¡(´óÁ¦ÉñÏÔ¿¨µÄµÚ¶þ¸ö½Ó¿Ú¾Í²»´í:))(µ«ÎÒ½¨ÒéÄãÓÃ-vf 1bppÑ¡ÏîÔÚhgafbÉÏ»ñµÃͼÏó;)

Èç¹ûÄãµÄ¼ÆËã»úËٶȲ»×ãÒÔäÖȾËùÓÐÖ¡¾ÍʹÓÃ-framedropÑ¡Ïî

ÔÚÖÕ¶ËÖв¥·ÅµçӰʱʹÓÃLinuxÇý¶¯Ä㽫»áµÃµ½¸üºÃµÄËٶȺͻ­ÃæÖÊÁ¿£¬²»ÒªÓÃcurses(-aadriver Linux)¡£ µ«ÊÇΪ´ËÄãÐèÒª/dev/vcsa<terminal>µÄдȨÏÞ¡£ÄÇÊÇaalib²»ÄÜ×Ô¶¯¼ì²âµÄ£¬µ«vo_aa»á³¢ÊÔËÑË÷×î¼Ñģʽ£¬ ½øÒ»²½µÄµ÷½ÚÎÊÌâ²Î¼ûhttp://aa-project.sourceforge.net/tune/¡£

2.3.1.2.10 VESA -- Êä³öµ½VESA BIOS

Õâ¸öÇý¶¯±»Éè¼Æ²¢ÒýÈë×÷Ϊһ¸öͨÓõÄÇý¶¯ÓÃÓÚÈκÎÓÐVESA VBE 2.0¼æÈݵÄBIOSµÄÏÔ¿¨¡£ÕâÇý¶¯µÄÁíÒ»¸öÓŵãÊÇÄÜÊÔͼÆÈʹÔÚÆäÉϽøÐеçÊÓÊä³ö¡£
VESA BIOS EXTENSION(VBE)3.0°æ ÈÕÆÚ£º1998Äê¾ÅÔÂ16ÈÕ(µÚ70Ò³)˵£º

Ë«ÖØ¿ØÖÆÆ÷Éè¼Æ
VBE 3.0Ö§³ÖË«ÖØ¿ØÖÆÆ÷Éè¼Æ»ùÓÚÈçϼÙÉ裬ÓÉÓÚÁ½¸ö¿ØÖÆÆ÷Ò»°ãÊÇͬÑùµÄOEMÌṩµÄ£¬±»Í¬Ò»¿éÏÔ¿¨ÉϵÄÒ»¸öµÄBIOS ROM£¬ËùÒÔ¿ÉÒÔ¶Ô³ÌÐòÒþ²ØÓÐÁ½¸ö ¿ØÖÆÆ÷ÔÚ×÷ÓõÄÊÂʵ¡£ÕâÏÞÖÆÁËͬʱµÄʹÓöÀÁ¢µÄ¿ØÖÆÆ÷µÄ¹¦ÄÜ£¬µ«ÊÇÔÊÐíVBE 3.0·¢²¼Ç°µÄ³ÌÐòÄÜÕý³£¹¤×÷¡£VBEº¯Êý00h(·µ»Ø¿ØÖÆÆ÷ÐÅÏ¢)·µ»Ø¾­¹ýºÏ²¢µÄ Á½¸ö¿ØÖÆÆ÷µÄÐÅÏ¢£¬°üÀ¨¾­¹ýºÏ²¢µÄ¿É¹©Ê¹Óõķ½Ê½µÄÁÐ±í¡£µ±³ÌÐòÑ¡ÔñÒ»¸ö·½Ê½Ê±£¬ÏàÓ¦µÄ¿ØÖÆÆ÷±»¼¤»î¡£È»ºóʣϵÄVBEº¯Êý¶¼×÷ÓÃÔÚ¼¤»îµÄ¿ØÖÆÆ÷ÉÏ¡£

Òò´Ë£¬ÄãÓпÉÄÜͨ¹ýÕâ¸öÇý¶¯µÃµ½µçÊÓÊä³ö¡£
(ÎÒ²ÂÏëµçÊÓÖÁÉÙ¾­³£µØÊÇʹÓöÀÁ¢µÄÍ·»òÕß¶ÀÁ¢µÄÊä³ö)¡£

Óŵã

ȱµã

ʹÓÃGCC 2.96¾Í²»ÒªÊ¹ÓÃÕâ¸öÇý¶¯£¡Ëü²»Äܹ¤×÷£¡

¿ÉÓÃÓÚVESAÃüÁîÐÐÑ¡Ïî

-vo vesa:opts
µ±Ç°ÄÜʶ±ðµÄ£ºdgaÇ¿ÆÈdga·½Ê½£¬nodga½ûÓÃdga·½Ê½¡£ÔÚdgaģʽÏÂÄã¿ÉÒÔͨ¹ýʹÓÃ-doubleÑ¡ÏîÀ´Ê¹ÓÃ Ë«ÖØ»º³å¡£×¢Ò⣺ÄãÄÜ Ê¡ÂÔÕâЩ²ÎÊýÀ´¿ªÆô×Ô¶¯¼ì²âdga·½Ê½¡£

ÒÑÖªµÄÎÊÌâºÍÈÆ¹ý°ì·¨

2.3.1.2.11 X11

¾¡Á¿±ÜÃâʹÓÃËü¡£Êä³öµ½X11(ʹÓù²ÏíÄÚ´æÀ©Õ¹)£¬ÍêȫûÓÐÓ²¼þ¼ÓËÙ¡£Ö§³Ö(MMX/3DNowÓëSSE¼ÓËÙ£¬µ«ÊÇÈÔÈ»»ºÂýµÄ)Èí¼þËõ·Å£¬ ʹÓÃÑ¡Ïî-fs -zoom¡£´ó¶àÊýÏÔ¿¨ÓÐÓ²¼þËõ·ÅÖ§³Ö£¬Ê¹ÓÃ-vo xv¶ÔËûÃÇÊä³ö£¬»òÕß¶ÔÓÚMatroxesʹÓÃ-vo xmga¡£

ÎÊÌâÔÚÓÚ´ó¶àÊýÏÔ¿¨µÄÇý¶¯ÔÚµÚ¶þ¸ö½Ó¿Ú/µçÊÓ½Ó¿ÚÉϲ»Ö§³ÖÓ²¼þ¼ÓËÙ¡£ÔÚÄÇЩÇé¿öÏ£¬Ä㽫¿´µ½ÂÌÉ«ºÍÀ¶É«µÄ²ÊÉ«´°¿Ú¶ø²»ÊǵçÓ°¡£ ÕâÊÇÕâ¸öÇý¶¯Æð×÷Óõĵط½£¬µ«ÊÇÄãÐèҪǿ´óµÄCPUÀ´Ê¹ÓÃÈí¼þËõ·Å¡£²»ÒªÊ¹ÓÃSDLÇý¶¯µÄÈí¼þÊä³ö+Ëõ·Å£¬ËüµÄͼÏóÖÊÁ¿±È½Ï²î£¡

Èí¼þËõ·ÅÊÇÊ®·Ö»ºÂýµÄ£¬Äã×îºÃ³¢ÊÔÓøıäÊÓÆµÄ£Ê½µÄ·½·¨´úÌæËü¡£ËüÊ®·Ö¼òµ¥¡£²Î¼ûDGAÒ»½ÚµÄmodelines£¬ ²¢ÇÒ½«ËûÃDzåÈëµ½ÄãµÄXF86Config¡£

Èç¹ûÄãµ÷Õû²»µ½ÄãÉ趨µÄģʽ£¬¼ì²éXFree86µÄÊä³ö¡£ÓÐЩÇý¶¯²»ÄÜʹÓõͷֱæÂÊÊÓÆµ·½Ê½ËùÐèÒªµÄµÍµÄÏñËØÆµÂÊ¡£

2.3.1.2.12 VIDIX

ÒýÑÔ

VIDIXÊÇVIDeo Interface for *niXµÄËõд¡£
VIDIX±»Éè¼ÆºÍÒýÈë×÷Ϊ¿ìËÙµÄÓû§¿Õ¼äÇý¶¯µÄ½Ó¿ÚÌṩÀàËÆmga_vidΪÁËMatroxÏÔ¿¨ÌṩµÄÕâÑùÊÓÆµÐÔÄܵġ£ËüҲʮ·ÖÒ×ÓÚÒÆÖ²¡£

Õâ¸ö½Ó¿Ú±»Éè¼ÆÀ´×÷Ϊһ¸ö½«´æÔÚµÄÊÓÆµ¼ÓËÙ½Ó¿Ú(¾ÍÊÇmga_vid£¬rage128_vid£¬radeon_vid£¬pm3_vid )ͳһµ½Ò»¸ö¹Ì¶¨µÄϵͳµÄ³¢ÊÔ¡£ Ëü¸øÐ¾Æ¬ÌṩBES(BackEnd scalers)»òOV(Video Overlays)Ö®ÀàµÄ¸ß²ã½Ó¿Ú¡£Ëü²»ÎªÄÇЩͼÏñ·þÎñÆ÷¸Ã×öµÄÊÂÇéÌṩµ×²ã½Ó¿Ú¡£ (ÎÒ²»Ïë¸úX11¿ª·¢×éÔÚÇл»Í¼ÏñģʽÉϾºÕù)¡£¼´Õâ½Ó¿ÚµÄÖ÷ҪĿµÄÊdzä·ÖÌá¸ßÊÓÆµ²¥·ÅµÄËÙ¶È¡£

Ó÷¨

ʵ¼ÊÉÏʲôÊÓÆµÊä³öÇý¶¯ÓëVIDIXÅäºÏʹÓò¢²»ÖØÒª¡£

񻂗

ʹÓ÷½·¨

µ±VIDIX±»ÓÃ×÷¸±Çý¶¯Ê±(-vo vesa:vidix)ÊÓÆµ·½Ê½µÄÅäÖÃÓÉÊÓÆµÊä³öÉ豸ִÐÐ(¼òµ¥À´Ëµ¾ÍÊÇvo_server)¡£ Òò´Ë£¬ÄãÄܶÔMPlayerʹÓÃÓëvo_serverͬÑùµÄÃüÁîÐÐÖ¸Áî¡£´ËÍ⣬ËüÄÜʹÓÃ-double×÷Ϊȫ¾ÖµÄ²ÎÊý¡£ (ÎÒ½¨ÒéÖÁÉÙÔÚʹÓÃATIÏÔ¿¨Ê±¶ÔVIDIXʹÓÃÕâ¸ö²ÎÊý)¡£
ÖÁÓÚ-vo xvidix£ºÄ¿Ç°ËüÄÜʶ±ðÏÂÁеÄÑ¡Ï -fs -zoom -x -y -double¡£

Ä㻹ÄÜÔÚÃüÁîÐÐÖÐʹÓõÚÈý¸ö¸±²ÎÊýÖ±½ÓÖÆ¶¨VIDIXµÄÇý¶¯£º

  mplayer -vo xvidix:mga_vid.so -fs -zoom -double file.avi
or
  mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp 32 file.avi

µ«ÕâÓеãΣÏÕ£¬ËùÒÔÄã²»Ó¦¸ÃÕâô×ö¡£ÔÚÕâÖÖÇé¿öÏ£¬±»Ö¸¶¨µÄÇý¶¯»á±»Ç¿ÖÆÊ¹ÓöøÆä½á¹ûÊÇÎÞ·¨Ô¤¼ÆµÄ(Ëü¿ÉÒÔ°ÑÄãµÄ¼ÆËã»úËøËÀ)¡£ Ö»ÓÐÔÚÄã¾ø¶ÔÈ·ÐÅËüÄܹ¤×÷£¬¶øMPlayerûÓÐ×Ô¶¯Ñ¡ÔñËüʱ£¬Äã²ÅÄÜÕâô×ö¡£Çë°ÑÇé¿ö±¨¸æ¸ø¿ª·¢Õß¡£ ÕýÈ·µÄʹÓ÷½·¨ÊÇʹÓÃûÓвÎÊýµÄVIDIXÀ´Ê¹ÓÃÇý¶¯µÄ×Ô¶¯¼ì²â¡£

VIDIXÊÇÒ»Ïîм¼ÊõËùÒÔËü¼«ÓпÉÄÜÔÚÄãµÄϵͳÉϲ»ÄÜÕý³£¹¤×÷¡£ÔÚÕâÖÖÇé¿öÏ£¬ÄãΨһµÄ½â¾ö°ì·¨ÊÇÒÆÖ²Ëü(Ö÷ÒªÊÇlibdha)¡£ µ«ËüÔÚX11ÄÜÕý³£¹¤×÷µÄÄÇЩϵͳµÄÉÏÓÐÕý³£¹¤×÷µÄÏ£Íû¡£

ÒòΪVIDIXÐèÒª¶ÔÓ²¼þÖ±½Ó·ÃÎÊ£¬ËùÒÔÄã»òÕßÒÔrootÔËÐÐËü£¬»òÕ߸øMPlayerµÄ¶þ½øÖƳÌÐòÉèÖÃSUIDλ(¾¯¸æ£ºÕâÓа²È«·çÏÕ)¡£»òÕߣ¬Äã ¿ÉÒÔʹÓÃÒ»¸öÌØ±ðµÄÄÚºËÄ£¿é£¬ÏñÕâÑù£º

  1. ÏÂÔØsvgalibµÄ¿ª·¢°æ±¾(±ÈÈç1.9.17)£¬
    »òÕß
    ´ÓÕâÀï.ÏÂÔØÒ»¸öAlex×öµÄ ¹©MPlayerʹÓõİ汾(²»ÐèÒªsvgalibµÄÔ´´úÂë¾Í¿ÉÒÔ±àÒë)¡£
  2. ±àÒësvgalib_helperĿ¼ÖеÄÄ£¿é(Èç¹ûÄãÊÇ´ÓsvgalibµÄÍøÒ³ÉÏÏÂÔØµÄÔ´´úÂ룬¿ÉÒÔÔÚsvgalib-1.9.17/kernel/Ä¿ ¼ÏÂÕÒµ½Ëü)£¬È»ºóinsmod¡£
  3. °Ñsvgalib_helperÄ¿Â¼ÒÆµ½mplayer/main/libdha/svgalib_helper.
  4. Èç¹ûÄãÊÇ´ÓsvgalibµÄÕ¾µãÏÂÔØµÄÔ´´úÂëÐèÒª£ºÉ¾µôlibdha/MakefileÖаüº¬"svgalib_helper"×Ö·û´® µÄCFLAGSÐÐÇ°ÃæµÄ×¢Êͺš£
  5. ÖØÐ±àÒë°²×°libdha.

2.3.1.2.12.1 ATIÏÔ¿¨

Ŀǰ´ó²¿·ÖATIÏÔ¿¨¶¼ÊµÏÖÁ˱¾µØÖ§³Ö£¬´ÓMach64µ½×îеÄRadeon¡£

±àÒëÉú³ÉÁ½¸ö¶þ½øÖÆÎļþ£ºÓÃÓÚRadeonµÄradeon_vidºÍÓÃÓÚRage 128ÏÔ¿¨µÄrage128_vid¡£Äã¿ÉÒÔ Ç¿ÖÆÊ¹ÓÃÆäÖÐÒ»¸ö»òÕßÈÃVIDIXϵͳ×Ô¶¯ÔØÈëËùÓпÉÓõÄÇý¶¯¡£

2.3.1.2.12.2 MatroxÏÔ¿¨

Matrox G200,G400,G450ºÍG550¾Ý±¨¸æ¿ÉÒÔ¹¤×÷¡£

Õâ¸öÇý¶¯Ö§³ÖÊÓÆµ¾ùºâÆ÷±ÈÇÒÓ¦¸Ã¼¸ºõºÍMatroxÖ¡»º³åÒ»Ñù¿ì¡£

2.3.1.12.3 TridentÏÔ¿¨

ÓÐÒ»¸ö¿ÉÓÃÓÚTrident Cyberblade/i1оƬµÄÇý¶¯£¬ËüÃÇÒ»°ã³öÏÖÔÚVIAµÄEpiaÖ÷°åÉÏ¡£

Õâ¸öÇý¶¯ÓÐAlastair M. Robinson±àд²¢Î¬»¤£¬ËûÔÚËûµÄÖ÷Ò³ÉÏ ÌṩËûµÄ×îа汾µÄÇý¶¯ÏÂÔØ¡£Õâ¸öÇý¶¯»áºÜ¿ì±»¼Óµ½MPlayerÖУ¬ËùÒÔCVSÓ¦¸ÃÒѾ­°üº¬×îÐÂÇý¶¯ÁË¡£

2.3.1.2.12.4 3DLabsÏÔ¿¨

¾¡¹ÜÓÐÒ»¸öÓÃÓÚ3DLabs GLINT R3ºÍPermedia3оƬµÄÇý¶¯£¬µ«Ã»ÓÐÈ˲âÊÔ¹ý£¬ËùÒÔ»¶Ó­±¨¸æÐÅÏ¢¡£

2.3.1.2.13 DirectFB

"DirectFBÊÇÉè¼ÆÓÃÓÚǶÈëϵͳµÄͼÐο⡣ËüÄÜÀûÓÃ×îСµÄ×ÊÔ´¿ªÏúÌṩ×î´óµÄÓ²¼þ¼ÓËÙЧ¹û¡£" -- Òý×Ôhttp://www.directfb.org.

ÎÒÔÚÕâÒ»²¿·ÖÖн«ÂÔÈ¥DirectFBµÄÌØÐÔ¡£

¾¡¹ÜMPlayer²»ÊÇDirectFBÖ§³ÖµÄ"video provider"£¬Õâ¸öÊä³öÇý¶¯½«¿ªÆôʹÓÃDirectFBµÄÊÓÆµ²¥·Å¡£Õ⽫ -- µ±È» -- ʵÏÖ¼ÓËÙ£¬ÔÚÎÒµÄMatrox G400ÉÏDirectFBµÄËٶȸúXVideoÒ»Ñù¡£

×ÜÊǾ¡Á¿Ê¹ÓÃ×îеÄDirectFB¡£Äã¿ÉÒÔÔÚÃüÁîÐÐÖÐͨ¹ýʹÓÃ-dfboptsÑ¡ÏîÉèÖÃDirectFBµÄÑ¡Ïî¡£ ²ãÑ¡Ôñ¿ÉÒÔͨ¹ý¸±Çý¶¯Ä£Ê½ÊµÏÖ£¬ÀýÈ磺-vo directfb:2(ĬÈÏʹÓÃlayer -1£º×Ô¶¯Ñ¡Ôñ)

2.3.1.2.14 DirectFB/Matrox(dfbmga)

ÇëÔĶÁDirectFBµÄÒ»°ã½éÉܲ¿·ÖÀ´Á˽â¸ÅÒªÐÅÏ¢¡£

Õâ¸öÊÓÆµÊä³öÇý¶¯½«¿ªÆôMatrox G400/G450/G550ÏÔ¿¨ÉϵÄCRTC2(µÚ¶þ¸ö½Ó¿Ú)£¬ÏÔʾ¶ÀÁ¢ÓÚµÚÒ»¸ö½Ó¿ÚµÄÊÓÆµ¡£

ʹÆä¹¤×÷µÄ·½·¨¿ÉÒÔÔÚ¼¼Êõ²¿·ÖºÍÖ±½Ó´ÓVille SyrjalaµÄÖ÷Ò³»ñµÃ¡£

×¢Ò⣺ÎÒÃÇûÄÜÈÃËü¹¤×÷£¬µ«ÊÇÓÐÈË×öµ½ÁË¡£²»¹ÜÔõÑù£¬½«CRTC2´úÂëÒÆÖ²µ½mga_vidµÄ¹¤×÷ÕýÔÚ½øÐÐÖС£

2.3.1.3 MPEG½âÂëÆ÷

2.3.1.3.1 DVB

MPlayerÖ§³ÖSiemens£¬Technotrend£¬Galaxis»òHauppaugeÌṩµÄʹÓÃSiemens DVBоƬµÄÏÔ¿¨¡£ ×îеÄDVBÇý¶¯ÔÚLinux TV site¡£Èç¹ûÄãÏëÒªÈí¼þ½âÂëÄãÐèÒªÒ»¸öÖÁÉÙ1GHzµÄCPU¡£

ConfigureÓ¦¸ÃÄܼì²âµ½ÄãµÄDVBÏÔ¿¨¡£Èç¹ûËüûÓУ¬Ê¹ÓÃÏÂÁÐÃüÁîÇ¿ÖÆÊ¹ÓÃ

  ./configure --enable-dvb

Èç¹ûÄãÔڷDZê×¼µÄ·¾¶ÏÂÓÐostÍ·Îļþ£¬Ê¹ÓÃÏÂÁÐÃüÁîÉèÖ÷¾¶

  ./configure --with-extraincdir=<DVB source directory>/ost/include

È»ºóÕý³£±àÒë°²×°¡£

ʹÓ÷½·¨

Ó²¼þ½âÂë(²¥·Å±ê×¼µÄMPEG1/2Îļþ)ʹÓÃÏÂÁÐÃüÁ

  mplayer -ao mpegpes -vo mpegpes file.mpg|vob

MPEG1µÄÈí¼þ½âÂë»òת»¯ÎªÆäËû¸ñʽʹÓÃÏÂÁÐÃüÁ

  mplayer -ao mpegpes -vo mpegpes yourfile.ext
  mplayer -ao mpegpes -vo mpegpes -vf expand yourfile.ext

×¢Òâµ½£¬DVBÏÔ¿¨Ö»Ö§³Ö¸ß¶ÈΪ288»ò576µÄPAL¸ñʽ»òÕß240»ò480µÄNTSC¸ñʽ¡£Äã±ØÐë¶ÔÆäËüµÄ¸ß¶È½øÐÐÖØÐÂËõ·Å£¬ ͨ¹ýÔÚ-vfÑ¡ÏîÖÐʹÓÃscale=width:heightÖ¸¶¨ÄãÏëÒª¿í¶ÈºÍ¸ß¶È¡£DVBÏÔ¿¨¿ÉÒÔ½ÓÊܶàÖÖ¿í¶È£¬ Ïñ720£¬704£¬640£¬512£¬480£¬352µÈµÈ£¬¶øÇÒÔÚˮƽ·½ÏòÉÏ¿ÉÒÔÓ²¼þËõ·Å£¬ËùÒÔ´ó¶àÊýÇé¿öÏÂÄã²»ÐèÒª×÷ˮƽËõ·Å¡£ ÀýÈç¶ÔÓÚ512x384(¿í¸ß±È4:3)µÄDivXʹÓÃÏÂÁÐÃüÁ

  mplayer -ao mpegpes -vo mpegpes -vf scale=512:576

Èç¹ûÄãʹÓÿíÒøÄ»µçÓ°¶øÄã°ÑËü·Å´óµ½Õû¸öÆÁÄ»µÄ¸ß¶È£¬Äã¿ÉÒÔʹÓÃexpand=w:h²å¼þÀ´Ôö¼ÓºÚ´ø¡£ ΪÁË¿´640x384·Ö±æÂʵÄDivX£¬Ê¹ÓÃÏÂÁÐÃüÁ

  mplayer -ao mpegpes -vo mpegpes -vf expand=640:576 file.avi

Èç¹ûÄãµÄCPU¶ÔÓÚ²¥·Å720x576µÄDivXÌ«Âý£¬³¢ÊÔºáÏòËõ·Å£º

  mplayer -ao mpegpes -vo mpegpes -vf scale=352:576,lavc file.avi

Èç¹ûËÙ¶ÈûÓÐÌá¸ß£¬³¢ÊÔÊúÖ±Ëõ·Å£º

  mplayer -ao mpegpes -vo mpegpes -vf scale=352:288,lavc file.avi

ÒòΪOSDºÍ×ÖĻʹÓÃOSD²å¼þµÄÀ©Õ¹ÌØÐÔ¡£Òò´Ë£¬²»ÒªÊ¹ÓÃexpand=w:h»òÕßexpand=w:h:x:y£¬ ʹÓÃexpand=w:h:x:y:1(µÚ5¸ö²ÎÊý:1½«¿ªÆôOSDäÖȾ)¡£ÄãÒ²ÐíÏëÒª°ÑͼÏóÏòÉÏÒÆ¶¯Ò»µãÀ´¸ø ×ÖÄ»¸ü´óµÄºÚÉ«ÇøÓò¡£Èç¹ûÄãÒ²ÏëÒªÒÆ¶¯×ÖÄ»£¬ÒòΪËûÃÇ¿ÉÄÜÔÚÄãµçÊÓÆÁÄ»µÄÍâÃæ£¬Ê¹ÓÃ-subpos <0-100>À´ µ÷ÕûËü(-subpos 80ÊǸö²»´íµÄÑ¡Ôñ)¡£

ΪÁËÔÚPALµçÊÓÉϲ¥·Å·Ç25fpsµÄµçÓ°»òÕßÒòΪCPUÌ«Âý£¬¼ÓÉÏ-framedropÑ¡Ïî¡£

ΪÁ˱£³ÖDivXÎļþµÄ¿í¸ß±È²¢»ñµÃ×îÀíÏëµÄËõ·Å²ÎÊý(Ó²¼þˮƽËõ·ÅºÍÈí¼þ´¹Ö±Ëõ·Å²¢ÇÒ±£³ÖÕýÈ·¿í¸ß±È)£¬Ê¹ÓÃ×îеÄdvbscale²å¼þ£º

for  4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1
for 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1

½«À´

Èç¹ûÄãÓÐʹÓÃÎÊÌâ»òÏëÒªÁ˽âÌØÐÔͨ¸æ»òÕ߲μÓÕâ¸öÎÊÌâµÄÌÖÂÛ£¬¼ÓÈëÎÒÃǵÄMPlayer-DVBµÄÓʼþÁÐ±í¡£ Çë¼ÇסÁбíµÄÓïÑÔÊÇÓ¢Óï¡£

ÔÚδÀ´Äã¿ÉÒÔÆÚ´ýʹÓÃDVBÏÔ¿¨µÄ×Ô´øOSDÌØÐÔÏÔʾOSDºÍ×ÖÄ»£¬»¹ÓиüÁ÷³©µÄ·Ç25fpsµçÓ°²¥·ÅºÍʵʱµÄMPEG2ºÍMPEG4ת »»(²¿·ÖµÄ½âѹ)¡£

2.3.1.3.2 DXR2

MPlayerÖ§³ÖʹÓÃCreative DXR2¿¨µÄÓ²¼þ¼ÓÊý¹¦ÄÜ

Ê×ÏÈÄãÒªÕýÈ·°²×°DXR2µÄÇý¶¯¡£Äã¿ÉÒÔÔÚDXR2×ÊÔ´ÖÐÐÄÕâ¸öÕ¾µãÕÒµ½Çý¶¯ºÍ °²×°·½·¨¡£

Ó÷¨

-vo dxr2
Æô¶¯TVÊä³ö
-vo dxr2:x11»ò-vo dxr2:xv
Æô¶¯X11µÄµþ¼ÓÊä³ö
-dxr2 <option1:option2:...>
Õâ¸öÑ¡ÏîÓÃÀ´¿ØÖÆDXR2Çý¶¯

DXR2ʹÓõĵþ¼ÓоƬÖÊÁ¿ºÜ²îµ«ËüĬÈϵÄÉèÖÃÓ¦¸Ã¶ÔËùÓÐÈ˶¼ÊÊÓá£OSD¿ÉÄÜ¿ÉÒÔͨ¹ýʹÓÃcolorkeyµÄ»æÖÆ·½·¨ÔÚµþ¼Ó(²»ÄÜ ÓÃÓÚTV)Êä³öÖÐʵÏÖ¡£Ê¹ÓÃĬÈϵÄcolorkeyÉ趨Äã¿ÉÄÜ»ñµÃ¸÷ÖÖЧ¹û£¬Ò»°ãÇé¿öÏÂÄã¿ÉÄÜ¿´µ½colorkey»·ÈÆÔÚ×Ö·ûÖÜΧ»òÕ߯äËü ¿ÉЦµÄЧ¹û¡£µ«Ö»ÒªÄãÊʵ±µÄµ÷½ÚcolorkeyµÄÉ趨ÄãÓ¦¸Ã¿ÉÒÔ»ñµÃ¿É½ÓÊܵÄЧ¹û¡£

ĬÈÏÑ¡Ïî²Î¼ûmanpage¡£

2.3.1.3.3 DXR3/Hollywood+

MPlayerÖ§³ÖCreative DXR3ºÍSigma Designs Hollywood Plus¿¨µÄÓ²¼þ¼ÓËÙ²¥·Å¡£ÕâЩ¿¨¶¼Ê¹ÓÃSigmaDesignsµÄ em8300 MPEG½âÂëоƬ

Ê×ÏÈ£¬Ä㽫ÐèÒªÕýÈ·µØ°²×°DXR3/H+µÄÇý¶¯£¬°æ±¾ÖÁÉÙ0.12.0»òÕ߸üеġ£ÄãÄÜÔÚDXR3 & Hollywood Plus for LinuxµÄÕ¾µãÕÒµ½Çý¶¯ºÍ°²×°Ö¸µ¼¡£ConfigureÓ¦¸Ã×Ô¶¯¼ì²âµ½ÄãµÄÏÔ¿¨£¬ ±àÒëÓ¦¸ÃûÓÐÈκÎÎÊÌâ¡£

Ó÷¨

-vo dxr3:prebuf:sync:norm=x:<device>
overlay¼¤»îoverlay¶ø²»ÊǵçÊÓÊä³ö¡£Äã±ØÐëÓÐÒ»¸öÕýÈ·ÅäÖõĵÄoverlayÉèÖÃÀ´Õý³£¹¤×÷¡£×î¼òµ¥µÄÅäÖÃoverlay µÄ·½·¨ÊÇÏÈÔËÐÐautocal¡£È»ºóÔËÐÐmplayerʹÓÃdxr3Êä³ö¶ø²»´ò¿ªoverlay£¬ÔËÐÐdxr3view¡£ÔÚdxr3viewÖÐÄã¿ÉÒÔµ÷ÕûoverlayÉèÖà ²¢ÊµÊ±¿´µ½Ð§¹û£¬¿ÉÄÜÕâ¸öÌØÐÔÔÚ½«À´»á±»MPlayerµÄGUIÖ§³Ö¡£µ±ÕýÈ·ÉèÖÃÁËoverlayÖ®ºóÄã¾Í²»ÔÙÐèÒªdxr3viewÁË¡£
prebuf´ò¿ªÔ¤»º³å¡£Ô¤»º³åÊÇem8300µÄÒ»¸öÌØÐÔ£¬ÊÇËü¿ÉÒÔͬʱ´¦ÀíÒ»Ö¡ÒÔÉϵÄÊÓÆµ¡£Õâ±íʾµ±Ä㿪Æô Ô¤»º³å(ĬÈϵÄ)ÔËÐÐʱ£¬MPlayer½«ÊÔͼ±£³ÖÊÓÆµ»º³åÇøÀïÃæ×ÜÊÇÌîÂúÊý¾ÝµÄ¡£Èç¹ûÄãÊÇÓõÄһ̨±È½ÏÂýµÄ»úÆ÷MPlayer ´ó¸Å»áÕ¼Óýӽü100%µÄCPU¡£ÕâÔÚÄã²¥·Å´¿MPEGÁ÷(ÀýÈçDVD£¬SVCDÖ®Àà)µÄʱºòÓÈÆäÃ÷ÏÔ£¬ÒòΪMPlayer²»ÐèÒª°ÑËüÖØÐ±àÂë³É MPEGËùÒÔËû»áÒԺܸߵÄËÙ¶ÈÌî³ä»º³åÇø¡£
µ±²»ÓÃÔ¤»º³åÔËÐÐʱem8300¶ÔCPUµÄÕ¼ÓÃÂÊÊ®·ÖÃô¸Ð£¬ËùÒÔ½¨ÒéÄã´ò¿ªMPlayerµÄ-framedropÑ¡ÏîÀ´·ÀÖ¹½øÒ»²½ µÄ²»Í¬²½
sync½«´ò¿ªÐµÄͬ²½»úÖÆ¡£Õâ¸öĿǰÊÇÒ»¸öÊÔÑéÐÔµÄÌØÐÔ¡£´ò¿ªÕâ¸öͬ²½ÌØÐÔºóem8300µÄÄÚ²¿Ê±ÖÓ½«Ê±ÖÓ±»¼àÊÓ£¬ Èç¹ûËü¿ªÊ¼Æ«ÀëMPlayerµÄʱÖÓËü½«±»ÖØÐÂÉèÖôӶøµ¼Ö¶ªµôÈκÎÖͺóµÄÖ¡¡£
norm=xÓÃÀ´ÉèÖÃDXR3¿¨µÄµçÊÓÖÆÊ½¶ø±ÜÃâʹÓÃem8300setupÖ®ÀàµÄÍⲿ¹¤¾ß¡£¿ÉÓõÄÖÆÊ½ÓÐ5 = NTSC£¬4 = PAL-60£¬ 3 = PAL¡£ÌرðµÄÖÆÊ½ÊÇ2(×Ô¶¯Ñ¡ÔñʹÓÃPAL/PAL-60)ºÍ1(×Ô¶¯Ñ¡ÔñʹÓÃPAL/NTSC)ÒòΪËûÃÇͨ¹ý²âÊÔµçÓ°µÄÖ¡ËÙÂÊÀ´¾ö¶¨ÊÇÄĸöÖÆÊ½¡£ norm = 0(ĬÈϵÄ)²»¸Ä±äÏÖÔÚµÄÖÆÊ½¡£
<device> = ʹÓõÄÉ豸ºÅÈç¹ûÄãÓг¬¹ýÒ»¿éem8300ÏÔ¿¨¡£
ÈκÎÕâЩѡÔñ¶¼¿ÉÒÔ±»Ê¡ÂÔ
:prebuf:syncÔÚ²¥·ÅDivXµçÓ°Ê±ËÆºõ¹¤×÷µÄºÜºÃ¡£ÓÐÈ˱¨¸æ¹ýÔÚ²¥·ÅMPEG1/2ÎļþʱÓÃprebufÑ¡ÏîÓÐÎÊÌâ¡£ Äã¿ÉÄÜ»áÏȳ¢ÊÔ²»¼ÓÈκβÎÊý£¬Èç¹ûÄãÓöµ½Í¬²½µÄÎÊÌ⣬»òÕßDVD×ÖÄ»µÄÎÊÌ⣬ÊÔÊÔ:sync¡£
-ao oss:/dev/em8300_ma-X
ÒôƵÊä³ö£¬ÔÚÆäÖÐXÊÇÉ豸ºÅ(Ϊ0Èç¹ûÖ»ÓÐÒ»¿éÏÔ¿¨)¡£
-aop list=resample:fout=xxxxx
em8300²»Äܹ¤×÷ÔÚ²ÉÑùÂʵÍÓÚ44100HzµÄÇé¿ö¡£Èç¹û²ÉÑùÂÊÔÚ44100Hz֮ϣ¬ÔÚ44100HzºÍ48000HzÖÐÑ¡Ôñ×î½Ó½üµÄÒ»¸ö¡£ ÀýÈç¶ÔʹÓÃ22050HzµÄµçÓ°£¬ÒòΪ44100Hz/2 = 22050£¬ËùÒÔʹÓÃ44100Hz£¬Èç¹ûÊÇ24000Hz¾ÍʹÓÃ48000Hz£¬ÒòΪ48000Hz/2 = 24000Èç´ËµÈµÈ¡£ Õâ¶ÔÓÚÊý×ÖÒôƵÊä³ö²»Æð×÷ÓÃ(-ac hwac3)¡£
-vf lace/fame
(×Ô¶¯²åÈë)ÒªÔÚem8300ÉϹۿ´·ÇMPEGµÄÄÚÈÝ(ÀýÈçDivX»òÕßRealVideo)Äã±ØÐëÉèÖÃÒ»¸ölibavcodec(lavc)»òÕßlibfame(fame)Ö®ÀàµÄMPEG1ÊÓÆµÂ˾µ ĿǰlavcÓиüºÃµÄËÙ¶È»¹Óиü¸ßµÄͼÏñÖÊÁ¿£¬³ý·ÇÄãʹÓÃʱÓöµ½ÎÊÌ⣬½¨ÒéÄãʹÓÃËû¡£-vf lavc/fameµÄ½øÒ»²½µÄÐÅÏ¢¿ÉÒÔ ²Î¿¼man page¡£
Ç¿ÁÒÍÆ¼öʹÓÃlavc¡£Ä¿Ç°Ã»Óа취ÉèÖÃem8300µÄfps£¬Õâ±íʾËü½«¹Ì¶¨ÔÚ29.97fps¡£ÒòΪÕâ¸öÇ¿ÁÒÍÆ¼öÄãʹÓÃ-vf lavc=<quality>:25£¬ÌرðÊǵ±ÄãʹÓÃprebufferingµÄʱºò¡£ÄÇôΪʲôÊÇ25¶ø²»ÊÇ29.97£¿àÅ£¬Ô­ÒòÊǵ±Ê¹ÓÃ29.97 µÄʱºòͼÏñÓÐÒ»Ð©ÌøÔ¾¡£Ä¿Ç°ÎÒÃÇ»¹²»ÖªµÀÔ­Òò¡£Èç¹ûÄã°ÑËüÉèÖóÉ25µ½27Ö®¼äµÄÖµÊÇͼÏñ¾ÍÎȶ¨ÁË¡£Ä¿Ç°ÎÒÃÇÄÜ×öµÄ¾ÍÊǽÓÊÜÕâ¸öÊÂʵ¡£
-vf expand=-1:-1:-1:-1:1
¾¡¹ÜDXR3µÄÇý¶¯ÄܰÑһЩOSD·Åµ½MPEG1/2/4µÄÊÓÆµÉÏ£¬Ëü±ÈMPlayerµÄ´«Í³µÄOSDµÄÖÊÁ¿²îµÄ¶à£¬²¢ÇÒ»¹ÓÐһЩˢеÄÎÊÌâ¡£ ÉÏÃæµÄÃüÁîÐн«ÏȰÑÊäÈëµÄÊÓÆµ×ª»»³ÉMPEG4(ÕâÊDZØÐëµÄ£