<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nepherte (dot) be &#187; Comprehensive Guide</title>
	<atom:link href="http://www.nepherte.be/tag/comprehensive-guide/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nepherte.be</link>
	<description>About Nepherte, Mosiah and the person behind</description>
	<lastBuildDate>Mon, 30 Aug 2010 18:45:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Comprehensive MPlayer Guide II: Installation</title>
		<link>http://www.nepherte.be/comprehensive-mplayer-guide-ii-installation/</link>
		<comments>http://www.nepherte.be/comprehensive-mplayer-guide-ii-installation/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 17:40:30 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Comprehensive Guide]]></category>
		<category><![CDATA[FFMPEG]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[MEncoder]]></category>
		<category><![CDATA[MPlayer]]></category>
		<category><![CDATA[x264]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=578</guid>
		<description><![CDATA[This article is the follow up of Comprehensive MPlayer Guide I: Introduction. Introduction To acquire a good MPlayer setup, I recommend not to install the version packaged by your favorite distribution. The mainstream linux distributions like Ubuntu ship &#8220;the latest&#8221; but very dated release of MPlayer. Their latest release,  v1.0rc3, dates from 30 May 2010. [...]]]></description>
			<content:encoded><![CDATA[<p>This article is the follow up of <a href="http://www.nepherte.be/comprehensive-mplayer-guide-i-introduction/">Comprehensive MPlayer Guide I: Introduction</a>.</p>
<h5>Introduction</h5>
<p>To acquire a good <a href="http://www.mplayerhq.hu/design7/news.html">MPlayer</a> setup, I recommend not to install the version packaged by your favorite distribution. The mainstream linux distributions like Ubuntu ship &#8220;the latest&#8221; but very dated release of MPlayer. Their latest release,  v1.0rc3, dates from 30 May 2010. While not that dated, it is in fact a rather old snapshot of MPlayer. That doesn&#8217;t mean MPlayer isn&#8217;t actively being developed. MPlayer developers make continuous changes to their latest development version, generally referred to as the SVN version, rather than releasing official versions. This SVN version is stable 99% of the time &#8211; and if it isn&#8217;t, it will be the next day. Unfortunately, you will have to build it yourself. I will try to guide you through this rather lengthy process.</p>
<p>The build process consists of 3 main steps:</p>
<ul>
<li>Install x264</li>
<li>Install FFmpeg and useful multimedia libraries</li>
<li>Install MPlayer</li>
</ul>
<p></p>
<h5>Part I: x264</h5>
<p><a href="http://www.videolan.org/developers/x264.html">x264</a> is necessary for encoding videos using the  MPEG 4 AVC (H264/x264) codec. This codec is one of the best and most popular codecs used (e.g. Blu-Ray) and undispensible if you intend to do some encoding. Before we continue, make sure you have the necessary build tools. They are usually bundled by your distribution in a general &#8220;build&#8221; package. Ubuntu, for example, has put everything in build-essential. Consult your distribution&#8217;s documentation to figure out what packages you need.</p>
<p>x264 depends on the following packages:</p>
<ul>
<li><em>libx11</em> (optional)</li>
<li> <em>gpac</em> (optional)</li>
</ul>
<p>The packages <em>git</em>, <em>yasm</em> and <em>gettext</em> are necessary for building x264. Technically you can remove the build dependencies after the x264 installation is completed but you will need them so often you might as well leave them installed. The installation of x264 goes as follows:</p>
<p>1. Get the sources:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">git clone git:<span style="color: #000000; font-weight: bold;">//</span>git.videolan.org<span style="color: #000000; font-weight: bold;">/</span>x264.git</pre></div></div>

<p>2. Configure x264:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> x264<span style="color: #000000; font-weight: bold;">/</span>
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr <span style="color: #660033;">--enable-shared</span> <span style="color: #660033;">--enable-pic</span></pre></div></div>

<p>You don&#8217;t need to worry much about these configuration options. You can get more info on the available configuration options with ./configure &#8211;help (that&#8217;s two &#8216;-&#8217; in case you are wondering). Note that the optional dependencies mentioned above are not enabled.</p>
<p>3. Build and install x264:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>You can verify that x264 is correctly installed by typing  x264 &#8211;version (again, two &#8216;-&#8217;). You might have encountered a build error during the installation process. Therefore I advise you to always carefully read the output generated by ./configure and make. Errors are usually printed at the end of the output. There is no point in continuing with another step/command if you have an error. Errors often occur because you overlooked a required dependency.</p>
<h5>Part II: Install FFmpeg and useful multimedia libraries</h5>
<p>Now let&#8217;s continue with FFmpeg. FFmpeg and MPlayer are practically twins. FFmpeg provides MPlayer with the most important tools to play multimedia: the common and not so common codecs for playback and encoding, (de)muxers for opening containers like mp4 and avi, filters and post processors.</p>
<p>MPlayer&#8217;s svn server already holds a copy of FFmpeg but we&#8217;re going to install an independent one nonetheless. The main disadvantage of using a built-in FFmpeg is that MPlayer and MPlayer only can make use of it. This means that if another program requires FFmpeg, you will have to install it again which leads to a lot of duplicate FFmpegs. An advantage of having a built-in FFmpeg over a separate one is that the devs have full control over the entire build process. </p>
<p>This is a list of libraries that I recommend to install for FFmpeg. Try to install them with the package management installer that comes with your distribution.</p>
<ul>
<li><em>xvidcore</em> &#8211; support for xvid codec</li>
<li>faac &#8211; AAC encoding</li>
<li><em>smbclient</em> &#8211; network files playback</li>
<li><em>lame</em> &#8211; mp3 encoding</li>
<li><em>libtheora, libvorbis</em> &#8211; support for the open source theora and vorbis codec</li>
<li><em>zlib</em> &#8211; support for compression</li>
<li><em>libvdpau</em> &#8211; support hardware accelerated video playback</li>
</ul>
<p>Many libraries such as xvidcore, libvorbis or libtheora are not necessary for playback (FFmpeg is capable of doing so on its own) but may be necessary for encoding support.</p>
<p>1. Get the source:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">svn</span> <span style="color: #c20cb9; font-weight: bold;">co</span> <span style="color: #c20cb9; font-weight: bold;">svn</span>:<span style="color: #000000; font-weight: bold;">//</span>svn.ffmpeg.org<span style="color: #000000; font-weight: bold;">/</span>ffmpeg<span style="color: #000000; font-weight: bold;">/</span>trunk <span style="color: #c20cb9; font-weight: bold;">ffmpeg</span></pre></div></div>

<p>2. Compile it:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ffmpeg<span style="color: #000000; font-weight: bold;">/</span>
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr <span style="color: #660033;">--enable-gpl</span> <span style="color: #660033;">--enable-version3</span> <span style="color: #660033;">--enable-nonfree</span> <span style="color: #660033;">--enable-pthreads</span> <span style="color: #660033;">--enable-postproc</span> <span style="color: #660033;">--enable-shared</span> <span style="color: #660033;">--enable-network</span> <span style="color: #660033;">--enable-vdpau</span> <span style="color: #660033;">--enable-libmp3lame</span> <span style="color: #660033;">--enable-libvorbis</span> <span style="color: #660033;">--enable-libfaac</span> <span style="color: #660033;">--enable-libxvid</span> <span style="color: #660033;">--enable-libx264</span> <span style="color: #660033;">--enable-libtheora</span> <span style="color: #660033;">--arch</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">uname</span> -m<span style="color: #000000; font-weight: bold;">`</span></pre></div></div>

<p>Remember to check ./configure &#8211;help for more information on the configuration options. After the ./configure [...] command, a nice layout with all the supported codecs and much more will be printed.</p>
<p>3. Build and install it:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Et voilà. You should have a working FFmpeg. You can verify that you installed it successfully by running ffmpeg -version. </p>
<p>I will remind you here again that you may have encountered a build error during the installation process. Therefore I advise you to always carefully read the output generated by ./configure and make. Errors are usually printed at the end of the output. There is no point in continuing with another step/command if you have an error. Errors often occur because you overlooked a required dependency.</p>
<h5>Part III: Install MPlayer</h5>
<p>Now we can finally move on to installing MPlayer. Some additional packages you could install:</p>
<ul>
<li><em>freetype, fribidi, aalib</em> &#8211; unicode and ascii support (subtitles)</li>
<li><em>live555</em> &#8211; support for streaming</li>
<li><em> libmpcdec</em> &#8211; musepack</li>
<li><em>opengl, libxmvc, libxv</em> &#8211; more video and audio outputs (most recommended are libxv and opengl).</li>
</ul>
<p>They&#8217;re all optional dependencies but they increase the capabilities of MPlayer.</p>
<p>1. Get the sources:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">svn</span> <span style="color: #c20cb9; font-weight: bold;">co</span> <span style="color: #c20cb9; font-weight: bold;">svn</span>:<span style="color: #000000; font-weight: bold;">//</span>svn.mplayerhq.hu<span style="color: #000000; font-weight: bold;">/</span>mplayer<span style="color: #000000; font-weight: bold;">/</span>trunk <span style="color: #c20cb9; font-weight: bold;">mplayer</span></pre></div></div>

<p>The configure script of MPlayer incorporates a sort of auto-detection. It will check for a certain library/feature where it is normally located and configure itself accordingly. It is therefore recommended not to force or &#8211;enable an option in the ./configure line as it breaks the path detection of that feature.</p>
<p>2. Configure MPlayer without built-in (shared) ffmpeg:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr <span style="color: #660033;">--confdir</span>=<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">mplayer</span> <span style="color: #660033;">--disable-gui</span> <span style="color: #660033;">--enable-menu</span> <span style="color: #660033;">--enable-runtime-cpudetection</span> <span style="color: #660033;">--enable-largefiles</span> --disable-libavcore_a --disable-libavutil_a --disable-libavcodec_a --disable-libavformat_a --disable-libpostproc_a --disable-libswscale_a</pre></div></div>

<p>The configure options that end with _a disable the built-in ffmpeg. The rest is pretty self-explanatory. You can save some space and compilation time by disabling unneeded features. Things I usually disable, are:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #660033;">--disable-inet6</span> <span style="color: #660033;">--disable-xinerama</span> <span style="color: #660033;">--disable-tv</span>  <span style="color: #660033;">--disable-radio</span>  <span style="color: #660033;">--disable-ossaudio</span> <span style="color: #660033;">--disable-jack</span> <span style="color: #660033;">--disable-esd</span> <span style="color: #660033;">--disable-lirc</span> <span style="color: #660033;">--disable-dvb</span> <span style="color: #660033;">--disable-v4l2</span></pre></div></div>

<p>More information on the configure options can be found by executing ./configure &#8211;help.</p>
<p>Now build and install MPlayer:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Again, check the outputs of each command for errors. You can verify that mplayer is installed correctly with the command mplayer &lt;path to video file&gt;. As mentioned before, I&#8217;ll deal with the good guis for MPlayer in the next article.</p>
<p>If you come across an error during one of the installs and you can&#8217;t figure out how to fix them, drop a note and I&#8217;ll try to help out wherever possible.</p>
<p>The follow up, Comprehensive Guide III: Video Playback &amp; Desktop Integration, will soon be available.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/comprehensive-mplayer-guide-ii-installation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Comprehensive MPlayer Guide I: Introduction</title>
		<link>http://www.nepherte.be/comprehensive-mplayer-guide-i-introduction/</link>
		<comments>http://www.nepherte.be/comprehensive-mplayer-guide-i-introduction/#comments</comments>
		<pubDate>Sat, 14 Mar 2009 19:12:11 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Comprehensive Guide]]></category>
		<category><![CDATA[MEncoder]]></category>
		<category><![CDATA[MPlayer]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=554</guid>
		<description><![CDATA[This article is meant as a comprehensive guide to acquire a complete multimedia experience, in particular everything that is video related: from installation and playback to encoding, desktop integration and much more . A pleasant side effect is that it will play all types of audio you throw at it as well. I will try [...]]]></description>
			<content:encoded><![CDATA[<p>This article is meant as a comprehensive guide to acquire a complete multimedia experience, in particular everything that is video related: from installation and playback to encoding, desktop integration and much more . A pleasant side effect is that it will play all types of audio you throw at it as well. I will try to give an in-dept but understandable explanation of the how and perhaps more importantly, the why. I will not use a distro specific approach. The instructions apply to every linux distribution.</p>
<p>The guide includes 4 major sections:</p>
<ul>
<li>Introduction</li>
<li>Installation</li>
<li>Video Playback &amp; Desktop Integration</li>
<li>Video Encoding</li>
</ul>
<p>of which this is the first section: the introduction.</p>
<p>There are a lot of video players at hand. I&#8217;m going to use <a href="http://www.mplayerhq.hu/design7/news.html">MPlayer</a>, but why&#8217;s that?. MPlayer is by far the best multimedia player for linux. Not only does it handle video and audio content perfectly, it&#8217;s also capable of playing streams and integrates nicely in your browser.  It even supports video hardware acceleration for those with a recent video card. Yes, there are some alternatives like VLC, but none are as flexible as MPlayer.  You can easily determine which codecs should be enabled and which not. You&#8217;re not stuck with one gui. There are multiple guis available for several platforms. No matter what environment you are using, there&#8217;s a solution for every one of them.</p>
<p>Another thing that stands out is MEncoder.  MEncoder is a part of MPlayer and, while not officially supported and developed anymore, it is a tool to easily encode audio &#038; video and extract subtitles. Everything you ever needed for encoding media is included in this application. Combining MPlayer and MEncoder make the perfect multimedia application.</p>
<p>The follow-up, <a href="http://www.nepherte.be/comprehensive-mplayer-guide-ii-installation/">Comprehensive MPlayer Guide II: Installation</a> is now available.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/comprehensive-mplayer-guide-i-introduction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
