<?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; Software</title>
	<atom:link href="http://www.nepherte.be/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nepherte.be</link>
	<description>About Nepherte, Mosiah and the person behind</description>
	<lastBuildDate>Sun, 30 May 2010 18:20:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Protect yourself from CSRF attacks with CSFire</title>
		<link>http://www.nepherte.be/protect-yourself-from-csrf-attacks-with-csfire/</link>
		<comments>http://www.nepherte.be/protect-yourself-from-csrf-attacks-with-csfire/#comments</comments>
		<pubDate>Wed, 19 May 2010 19:46:16 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[csfire]]></category>
		<category><![CDATA[csrf]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=1296</guid>
		<description><![CDATA[For the last decade, there has been a disturbingly major increase in cross site request forgery attacks (csrf). In this kind of attack, an unauthorized request from the user&#8217;s browser is made to a vurnerable website to execute an unwanted action, without the user even noticing. These unauthorized requests can be triggered by mails or [...]]]></description>
			<content:encoded><![CDATA[<p>For the last decade, there has been a disturbingly major increase in <a href="http://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)">cross site request forgery</a> attacks (csrf). In this kind of attack, an unauthorized request from the user&#8217;s browser is made to a vurnerable website to execute an unwanted action, without the user even noticing. These unauthorized requests can be triggered by mails or websites containing malicious &lt;img&gt; or &lt;iframe&gt; tags, for example discussion boards that accept html input. Examples of unwanted actions are stealing sensitive data,  wiring money from one account to the other, &#8230;</p>
<p>These csrf attacks are very problematic because it is difficult for a user to protect himself from it without completely degrading the web experience, such as disabling javascript (which is not necessarily a sufficient counter measure). It is mainly up to the developer of a site or web application to prevent these attacks by making sure it is impossible to store code on their site that launches such attacks and by making sure their site is not vurnerable to such attacks. But truth is that most developers are just clueless.</p>
<p>However, <a href="http://distrinet.cs.kuleuven.be/">distrinet</a>, a reseach group of the University of Leuven, has published a firefox addon called <a href="https://addons.mozilla.org/nl/firefox/addon/58189/">csfire</a> that attempts to mitigate csrf attacks. You can find the paper on csfire <a href="http://outgoing.mozilla.org/v1/15d33c40d385064f9cba654013e9a3472d635c61/http%3A//people.cs.kuleuven.be/%7Ephilippe.deryck/papers/csfire.pdf">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/protect-yourself-from-csrf-attacks-with-csfire/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disable vimperator input text box focussing</title>
		<link>http://www.nepherte.be/disable-vimperator-input-text-box-focussing/</link>
		<comments>http://www.nepherte.be/disable-vimperator-input-text-box-focussing/#comments</comments>
		<pubDate>Sun, 16 May 2010 14:11:12 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[vi]]></category>
		<category><![CDATA[vimperator]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=1282</guid>
		<description><![CDATA[I&#8217;m a huge fan of vi and any kind of software that incorporates vi-like behavior (emacs users can safely ignore this article). That&#8217;s why I intensively use the vimperator addon in Firefox. You could say internet browsing wouldn&#8217;t be the same without it. But there&#8217;s this one minor annoyance I always encounter while using vimperator: [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a huge fan of vi and any kind of software that incorporates vi-like behavior (emacs users can safely ignore this article). That&#8217;s why I intensively use the vimperator addon in Firefox. You could say internet browsing wouldn&#8217;t be the same without it. </p>
<p>But there&#8217;s this one minor annoyance I always encounter while using vimperator: vimperator always focusses on the first input text box it comes across on a web site. Some people may like this behavior but I certainly don&#8217;t. I have google&#8217;s search engine set as my home page and the search box always steals the focus. Usually I just want to fire a vimporator command to navigate to another site and entering insert mode because of this focus stealing certainly hinders me. Now I have finally narrowed it down to the setting that controls this behavior: focuscontent. Expanding ~/.vimperatorrc with</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">set</span> focuscontent</pre></div></div>

<p> disables input text box focussing. It certainly is a huge improvement. Yet another annoyance solved. Hop to the next one.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/disable-vimperator-input-text-box-focussing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nepherte&#8217;s Unofficial User Repository</title>
		<link>http://www.nepherte.be/nephertes-unofficial-user-repository/</link>
		<comments>http://www.nepherte.be/nephertes-unofficial-user-repository/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 16:56:48 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Arch Linux]]></category>
		<category><![CDATA[user repository]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=1204</guid>
		<description><![CDATA[Arch Linux has a very decent system for building packages called ABS or Arch Build System. It basically comes down to one file called the pkgbuild where you put all the necessary information to construct a package. Everything else is taken care by makepkg, the tool that reads, compiles and builds the package accordingly. Because [...]]]></description>
			<content:encoded><![CDATA[<p>Arch Linux has a very decent system for building packages called <a href="http://wiki.archlinux.org/index.php/ABS" target="_self">ABS</a> or Arch Build System. It basically comes down to one file called the pkgbuild where you put all the necessary information to construct a package. Everything else is taken care by makepkg, the tool that reads, compiles and builds the package accordingly. Because of this easy building system, the barrier for users to create their own packages is easily overcome, as demonstrated by <a href="http://aur.archlinux.org" target="_self">AUR</a> or Arch User Repository with over 20000 packages.</p>
<p>Hower, AUR has its limitations. For one, its sole function is to host pkgbuilds. So when you want to install something from AUR, you still have to go through the compile &amp; build process. Depending on the software, this can be very cumbersome and time consuming. Instead you more likely want to install a package that has already been build, much like the regular Arch Linux repositories such as [core], [extra] and [community]. This is where the <a href="http://wiki.archlinux.org/index.php/Unofficial_user_repositories" target="_self">Unofficial User Repositories</a> come in play. A user can easily set<a href="http://wiki.archlinux.org/index.php/Pacman_Tips#Custom_local_repository"> up its own repository</a> with the repo-add script that comes with the package manager pacman. Generally, the user still needs to be very cautious with installing unofficial packages because of the potential dangers it may pose such as malicious software. It is recommended to verify the source of these packages or inspect the packages before installing.</p>
<p>Personally, there a few programs I frequently update myself, i.e. more frequently than then the official repositories, because of new functionality or bug fixes. Therefore I decided to share my efforts and make them available in my own unnoficial user repository. The repository can be accessed at <a href="http://www.nepherte.be/repo" target="_self">http://www.nepherte.be/repo</a>. To use my repository, add the following lines in /etc/pacman.conf:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>nepherte<span style="color: #7a0874; font-weight: bold;">&#93;</span>
Server = http:<span style="color: #000000; font-weight: bold;">//</span>www.nepherte.be<span style="color: #000000; font-weight: bold;">/</span>repo</pre></div></div>

<p>The packages are for 64bit systems only as I don&#8217;t have a 32bit version of Arch installed. All packages are built in a clean chroot environment to avoid library linking problems. If you are interested in the pkgbuilds, you can find them  on my <a href="https://svn.ulyssis.org/repos/nepherte/pkgbuilds" target="_self">svn repo</a>. To access my svn repo, you will have to authenticate yourself with username guest and password guest.</p>
<p>The packages I currently maintain are:</p>
<ul>
<li>x264</li>
<li>ffmpeg</li>
<li>mplayer</li>
<li>netembryo</li>
</ul>
<p>The first three are rebuilt on a monthly base at the very least and whenever there is audio involved, pulseaudio is supported. More packages will be added in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/nephertes-unofficial-user-repository/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mercury Compiler And CSRFTester</title>
		<link>http://www.nepherte.be/mercury-compiler-and-csrftester/</link>
		<comments>http://www.nepherte.be/mercury-compiler-and-csrftester/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 20:23:36 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Arch Linux]]></category>
		<category><![CDATA[aur]]></category>
		<category><![CDATA[csrftester]]></category>
		<category><![CDATA[mercury]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=1178</guid>
		<description><![CDATA[Yesterday I added another 2 packages to the Arch User Repository (AUR) which brings up my total to 6. The 2 applications are the mercury compiler and csrftester. I was surprised to see there was no fitting packaged mercury compiler available in any of the Arch Linux repositories. Arch has many compilers available but apparantly [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I added another 2 packages to the Arch User Repository (AUR) which brings up my total to 6. The 2 applications are the <a href="http://aur.archlinux.org/packages.php?ID=32641">mercury compiler</a> and <a href="http://aur.archlinux.org/packages.php?ID=33046">csrftester</a>.</p>
<p>I was surprised to see there was no fitting packaged mercury compiler available in any of the Arch Linux repositories. Arch has many compilers available but apparantly not the mercury compiler. I admit that <a href="http://www.cs.mu.oz.au/research/mercury/">mercury</a> is perhaps not the most popular language, considering it is a) declarative and b) not backed by a major company like Microsoft, but I was suprised nonetheless. It may be worth mentioning that compiling mercury takes a little while (depending on your computer a few hours) so make sure you have the time if you&#8217;re building it.</p>
<p><a href="http://www.owasp.org/index.php/Category:OWASP_CSRFTester_Project">CSRFTester</a> is a whole different application. It is used for testing Cross Site Request Forgeries in web applications. It sits in between your browser and the internet and logs your http requests. Based on those logs, it can generate sample code to exploit possible csrf vurnerabilities. As the name suggests, it&#8217;s just for testing purposes and logging. Don&#8217;t expect any out of the box exploits.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/mercury-compiler-and-csrftester/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vdpau Info</title>
		<link>http://www.nepherte.be/vdpau-info/</link>
		<comments>http://www.nepherte.be/vdpau-info/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 15:05:10 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Arch Linux]]></category>
		<category><![CDATA[aur]]></category>
		<category><![CDATA[vdpau]]></category>
		<category><![CDATA[vdpauinfo]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=980</guid>
		<description><![CDATA[Today I&#8217;ve added vdpauinfo to the Arch User Repository (AUR), which makes it my fourth uploaded application to AUR. Vdpauinfo is a useful tool to determine the vdpau capabilities of your graphics card.It is an updated version of Wladimir J. Van der Laan&#8217;s vdpinfo tool. Here&#8217;s the output of my Nvidia Geforce 8400M GS: display: [...]]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;ve added <a href="http://aur.archlinux.org/packages.php?ID=30496">vdpauinfo</a> to the<a href="http://aur.archlinux.org/index.php"> Arch User Repository</a> (AUR), which makes it my fourth uploaded application to AUR. Vdpauinfo is a useful tool to determine the vdpau capabilities of your graphics card.It is an updated version of Wladimir J. Van der Laan&#8217;s vdpinfo tool.</p>
<p>Here&#8217;s the output of my Nvidia Geforce 8400M GS:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">display: :<span style="color: #000000;">0.0</span>   <span style="color: #c20cb9; font-weight: bold;">screen</span>: <span style="color: #000000;">0</span>
API version: <span style="color: #000000;">0</span>
Information string: NVIDIA VDPAU Driver Shared Library  <span style="color: #000000;">190.36</span>  Wed Sep <span style="color: #000000;">23</span> 06:<span style="color: #000000;">55</span>:<span style="color: #000000;">52</span> PDT <span style="color: #000000;">2009</span>
&nbsp;
Video surface:
&nbsp;
name   width height types
<span style="color: #660033;">-------------------------------------------</span>
<span style="color: #000000;">420</span>     <span style="color: #000000;">4096</span>  <span style="color: #000000;">4096</span>  NV12 YV12
<span style="color: #000000;">422</span>     <span style="color: #000000;">4096</span>  <span style="color: #000000;">4096</span>  UYVY YUYV 
&nbsp;
Decoder capabilities:
&nbsp;
name               level macbs width height
<span style="color: #660033;">-------------------------------------------</span>
MPEG1                 <span style="color: #000000;">0</span>  <span style="color: #000000;">8192</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
MPEG2_SIMPLE          <span style="color: #000000;">3</span>  <span style="color: #000000;">8192</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
MPEG2_MAIN            <span style="color: #000000;">3</span>  <span style="color: #000000;">8192</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
H264_MAIN            <span style="color: #000000;">41</span>  <span style="color: #000000;">8192</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
H264_HIGH            <span style="color: #000000;">41</span>  <span style="color: #000000;">8192</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
VC1_SIMPLE            <span style="color: #000000;">1</span>  <span style="color: #000000;">8190</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
VC1_MAIN              <span style="color: #000000;">2</span>  <span style="color: #000000;">8190</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
VC1_ADVANCED          <span style="color: #000000;">4</span>  <span style="color: #000000;">8190</span>  <span style="color: #000000;">2048</span>  <span style="color: #000000;">2048</span>
&nbsp;
Output surface:
&nbsp;
name              width height nat types
<span style="color: #660033;">----------------------------------------------------</span>
B8G8R8A8          <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>    y  Y8U8V8A8 V8U8Y8A8
R10G10B10A2       <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>    y  Y8U8V8A8 V8U8Y8A8 
&nbsp;
Bitmap surface:
&nbsp;
name              width height
<span style="color: #660033;">------------------------------</span>
B8G8R8A8          <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>
R8G8B8A8          <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>
R10G10B10A2       <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>
B10G10R10A2       <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>
A8                <span style="color: #000000;">8192</span>  <span style="color: #000000;">8192</span>
&nbsp;
Video mixer:
&nbsp;
feature name                    sup
<span style="color: #660033;">------------------------------------</span>
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     y
INVERSE_TELECINE                 y
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         y
HIGH QUALITY SCALING - L1        -
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -
&nbsp;
parameter name                  sup      min      max
<span style="color: #660033;">-----------------------------------------------------</span>
VIDEO_SURFACE_WIDTH              y         <span style="color: #000000;">1</span>     <span style="color: #000000;">4096</span>
VIDEO_SURFACE_HEIGHT             y         <span style="color: #000000;">1</span>     <span style="color: #000000;">4096</span>
CHROMA_TYPE                      y
LAYERS                           y         <span style="color: #000000;">0</span>        <span style="color: #000000;">4</span>
&nbsp;
attribute name                  sup      min      max
<span style="color: #660033;">-----------------------------------------------------</span>
BACKGROUND_COLOR                 y
CSC_MATRIX                       y
NOISE_REDUCTION_LEVEL            y      <span style="color: #000000;">0.00</span>     <span style="color: #000000;">1.00</span>
SHARPNESS_LEVEL                  y     -<span style="color: #000000;">1.00</span>     <span style="color: #000000;">1.00</span>
LUMA_KEY_MIN_LUMA                y
LUMA_KEY_MAX_LUMA                y</pre></div></div>

<p>In case you&#8217;re wondering, vdpau is an api that allows video programs to offload portions of the video decoding process and video post-processing to the GPU video-hardware, resulting in less cpu load.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/vdpau-info/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tested Skype on my laptop</title>
		<link>http://www.nepherte.be/skype-on-my-laptop/</link>
		<comments>http://www.nepherte.be/skype-on-my-laptop/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 19:26:37 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[PulseAudio]]></category>
		<category><![CDATA[Skype]]></category>
		<category><![CDATA[Sony]]></category>
		<category><![CDATA[SZ]]></category>
		<category><![CDATA[Vaio]]></category>
		<category><![CDATA[Webcam]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=962</guid>
		<description><![CDATA[After various requests and personal interest in the matter, I finally tryed to get skype working on my Sony Vaio SZ6 with Arch Linux 64bit and pulseaudio installed. Skype and linux never mingled all that well. Supporting linux was never high on their todo list and they surely acted upon it. Skype has never gotten [...]]]></description>
			<content:encoded><![CDATA[<p>After various requests and personal interest in the matter, I finally tryed to get skype working on my Sony Vaio SZ6 with Arch Linux 64bit and pulseaudio installed. Skype and linux never mingled all that well. Supporting linux was never high on their todo list and they surely acted upon it. Skype has never gotten past the beta stage and they released a new version only once in a while. To give you an idea, Skype is at version 2.1.0.47 for linux while it is already at 4.1 for windows. There were many things that held me back in the past to try out Skype but this latest release did put some thing in motion though.</p>
<p>Skype is strictly 32bit and my Arch Linux installation is 64bit. While this should only be a matter of installing the necessary 32bit libraries, I&#8217;m not very keen on doing so because I just don&#8217;t like mixing 32bit and 64bit on a single installation. Why would I otherwise want 64bit, right? This once, for testing purposes, I figured I could put my personal considerations aside.</p>
<p>Another conflict is pulseaudio, which, until this latest release, was not supported by Skype. I&#8217;m glad they did as pulseaudio will be used a lot more now that gnome uses it by default. Oddly enough, they dropped oss support. This doesn&#8217;t affect me but certainly a lot of other people.</p>
<p>Video (webcam) support is also a usual area of conflict. Handling webcams is not done in a unified way on linux and hence causes a lot of conflicts. Luckily for me, I didn&#8217;t have to do a thing other than installing the driver for my webcam.</p>
<p>So after installing the necessary 32bit libraries (including pulseaudio) and installing the driver for my webcam, Skype worked without any problem for the first time. Now it is simply a matter of crowding my skype contact list.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/skype-on-my-laptop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netembryo and libnemesi</title>
		<link>http://www.nepherte.be/netembryo-and-libnemesi/</link>
		<comments>http://www.nepherte.be/netembryo-and-libnemesi/#comments</comments>
		<pubDate>Fri, 01 May 2009 16:09:16 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Arch Linux]]></category>
		<category><![CDATA[aur]]></category>
		<category><![CDATA[libnemesi]]></category>
		<category><![CDATA[live555]]></category>
		<category><![CDATA[MPlayer]]></category>
		<category><![CDATA[netembryo]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=750</guid>
		<description><![CDATA[I&#8217;ve posted another 2 packages to the Arch User Repository (AUR):  netembryo and libnemesi. The first is a network abstraction library, the latter is an implementation of RTSP. Both didn&#8217;t exist in AUR yet so I guess there&#8217;s not much demand for them yet (I don&#8217;t even use them myself). MPlayer has initial support for [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve posted another 2 packages to the <a href="http://aur.archlinux.org/index.php">Arch User Repository</a> (AUR):  <a href="http://aur.archlinux.org/packages.php?ID=26086">netembryo</a> and <a href="http://aur.archlinux.org/packages.php?ID=26087">libnemesi</a>. The first is a network abstraction library, the latter is an implementation of RTSP. Both didn&#8217;t exist in AUR yet so I guess there&#8217;s not much demand for them yet (I don&#8217;t even use them myself).</p>
<p><a href="http://www.mplayerhq.hu/">MPlayer</a> has initial support for libnemesi to handle rtsp stream, as an alternative for <a href="http://www.live555.com/">live555</a> and that would be the only reason I wanted to try it out. MPlayer should automatically detect libnemesi. Otherwise you will have to append the &#8211;extra-cflags option to the ./configure statement.</p>
<p>While netembryo is getting more and more stable, libnemesi is still in early development and  no official release exists as of yet. In fact, many libnemesi revisions don&#8217;t even want to compile so it can be a real drag to find one that does. I&#8217;ll save you some time: the public git version of 20090501 works.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/netembryo-and-libnemesi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Poor Man&#8217;s Tiling Window Manager</title>
		<link>http://www.nepherte.be/poor-mans-tiling-window-manager/</link>
		<comments>http://www.nepherte.be/poor-mans-tiling-window-manager/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 12:15:11 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Tiling Window Manager]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=332</guid>
		<description><![CDATA[Update April 8, 2009: uh_no_hu&#8217;s is still expanding the functionality of his tiling window manager script. Since my post 4 new feature&#8217;s have been added: vertical, horizontal, maximize, max_all. The homepage has also changed to a new location. You can discuss the window manager on the Arch Linux forums. Original February 14, 2009: Poor Man&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update </strong>April 8, 2009<strong>:</strong> uh_no_hu&#8217;s is still expanding the functionality of his tiling window manager script. Since my post 4 new feature&#8217;s have been added: vertical, horizontal, maximize, max_all. The homepage has also changed to a <a href="http://github.com/TheWanderer/stiler/tree/master">new location</a>. You can discuss the window manager on the <a href="http://bbs.archlinux.org/viewtopic.php?id=64100">Arch Linux forums</a>.</p>
<p><strong>Original</strong> February 14, 2009: <a href="http://github.com/TheWanderer/stiler/tree/master">Poor Man&#8217;s Tiling Window Manager</a> is <a href="http://bbs.archlinux.org/profile.php?id=17078">uh_no_hu&#8217;s</a> attempt to add basic tiling window functionality to the desktop, independent of the used desktop environment or window manager. It is known to work with pekwm,  openbox and metacity. It&#8217;s a small python script that should be assigned to key combinations and currently provides 4 features:</p>
<ul>
<li>tiling &#8211; the basic tiling layout: one window in the main column (left) with all the other windows at the side (right)</li>
<li>left &#8211; put the active window to the left</li>
<li>right &#8211; put the active window the the right</li>
<li>swap &#8211; swich the active window with the window in the main column</li>
</ul>
<p>The wanted option is to be provided as an argument of the python script. The script relies on wmctrl and xdotool so make sure you have these two packages. Otherwise the script will not work.</p>
<p>The left/right option is somewhat similar to a function of the new Windows 7 that sticks a window the side. Tiling and swap are the classic features that come with a true tiling window manager.</p>
<p>Though it is not a full replacement for true tiling window managers, it can be considered as an add-on for regular window managers. Whereas someone will use a true tiling window manager (dwm, xmonad, awesome, wmii, ..) to get full tiling support, someone less technical should really try out this easy to use script because most, if not all true tiling window managers tend to be difficult to configure/use.</p>
<p>To give you an idea of how the tiling layout looks like, here&#8217;s a nice picture:</p>
<p><a href="http://www.nepherte.be/wp-content/uploads/2009/02/tiling.png"><img class="size-medium wp-image-345 aligncenter" title="Tiling layout" src="http://www.nepherte.be/wp-content/uploads/2009/02/tiling-300x187.png" alt="Tiling layout" width="571" height="355" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/poor-mans-tiling-window-manager/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<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. To acquire a good MPlayer setup, you really don&#8217;t want to install the version packaged by your favorite distribution. The mainstream linux distributions like Ubuntu use &#8220;the latest&#8221; but very dated release of MPlayer. Their latest release,  v1.0rc2, dates from 7 October 2007. [...]]]></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>
<p>To acquire a good MPlayer setup, you really don&#8217;t want to install the version packaged by your favorite distribution. The mainstream linux distributions like Ubuntu use &#8220;the latest&#8221; but very dated release of MPlayer. Their latest release,  v1.0rc2, dates from 7 October 2007. Go figure!  That doesn&#8217;t mean MPlayer isn&#8217;t actively being developed though. You see, the MPlayer developers believe in making continuous changes to their latest development version, generally referred to as the SVN version, rather than releasion official versions. This SVN version is 99% of the time stable, no need to worry there. 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 useful multimedia libraries and FFMPEG</li>
<li>Install MPlayer</li>
</ul>
<p><strong>Part I: x264</strong><br />
x264 is necessary for encoding videos in the  MPEG 4 AVC (H264/x264) codec. At the moment of writing 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 like make. 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 to build software.</p>
<p>x264 depends on the following packages:</p>
<ul>
<li><em>libx11</em></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>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>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-visualize</span> <span style="color: #660033;">--enable-shared</span> <span style="color: #660033;">--enable-pic</span> <span style="color: #660033;">--enable-mp4-output</span></pre></div></div>

<p>You don&#8217;t need to worry much about these configuration options but I&#8217;ll briefly explain them. prefix= determines where the final build of x264 will reside. /usr is generally a good option. If prefix is not specified it will default to /usr/local/. enable-shared allows other programs to access this x264 build. This is something we really need. enable-mp4-output makes sure that we can save media files with the x264 codec to mp4 files. mp4-output requires you installed gpac. If you didn&#8217;t, remove this option from the ./configure line. enable-visualize speaks for itself. enable-pic builds position-independent code. 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).</p>
<p>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>
<p><strong>Part II: Install useful multimedia libraries and FFMPEG<br />
</strong>To get a working MPlayer setup you technically don&#8217;t have to perform this step because the svn server of MPlayer already holds the necessary ffmpeg and other libraries. 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 mplayer devs often add some optimizations to their ffmpeg branch that are not availabe in the official branch. The mplayer devs recommend using their branch (stating the obvious I suppose), I&#8217;ll explain both methods. If you prefer a built-in ffmpeg, skip this section. Still here? Libraries that I recommend to install for a separate ffmpeg, are:</p>
<ul>
<li><em>subversion, imlib2</em>- build requirements for ffmpeg</li>
<li><em>xvidcore &#8211; </em>Support for xvid codec</li>
<li><em>faad2</em> and <em>faac -</em> for AAC decoding and encoding</li>
<li><em>smbclient &#8211; </em> for network files playback</li>
<li><em>lame</em> &#8211; for mp3 encoding</li>
<li><em>libtheora, libvorbis, speex</em> &#8211; support for the open source theora, vorbis and speech codec</li>
<li><em>zlib</em> &#8211; support for compression</li>
</ul>
<p>Some less commonly used optional features for ffmpeg:</p>
<ul>
<li><em>sdl</em><em> &#8211; </em>if you want ffmpeg to be able to play video files</li>
<li><em>gsm</em> &#8211; another lossy speech compression codec</li>
<li><em>dirac </em>or <em>libschroedinger</em> &#8211; video compression codec</li>
<li><em>amrnb, amrwb</em> &#8211; adaptive amr narrow and wide band speech codec</li>
</ul>
<p>Try to install them with the package management installer that comes with your distribution but I suggest you check the repository version of a library with the latest version.</p>
<p>Now let&#8217;s continue with FFMPEG. FFMPEG and MPlayer are practically twins, they go hand in hand with eachother. 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>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>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-libmp3lame</span> <span style="color: #660033;">--enable-libvorbis</span> <span style="color: #660033;">--enable-libfaac</span> <span style="color: #660033;">--enable-xvid</span> <span style="color: #660033;">--enable-x264</span> <span style="color: #660033;">--enable-libtheora</span> <span style="color: #660033;">--enable-libspeex</span> <span style="color: #660033;">--enable-postproc</span> <span style="color: #660033;">--enable-avfilter</span> <span style="color: #660033;">--enable-avfilter-lavf</span> <span style="color: #660033;">--enable-shared</span> <span style="color: #660033;">--enable-network</span> <span style="color: #660033;">--enable-pthreads</span> <span style="color: #660033;">--enable-x11grab</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>If you didn&#8217;t install all the packages from above, simply remove the corresponding configure option. If you  installed something out of the list of less commonly used libraries, add the corresponding option to the ./configure line. 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>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. FFMPEG includes a player (if you installed sdl, that is) so you can verify that you installed it successfully by playing a media file. This is how you do it: ffplay &lt;path to video file&gt;. 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>
<p><strong>Part III: Install MPlayer</strong><br />
Now we can finally move on to installing MPlayer. Some additional packages you could install:</p>
<ul>
<li><em>freetype, fribidi</em>, <em>aalib &#8211; </em> for unicode and ascii support (subtitles)</li>
<li><em>live555</em><em> &#8211; </em> support for streaming</li>
<li><em> libmpcdec</em><em> &#8211; </em> for musepack</li>
<li><em>twolame or toolame</em> &#8211; for optimized mpeg layer 2 encoding (twolame excludes toolame and vice versa)</li>
<li><em>openal, opengl, libxmvc</em>, <em>libxv, directfb, libpng, libjpeg &#8211; </em>for more video and audio outputs <em></em>.</li>
</ul>
<p>They&#8217;re all optional dependencies but they increase the capabilities of MPlayer a lot so there&#8217;s no reason not the install them.</p>
<p>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>Patch MPlayer so it can disable the gnome-screensaver as well. There are patches for KDE as well, but I use GNOME:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>www.nepherte.be<span style="color: #000000; font-weight: bold;">/</span>files<span style="color: #000000; font-weight: bold;">/</span>mplayer-svn-gnome-screensaver.patch
<span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #c20cb9; font-weight: bold;">mplayer</span>
<span style="color: #c20cb9; font-weight: bold;">patch</span> <span style="color: #660033;">-p1</span> ..<span style="color: #000000; font-weight: bold;">/</span>mplayer-svn-gnome-screensaver.patch</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 afterwards it will set everything correct to use that feature. 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>Configure MPlayer with built-in (static) 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></pre></div></div>

<p>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-libavutil_a --disable-libavcodec_a --disable-libavformat_a --disable-libpostproc_a --disable-libswscale_a</pre></div></div>

<p>I explicitely disabled the built-in gui because there are a lot better guis available. I&#8217;ll deal with this in Comprehensive MPlayer Guide III. 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-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></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>0</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 . I will try to give an in-dept but understandable explanation of the how and perhaps more importantly, the why. I will not [...]]]></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 . 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 is a tool to easily encode audio, 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>
		<item>
		<title>Cooliris</title>
		<link>http://www.nepherte.be/cooliris/</link>
		<comments>http://www.nepherte.be/cooliris/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 16:23:11 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[image viewer]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=527</guid>
		<description><![CDATA[It doesn&#8217;t happen very often but today I got impressed by an application called Cooliris. Cooliris is a browser plug-in that allows you to browse images, videos and a lot more with a cinematic look and feel. Cooliris supports the 3 most popular browsers: Internet Explorer, Firefox and Safari. Windows and OS X were since [...]]]></description>
			<content:encoded><![CDATA[<p>It doesn&#8217;t happen very often but today I got impressed by an application called <a href="http://www.cooliris.com/">Cooliris</a>. Cooliris is a browser plug-in that allows you to browse images, videos and a lot more with a cinematic look and feel. Cooliris supports the 3 most popular browsers: Internet Explorer, Firefox and Safari. Windows and OS X were since long supported, but recently Linux was added to the list as well. That&#8217;s how it caught my attention.</p>
<p>You can use this plug-in in a few ways. You can launch Cooliris from your browser and search for media, or, you could browse on one of the many <a href="http://www.cooliris.com/product/?p=supported">supported sites</a>, hover over the image and click on the icon that appears. You can browse your local media files as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/cooliris/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mpd, ncmpc++ and keybindings for playback control</title>
		<link>http://www.nepherte.be/mpd-ncmpc-and-keybindings-for-playback-control/</link>
		<comments>http://www.nepherte.be/mpd-ncmpc-and-keybindings-for-playback-control/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 16:51:33 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=451</guid>
		<description><![CDATA[I already mentioned that mpd &#38; ncmpc++ is a great music player. I imagine a console music player can be a little discouraging and realized the other day that major desktop environments like Gnome don&#8217;t have built-in support for music playback control through mpd. If you assign a key to play/pause and next/previous song in the [...]]]></description>
			<content:encoded><![CDATA[<p>I already <a title="Howto: Use mpd and ncmpc++ like a pro" href="http://www.nepherte.be/howto-use-mpd-and-ncmpc-like-a-pro/">mentioned</a> that mpd &amp; ncmpc++ is a great music player. I imagine a console music player can be a little discouraging and realized the other day that major desktop environments like Gnome don&#8217;t have built-in support for music playback control through mpd. If you assign a key to play/pause and next/previous song in the Gnome control center,  it will work in a lot of popular music players like banshee, amarok, exaile and so on but not with mpd. When you finally convinced yourself to use mpd, this could be another setback.</p>
<p>The &#8220;problem&#8221; however can be easily solved. It&#8217;s as easy as</p>
<ul>
<li>figuring out the commands to play, pause and switch songs in mpd</li>
<li>assigning this command to a key</li>
</ul>
<p>For both steps exist several solutions of which I will explain one.</p>
<p><strong>Figuring out the commands<br />
</strong>You can&#8217;t control the playback of songs directly with mpd. You will have to do it with the frontend you are using. In my case that&#8217;s ncmpcpp but any other frontend such as mpc or ncmpc will do. Each action can be supplied as an argument for the ncmpcpp command:</p>
<ul>
<li>playback/pause: ncmpcpp toggle</li>
<li>previous song: ncmpcpp prev</li>
<li>next song: ncmpcppp next</li>
<li>stop: ncmpcpp stop</li>
</ul>
<p><strong>Assigning keys to the commands</strong><br />
I believe all desktop environments/window managers provide a way to assign keys to predefined and custom actions. The predefined actions in Gnome are easily accessible through the Gnome control center (Alt + F2 gnome-control-center). As mentioned earlier, the predefined actions for music playback don&#8217;t&#8217; work with mpd. We will have to create custom actions.</p>
<p>The custom actions in Gnome are well hidden in gconf-editor. Press Alt + F2 and type gconf-editor to open it. Navigate to /app/metacity/keybinding_commands and fill in the commands we found earlier. Afterwards you can assign a key to each command in /app/metacity/global_keybindings. Key modifiers like Ctrl and Alt are &lt;Control&gt; and &lt;Alt&gt; respectively.  I, for example, added ncmpcpp next to command_1 and assigned &lt;Control&gt;Left (Left is the left arow key) to run_command_1.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/mpd-ncmpc-and-keybindings-for-playback-control/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Encode movies with HandBrake</title>
		<link>http://www.nepherte.be/encode-movies-with-handbrake/</link>
		<comments>http://www.nepherte.be/encode-movies-with-handbrake/#comments</comments>
		<pubDate>Sat, 10 Jan 2009 11:28:25 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Encoding]]></category>
		<category><![CDATA[HandBrake]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=227</guid>
		<description><![CDATA[People looking for an easy way to encode their movie collection to a smaller file for storage on their computer, will find HandBrake the perfect program. It comes with a GUI that will fit the needs of both the unexperienced as the experienced. You will have a video file with chapters,  audio and subtitles in [...]]]></description>
			<content:encoded><![CDATA[<p>People looking for an easy way to encode their movie collection to a smaller file for storage on their computer, will find HandBrake the perfect program. It comes with a GUI that will fit the needs of both the unexperienced as the experienced. You will have a video file with chapters,  audio and subtitles in no time. As opposed to a lot on my blog, Windows and OS X users can get HandBrake for their operating system too.</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2009/01/handbrake-main.png"><img class="size-medium wp-image-245 aligncenter" title="HandBrake Main Screen" src="http://www.nepherte.be/wp-content/uploads/2009/01/handbrake-main-300x204.png" alt="HandBrake Main Screen" width="300" height="204" /></a></p>
<p>Not only the GUI makes it easier for you, the standard presets do as well. You don&#8217;t know what the good settings are for video playback on your iphone? No worries, simply use the iphone preset. There are presets available for other apple devices, gaming consoles, high/normal quality movies and animation videos. If one of the existing presets isn&#8217;t what you are looking for, you can create one for yourself so you don&#8217;t have to enter the same settings over and over again.</p>
<p>The most common codecs for both video and audio are included in HandBrake. All the popular containers are there too.</p>
<ul>
<li>Video codecs : H.264 (x264/MPEG-4 AVC), MPEG-4 ASP (Xvid and ffmpeg) and Theora.</li>
<li>Audio codecs: AAC (faac), MP3 (lame), Vorbis and AC3 passthrough.</li>
<li>Containers: mkv, avi, ogg, mp4 and m4v.</li>
</ul>
<p>H.264 combined with AAC will give you the best quality and you can even tweak the settings  of H.264 in a separate tab. For those that don&#8217;t know what settings they should use, I can recommend a slightly adapted version of the High Preset for films:</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2009/01/handbrake-h264-settings.png"><img class="size-medium wp-image-247 aligncenter" title="HandBrake H.264 Settings" src="http://www.nepherte.be/wp-content/uploads/2009/01/handbrake-h264-settings-300x204.png" alt="HandBrake H.264 Settings" width="300" height="204" /></a></p>
<p>Not all H.264 options are included in the gui as this would overload the gui too much. The developpers do give you the possibility to add extra options manually though, a great feature indeed. For dxva compatible playback (your graphics card doing the decoding work), you can paste these settings in the manual options box:</p>
<p><code>ref=5:mixed-refs:bframes=3:weightb:direct=auto:b-pyramid:me=umh:8x8dct:partitions=all:vbv-bufsize=50000:vbv-maxrate=50000:trellis=2</code></p>
<p>Remember that encoding takes up a lot of time depending on the processor your computer is equiped with and the chosen settings.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/encode-movies-with-handbrake/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Howto: mpd and your iphone</title>
		<link>http://www.nepherte.be/howto-mpd-and-your-iphone/</link>
		<comments>http://www.nepherte.be/howto-mpd-and-your-iphone/#comments</comments>
		<pubDate>Sat, 03 Jan 2009 13:09:08 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mpd]]></category>
		<category><![CDATA[music player]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=216</guid>
		<description><![CDATA[In a previous article, I&#8217;ve been telling you about the powerful Music Player Daemon (mpd) and its wide range of possibilities. I briefly mentioned the use of your iphone or ipod touch as a remote control for your media station with mpd running. Today I&#8217;ve put it to the test and was amazed with how [...]]]></description>
			<content:encoded><![CDATA[<p>In a <a href="http://www.nepherte.be/howto-use-mpd-and-ncmpc-like-a-pro/" title="Howto: Use mpd and ncmpc++ like a pro">previous article</a>, I&#8217;ve been telling you about the powerful <a href="http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki">Music Player Daemon</a> (mpd) and its wide range of possibilities. I briefly mentioned the use of your iphone or ipod touch as a remote control for your media station with mpd running. Today I&#8217;ve put it to the test and was amazed with how easy it was to set up.</p>
<p>I already explained setting up and running mpd. Only a few changes are worth mentioning. First of all you will have to change the bind address. By default it&#8217;s set to 127.0.0.1 so only the local host can connect to it. Since we will be connecting to mpd remotely with the iphone we have to change this value (the iphone will recognize 127.0.0.1 as itself). Open up ~/.mpdconf and make this change:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">bind_to_address = any</pre></div></div>

<p>I also suggest you enable password authentication in mpd as anyone with access to your network will be able to connect:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">password <span style="color: #ff0000;">&quot;yourpasswordhere@read,add,control,admin&quot;</span></pre></div></div>

<p>Remember that if you have a firewall blocking incoming connections (iptables doesn&#8217;t do this by default), you will have to allow tcp connections on port 6600. That&#8217;s it for the server side.</p>
<p>For the iphone, it&#8217;s even easier. There are a few mpd clients that exist for the iphone: <a href="http://code.google.com/p/impdclient/" title="impdclient">impdclient</a> and <a href="http://www.katoemba.net/makesnosenseatall/mpod/" title="MPoD">mpod</a>. I tried the latter. It&#8217;s available in the app store (firmware 2.x required). Simply install it and an icon will appear in the home screen. Launch mpod and fill in the settings in its configuration menu. Pay extra attention to the ip address. When the server running mpd is using dhcp, the ip address might change. Therefore I recommend you use static ip addresses.</p>
<p>That&#8217;s pretty much it. You can now control your music remotely from your iphone. An ideal music center setup.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/howto-mpd-and-your-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Howto: Use mpd and ncmpc++ like a pro</title>
		<link>http://www.nepherte.be/howto-use-mpd-and-ncmpc-like-a-pro/</link>
		<comments>http://www.nepherte.be/howto-use-mpd-and-ncmpc-like-a-pro/#comments</comments>
		<pubDate>Thu, 25 Dec 2008 18:39:58 +0000</pubDate>
		<dc:creator>Nepherte</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[mpd]]></category>
		<category><![CDATA[music player]]></category>
		<category><![CDATA[ncmpcpp]]></category>

		<guid isPermaLink="false">http://www.nepherte.be/?p=182</guid>
		<description><![CDATA[I tend to use the command line more often these days. When I have to do some task, I find it easier and faster to open a terminal and enter the necessary commands than using the GUI. The same thing goes for applications. When you know how to use a specific console program, it can [...]]]></description>
			<content:encoded><![CDATA[<p>I tend to use the command line more often these days. When I have to do some task, I find it easier and faster to open a terminal and enter the necessary commands than using the GUI. The same thing goes for applications. When you know how to use a specific console program, it can be far more productive than a graphical application. Once you cross that &#8220;console barrier&#8221;, it&#8217;s hard to go back and you probably don&#8217;t want to. This is my attempt to sell mpd and ncmpcpp to you.</p>
<p><a title="Music Player Daemon" href="http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki">Mpd</a> and <a href="http://unkart.ovh.org/ncmpcpp/">ncmpc++</a> are perfect examples of these console programs. Mpd, also known as Music Player Daemon, is a powerful server side console application for playing music and ncmpc++ is one of the many console front-ends available for mpd (note that gui front-ends also exist). Mpd is cross-platform (although windows support is in a very experimental phase) and can also be controlled from an external device like a mobile phone. This makes it an ideal combination for a media server: your phone or other device as a remote control for your sound system running mpd. If you paid attention to what I said, you&#8217;ll conclude that mpd does not stream audio. I repeat: mpd does not stream audio. All playback occurs on the server. However, you output to a stream server like Icecast. Besides that, it also makes a great desktop music player program where both mpd and ncmpc++ are installed on the same computer. Inspired by <a href="http://kmandla.wordpress.com/">K.Mandla</a>&#8216;s  &#8220;how to become a pro at ..&#8221; I will show you how to do so and become a &#8220;pro&#8221; at using mpd and ncmpc++.</p>
<p><strong><span style="text-decoration: underline;">Setting Up mpd</span></strong><br />
First, you will need to install mpd. Every self respecting linux distribution has it in their software repositories, hence the installation of the package shouldn&#8217;t be a problem. For Ubuntu it would be &#8220;sudo apt-get install mpd&#8221;, for Arch Linux &#8220;sudo pacman -S mpd&#8221; and so on. For more information on installing mpd, you can always check out their extensive wiki: http://mpd.wikia.com/wiki/Install. The few configuration changes that have to be made, are done in /etc/mpd.conf for system-wide use, or in ~/.mpdconf for individual users. I will only explain setting it up for each individual user as it has several advantages over a system wide install such as setting up a separate music library, own playlists and resume of songs for each user individually.</p>
<p>1. Copy the system wide configuration file /etc/mpd.conf to ~/.mpdconf (~ denotes the users home directory):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>mpd.conf ~<span style="color: #000000; font-weight: bold;">/</span>.mpdconf</pre></div></div>

<p>2. Before we edit the config file, we will create some files and directories we will be using later on:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #660033;">-p</span> ~<span style="color: #000000; font-weight: bold;">/</span>.mpd<span style="color: #000000; font-weight: bold;">/</span>playlists
<span style="color: #c20cb9; font-weight: bold;">touch</span> ~<span style="color: #000000; font-weight: bold;">/</span>.mpd<span style="color: #000000; font-weight: bold;">/</span>mpd.db
<span style="color: #c20cb9; font-weight: bold;">touch</span> ~<span style="color: #000000; font-weight: bold;">/</span>.mpd<span style="color: #000000; font-weight: bold;">/</span>mpd.error
<span style="color: #c20cb9; font-weight: bold;">touch</span> ~<span style="color: #000000; font-weight: bold;">/</span>.mpd<span style="color: #000000; font-weight: bold;">/</span>log</pre></div></div>

<p>3. Now edit ~/.mpdconf to reflect these settings:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">music_directory                 <span style="color: #ff0000;">&quot;/full/path/to/your/music/directory&quot;</span>
playlist_directory              <span style="color: #ff0000;">&quot;~/.mpd/playlists&quot;</span>
db_file                         <span style="color: #ff0000;">&quot;~/.mpd/mpd.db&quot;</span>
log_file                        <span style="color: #ff0000;">&quot;~/.mpd/mpd.log&quot;</span>
error_file                      <span style="color: #ff0000;">&quot;~/.mpd/mpd.error&quot;</span>
pid_file                        <span style="color: #ff0000;">&quot;~/.mpd/mpd.pid&quot;</span>
state_file                      <span style="color: #ff0000;">&quot;~/.mpd/mpdstate&quot;</span>
bind_to_address                 <span style="color: #ff0000;">&quot;127.0.0.1&quot;</span>
port                            <span style="color: #ff0000;">&quot;6600&quot;</span></pre></div></div>

<p>As you will see, there are two entries for each setting: one system wide and one user based. You have to comment out the system wide ones with # and enable the user based by uncommenting them and filling in the correct values (like mine above). The names of the settings speak for themselves and additional documentation is often added in the configuration file itself. Be sure to replace /full/path/to/your/music/directory with the correct path to your music directory and yourusername with your actual username. You can change the port if you want to, but there&#8217;s generally no point in doing that. You can also restrict access to mpd (remember, you can control it from a remote device) by uncommenting the password entry and supplying a password. Typically, you don&#8217;t have to mess with the audio output settings, but if you have problems later on remember these settings: Uncommenting the alsa output is then your best bet (since it ships with basically every linux distribution by default as it is included in the kernel).</p>
<p>There also exists a configuration page on their <a title="MPD wiki" href="http://mpd.wikia.com/wiki/Configuration">wiki</a>.</p>
<p><span style="text-decoration: underline;"><strong>Using mpd</strong></span><br />
Now that you have mpd installed and configured, you can start using it. There really isn&#8217;t much to say about using mpd. All you have to do is running the command mpd as user and creating the music library database file. It will look into your music_directory, create an entry for each music file and put information about it in mpd.db:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">mpd <span style="color: #660033;">--create-db</span>
mpd</pre></div></div>

<p>The cool thing about having a command line music player daemon is that you don&#8217;t need a X server running to play music. Are you tired of your music stopping when you log on and off your system? No problem, mpd will keep running when you log on and off. When you start mpd it will also resume the last song that was playing if you abruptly stopped the mpd daemon.</p>
<p>If mpd gives you any trouble like not starting up, no sound or not creating a mpd.db file, check out mpd.log and mpd.error. It will give you a headstart in figuring out what&#8217;s wrong.</p>
<p><strong><span style="text-decoration: underline;">Setting up ncmpc++<br />
</span></strong>Now we still need something to control mpd with. Ncmpcpp is almost an exact clone of ncmpc but it contains some new features ncmpc doesn&#8217;t have. It&#8217;s been also rewritten from scratch in C++ and more importantly, it&#8217;s actively being developped. As I told before, there exist other clients both command line and graphical as web based. Hell, you can even get a client that runs on your Iphone or Ipod Touch. But I can assure you, ncmpc++ pretty much does it all: playlists, crossfading, tag editing, fetching lyrics&#8230; You name it, it&#8217;s got it.</p>
<p>As far as I know only Arch Linux, Gentoo and FreeBSD have ncmpcpp in their software repositories. So you might have to get your hands dirty with compiling it yourself. But hey, if you already get so far reading this, it really shouldn&#8217;t be a problem. People seriously considering a console music player, probably have the skill to compile it as well. Detailed installation instructions can be found on the <a href="http://unkart.ovh.org/ncmpcpp/download.php">ncmpcpp site</a>.</p>
<p>I&#8217;m not really going into the configuration of ncmpc++. The default configuration will certainly do. Only when you intend to use the tag editor, you will have to set the proper path to the mpd music directory in ~/.ncmpcpp/config (the path you also filled in the config file of mpd). The rest is a bunch of color and format settings. You can also configure the shortcut keys in ~/.ncmpcpp/keys. More on the shortcut keys later.</p>
<p><strong><span style="text-decoration: underline;">Using ncmpc++</span></strong><br />
You can launch ncmpc++ in the terminal with:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ncmpcpp</pre></div></div>

<p>When you launch it, you are welcomed by the playlist window that shows the songs of the playlist you are currently listening to</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-playlist.png"><img class="size-medium wp-image-176 aligncenter" title="Ncmpc++ Playlist" src="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-playlist-300x211.png" alt="Ncmpc++ Playlist" width="300" height="211" /></a></p>
<p>At the top, you see what menus are available and their corresponding key to access it (by default numbers from 1 to 7 and fn keys):<br />
1:Help<br />
2:Playlist<br />
3:Browse<br />
4:Search<br />
5:Library<br />
6:Playlist editor<br />
7:Tag editor</p>
<p>The meaning of these menus are pretty obvious. A quick way to switch from the playlist to the browse menu and back is the tab key. The global keys to use in each menu are the arrow up and down to navigate and enter to select. To go to the parent directory you can use backspace. To start a selected song, press enter, s to stop a song and P to pause. &gt; and &lt; are used to go forward and backward one track. r is used to enable/disable repeat mode and z for random selection of the songs in the playlist. Deleting a song in your playlist can be done with d and clearing the whole playlist with c. You can increase and decrease the volume with + and -. If you want to quit ncmpc++, press q. As you can see, the shortcut keys somehow make sense, they mostly are the first character of the action you want to perform. Very easy to remember although it can be a bit overwhelming the first time.</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-lyrics.png"><img class="size-medium wp-image-175 aligncenter" title="Ncmpc++ Lyrics" src="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-lyrics-300x211.png" alt="Ncmpc++ Lyrics" width="300" height="211" /></a></p>
<p>When you stored a new music file in your music directory, you will have to update mpd&#8217;s database. I told you before that you can use this command:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">mpd <span style="color: #660033;">--create-db</span></pre></div></div>

<p>but ncmpc++ also has this functionality, accessible with u. So absolutely no need to quit ncmpcpp.</p>
<p>The previous short cuts were just the basic commands to get you started. This was only the beginning. You can for example cross-fade from one song to another with x. Fetching lyrics is l, looking up detailed information on the performing artist is I. The latter two perform a search on the internet. It&#8217;s possible it doesn&#8217;t find a match on the net, but that&#8217;s only the case with less known, most time local artist and songs. I tried it with some local artists from my country and it only missed one out of many. Another information key i gives you information about the music file itself such as file name and tags. You can go out of the lyrics, artist and file information screens by pressing the same button.</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-artist-information.png"><img class="size-medium wp-image-174 aligncenter" title="Ncmpc++ Artist Information" src="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-artist-information-300x211.png" alt="Ncmpc++ Artist Information" width="300" height="211" /></a></p>
<p>I&#8217;ll quickly look into searching your music database. If you have a playlist with a lot of songs or you have hundreds of artists, it&#8217;s very annoying to use the slow navigate arrow up and down key. You can instead do a quick forward and backward search with / and ?. If you want to perform a more complex search, you can always use the search menu (4 or F4) but I find that takes a lot of time and I don&#8217;t think a lot of people use it.</p>
<p style="text-align: center;"><a href="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-search-menu.png"><img class="size-medium wp-image-177 aligncenter" title="Ncmpc++ Search" src="http://www.nepherte.be/wp-content/uploads/2008/12/ncmpcpp-search-menu-300x211.png" alt="Ncmpc++ Search" width="300" height="211" /></a></p>
<p>Integrated with ncmpc++ is an advanced tag editor. It&#8217;s one of the few command line players for mpd that have this. With this you can edit whatever tag you want of a music file in your database. The usage speaks for itself. As I told before, to get this functionality to work, you will have to supply the path the music directory in ~/.ncmpcpp/config.</p>
<p>All of the shortcut keys are configurable in ~/.ncmpcpp/keys. If you are unhappy with a certain key, you can change each one of them in that file.</p>
<p>This is as far as I&#8217;m willing to go with covering ncmpcpp&#8217;s functionality. I believe I&#8217;ve summed up the most important things. Feel free to notify me of other things I have overlooked. All the functionality and how to access them should be listed in the help menu (1 or F1).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nepherte.be/howto-use-mpd-and-ncmpc-like-a-pro/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
