Linuxdoc Sgml/DVD-Playing-HOWTO
<!doctype linuxdoc system>
<article>
<title>DVD Playing HOWTO</title>
<author>Nathan Rowlan, nkr@helo.org</author>
<date>v0.1.7 19 May 2000
¹ø¿ª:2000³â5¿ù28ÀÏ</date>
<trans>ÇѴɱÕ(nkhahn@yahoo.com)</trans>
<abstract>
¸®´ª½º¿¡¼ DVD ¿µÈ ŸÀÌÆ²À» »ó¿µÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ ¼³¸íÀ» Æí¾ÈÇϰÔ
µû¶óÇϱ⠹ٶõ´Ù.
</abstract>
<toc>
<sect>
¼Ò°³<label id="¼Ò°³" >
<sect1>
¸ñÀû
<p>
ÀÌ ¹®¼ÀÇ ¸ñÀûÀº ¸®´ª½º¿¡¼ DVD ¿µÈ ŸÀÌÆ²À» »ó¿µÇÏ´Â ¹æ¹ýÀ»
´Ü°èº°·Î ¼³¸íÇϱâ À§ÇÔÀÌ´Ù. ÃÖ´ëÇÑ ¸íÈ®ÇÏ°Ô ¼³¸íÇÏ·Á°í ÇßÁö¸¸,
¸î °¡Áö´Â È¥µ¿½º·´°Å³ª ¿À·ù°¡ ÀÖÀ» °ÍÀÌ´Ù. ÀÌ¿¡ ´ëÇØ ³ª¿¡°Ô
¾Ë·ÁÁÖ¸é ¼öÁ¤Çϵµ·Ï ÇϰڴÙ. ¾î¶² Áú¹®ÀÌ¶óµµ ÀÖÀ¸¸é,
livid-dev ¸ÞÀϸµ ¸®½ºÆ®¿¡ °¡ÀÔÇÏ¿© livid-dev-subscribe@linuxvideo.org
·Î À̸ÞÀÏÀ» º¸³»±â ¹Ù¶õ´Ù.
</p>
<sect1>
¹®¼ ÃֽйöÁ¯µé
<p>
ÀÌ ÇÏ¿ìÅõ ¹®¼´Â html°ú tex¸¦ Æ÷ÇÔÇÏ¿© ´Ù¾çÇÑ ÇüÅ·ΠÁ¢ÇÒ ¼ö ÀÖ´Ù.
ÃֽйöÁ¯ÀÇ ¹®¼´Â ³ªÀÇ »çÀÌÆ®(<url url="http://helo.org/dvd/howto/"
name="http://helo.org/dvd/howto/">) ¿¡¼ ¾ðÁ¦µçÁö °¡Á®°¥ ¼ö ÀÖ´Ù.
°¡±ÞÀûÀÌ¸é °¡Àå ÃֽйöÀüÀÇ ÇÏ¿ìÅõ ¹®¼¸¦ °¡Á®°¡±â¸¦ °·ÂÈ÷
ÃßõÇÑ´Ù. ¿Ö³ÄÇϸé ÀÌ ÇÏ¿ìÅõ ¹®¼´Â ±²ÀåÈ÷ ÀÚÁÖ °»½ÅµÇ±â
¶§¹®ÀÌ´Ù.
</p>
<sect1>
ÀúÀ۱ǰú µî·Ï»óÇ¥µé
<p>
ÀÌ ¼³¸í¼´Â ÀüºÎ ¶Ç´Â ÀϺθ¦ ¹«·á·Î º¹Á¦ÇÒ ¼ö ÀÖ´Ù. ´Ù¸¸,
´ÙÀ½ »çÇ×À» ÁؼöÇÏ¿©¾ß ÇÑ´Ù.
</p>
<p>
<itemize>
<item> »ó±âÀÇ ÀúÀÛ±Ç °íÁö¹®°ú ÀÌ Çã¶ô °íÁö¹®Àº ÀüºÎ ¶Ç´Â ºÎºÐ º¹Á¦
¹®¼¿¡ ¹Ýµå½Ã Æ÷ÇԵǾî ÀÖ¾î¾ß ÇÑ´Ù.
<item> ¾î¶°ÇÑ ¹ø¿ª ¹× ¹ßÃé ÀÛ¾÷ÀÌ¶óµµ ÀúÀÚÀÇ ½ÂÀÎÀ» ¹Ýµå½Ã ¾ò¾î¾ß
¹èÆ÷ÇÒ ¼ö ÀÖ´Ù.
<item> ÀÌ ¹®¼¸¦ ºÎºÐÀûÀ¸·Î ¹èÆ÷ÇÒ °æ¿ì¿¡´Â ÀÌ ÇÏ¿ìÅõ ¹®¼ ÀüºÎ¸¦
¾ò´Â ¹æ¹ý°ú ¼³¸íÀ» ¹Ýµå½Ã Æ÷ÇÔÇÏ¿©¾ß ÇÑ´Ù.
<item> ÀÌ ¹®¼ÀÇ ¾ÆÁÖ ÀÛÀº ºÎºÐÀº ºñÆò ¶Ç´Â ±âŸ ÀÛ¾÷ÀÇ ¼³¸íÀ¸·Î
ÀοëµÉ ¼ö ÀÖ´Ù. ÀûÀýÇÑ ÀοëÃâó°¡ Æ÷ÇԵǾî ÀÖÀ¸¸é, Çã¶ô
°íÁö¹®Àº ¾ø¾îµµ µÈ´Ù.
</itemize>
</p>
<p>
»ó±âÀÇ ±ÔÄ¢µéÀº ÇмúÀûÀÎ ¸ñÀûÀÏ °æ¿ì¿¡´Â ¿¹¿Ü°¡ Àû¿ëµÈ´Ù:
ÀúÀÚ¿¡°Ô ÆíÁö½á¼ ¹®ÀÇÇϱ⠹ٶõ´Ù. ÀÌ·¯ÇÑ ±ÔÁ¦µéÀº ¿ì¸®µéÀ»
ÀúÀڷμ º¸È£ÇÏ·Á´Â °ÍÀÌÁö ¹è¿ì°íÀÚ ÇÏ´Â »ç¶÷ ¶Ç´Â °¡¸£Ä¡´Â
»ç¶÷µéÀ» ±ÔÁ¦ÇÏ·Á´Â °ÍÀÌ ¾Æ´Ï´Ù. ÀÌ ¹®¼¿¡ ÀÖ´Â ¸ðµç ¼Ò½º
ÄÚµå( ÀÌ ¹®¼°¡ ¾²¿©Áø SGML Á¦¿Ü)´Â GNU General Public License
ÇÏ¿¡ À§Ä¡ÇÑ´Ù. GNU General Public License´Â <url url="ftp://ftp.gnu.org/GNU/COPYING" name="the GNU archive">
¿¡¼ À͸í FTP·Î ¾òÀ» ¼ö ÀÖ´Ù.
</p>
<sect1>
°¨»çÀÇ ¸»
<p>
OMS ÀúÀÚµé°ú ¸¹Àº ½Ã°£°ú ³ë·ÂÀ» ÇÁ·ÎÁ§Æ®¿¡ ¹ÙÃĿ LiviD
°³¹ßÀڵ鿡°Ô °¨»çÀÇ ¸»À» ÀüÇÑ´Ù. ¶ÇÇÑ ÀÌ ÇÏ¿ìÅõ ¹®¼¸¦ ´õ¿í
ÁÁ°Ô ¸¸µéµµ·Ï ÀǰßÀ» º¸³»ÁØ »ç¶÷µé¿¡°Ôµµ ¿ª½Ã °¨»çÀÇ ¸»À»
ÀüÇÑ´Ù.
</p>
<p>
ÀÌ ÇÏ¿ìÅõ ¹®¼ ´ëºÎºÐÀÇ ±¸¼º ¹× Çü½ÄÀº Mark F. KomarinskiÀÇ HOWTO-HOWTO (<url url="http://www.linuxdoc.org/" name="http://www.linuxdoc.org/">)
¸¦ ÂüÁ¶ÇÏ¿´´Ù.
</p>
<sect1>
¹ø¿ª ¹®¼
<p>
³»°¡ Á¢¼öÇÑ ¸ðµç ¹ø¿ª¹®¼´Â <url url="http://helo.org/dvd/howto/trans/" name="http://helo.org/dvd/howto/trans/">
¿¡ ÀúÀåÇØ ³õ¾Ò´Ù. Ȥ½Ã ÀÌ ÇÏ¿ìÅõ ¹®¼¸¦ ´Ù¸¥ ¾ð¾î·Î ¹ø¿ªÇϰíÀÚ ÇÑ´Ù¸é,
nkr@helo.org ·Î À̸ÞÀÏÀ» º¸³»Áֱ⠹ٶõ´Ù.
</p>
<sect>
¿ä±¸»çÇ×<label id="¿ä±¸»çÇ×">
<p>
ÀÌ ÇÏ¿ìÅõ ¹®¼´Â ¿©·¯ºÐÀÌ ´ÙÀ½°ú °°ÀÌ Áغñ°¡ µÇ¾îÀÖ´Ù°í ÀüÁ¦ÇÑ´Ù:
<itemize>
<item> Linux > v2.2.0
<item> XFree86 3.3.X
<item> Linux¿¡¼ Áö¿øµÇ´Â DVD-ROM/RAM/RW µå¶óÀ̹ö
<item> bash °ú ¿µ¾î(±¹¾î)¿¡ ´ëÇÑ ÀûÀýÇÑ Áö½Ä
<item> ÇÙ°øÇÐ ¼®»çÇÐÀ§(??)
</itemize>
<p>
<sect>
ÆÄÀϵé<label id="ÆÄÀϵé" >
<p>
¿ì¼± ¹«¾ùº¸´Ùµµ MTRR(Memory Type Range Register)°ú
DVD ioctlÀ» Áö¿øÇÏ´Â Ä¿³ÎÀ» ±¸ÇØ¾ß ÇÑ´Ù. MTRRÀº Ä¿³Î 2.2.11 ÀÌÈÄ
¹öÀü¿¡´Â Æ÷ÇÔ(³»°¡ Ʋ·È´Ù¸é ÁöÀûÇØ Áֱ⠹ٶ÷)µÇ¾î ÀÖÀ¸¹Ç·Î,
DVD ioctlÀ» ¾ò±â À§Çؼ´Â ¿©·¯ºÐÀÇ Ä¿³ÎÀ» ¾÷µ¥ÀÌÆ®ÇÒ Çʿ䰡
ÀÖÀ»Áöµµ ¸ð¸¥´Ù. µÎ °¡Áö ¹æ¹ýÀÌ Àִµ¥, °³¹ß ¹öÀü Ä¿³Î(v2.3.x)À» ´Ù¿î·Îµå
¹Þ°Å³ª, ¾ÈÁ¤µÈ ¹èÆ÷ ¹öÀü(v2.2.x)À¸·Î ÆÐÄ¡ÇÏ´Â ¹æ¹ýÀÌ´Ù. ÆÐÄ¡ ÆÄÀÏÀº
<url url="http://www.kernel.dk/" name="http://www.kernel.dk/">¿¡¼, Ä¿³Î
ÆÄÀÏÀº <url url="ftp://ftp.kernel.org" name="ftp://ftp.kernel.org/">ÀÇ ¿©·¯
¹Ì·¯ »çÀÌÆ®¿¡¼ ±¸ÇÒ ¼ö ÀÖ´Ù.
</p>
<p>
´ÙÀ½À¸·Î, LiViD À¯Æ¿¸®Æ¼ ÆÄÀϵéÀÌ ÇÊ¿äÇÏ´Ù. ´ÙÀ½°ú °°ÀÌ µÎ °¡Áö
¹æ¹ýÀÌ ÀÖ´Ù:
</p>
<p>
<itemize>
<item> CVS¿¡¼ LiViD À¯Æ¿¸®Æ¼ ÆÄÀϵéÀ» ±¸ÇÑ´Ù. ÀÌ·¸°ÔÇÏ¸é °³¹ßÀÚµéÀÌ ¾÷µ¥ÀÌÆ®ÇÒ
¶§¸¶´Ù ¹Ù·Î ¾÷µ¥ÀÌÆ® ÇÒ ¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖ´Ù(À̰ÍÀ» ÃßõÇÑ´Ù).
</itemize>
</p>
<p>
<verb>
´ÙÀ½°ú °°ÀÌ ½©¸í·ÉÀ» »ç¿ëÇØ¼ À¯Æ¿¸®Æ¼ ÆÄÀϵéÀ» ±¸ÇÑ´Ù:
# mkdir ~/livid
# cd ~/livid
# export CVSROOT=:pserver:anonymous@cvs.linuxvideo.org:/cvs/livid
# cvs login
(Logging in to anonymous@cvs.linuxvideo.org)
CVS password:
anonymousÀÇ ÆÐ½º¿öµå´Â ¾ø´Ù. ±×³É ¿£ÅÍ۸¸ ´©¸¥´Ù.
# cvs -z3 co -P nist ac3dec oms mpeg2dec
ÇØ´ç µð·ºÅ丮·Î ÆÄÀϵéÀÌ ¸ðµÎ ´Ù¿î·Îµå µÉ°ÍÀÌ´Ù.
</verb>
</p>
<p>
<itemize>
<item>
¸¸ÀÏ ÀÌ CVS°¡ ¸¶À½¿¡ ¾Èµç´Ù¸é(±«Â¥±º!), ÃÖ½ÅÀÇ LiviD¸¦ ´Ù¿î·Îµå
¹ÞÀ¸¸é µÈ´Ù. ´Ü, ÇÊ¿ä·Î ÇÏ´Â ÆÄÀÏ ¿Ü¿¡ ´Ù¸¥ °Íµéµµ ¼¯¿©ÀÖ´Ù.
±×·¯³ª ÀÌÀ¯¾ß ¾î¶»µç CVS¸¦ »ç¿ëÇϱⰡ ±×·¸°Ô ½È´Ù¸é ´Ï
¸¾´ë·Î Çϼ¼¿ä.
</itemize>
</p>
<p>
<verb>
´ÙÀ½ »çÀÌÆ®¿¡¼ ãÀ» ¼ö ÀÖ´Ù:
http://linuxvideo.org/developer/data/livid.tar.gz
</verb>
</p>
<sect>
¼³Ä¡<label id="¼³Ä¡">
<sect1>
Ä¿³Î
<p>
¸¸ÀÏ ¿©·¯ºÐÀÌ °³¹ß ¹öÀü Ä¿³Î(2.3.x)À» °¡Áö°í ÀÖÀ¸¸é, ÀÌ¹Ì DVD Ioctl Áö¿øÀÌ °¡´ÉÇÑ
°ÍÀ̹ǷÎ, MTRR Áö¿øÀÌ Ä¿³Î ±¸¼º ÆÄÀÏ¿¡ µé¾îÀÖÀ½À» È®ÀÎÇϸé
µÈ´Ù. ±×¸®°í ³ª¼ ´Ã»ó ÇϵíÀÌ Ä¿³Î ÄÄÆÄÀϰú ¼³Ä¡¸¦ ÇÏ¸é µÈ´Ù.
</p>
<p>
±âÁ¸ÀÇ Ä¿³ÎÀ» ÆÐÄ¡ÇÏ°í ½ÍÀ¸¸é, ´ÙÀ½ »çÀÌÆ®·Î °£´Ù.
<verb>
http://www.kernel.dk/
</verb>
±×¸®°í ±âÁ¸ Ä¿³Î¿¡ ¸Â´Â ÀûÀýÇÑ ÆÐÄ¡¸¦ ´Ù¿î·Îµå ÇÑ´Ù.
</p>
<p>
¸¸ÀÏ ¿©·¯ºÐÀÇ Ä¿³ÎÀ» ¼³Ä¡Çϰí, ÆÐÄ¡ÇÏ´Â ¹æ¹ýÀ» ¸ð¸¥´Ù¸é ´ÙÀ½ÀÇ
ÇÏ¿ìÅõ ¹®¼¸¦ ¹Ýµå½Ã Àо±â ¹Ù¶õ´Ù:
<verb>
http://howto.tucows.com/LDP/HOWTO/Kernel-HOWTO.html
</verb>
</p>
<sect1>
LiViD À¯Æ¿¸®Æ¼µé
<p>
LiViD À¯Æ¿¸®Æ¼¸¦ ¼³Ä¡ÇÏ·Á¸é, ¿©·¯ºÐ ½Ã½ºÅÛÀÇ /etc/ld.so.conf
ÆÄÀϾȿ¡ /usr/local/libµîÀÇ °æ·Î°¡ ±â·ÏµÇ¾îÀÖÀ½À» ¹Ýµå½Ã È®ÀÎÇÒ
Çʿ䰡 ÀÖ´Ù.
´ÙÀ½ÀÇ °úÁ¤À» µû¶óÇϸé, ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ LiViD À¯Æ¿¸®Æ¼¸¦ ÄÄÆÄÀÏ
¹× ¼³Ä¡ÇÏ°Ô µÉ °ÍÀÌ´Ù. ¸¸ÀÏ ¹®Á¦°¡ ¹ß»ýÇϸé "¹®Á¦Á¡µé"À»
ÂüÁ¶Çϱ⠹ٶõ´Ù.
</p>
<p>
<verb>
ac3dec:
# cd ~/livid/ac3dec
# ./configure
# make
# make install
oms:
# cd ~/livid/oms
# ./autogen.sh
# ./configure
# make
# make install
mpeg2dec:
# cd ~/livid/mpeg2dec
# ./autogen.sh
# make
# make install
</verb>
</p>
<p>
ÀÌÁ¦ ÇʼöÀûÀÎ LiViD À¯Æ¿¸®Æ¼µéÀÌ ¼³Ä¡µÇ¾îÀÖÀ» °ÍÀÌ´Ù. oms´Â DVD µ¥ÀÌÅ͸¦
Àü¼ÛÇϱâÀ§ÇÑ ¸î°¡Áö Ưº°ÇÑ fifo ÆÄÀÌÇÁµéÀ» ÇÊ¿ä·Î ÇÑ´Ù.
ÀÌ ÆÄÀÌÇÁµéÀº ´ÙÀ½ÀÇ ¸í·ÉÀ¸·Î ¸¸µé ¼ö ÀÖ´Ù(´Ü, ±âÁ¸¿¡ ¾øÀ» °æ¿ì¿¡¸¸):
</p>
<p>
<verb>
# mkfifo /tmp/video
# mkfifo /tmp/audio
</verb>
</p>
<p>
¸¶Áö¸·À¸·Î ÇÑ °¡Áö°¡ ´õ ³²¾ÆÀÖ´Ù. oms´Â /dev/dvd°¡ ¿©·¯ºÐÀÇ DVD
µå¶óÀ̺갡 Á¸ÀçÇÏ´Â °÷(¿¹¸¦µé¸é, /dev/hdb1 ¶Ç´Â /dev/scd0)¿¡ ½Éº¼
¸µÅ©µÇ¾î ÀÖÀ» °ÍÀ» ÇÊ¿ä·Î ÇÑ´Ù. ¸¸ÀÏ DVD µå¶óÀ̺갡 /dev/cdrom¿¡
µÇ¾îÀÖÀ¸¸é, ´ÙÀ½°ú °°ÀÌ ½Éº¼ ¸µÅ©¸¦ ¸¸µé¾î ÁØ´Ù:
</p>
<p>
<verb>
# ln -s /dev/cdrom /dev/dvd
</verb>
</p>
<p>
ÀϹÝÀûÀ¸·Î ½Éº¼ ¸µÅ©¸¦ ¶Ç ´Ù¸¥ ½Éº¼ ¸µÅ©·Î ¸¸µéÁö ¾Ê´Â °ÍÀÌ ÁÁ´Ù.
¿Ö³ÄÇϸé, ÀÌ·¸°Ô ÇÏ¸é ºÒÇÊ¿äÇÑ ÀÔÃâ·ÂÀ» ºÎ°úÇϱ⠶§¹®ÀÌ´Ù.
/dev/cdromÀ» DVD µå¶óÀ̺갡 À§Ä¡ÇÑ Á¤È®ÇÑ µð¹ÙÀ̽º·Î ´ëÄ¡Çϵµ·Ï ÇÑ´Ù.
</p>
<sect>
Àç»ýÇϱâ<label id="Àç»ýÇϱâ">
<p>
DVD¸¦ Àç»ýÇÏ·Á¸é 16ºñÆ® Ä÷¯ ¸ðµå¿¡¼ X-Window°¡ ÇÊ¿äÇÏ´Ù. µå¶óÀ̺꿡
DVD ŸÀÌÆ²À» ³Ö°í ´ÙÀ½°ú °°ÀÌ ¸í·ÉÀ» ÁØ´Ù:
</p>
<p>
<verb>
# ac3dec /tmp/audio& mpeg2dec /tmp/video& oms
</verb>
</p>
<p>
¸ðµÎ Á¦´ë·Î µ¿ÀÛÇÑ´Ù¸é, DVDDB¿¡¼ µð½ºÅ© À̸§À» º¼ °ÍÀÎÁö¸¦
¹°¾îº¸´Â ¹®ÀÚ¿ÀÌ ³ªÅ¸³¯ °ÍÀÌ´Ù. '¿¹'¶ó°í ´äÇÏ´Â °ÍÀÌ ¾ÈÀüÇÏ´Ù.
±×¸®°í³ª¼, oms ÆÐ³ÎÀÌ ÆË¾÷ȸéÀ¸·Î ³ªÅ¸³¯ °ÍÀÌ´Ù. Play¹öưÀ»
´©¸£¸é ºñµð¿À À©µµ¿ì°¡ ³ªÅ¸³ª°í Àç»ýÀÌ ½ÃÀ۵ȴÙ.
</p>
<sect>
±× ¹Û¿¡<label id="±× ¹Û¿¡">
<p>
<sect1>
MTRR ¼³Á¤Çϱâ
<p>
<verb>
** Matrox ºñµð¿À Ä«µå¸¦ °®°í ÀÖ´Â »ç¶÷µéÀº º¼ °Í **
matroxfb¸¦ Ä¿³Î¿¡ ÄÄÆÄÀÏÇß´Ù¸é, ¾Æ¸¶µµ MTRRµéÀÌ
ÀÌ¹Ì ¼³Ä¡µÇ¾îÀÖÀ» °ÍÀÌ´Ù. ±×·¸´Ù¸é ÀÌ ÀåÀ»
°Ç³Ê¶Ù¾îµµ ¹«¹æÇÒ °ÍÀ¸·Î º»´Ù.
</verb>
</p>
<p>
MTRRÀ» ¼³Á¤ÇÔÀ¸·Î½á °æ¿ì¿¡ µû¶ó ºñµð¿À ¼º´ÉÀÌ »ó´çÈ÷
ÁÁ¾ÆÁú ¼ö ÀÖ´Ù. µû¶ó¼ ¼³Á¤ Çϱ⸦ ±Ç°íÇÑ´Ù. ¸ÕÀú, ´ÙÀ½°ú °°ÀÌ
¸í·ÉÀ» Á༠¿©·¯ºÐÀÇ Ä¿³ÎÀÌ MTRR Áö¿øÀ» Æ÷ÇÔÇϰí ÀÖ´ÂÁö¸¦ È®ÀÎÇÒ
Çʿ䰡 ÀÖ´Ù:
</p>
<p>
<verb>
# ls /proc/mtrr
</verb>
</p>
<p>
¸¸ÀÏ /proc/mtrr°ú °°Àº °ÍÀÌ ¾ø´Ù°í Çϸé, ¿©·¯ºÐÀÇ Ä¿³ÎÀ» MTRR
Áö¿ø°ú ÇÔ²² ´Ù½Ã ÄÄÆÄÀÏ ÇÒ Çʿ䰡 ÀÖ´Ù(ÀÌ´Â Ä¿³Î ÄÄÆÄÀÏ menuconfig¾ÈÀÇ
"Processor type and features"¿¡ ÀÖ´Ù).
</p>
<p>
ÀÏ´Ü MTRRÀÌ Á¦´ë·Î µ¿ÀÛÇϰí ÀÖÀ½À» È®ÀÎÇßÀ¸¸é, ¿©·¯ºÐÀÇ ºñµð¿À
Ä«µåÀÇ ±âº» ¸Þ¸ð¸® ÁÖ¼Ò¿Í ºñµð¿À ·¥ÀÇ Å©±â°¡ ¾ó¸¶Àΰ¡¸¦ ¾Ë°í
ÀÖ¾î¾ß ÇÑ´Ù. À̸¦ ¾Ë¾Æº¸´Â °¡Àå ¼Õ½¬¿î ¹æ¹ýÀº X-Window°¡
½ÇÇàÇÒ ¶§ ÅØ½ºÆ® ȸéÀ¸·Î Ãâ·ÂÇÏ´Â Á¤º¸¸¦ º¸´Â °ÍÀÌ´Ù.
ÀÌ ÅØ½ºÆ® ȸé Ãâ·Â Á¤º¸´Â ´ëºÎºÐ ¸ð´ÏÅÍ È¸éÀ§·Î ½ºÅ©·ÑµÇ¾î
º¸ÀÌÁö ¾Ê°Ô µÇ°Å³ª ´Ù¸¥ tty·Î ȸé ÀüȯÀÌ ÀϾ¸é¼ »ç¶óÁ®
¹ö¸®±â ¶§¹®¿¡, ÀÌ X-Window Ãâ·ÂÁ¤º¸¸¦ ÆÄÀÏ(xoutput)·Î
¸®Å¸ÀÌ·º¼ÇÇØ¼ ÀúÀåÇÏ¸é µÈ´Ù. ´ÙÀ½°ú °°ÀÌ ¸í·ÉÀ» ÁØ´Ù:
</p>
<p>
<verb>
# startx 2> xoutput
</verb>
</p>
<p>
¿ì¸®°¡ ÇÊ¿äÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Â ÇàÀº xouput ÆÄÀÏÀÇ Áß°£ Âë¿¡
ÀÖÀ» °ÍÀÌ´Ù. ´ÙÀ½°ú °°Àº ÇàÀ» ã¾Æ º»´Ù:
</p>
<p>
<verb>
(--) SVGA: PCI: NVidia Riva TNT2 rev 17, Memory @ 0xee000000, 0xe2000000
</verb>
</p>
<p>
ÀÏ´Ü xouput ÆÄÀÏ¿¡¼ ÇØ´ç À§Ä¡¸¦ ã¾ÒÀ¸¸é ÇàÀÇ ³¡ ºÎºÐ¿¡ ÀÖ´Â
¸Þ¸ð¸® ÁÖ¼Ò¸¦ Á¾ÀÌ¿¡ Àû¾îµÐ´Ù. ÀÌ ¿¹¿¡¼´Â 0xe2000000 ÀÌ´Ù.
¿©·¯ºÐÀÇ Çϵå¿þ¾î »ç¾ç¿¡ µû¶ó º¹¼ö°³ÀÇ ¸Þ¸ð¸® ÁÖ¼Ò°¡ ÀÖÀ» ¼öµµ,
¶Ç´Â ¾øÀ» ¼öµµ ÀÖÀ¸´Ï±î, Á» ´Ù¸£°Ô ³ªÅ¸³ª´õ¶óµµ °ÆÁ¤ÇÏÁö ¾Ê¾Æµµ
µÈ´Ù. ¸Þ¸ð¸® ÁÖ¼Ò¸¦ Àû¾úÀ¸¸é xoutput ÆÄÀÏÀº Áö¿öµµ µÈ´Ù.
</p>
<p>
´ÙÀ½À¸·Î »õ MTRR¸¦ ¸¸µéµµ·Ï ÇÑ´Ù. À̸¦ ¸¸µé·Á¸é ¿©·¯ºÐÀÇ ºñµð¿À
Ä«µåÀÇ ºñµð¿À ·¥ÀÇ Å©±â¸¦ 16Áø¼ö°ªÀ¸·Î ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.
´ÙÀ½À» ÂüÁ¶ÇÑ´Ù:
</p>
<p>
<verb>
4MB -- 0x400000
8MB -- 0x800000
16MB -- 0x1000000
32MB -- 0x2000000
</verb>
</p>
<p>
´ÙÀ½°ú °°ÀÌ MTRR¸¦ Ãß°¡ÇÑ´Ù:
</p>
<p>
<verb>
# echo "base=0xe2000000 size=0x2000000 type=write-combining" >| /proc/mtrr
</verb>
</p>
<p>
´Ü, À§ÀÇ "0xe2000000"¿Í "0x2000000" ºÎºÐÀ» ¿©·¯ºÐÀÇ ºñµð¿À
Ä«µåÀÇ ±âº» ¸Þ¸ð¸® ÁÖ¼Ò¿Í ºñµð¿À ·¥ÀÇ Å©±âÀÇ °ªÀ¸·Î ¹Ù²ã¼
Àû¾îÁØ´Ù.
</p>
<p>
ÀÌÁ¦ MTRRÀÌ ¼³Á¤µÇ¾ú´Ù, ´ÙÀ½°ú °°ÀÌ È®ÀÎÇØ º»´Ù:
</p>
<p>
<verb>
# cat /proc/mtrr
</verb>
</p>
<p>
±×·¯¸é ´ÙÀ½°ú ºñ½ÁÇÑ °á°ú¸¦ º¸°Ô µÉ °ÍÀÌ´Ù:
</p>
<p>
<verb>
reg00: base=0x00000000 ( 0MB), size= 128MB: write-back, count=1
reg01: base=0xe2000000 (3616MB), size= 32MB: write-combining, count=1
</verb>
</p>
<p>
Çѹø ´õ, ¼ýÀÚ°ªµéÀÌ ¾Æ¸¶µµ À̰Ͱú ´Ù¸¦Áöµµ ¸ð¸¥´Ù. °ÆÁ¤ÇÏÁö ¾Ê¾Æµµ
µÈ´Ù.
</p>
<sect>
¹®Á¦Á¡µé<label id="¹®Á¦Á¡µé">
<sect1>
½ÇÇà ¿À·ùµé<label id="½ÇÇà ¿À·ùµé">
<p>
´ÙÀ½Àº Áö±Ý±îÁö ¾Ë·ÁÁø ¸î °¡Áö ½ÇÇà ½Ã ¿À·ù(µé)ÀÌ´Ù.
</p>
<sect2>
Illegal Instruction Error
<p>
¸¸ÀÏ ºñ-ÀÎÅÚ °è¿ÀÇ Ä¨(ƯÈ÷ K6) »ç¿ëÀÚ°¡ mpeg2video¸¦
½ÇÇàÇÏ¿´À» ¶§ ÀÌ·¯ÇÑ ¿À·ù°¡ ¹ß»ýÇß´Ù¸é, nist/configure.in
ÆÄÀÏÀÇ 129¹ø Çà°ú 130¹ø Çà ÁÖ¸ñÇÑ´Ù. ´ÙÀ½°ú °°À» °ÍÀÌ´Ù:
</p>
<p>
<verb>
CFLAGS="$CFLAGS -DHAVE_MMX -DLINUX -march=i686 -fschedule-insns2 -malign-doub
CXXFLAGS="$CXXFLAGS -DHAVE_MMX -DLINUX -march=i686 -fschedule-insns2 -malign-
</verb>
</p>
<p>
¾çÂÊ Çà¿¡ ÀÖ´Â "-march=i686"¸¦ "-march=i586"·Î ¸ðµÎ ´ëüÇϰí, ÀçÄÄÆÄÀÏ ¹×
À缳ġ ÇÑ´Ù.
</p>
<sect1>
ÄÄÆÄÀÏ ¿À·ùµé<label id="ÄÄÆÄÀÏ ¿À·ùµé">
<p>
´ÙÀ½Àº ÀϹÝÀûÀÎ ÄÄÆÄÀÏ ½Ã ¿À·ùµéÀÌ´Ù.
</p>
<sect2>
`dvd_struct' undeclared...
<p>
ÀÌ À¯Æ¿¸®Æ¼ ÆÄÀϵéÀ» ÄÄÆÄÀÏÇÒ ¶§, »ç¶÷µéÀÌ °¡Àå ºó¹øÇÏ°Ô °Þ°ÔµÇ´Â
¹®Á¦´Â oms°¡ Ä¿³Î Çì´õÆÄÀϵéÀ» ÀÌ»óÇÑ ´Ù¸¥ °÷¿¡¼ ã±â ¶§¹®¿¡ ºñ·ÔµÈ´Ù.
oms´Â ±âº»ÀûÀ¸·Î /usr/include/[linux|asm]¿¡ ÀÖ´Â Çì´õÆÄÀϵéÀ» »ç¿ëÇÏÁö¸¸,
À̵é Çì´õÆÄÀϵéÀº ¾ÈÁ¤Ä¿³Î ¹öÁ¯¿¡¼³ª º¼ ¼ö ÀÖ´Â °ÍÀÌ´Ù. µû¶ó¼ ¿©·¯ºÐµéÀÌ
Á¤»óÀûÀÎ ÇÁ·Î±×·¥À» °ËÆÄÀÏÇÒ ¶§, ¾ÈÁ¤¹öÁ¯ÀÇ ÇìÅÍÆÄÀϵéÀÌ »ç¿ëµÈ´Ù.
oms´Â ºñ¾ÈÁ¤¹öÁ¯(¶Ç´Â ÆÐÄ¡¹öÁ¯)ÀÇ Ä¿³Î Æä´õÆÄÀϵéÀ» ÇÊ¿ä·ÎÇÑ´Ù.
µû¶ó¼ oms°¡ ÄÄÆÄÀÏÀ» ½ÃµµÇÒ ¶§, ¸¹Àº ¸ðµâµéÀÌ Á¤ÀǵǾîÀÖÁö ¸øÇϰí,
°á±¹Àº ÄÄÆÄÀÏ ¿À·ù°¡ ³ª¿À°Ô µÇ´Â °ÍÀÌ´Ù. ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâÀ§ÇÑ °¡Àå ÁÁÀº ¹æ¹ýÀº
omsÀÇ MakefileÀ» ¼öÁ¤ÇÏ¿© -I/usr/src/linux/include¸¦ CFLAGS¿Í CXXFLAGS¸¦
°¡¸®Å°°Ô ÇØÁØ´Ù.(ÀÌ Á¤º¸¸¦ ÁֽŠAdam Powell¿¡°Ô °¨»ç¸¦ µå¸°´Ù)
</p>
<p>
<verb>
´ÙÀ½°ú °°ÀÌ ¸í·ÉÀ» Áà¼ ÇØ°áÇÑ´Ù:
# mkdir /usr/include/old
# mv /usr/include/linux /usr/include/old/linux
# mv /usr/include/asm /usr/include/old/asm
# mv /usr/include/scsi /usr/include/old/scsi
# ln -s /usr/src/linux/include/linux /usr/include/linux
# ln -s /usr/src/linux/include/scsi /usr/include/scsi
# ln -s /usr/src/linux/include/asm /usr/include/asm
</verb>
</p>
<sect2>
can't determine absolute dir of '../../../../src/plugin/codec/mpeg2dec/.libs'
<p>
¶Ç ´Ù¸¥ ÀϹÝÀûÀÎ ¿À·ù´Â oms/src/plugin/codec/mpeg2dec/.libs
µð·ºÅ丮¿¡ ÀÖ´Ù. ¸î °¡Áö ÀÌÀ¯·Î ÀÎÇÏ¿© ÀÌ µð·ºÅ丮´Â
Á¸ÀçÇÏÁö ¾Ê°Ô µÇ´Âµ¥, ÀÌ´Â ÄÄÆÄÀÏ¿¡ ÇÊ¿äÇÏ´Ù. À̸¦
ÇØ°áÇϱâ À§Çؼ´Â ´ÜÁö ÀÌ µð·ºÅ丮¸¦ ¸¸µé¾îÁÖ¸é µÈ´Ù:
</p>
<p>
<verb>
# mkdir src/plugin/codec/mpeg2dec/.libs
</verb>
</p>
<sect1>
¾ÈµÇ´Â ±â´Éµé<label id="¾ÈµÇ´Â ±â´Éµé">
<p>
¿ø·¡ ÀǵµµÈ ´ë·Î µÇ¾î¾ß Çϴµ¥, ÇöÀç ¾ÈµÇ´Â ±â´Éµé:
<itemize>
<item> Á¦´ë·Î µ¿ÀÛÇÏ´Â Àå(chapter) °Ë»ö ¹öưÀÌ Çϳªµµ ¾øÀ½(Ãæµ¹).
<item> Çѹø Á¤ÁöµÇ¸é, ´Ù½Ã ½ÃÀÛÇÏÁö ¸øÇÏ´Â °æÇâÀÌ ÀÖÀ½(Ãæµ¹).
<item> ¿Àµð¿À/ºñµð¿À°¡ ¸Å Ãʸ¶´Ù °Ç³Ê¶Ù´Â Çö»ó µî.
<item> mpeg2dec»ç¿ë ½Ã °¢ ÀåÀÇ ÁøÀԺκп¡¼ ÇöÀúÇÑ °¨¼âÇö»ó(slowdown).
<item> °¡²û ¾¿ ac3dec°¡ Á¦´ë·Î Á¾·áµÇÁö ¾Ê¾Æ¼ "killall ac3dec"¸¦ »ç¿ëÇØ¾ß¸¸ Á¾·áµÇ´Â Çö»ó.
</itemize>
</p>
<sect1>
±×¹ÛÀÇ ¿À·ùµé<label id="±×¹ÛÀÇ ¿À·ùµé">
<p>
¸¸ÀÏ ¿©·¯ºÐµéÀÌ °æÇèÇÑ ¿À·ùµéÀÌ À̰÷ ¸ñ·Ï¿¡ ¾ø´Ù¸é, ÇöÀçÀÇ
CVS Äڵ忡 ¹ö±×°¡ Á¸ÀçÇÑ´Ù°í ºÁ¾ß ÇÒ °ÍÀÌ´Ù. ÃÖ»óÀÇ ¹æ¹ýÀº
¸î Àϰ£ ±â´Ù·Áº¸°í, CVS·ÎºÎÅÍ ¾÷µ¥ÀÌÆ®ÇÏ´Â °ÍÀÌ´Ù. ¿©·¯ºÐÀÇ
Áú¹®À» ¹ÞÀ» ¼ö ÀÖ´Â ¸ÞÀϸµ ¸®½ºÆ®°¡ ÁغñµÇ¾îÀÖ´Ù.
livid-dev-subscribe@linuxvideo.org·Î ºó ¸ÞÀÏÀ» º¸³»¸é °¡ÀÔÇÒ
¼ö ÀÖ´Ù.
</p>
<sect>
ÇÒ Àϵé<label id="ÇÒ Àϵé">
<p>
<itemize>
<item> Matrox Ä«µå¸¦ ¼ÒÀ¯Çϰí ÀÖ´Â »ç¶÷µé·ÎºÎÅÍ ¼º´ÉÀ» Çâ»ó½ÃŲ Á¤º¸¸¦
¹Þ´Â °Í
<item> Makefile ¿É¼Çµé (HAVE_MMX, HAVE_3Dnow µî)
<item> mpeg2dec¿¡¼ÀÇ -march=k6
<item> ¸î °¡Áö ½¬¿î MTRR Ãß°¡(framebuffer)
<item> ´ëºÎºÐÀÇ µå¶óÀ̺꿡 Áö¿ªÄÚµå ¼³Á¤: www.linuxtv.org/dvd
</itemize>
</p>
</article>
|
Executive ability is prominent in your make-up. |











