<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-504289268530445289</id><updated>2025-11-13T20:12:41.627+00:00</updated><category term="DLNA"/><category term="UPNP"/><category term="A2DP"/><category term="Android"/><category term="Dillo"/><category term="Gentoo"/><category term="HD video"/><category term="Kweb"/><category term="Netsurf"/><category term="Polyphone"/><category term="Raspberry Pi 3"/><category term="Raspberry Pi2"/><category term="SD video"/><category term="Soundfont editor"/><category term="TX-40DX700B"/><category term="bluedevil"/><category term="blueman"/><category term="bluetooth"/><category term="bluetoothctl"/><category term="bluez 5"/><category term="bubbleupnp"/><category term="compile"/><category term="kodi"/><category term="linux"/><category term="minidlna"/><category term="mythtv"/><category term="rtmidi"/><title type='text'>Linux blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>24</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-1288009025515199097</id><published>2018-01-27T18:12:00.000+00:00</published><updated>2018-02-20T07:58:36.036+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="bubbleupnp"/><category scheme="http://www.blogger.com/atom/ns#" term="Dillo"/><category scheme="http://www.blogger.com/atom/ns#" term="DLNA"/><category scheme="http://www.blogger.com/atom/ns#" term="HD video"/><category scheme="http://www.blogger.com/atom/ns#" term="kodi"/><category scheme="http://www.blogger.com/atom/ns#" term="Kweb"/><category scheme="http://www.blogger.com/atom/ns#" term="minidlna"/><category scheme="http://www.blogger.com/atom/ns#" term="mythtv"/><category scheme="http://www.blogger.com/atom/ns#" term="Netsurf"/><category scheme="http://www.blogger.com/atom/ns#" term="Raspberry Pi 3"/><category scheme="http://www.blogger.com/atom/ns#" term="SD video"/><category scheme="http://www.blogger.com/atom/ns#" term="UPNP"/><title type='text'></title><content type='html'>&lt;h2&gt;
Raspbery Pi3 (RPI3) as a multimedia server and client, and general purpose PC&amp;nbsp;&amp;nbsp;&lt;/h2&gt;
&lt;h3&gt;
&lt;ul&gt;
&lt;li&gt;DLNA/UPNP server with &amp;nbsp;local and remote (Internet) clients, DVR client and server, Subsonic server with Android client&lt;/li&gt;
&lt;li&gt;Use of the Raspberry Pi as a general for web browsing and access to email using Dillo, Kweb, Netsurf, Yahoo! mail and Gmail&amp;nbsp; &amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/h3&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
These are some technical notes on:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;streaming music and video services over a LAN and over the Internet using two Rasperry Pis&lt;/li&gt;
&lt;li&gt;use of a Pi3 as a general purpose PC &amp;nbsp;for web browsing and email using Dillo, Netsurf, Kweb and Alpine (including some tips on using this software on the Pi)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
These are not comprehensive notes but some tips on what can be time-consuming to set up initially but quite quick to install if a defined process is followed.&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;Hardware and software&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;RPi3 running&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Web browsers&lt;/li&gt;
&lt;li&gt;Kodi (inc a mythtv client) and mythfrontend&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Subsonic server&lt;/li&gt;
&lt;li&gt;minidlna (DLNA compliant server)&lt;/li&gt;
&lt;li&gt;bubbleupnpserver available over the Internet&lt;/li&gt;
&lt;li&gt;email clients&amp;nbsp;&lt;/li&gt;
&lt;li&gt;libreoffice&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Separate (remote on the LAN) RPi3 running:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;mythbackend and connected to a PCTV USB Freeview tuner&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Panasonic Viera TX-40DX700B as a DLNA client&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Google Pixel as an Android client running:&lt;/span&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Subsonic clients&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;mythtv client (using the excellent mythling app)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;Startup&lt;/b&gt;&lt;br /&gt;
&lt;i&gt;Some basic notes on setting up an RPI3 for multimedia&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;
Connect a minimum 8GB flash card to another PC. &amp;nbsp;For Linux users  the flash card can be formatted with Gparted. Now mount the flashcard&lt;br /&gt;
&lt;br /&gt;
sudo mount [flash card device]&lt;br /&gt;
&lt;br /&gt;
Download NOOBS onto the flash card. For some reason, I find NOOBS a more reliable way of booting a new Pi than the Raspbian image. Unzip the zip file onto the flash card place into the pi and boot to the Pi. On an 8 Gb card there is not enough room  for the full Raspian graphical desktop install so a workaround is to install Raspian lite and then upgrade to a graphical desktop, e.g.:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get dist-upgrade&lt;br /&gt;
sudo apt-get install lxde [if you want lxde]&lt;br /&gt;
&lt;br /&gt;
This takes up less space than the default graphical install.&lt;br /&gt;
&lt;br /&gt;
The first two steps must be carried out otherwise the relevant packages will not be retrieved. &amp;nbsp;Next some configuration is required in order to make the display look acceptable and make some other useful tweaks:&lt;br /&gt;
&lt;br /&gt;
sudo raspi-config&lt;br /&gt;
&lt;br /&gt;
Some useful settings at this stage (which are well-documented elsewhere):&lt;br /&gt;
&lt;br /&gt;
set the monitor resolution&lt;br /&gt;
set an overscan option (if black borders appear around your screen)&lt;br /&gt;
change the user password&lt;br /&gt;
allocate 256B to GPU memory for smooth HD video playback&lt;br /&gt;
set an audio output option (analog headphone socket or HDMI)&amp;nbsp;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Web browsers&amp;nbsp;&lt;/h4&gt;
Standard Web browsers can be extremely slow on the Raspberry Pi. Some recommendations below.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;dillo&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install dillo&lt;br /&gt;
&lt;br /&gt;
A very fast and lightweight browser best for searching and reading web pages which are predominantly text (pages with frames can be almost unusable). No Javascript so many web pages won’t have their full functionality but it can feel like a holiday not to be continually bombarded by adverts.&lt;br /&gt;
&lt;br /&gt;
This browser has an interesting history as it originated with the noble aim of ensuring everyone could access the Internet no matter how basic their connection equipment (e.g. dial-up)&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tip.&amp;nbsp;&lt;/b&gt;It is interesting to launch dillo from a terminal window and look in the terminal window at what dillo shows about which sites are trying to receive your browsing history. Example:&lt;br /&gt;
&lt;br /&gt;
Domain: DENIED www.bbc.co.uk &amp;nbsp;b.scorecardresearch.com&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;b&gt;kweb&lt;/b&gt;&amp;nbsp;&lt;/h4&gt;
A good compromise between speed and functionality. Can be installed as follows (for Stretch):&lt;br /&gt;
&lt;br /&gt;
wget http://steinerdatenbank.de/software/kweb-1.6.9.tar.gz&lt;br /&gt;
tar -xzf kweb-1.6.9.tar.gz&lt;br /&gt;
cd kweb-1.6.9&lt;br /&gt;
./debinstall&lt;br /&gt;
&lt;br /&gt;
Installing from the git repsitory is more complicated because dependencies are not automatically installed&lt;br /&gt;
&lt;br /&gt;
You can comfortably use kweb for a site like blogger which needs Javascript. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tip.&lt;/b&gt; You may find it necessary to install the following additional package:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-tk

Tip.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tip. &lt;/b&gt;Install&amp;nbsp;omxplayer (a brilliantly efficient media player) so you can press the Play button in kweb and play media without Javascript or cookies enabled&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tip&lt;/b&gt;. Keep Javascript switched off for speed of browsing and Cookies off for privacy. Enable both if required for navigation/page rendering aannd certainly for Internet shopping. Complex sites may however make the Pi run very slowly.m&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tip&lt;/b&gt;. Many of us are used to entering searches in the browser address bar. Kweb can do this if the search string is prefixed by ? e.&lt;i&gt;g.:&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;
&lt;i&gt;?how to install kweb&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;netsurf&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Fast, and the page rendering is good but lacks Javascript, apparently not by design but because Javascript support has not yet been implemented.&lt;br /&gt;
&lt;br /&gt;
Feels more like a standard browsing experience than dillo (although not as fast). Tabbed browsing is helpful &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Using the Raspberry Pi for e-mail&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
For a lightweight client&amp;nbsp;&lt;a href=&quot;http://www.claws-mail.org/&quot;&gt;Claws Mail&lt;/a&gt; is a good choice. Can handle multiple email providers including&amp;nbsp; Yahoo! and Gmail.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
For Web mail, Gmail works well in &lt;a href=&quot;https://support.google.com/mail/answer/15049?hl=en&quot;&gt;html view&lt;/a&gt;.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Yahoo! Mail uses far too much memory in the default view. With Javascript switched on, go into settings and switch the view to &lt;i&gt;Basic&lt;/i&gt;. You can subsequently access&amp;nbsp;Yahoo mail without the Javascript and hence without the adverts.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
There is a problem using Yahoo! Mail with Netsurf because Yahoo seems to think Netsurf is a mobile phone (and it seems impossible to configure the Netsurf User Agent in order to present Netsurf as another browser to Web sites). Hence you can&#39;t seem to get beyond a page promoting the Yahoo! app. A workaround is to display the Inbox in another browser and copy the mailbox URL into a Netsurf bookmark. In Netsurf you then need to log on (with cookies enabled) and then call up the Inbox from the bookmark.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Yahoo! Mail feels clunky in any view on the RPi. If you have multiple email providers a good option is to &lt;a href=&quot;https://www.lifewire.com/how-to-access-yahoo-mail-in-gmail-1171916&quot;&gt;configure Gmail to use the other provider(s)&lt;/a&gt;.&amp;nbsp; Note that the option to do this (Accounts and Import)&amp;nbsp; is not present in HTML view, you have to switch to standard view. However, once you switch back to HTML view you can see, and use, the imported emails. You can configure Gmail to respond to emails using the recipient&#39;s identity (e.g. respond to an incoming Yahoo! email using your Yahoo! email identity) and this works in HTML view. However in HTML view you can&#39;t seem to choose which identity to use at the point of replying (that appears to need Javascript).&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Alpine&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
Alpine is a fast and highly configurable text-based email client. There are a number of guides to setting up alpine with gmail including &lt;a href=&quot;https://www.sjwrc.com/guides/alpine-and-gmail/&quot;&gt;this one&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
If you are using &lt;a href=&quot;https://support.google.com/accounts/answer/185839?hl=en&quot;&gt;2-step verification&lt;/a&gt;&amp;nbsp;with gmail you need to set up a 16-character password associated with alpine. The command&lt;br /&gt;
&lt;em style=&quot;border: 0px; font-family: inherit; font-size: 15px; line-height: 24px; margin: 0px; outline: 0px; padding: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;touch .pine-passfile&lt;/em&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;in your home directory will cause Alpine to prompt you to save the password.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;Alpine address book&lt;/b&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;The Alpine address book is typically stored in ~/.addressbook and has a simple tab-delimited format. It is fairly straightforward to convert address books from other email clients into the Alpine address book format. &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Here is an example of such a conversion. If you can export and address book in the LDAP Data Interchange Format (LDIF) (e.g. in Claws-mail), there is &lt;a href=&quot;https://gist.github.com/dansimau/674203&quot;&gt;a useful shell script you can download to convert&lt;/a&gt; an LDIF file to CSV. To use this script, download it, make it executable, &quot;cat&quot; the file and then pipe the output to the shell-script, adding to t&lt;/span&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;he shell script name a space-separated list of LDIF fields, e.g.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;i&gt;cat ldif.txt &amp;nbsp;| ./&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fafbfc; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; line-height: 26px; white-space: nowrap;&quot;&gt;&lt;i&gt;ldif-to-csv.sh givenName displayName mail &amp;gt; output.csv&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;background-color: #fafbfc; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; line-height: 26px; white-space: nowrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;background-color: #fafbfc; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; line-height: 26px; white-space: nowrap;&quot;&gt;where &lt;i&gt;givenName&lt;/i&gt;&amp;nbsp;etc. are the LDIF field names.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;color: black; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;To note that inverted commas must be edited out of the LDIF file otherwise the shell script will not work.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;The file can now be opened in Libreoffice calc, edited, and then output as a tab-delimited file (which should be saved in&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: sans-serif;&quot;&gt;~/.addressbook.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;text-align: left;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;&lt;b&gt;mythtv client&lt;/b&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
In my experience kodi works better as a mythtv client on the pi I assume because the excellent omxplayer is used (if you set it) to play the video. The mythtv client is good for SD resolution, HD resolution is OK but memory usage has to be minimised as far as possible. kodi playback is detectably better.&lt;br /&gt;
&lt;br /&gt;
I tested this using a short section of recorded video where the mythtv frontend produced a small amount of pixellation with the mythtv frontend but no pixellation with the kodi frontend. &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;the mythtv frontend&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
Instructions here: https://www.mythtv.org/wiki/MythTV_Light&lt;br /&gt;
&lt;br /&gt;
As noted in the instructions, the firmware does need to be updated otherwise the frontend will report missing libraries and will not start. Don&#39;t try to skip the firmware update.&lt;br /&gt;
&lt;br /&gt;
Memory dedicated to non-mythtv tasks needs to be minimised. The graphical desktop or windows client makes a big difference, I use &lt;a href=&quot;https://dwm.suckless.org/&quot;&gt;dwm&lt;/a&gt; which is reported to run on only 1MB of RAM. A standard window manager can be abandoned altogether and just the mythtv frontend run instead. For instance a .desktop file can be created in /usr/share/xsessions such as the following:&lt;br /&gt;
&lt;br /&gt;
[Desktop Entry]&lt;br /&gt;
Encoding=UTF-8&lt;br /&gt;
Name=myth&lt;br /&gt;
Comment=Mythtv frontend&lt;br /&gt;
Exec=mythfrontend&lt;br /&gt;
Icon=dwm # I retained this icon&lt;br /&gt;
Type=XSession&lt;br /&gt;
&lt;br /&gt;
With this file created, an option to use mythfrontend appears in the menu on the password screen of Light Display Manager. So you run mythfrontend instead LXDE, Openbox etc. This is not officially endorsed because there can be problems running external programs from mythfrontend but for functionality internal to mythtv it seems to work fine.&lt;br /&gt;
&lt;br /&gt;
In the video profile screen of mythfrontend, OpenMAX High Quality or openMAX normal must be used. In addition, select the Edit button against the &quot;if&quot; statement governing the selection of a renderer:&lt;br /&gt;
&lt;br /&gt;
if res &amp;gt; [etc]&lt;br /&gt;
&lt;br /&gt;
and make sure that the decoder is openmax.&lt;br /&gt;
&lt;br /&gt;
For sound, use mythtv&#39;s internal volume controls and set the mixer as OpenMAX (analog or digital depending on your setup).&lt;br /&gt;
&lt;br /&gt;
It is possible to create a directory of links to mythtv recordings using the Perl script mythlink.pl and run omxplayer from the command line. The script (which works fine with v.0.28 of mythtv and which resides in /usr/share/doc/mythtv-backend/contrib/user_jobs/) should be excutable. It needs an additional Perl module which can be installed as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;sudo cpan install IO::Socket::INET6&lt;br /&gt;
&lt;br /&gt;
The script can be run as simply as:&lt;br /&gt;
&lt;br /&gt;
./mythlink.pl --link [outputdirectory]&lt;br /&gt;
&lt;br /&gt;
The location of the database is automatically detected and the default options make identification of the relevant file straightforward.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;kodi as a mythtv client&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
The performance of kodi as a mythtv client on the Pi is impressive, both the interface and the playback. I think this is the way to go for viewing mythtv content &amp;nbsp; To install:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install kodi&lt;br /&gt;
sudo apt-get kodi-pvr-mythtv&lt;br /&gt;
&lt;br /&gt;
There is little to configure if the backend is set up correctly. HD playback is crisp and smooth.&lt;br /&gt;
&lt;br /&gt;
The command line may still be useful if you wanted to sequentially play all media in a directory for which the following can be used:&lt;br /&gt;
&lt;br /&gt;
for file in [directory]/*&lt;br /&gt;
do&lt;br /&gt;
omxplayer $file&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;minidlna&lt;/b&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;br /&gt;
Minidlna allows a DLNA-compliant server to be run on the Pi. It is simple to set up and works very well with my Panasonic Viera TX-40DX700B Smart TV as a client.&lt;br /&gt;
&lt;br /&gt;
There is plenty of guidance on the Web. A key setting in the configuration file is:&lt;br /&gt;
&lt;br /&gt;
inotify=yes&lt;br /&gt;
&lt;br /&gt;
which means the database will be updated as soon as any new media is added to the relevant directories. &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Subsonic&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;Download Java from the Oracle Website. As far as I know there is no way to install the right version of Java using apt-get. &lt;br /&gt;
&lt;br /&gt;
This is a useful site for information about installing Java and setting up Java environment variables:&lt;br /&gt;
&lt;br /&gt;
https://lifehacker.com/how-to-turn-a-raspberry-pi-into-a-private-streaming-mus-1583221462&lt;br /&gt;
&lt;br /&gt;
A deb file can be downloaded from here [relfects the current version at the time of writing]:&lt;br /&gt;
&lt;br /&gt;
http://www.subsonic.org/pages/download2.jsp?target=subsonic-6.1.3.deb&lt;br /&gt;
&lt;br /&gt;
then:&lt;br /&gt;
&lt;br /&gt;
sudo dpkg -i subsonic-6.1.3.deb&lt;br /&gt;
&lt;br /&gt;
Note that, as downloaded, transcoding will not work because Subsonic installs incompatible binaries for ffmpeg and lame &amp;nbsp;in /var/subsonic/transcode. This has the effect that Subsonic will try to transcode a media file (if the original file is larger than the allowable streamed size) but this will fail and the Android client sticks at &quot;Downloading 0B&quot;. Install ffmpeg and lame separately and copy to the Subsonic directory:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install ffmpeg&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;sudo apt-get install lame&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;sudo cp /usr/bin/ffmpeg /var/subsonic/transcode/ffmpeg&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;sudo cp /usr/bin/ffmpeg /var/subsonic/transcode/lame&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Subsonic is configured using a Web interface:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;http://localhost:4040&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;I find this is never accessible by default if the Subsonic service is run as a user (rather than root). It appears to be something to do with permissions on the /var/subsonic folder (where the database resides). I find it is possible to get the service running as a user (rather than root) by changing ownership of /var/subsonic to the user. This seems to also require deleting the database in /var/subsonic/db and letting Subsonic recreate it. Due to a lack of documentation it is difficult to know exactly what fixes this but using these techniques I can get the service running as a user. &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;bubbleupnpserver&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Very useful and flexible server which acts as container for other UPNP servers and provides access to them over a LAN and over the Internet. All DLNA and UPNP server content can be made available including mythtv. Well documented and has extensive configuration options, especially on the mobile client.&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;

&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Instructions are here:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;https://bubblesoftapps.com/bubbleupnpserver/&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;To install on the Pi:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;pre style=&quot;background-color: #ebeee9;&quot;&gt;wget https://launchpad.net/~bubbleguuum/+archive/bubbleupnpserver/+files/bubbleupnpserver_0.9-5_all.deb&lt;/pre&gt;
&lt;pre style=&quot;background-color: #ebeee9;&quot;&gt;&lt;/pre&gt;
&lt;pre style=&quot;background-color: #ebeee9;&quot;&gt;sudo dpkg -i bubbleupnpserver_0.9-5_all.deb&lt;/pre&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Make sure port 58050 is open as the service is configured using:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;http://localhost:58050&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;I had no problems connecting (unlike Subsonic).&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;Connection over the Internet is possible using a dynamic DNS service.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;The version of ffmpeg installed using apt-get must be copied to the /usr/share/bubbleupnpserver folder on the server otherwise transcoding will not work.&amp;nbsp; The default binary will not work on the Pi (same issue as Subsonic).&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;It is straightforward to download music and videos at different levels of the folder hierarchy and then play the media offline. So a directory, album, song etc can be downloaded.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;Android clients&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;mythling&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;A reliable mythtv client. Provides, on both the local network and the Internet access to:&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Live TV&lt;/li&gt;
&lt;li&gt;Recordings&lt;/li&gt;
&lt;li&gt;Programme guide&lt;/li&gt;
&lt;li&gt;Videos&lt;/li&gt;
&lt;li&gt;Music &amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
In order to access the Mythtv over the Internet you just configure Mythling with your external address, preferably using a static IP service (dynDNS, No-IP etc) if your external address is dynamic and likely to change frequently.&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/1288009025515199097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2018/01/raspbery-pi3-rpi3-as-multimedia-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1288009025515199097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1288009025515199097'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2018/01/raspbery-pi3-rpi3-as-multimedia-server.html' title=''/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-2382550996733942735</id><published>2017-11-05T21:42:00.000+00:00</published><updated>2017-11-05T21:52:27.598+00:00</updated><title type='text'>Creating a photo slideshow from the Linux command line</title><content type='html'>This is a quick and fairly straightforward way to create photo slideshows from the Linux command line using a script called &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow&lt;/span&gt; and a related script called &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dir2slideshow&lt;/span&gt;.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The examples below generate a 720p&amp;nbsp; slideshow and are based on Ubuntu.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
First, install&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;apt-get install d&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;vd-slideshow&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
This will also install&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dir2slideshow.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
The&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow&amp;nbsp;&lt;/span&gt;script is quite old (it was last updated in 2011) but it still works and is very useful. The script needs to be edited in order to generate an acceptable bit rate for higher definition videos because&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow&amp;nbsp;&lt;/span&gt;was designed for DVD resolution.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
On Ubuntu, the&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow&amp;nbsp;&lt;/span&gt;script is in &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/usr/bin.&amp;nbsp;&lt;/span&gt;To check its location on other distributions you can enter:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;which dvd-slideshow&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Since we are going to be using&amp;nbsp; the Flash video format (which works well for these purposes) we need to change the default bit rate for the &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;flv&amp;nbsp;&lt;/span&gt;format&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
As superuser, open the script in an editor.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;sudo gedit /usr/bin/dvd-slideshow&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
We need to navigate to the following section of code. At the beginning of this section, the script is checking whether the user has requested high quality (in which case the bit rate will be 2000000 bytes per second, or 2 megabits per second) or low quality (in which case the bit rate will be 5000000 bytes per second, or 500 kilobits per second). If neither, the bit rate will default to 1000000, or 1Mbps. All of these are too low for our purposes so we need to add an extra zero to the default bit rate. It should now read:&amp;nbsp;&lt;b style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;video_bitrate=10000000&amp;nbsp;&lt;/b&gt;which is 10 Mbps (actually higher than &lt;a href=&quot;https://support.google.com/youtube/answer/1722171?hl=en-GB&quot;&gt;Google&#39;s recommended bitrate for 720p&lt;/a&gt;).&lt;b style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt; &lt;/b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;if [ &quot;$output_format&quot; == &#39;flv&#39; ] ; then&amp;nbsp; # FLV&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;# need to change this to be dynamic (proportinal to size)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;# video_bitrate=$(( 6000 * $dvd_width / 480 ))&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if [ $high_quality -eq 1 ] ; then&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;video_bitrate=2000000&amp;nbsp; # this works ok for 320x240.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;qscale=&#39;-qscale 1&#39;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;framerate=30;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;frames_per_ms=30000;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;ppmtoy4m_frc=&#39;30:1&#39;&amp;nbsp; # 30 fps&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;elif [ $low_quality -eq 1 ] ; then&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;video_bitrate=500000&amp;nbsp; # this works ok for 320x240.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;qscale=&#39;-qscale 7&#39;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;else&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;b&gt;video_bitrate=1000000&lt;/b&gt;&amp;nbsp; # this works ok for 320x240.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;qscale=&#39;-qscale 5&#39;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;framerate=&#39;15&#39;&amp;nbsp; # is this needed for .flv?&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;frames_per_ms=15000&amp;nbsp; # in ms&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;ppmtoy4m_frc=&#39;15:1&#39;&amp;nbsp; # 15 fps&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;fi&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;
Since we have hard-coded the bitrate for Flash video we need to remember not to request high or low quality when running&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow&lt;/span&gt;&amp;nbsp;otherwise that will override the default bit rate.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
We can now proceed to create a slideshow. Ensure all the images&amp;nbsp; for your slideshow are in a single directory, or a directory plus its sub-directories. I am not sure if all images have to be in JPEG format, but mine always are.&amp;nbsp; The&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dir2slideshow &lt;/span&gt;script allows to you set certain parameters for your slideshow which it will then output to a text file (which acts as an input to&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow).&amp;nbsp;&lt;/span&gt;There is &lt;a href=&quot;http://dvd-slideshow.sourceforge.net/index.php/Dir2slideshow_0.8.4&quot;&gt;documentation on Sourceforge about this script&lt;/a&gt;&amp;nbsp;or you can&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;man dir2slideshow. &lt;/span&gt;The obvious parameters to set are the location of input and output directories as well as the duration of images and the type/duration of transitions. Here is an example:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dir2slideshow -n TEXT_FILE -c 1 -notitle IMAGE_DIRECTORY&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
In this example, the script builds &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;TEXT_FILE&lt;/span&gt; from the image filenames in &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;IMAGE_DIRECTORY&lt;/span&gt; and specifies a crossfade between each image of 1 second. The default image duration is 5 seconds but&amp;nbsp; a different duration can be specified with the&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;-t&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;switch&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;. &lt;/span&gt;I usually avoid a title slide being generated because I design the title slide in Gimp and put it in the image directory.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Once the TEXT_FILE has been generated it acts as an input to&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;d&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;vd-slideshow.&lt;/span&gt;There is &lt;a href=&quot;http://dvd-slideshow.sourceforge.net/index.php/Dvd-slideshow_0.8.4&quot;&gt;documentation on this script on Sourceforge&lt;/a&gt;&amp;nbsp; or, once again, you can&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;man dvd-slideshow. &lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
Here is an example of the use of&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;d&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;vd-slideshow:&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;dvd-slideshow -s 1280x720 -n SLIDESHOW_NAME -f TEXT_FILE -a AUDIO_FILE -V 2 -w -o OUTPUT_DIRECTORY -flv&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;/div&gt;
This means:
&lt;br /&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;style&gt;
table, th, td {
    border: 1px solid black;
    border-collapse: collapse;
}
th, td {
    padding: 5px;
}
th {
    text-align: left;
}
&lt;/style&gt;
&lt;body&gt;
&lt;table style=&quot;width: 100%;&quot;&gt;
&lt;tr&gt;
    &lt;th&gt;Switch and value&lt;/th&gt;
    &lt;th&gt;Meaning&lt;/th&gt; 
      &lt;/tr&gt;
&lt;tr&gt;
    &lt;td&gt;-s 1280x720&lt;/td&gt;
    &lt;td&gt;Size of the video in pixels (720p)&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;
    &lt;td&gt;-n SLIDESHOW_NAME&lt;/td&gt;
    &lt;td&gt;Name of the video file that will be generated&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;
    &lt;td&gt;-f TEXT_FILE&lt;/td&gt;
    &lt;td&gt;Text file that was output by the dir2slideshow script&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-a AUDIO_FILE&lt;/td&gt;
    &lt;td&gt;Audio file which will provide the soundtrack&lt;/td&gt;
      &lt;/tr&gt;
&lt;td&gt;-V 2&lt;/td&gt;
    &lt;td&gt;Verbose output, useful for checking that the script is behaving as expected&lt;/td&gt;
      &lt;/tr&gt;    
&lt;td&gt;-w&lt;/td&gt;
    &lt;td&gt;Widescreen format&lt;/td&gt;
      &lt;/tr&gt;    
&lt;td&gt;-o OUTPUT_DIRECTORY&lt;/td&gt;
    &lt;td&gt;Output directory of the video file&lt;/td&gt;
      &lt;/tr&gt;    
&lt;td&gt;-flv&lt;/td&gt;
    &lt;td&gt;Flash video format&lt;/td&gt;
      &lt;/tr&gt;    
&lt;/table&gt;
&lt;br /&gt;
For finer-grained control of the audio format and bit rate the audio file can be muliplexed with the video file using ffmpeg (the subject of a future blog post).
&lt;br /&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span courier=&quot;&quot; monospace=&quot;&quot; new=&quot;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span courier=&quot;&quot; monospace=&quot;&quot; new=&quot;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;span courier=&quot;&quot; monospace=&quot;&quot; new=&quot;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&amp;nbsp; &amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/2382550996733942735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2017/11/creating-photo-slideshow-from-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/2382550996733942735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/2382550996733942735'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2017/11/creating-photo-slideshow-from-linux.html' title='Creating a photo slideshow from the Linux command line'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-3715865339260725453</id><published>2017-01-29T11:33:00.005+00:00</published><updated>2017-01-29T11:33:53.849+00:00</updated><title type='text'>Getting mailto links to work with Google Chrome and DWM </title><content type='html'>The issue here is that &lt;i&gt;mailto&lt;/i&gt; links in Web pages should run up client email software (where installed) when clicked in Google Chrome &amp;nbsp;under Linux. However this doesn&#39;t work unless a desktop environment (like Gnome) is installed.&lt;br /&gt;
&lt;br /&gt;
This blog post provides a workaround &lt;b&gt;for dwm users&lt;/b&gt; and was tested under&amp;nbsp;Ubuntu Xenial (6.04.1 LTS). It might cause &lt;i&gt;mailto&lt;/i&gt;&amp;nbsp;links to fail under other desktop environments so take a backup of your work as recommended below.&lt;br /&gt;
&lt;br /&gt;
When a mailto link such as &lt;a href=&quot;mailto:nonesuchperson@nonesuchaddress.com&quot;&gt;nonesuchperson@nonesuchaddress.com&lt;/a&gt;&amp;nbsp;is selected, Google Chrome calls a program called &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;xdg-email&lt;/span&gt;&amp;nbsp;located in &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/usr/bin.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;xdg-email &lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;is a&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;script which checks to see which desktop environment (DE) is being used and then, if possible, runs up a mail compose Window in email client software like Thunderbird. It is called by Google Chrome (but not apparently by Firefox) when a &lt;i&gt;mailto &lt;/i&gt;link is clicked.&lt;i&gt;&amp;nbsp;&lt;/i&gt;However, &amp;nbsp;if you are not using a desktop environment, Chrome just runs up an empty browser window. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;The solution I identified was to force&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;xdg-email&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;to think I am using the LXDE environment in which case it correctly runs my email client software (Claws Mail).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;First, check to see which email client is associated on your system with a &lt;i&gt;mailto&lt;/i&gt; link by running:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;xdg-mime query default &quot;x-scheme-handler/mailto&quot;&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;By default (and I am not sure why) this command returns the following on my system:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;thunderbird.desktop&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
By adding the line&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;x-scheme-handler/mailto=claws-mail.desktop;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;#or thunderbird.desktop etc&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
to the file&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp;~/.local/share/applications/mimeapps.list&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
the xdg-mime command shown above now returns&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;claws-mail.desktop;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Next, it is necessary to force the &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/usr/bin/xdg-email&lt;/span&gt;&amp;nbsp;script to think we are using the LXDE DE (you have to do this as superuser and it is wise to make a backup copy of the script). The script will then check &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;mimeapps.list&lt;/span&gt; to see which email client is being used.&lt;br /&gt;
&lt;br /&gt;
Within the &amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;detect_DE()&lt;/span&gt;&amp;nbsp; function (line 412 in my version) replace all of the following code with just&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;DE=lxde;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; if [ -n &quot;${XDG_CURRENT_DESKTOP}&quot; ]; then&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; case &quot;${XDG_CURRENT_DESKTOP}&quot; in&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;# only recently added to menu-spec, pre-spec X- still in use&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Cinnamon|X-Cinnamon)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=cinnamon;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ENLIGHTENMENT)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=enlightenment;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;# GNOME, GNOME-Classic:GNOME, or GNOME-Flashback:GNOME&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GNOME*)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=gnome;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;KDE)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=kde;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LXDE)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=lxde;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MATE)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=mate;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;XFCE)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=xfce&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;X-Generic)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DE=generic&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; esac&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; fi&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;Now run &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;xdg-mail&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt; in a te&lt;span style=&quot;font-family: inherit;&quot;&gt;rmina&lt;/span&gt;l window which should run up your email client software instead of an empty browser window.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;In my case the revised&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;xdg-mail&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;script also works under the desktop environments such as KDE and LXDE. &amp;nbsp;&lt;b&gt;However, to note this is a workaround for dwm users so it might cause the script to fail in another DE.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/3715865339260725453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2017/01/getting-mailto-links-to-work-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/3715865339260725453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/3715865339260725453'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2017/01/getting-mailto-links-to-work-with.html' title='Getting mailto links to work with Google Chrome and DWM '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-6000692101988389377</id><published>2016-09-02T10:21:00.001+01:00</published><updated>2017-08-15T12:53:01.173+01:00</updated><title type='text'>Review of the Panasonic Viera TX-40DX700B</title><content type='html'>This&amp;nbsp;&lt;a href=&quot;http://www.panasonic.com/uk/consumer/viera-televisions/led/tx-40dx700b.html&quot;&gt;Panasonic TX-40DX700B&lt;/a&gt;&amp;nbsp;is a 4K and HDR 40&quot; TV.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;I agree with many of the reviews that this TV has an excellent picture both for DVB broadcasts and content received over the Internet such as Amazon video. 4K content, although limited at the moment, looks great&lt;/li&gt;
&lt;li&gt;Despite being 89.5 cm in width, the arrangement of the legs usefully enables the TV to be placed on a stand which is not so wide. It will actually fit on an 80cm stand (just) although I&#39;d advise a slightly wider stand. To note the legs cannot be moved towards the centre of the 40&quot; TV, unlike the larger models. &amp;nbsp;&lt;/li&gt;
&lt;li&gt;The TV worked fine at the outset then it became impossible to access any live broadcasts. Pulling out the plug to reset the TV resolved this. This issue hasn&#39;t reoccurred&lt;/li&gt;
&lt;li&gt;The TV incorporates a DLNA client in order to render content stored on a DLNA server. Bear in mind that the media server must be DLNA-compliant not just UPNP-compliant. DLNA is fussier than UPNP but I find the DLNA client on this TV reasonably flexible in terms of playing media formats (obviously not as flexible as media player like mplayer). However, see below regarding photos&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Some observations about DLNA servers&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;For users of the open source DVR &lt;a href=&quot;https://www.mythtv.org/&quot;&gt;Mythtv&lt;/a&gt;, the DLNA client on the TV is compatible with v.0.28 of Mythtv. As a DLNA server, mythtv is useful for browsing and showing TV recordings. However if you want to watch videos, they are all grouped into one directory which not very useful if you have them grouped into sub-directories&lt;/li&gt;
&lt;li&gt;&amp;nbsp;The TV also works well with &lt;a href=&quot;http://www.linux-magazine.com/Online/Blogs/Productivity-Sauce/Set-up-a-DLNA-Server-in-a-Minute&quot;&gt;minidlna&lt;/a&gt;&amp;nbsp;which is good for browsing directories of videos as (unlike mythtv) the directory structure is preserved&amp;nbsp;&lt;/li&gt;
&lt;li&gt;The media browser includes a slideshow option for photos. This is surprisingly basic since there are no transitions between the photos (such as crossfade) and the music (if selected) is pretty dire. Only JPEGs are supported and I also found a JPEG edited and exported back to JPEG in Gimp would not display (&quot;File not supported&quot;, but a further conversion to JPEG in ImageMagick resolves this issue. &lt;a href=&quot;https://kodi.tv/&quot;&gt;kodi&lt;/a&gt;, which i have running on a Raspberry pi 2 connected to the TV is much better: you can run music in the background, kodi uses decent transitions and Kodi will play a range of image formats&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;The Apps interface is slick but the selection of apps quite limited compared with an Android TV (judging by the reviews). Personally I prioritised the picture quality and screen size over the Smart TV functionality&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/6000692101988389377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/09/brief-review-of-panasonic-tx-40dx700b.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6000692101988389377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6000692101988389377'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/09/brief-review-of-panasonic-tx-40dx700b.html' title='Review of the Panasonic Viera TX-40DX700B'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-3956308732715037469</id><published>2016-09-02T09:42:00.002+01:00</published><updated>2016-09-26T18:42:39.845+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="DLNA"/><category scheme="http://www.blogger.com/atom/ns#" term="Raspberry Pi2"/><category scheme="http://www.blogger.com/atom/ns#" term="TX-40DX700B"/><category scheme="http://www.blogger.com/atom/ns#" term="UPNP"/><title type='text'>Panasonic Viera TX-40DX700B as a DLNA client rendering content from a Mythtv UPNP server </title><content type='html'>The &lt;a href=&quot;http://www.panasonic.com/uk/consumer/viera-televisions/led/tx-40dx700b.html&quot;&gt;Panasonic&amp;nbsp;TX-40DX700B&lt;/a&gt; is a 40&quot; 4K/HDR LED smart TV &amp;nbsp;which includes a DLNA client.&lt;br /&gt;
&lt;br /&gt;
This blog describes a configuration which includes the TV as a renderer and a Raspberry Pi 2 running a UPNP/DLNA media server. &lt;br /&gt;
&lt;br /&gt;
Having received the Panasonic TV, the aim was to replace an HTPC sitting under our old TV with something more minimal while retaining the ability to record programmes using Mythtv and stream them to the TV. While this works well, it &amp;nbsp;is probably a temporary configuration because an HTPC with mythtv&#39;s full functionality provides much greater flexibility than a Smart TV with DLNA.&lt;br /&gt;
&lt;br /&gt;
The TV tuner is a PCTV 290e HD USB tuner which is supported in the Linux kernel. This is connected to a Raspberry Pi 2 running a mythtv backend (v.0.28). Raspbian &amp;nbsp;Jessie is installed on the Pi 2.&lt;br /&gt;
&lt;br /&gt;
Jessie includes mythtv-light which provides the frontend for mythtv. There are instructions &lt;a href=&quot;https://www.mythtv.org/wiki/Raspberry_Pi&quot;&gt;here&lt;/a&gt;&amp;nbsp;on how to install and configure it. Debian Jessie does not include the packages for the mythtv backend. It is necessary to add a backports repository to /etc/apt/sources.list e.g.:&lt;br /&gt;
&lt;br /&gt;
deb http://ftp.debian.org/debian jessie-backports main&lt;br /&gt;
&lt;br /&gt;
A useful way to sort out the dependencies for the mythtv backend on the Pi2 is to install Synaptic and then install these run-time dependencies (as described &lt;a href=&quot;https://www.mythtv.org/wiki/Build_from_Source&quot;&gt;here&lt;/a&gt;):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: #f9f9f9; font-family: monospace , &amp;quot;courier&amp;quot;; font-size: 14px; line-height: 22.4px;&quot;&gt;mysql-server-5.6 ntp libicu55 libqt5sql5-mysql mysql-client-5.6&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
I assume that most if not all the other dependencies for the backend must have been installed by the mythtv-light package. I couldn&#39;t find libicu55 in backports and libicu52 is running on the backend. I have not yet had any issues using this earlier version of libicu.&lt;br /&gt;
&lt;br /&gt;
The Pi 2 has to be overlocked in raspi-config in order to receive HD television broadcasts via the PCTV tuner otherwise fast-moving video will be pixellated.&lt;br /&gt;
&lt;br /&gt;
In this configuration, TV broadcasts are stored on a remote PC running Gentoo and a Mythtv frontend. Having installed a mythtv backend on the Pi 2, it automatically runs a UPNP server. As noted in the &lt;a href=&quot;https://www.mythtv.org/wiki/Release_Notes_-_0.28#Major_Changes&quot;&gt;v.028 release notes&lt;/a&gt;&amp;nbsp;DLNA compliance is improved in this version of Mythtv.&lt;br /&gt;
&lt;br /&gt;
The Mythtv DLNA server can be accessed via the Devices menu on the&amp;nbsp;&lt;a href=&quot;http://www.panasonic.com/uk/consumer/viera-televisions/led/tx-40dx700b.html&quot;&gt;Panasonic&amp;nbsp;TX-40DX700B&lt;/a&gt;. The Mythtv UPNP server displays the friendly file name and includes menus by channel, recording time etc. A minidlna server is more convenient for videos if you have them arranged in folders because minidlna preserves the folder list whereas Mythtv displays all videos in a single list. &lt;br /&gt;
&lt;br /&gt;
I am not transcoding any of the recordings on Mythtv and it is useful that the Panasonic TV can handle Mythtv&#39;s native recording format. Many but not all videos stored in my Mythtv videos directory also played on the TV with navigation including videos in .avi, .mpg and .mp4 format. As expected, not everything was compatible with the TV&#39;s DLNA client and some transcoding will be necessary.&lt;br /&gt;
&lt;br /&gt;
For users of Mythtv, my recommendation would (if possible) be to retain the use of the Mythtv frontend rather than to rely entirely on a smart TV. Mythtv accepts a huge range of formats and I find the menus a bit less clunky than the DLNA interface. However there is additional cost involved in having two video renderers feeding the same display device. The costs could be kept to a minimum by using a single board computer for the frontend, perhaps dedicated to it. In my experience, the Pi isn&#39;t powerful enough to run a frontend and backend at the same time although it does an amazing job of running the backend which I can access and configure remotely. It is also possible to standard definition &amp;nbsp;live TV on the remote frontend, HD is a bit laggy using this configuration. I have yet to try the Pi 3but this is an obvious candidate for a &amp;nbsp;mythtv frontend or backend.</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/3956308732715037469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/09/panasonic-tx-40dx700b-as-dlna-client.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/3956308732715037469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/3956308732715037469'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/09/panasonic-tx-40dx700b-as-dlna-client.html' title='Panasonic Viera TX-40DX700B as a DLNA client rendering content from a Mythtv UPNP server '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-6806402045912276107</id><published>2016-04-23T15:09:00.000+01:00</published><updated>2016-04-23T15:09:57.604+01:00</updated><title type='text'>HP Envy 7640 printer under Linux: review and tips</title><content type='html'>This printer works well under Linux.&lt;br /&gt;
&lt;br /&gt;
I found that the HP Linux Imaging and Printing (HPLIP) didn&#39;t find the printer automatically but with an Ethernet connection it was only necessary to tell HPLIP the internet address. The printer/scanner was then ready to use. &lt;br /&gt;
&lt;br /&gt;
The printer requires a properly configured Ethernet connection if you are using a wired network setup. Otherwise the printer might not wake up from sleep mode even if you press the front panel to activate it. For some reason I found that a connection through a switch to a router caused this issue but a direct connection to the router was fine.&lt;br /&gt;
&lt;br /&gt;
Xsane works well, in addition to flatbed scanning you can carry out multipage scanning using the document feeder.&lt;br /&gt;
&lt;br /&gt;
There is a useful, configurable HP Web interface to the printer with options to scan, configure settings, view usage statistics etc. Sometimes, but not always, I find that accessing the Web interface causes the HPLIP interface to freeze, and you have to close down the Web interface to access the HPLIP interface again. I also found that Firefox displayed blank PDF pages after scanning via the Web interface. A message is displayed: &quot;This PDF document might not be displayed correctly&quot;. Clicking on the Firefox button&amp;nbsp; &lt;i&gt;Open with a different viewer&lt;/i&gt; and then choosing Evince resolved this for me. &lt;br /&gt;
&lt;br /&gt;
Certain actions like aligning the printer and cleaning the cartridges can&#39;t apparently be carried out by using HPLIP or the Web interface, you have to&lt;br /&gt;
use the front panel of the printer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/6806402045912276107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/04/hp-envy-7640-printer-under-linux-review.html#comment-form' title='13 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6806402045912276107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6806402045912276107'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/04/hp-envy-7640-printer-under-linux-review.html' title='HP Envy 7640 printer under Linux: review and tips'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>13</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-6604594807641987748</id><published>2016-03-13T22:30:00.000+00:00</published><updated>2016-03-13T22:30:29.659+00:00</updated><title type='text'>Amazon video under Linux</title><content type='html'>Amazon video now works great under Linux. Once Amazon had rolled out an HMTL5 player it was no longer necessary to spend time on workarounds because there was no Linux version of Silverlight. Of course Google Chrome is a necessity, other browsers can&#39;t be used.&lt;br /&gt;
&lt;br /&gt;
There seems to be a compatibility issue with running the Amazon player under Gnome 3, a distracting white border appears down the right hand side of the screen and along the bottom. Using a window manager (like the excellent Openbox) solves this.&lt;br /&gt;
&lt;br /&gt;
Another quirk is that the mouse pointer doesn&#39;t disappear automatically when using a window manager. Right clicking solves this although you have to wait for the player overlay (&quot;Options&quot;, volume control etc.) to fade out. &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/6604594807641987748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/03/amazon-video-under-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6604594807641987748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6604594807641987748'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/03/amazon-video-under-linux.html' title='Amazon video under Linux'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-803467120911228873</id><published>2016-01-17T20:36:00.004+00:00</published><updated>2016-01-17T21:02:37.249+00:00</updated><title type='text'>Automount a USB media player in Linux</title><content type='html'>It is useful to be able to automount USB file systems when the USB device is plugged into your computer.&lt;br /&gt;
&lt;br /&gt;
This is an example of automounting an mp3 player (Creative Zen xfi) running Rockbox in a Gentoo system.&lt;br /&gt;
&lt;br /&gt;
I did this in 2 stages.&lt;br /&gt;
&lt;br /&gt;
Since the device name of the mp3 player will vary (could be /dev/sdd1 /dev/sdf1 etc.) the first stage is to ensure the device name is always the same. &lt;a href=&quot;http://offog.org/notes/udev-usb/&quot;&gt;This is a useful site&lt;/a&gt; with good examples of how to do this. &amp;nbsp;I created a file as shown on this site called&amp;nbsp;&lt;b&gt;/etc/udev/rules.d/65-stick.rules &lt;/b&gt;containing:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;# # Rockbox device&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;KERNEL==&quot;sd*&quot;, SUBSYSTEMS==&quot;usb&quot;, ENV{ID_VENDOR}==&quot;Rockbox&quot;, \ ENV{ID_SERIAL}==&quot;Rockbox_Internal_Storage*&quot;, SYMLINK+=&quot;zen%n&quot;, GOTO=&quot;stick_end&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;LABEL=&quot;stick_end&quot;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
This rule uses unique information about the device which you can gather through a couple of commands. First, &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;dmesg,&lt;/span&gt;&amp;nbsp;which in this case allows you to identify the device name. Here is an extract from the&amp;nbsp;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace;&quot;&gt;dmesg&lt;/span&gt;&amp;nbsp;output:&lt;br /&gt;
&lt;br /&gt;
[1203747.956962] usb 4-1: New USB device found, idVendor=041e, idProduct=4162&lt;br /&gt;
[1203747.956965] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3&lt;br /&gt;
[1203747.956967] usb 4-1: Product: Rockbox media player&lt;br /&gt;
[1203747.956969] usb 4-1: Manufacturer: Rockbox.org&lt;br /&gt;
[...]&lt;br /&gt;
[1203748.988809] sd 243:0:0:1: [sdf] 31291392 512-byte logical blocks: (16.0 GB/14.9 GiB)&lt;br /&gt;
[1203748.992059] sd 243:0:0:0: [sdb] Write Protect is off&lt;br /&gt;
[1203748.992064] sd 243:0:0:0: [sdb] Mode Sense: 0b 00 00 08&lt;br /&gt;
[1203748.994794] sd 243:0:0:1: [sdf] Write Protect is off&lt;br /&gt;
[...]&lt;br /&gt;
[1203749.040790] &amp;nbsp;sdb: sdb1&lt;br /&gt;
[1203749.047790] &amp;nbsp;sdf: sdf1&lt;br /&gt;
[1203749.088771] sd 243:0:0:0: [sdb] Attached SCSI removable disk&lt;br /&gt;
[1203749.091768] sd 243:0:0:1: [sdf] Attached SCSI removable disk&lt;br /&gt;
&lt;br /&gt;
From this I can tell that the device&#39;s internal drive is /dev/sdb1 and that the SD memory card in the device&#39;s memory slot is /dev/sdf1.&lt;br /&gt;
&lt;br /&gt;
The command &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;udevadm info /dev/sdb1 &lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;shows some further information about the device including the following lines:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The ID_SERIAL and ID_VENDOR values are now used to uniquely identify the device in the udev rule shown above.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The udev rule ensures that symoblic links is created for the Creative Zen device. The device names are always &amp;nbsp;&lt;b&gt;zen &lt;/b&gt;and&lt;b&gt;&amp;nbsp;zen1&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
The following command ensures that any new udev dule is active:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;udevadm control --reload-rules&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now to autofs for which I found &lt;a href=&quot;https://wiki.gentoo.org/wiki/AutoFS&quot;&gt;this Gentoo wiki page&lt;/a&gt;&amp;nbsp;the most useful. I emerged autofs and then ensured it was enabled and started in systemd:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;systemctl enable autofs.service&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;systemctl start autofs.service&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;Next I edited the /etc/autofs/auto.master file to include:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;/media &amp;nbsp; /etc/autofs/auto.misc &amp;nbsp; &amp;nbsp;--timeout=15 --ghost&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;This means that the mount instructions in auto.misc will mean that the filesystem is mounted under /media.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;My /etc/auto.misc has the following line:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;zen &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-fstype=vfat,rw,uid=1000,gid=100 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;:/dev/zen1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&amp;nbsp;This means that a mountpoint &lt;b&gt;/media/zen&lt;/b&gt; will be created for the device &lt;b&gt;/dev/zen1 &lt;/b&gt;and that the filesystem is writeable by the user.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/803467120911228873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/automount-usb-media-player.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/803467120911228873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/803467120911228873'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/automount-usb-media-player.html' title='Automount a USB media player in Linux'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-501024827296438083</id><published>2016-01-11T13:54:00.002+00:00</published><updated>2016-01-11T13:54:48.258+00:00</updated><title type='text'>Musescore 2.0 on Gentoo</title><content type='html'>Good to find out today that the development version of version 2.0 of Musescore compiles successfully on Gentoo using the instructions on &lt;a href=&quot;https://musescore.org/en/developers-handbook/compilation/compile-instructions-ubuntu-14.10-git&quot;&gt;this page&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I need to keep Qt4 on my system as it is quite old so I installed Qt5 into my home directory and set the path for Qt as described in the compile instructions. The nightly build I used from Git was 10 January. I followed the instructions to build a binary called&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt; mscore-self&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
So far the new version has run without any issues and the new default soundfont is great, it transforms the playback of scores. &amp;nbsp; &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/501024827296438083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/musescore-20-on-gentoo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/501024827296438083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/501024827296438083'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/musescore-20-on-gentoo.html' title='Musescore 2.0 on Gentoo'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-5664396218534776966</id><published>2016-01-03T18:58:00.000+00:00</published><updated>2016-01-11T15:02:39.790+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="compile"/><category scheme="http://www.blogger.com/atom/ns#" term="Gentoo"/><category scheme="http://www.blogger.com/atom/ns#" term="Polyphone"/><category scheme="http://www.blogger.com/atom/ns#" term="rtmidi"/><category scheme="http://www.blogger.com/atom/ns#" term="Soundfont editor"/><title type='text'>Building the Polyphone soundfont editor on a Gentoo system </title><content type='html'>&lt;a href=&quot;http://www.polyphone.fr/&quot;&gt;Polyphone&lt;/a&gt; is very useful soundfont editor. &lt;a href=&quot;http://sourceforge.net/projects/polyphone/files/polyphone%20releases/1.7/polyphone-1.7-src.zip/download&quot;&gt;Version 1.7&lt;/a&gt; compiled without any issues on my Gentoo system once I had edited the polyphone.pro file (one of the source files) and uncommented these lines (taking the initial hash out):&lt;br /&gt;
&lt;br /&gt;
#DEFINES += USE_LOCAL_RTMIDI&lt;br /&gt;
#DEFINES += USE_LOCAL_STK&lt;br /&gt;
#DEFINES += USE_LOCAL_QCUSTOMPLOT&lt;br /&gt;
&lt;br /&gt;
This stops qmake trying to find the relevant files in your main Gentoo library directories. As it says in the polyphone.pro file:&lt;br /&gt;
&lt;br /&gt;
# Uncomment a line if your distribution doesn&#39;t come with some of the following libraries&lt;br /&gt;
&lt;br /&gt;
It is possible to emerge rtmidi (one of the dependencies) from the Gentoo lorelei overlay but Polyphone&#39;s installation script still won&#39;t find it.&lt;br /&gt;
&lt;br /&gt;
Using the process described here, you end up with a Polyphone binary which works fine.&lt;br /&gt;
&lt;br /&gt;
The version of GCC used was i686-pc-linux-gnu-4.9.3.</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/5664396218534776966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/building-polyphone-soundfont-editor-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5664396218534776966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5664396218534776966'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2016/01/building-polyphone-soundfont-editor-on.html' title='Building the Polyphone soundfont editor on a Gentoo system '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-5927714422873643819</id><published>2015-10-15T00:16:00.000+01:00</published><updated>2016-01-11T14:03:41.339+00:00</updated><title type='text'>Brief review of linux mail clients for a lightweight desktop environment</title><content type='html'>&lt;h4&gt;
Opera mail&lt;/h4&gt;
I have found this an excellent mail client (v.12.16). It&#39;s fast and the integration with the Web browser is brilliant. It wasn&#39;t until I started investigating other Linux email clients that I realised how convenient it is for Web pages accessed through HTML emails to display on a new tab in the same browser. Other email clients with the exception of Claws-mail open&amp;nbsp; Web pages in a separate browser window. Same sentiment expressed &lt;a href=&quot;http://ubuntuforums.org/showthread.php?t=427088&quot;&gt;this forum post. &lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Opera scrolls through my&amp;nbsp; inbox of over 12,000 emails very smoothly. This client is really the benchmark by which I measure others mail. Perhaps the main drawback of Opera mail in my version is the lack of filters i.e. processing emails into &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Disappointing to learn (a) that the email client is now standalone and even more that (b) there is currently no Linux version of Opera mail. &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Evolution&lt;/h3&gt;
Seems sluggish in use especially when downloading HTML emails. So difficult to recommend for a lightweight desktop environment. However, integration with Google for mail, calendaring and contacts is excellent. Important to remember to set google account options in gnome-online-accounts not from within Evolution (which was the old way). &lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Claws mail&lt;/h3&gt;
Superfast, outperforming Opera mail in terms of speed. This is the program I chose to use following the demise of Opera.&lt;br /&gt;
&lt;br /&gt;
Powerful configuration options and processing tools. Ability to create emails in external editors like vi (if that floats your boat) is a nice feature.&lt;br /&gt;
&lt;br /&gt;
Web pages can be viewed in the same pane as the message by selecting a link although I have not yet found a way to get this to work consistently, sometimes a right click seems to be required.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/5927714422873643819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2015/10/brief-review-of-linux-mail-clients-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5927714422873643819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5927714422873643819'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2015/10/brief-review-of-linux-mail-clients-for.html' title='Brief review of linux mail clients for a lightweight desktop environment'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-1461758403837516754</id><published>2015-01-04T01:28:00.000+00:00</published><updated>2015-01-05T00:03:48.642+00:00</updated><title type='text'>Installing the latest version of Compiz for tear-free Flash playback in Gentoo Linux </title><content type='html'>&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;The aim here is video playb&lt;/span&gt;&lt;/span&gt;ack without &lt;a href=&quot;http://en.wikipedia.org/wiki/Screen_tearing&quot;&gt;screen tearing&lt;/a&gt; in Linux, a common issue with&amp;nbsp; Adobe Flash. If you have this issue with Flash videos embedded in browsers, the effect can be seen clearly in &lt;a href=&quot;https://www.youtube.com/watch?v=ceX18O9pvLs&quot;&gt;this Youtube video&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
Ubuntu users have reported (e.g. &lt;a href=&quot;http://ubuntuforums.org/showthread.php?t=1390284&quot;&gt;in this forum post&lt;/a&gt;) that the issue can be resolved by running Compiz as your window manager with its &lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Sync to VBlank&lt;/span&gt;&amp;nbsp; setting enabled. I tested this on Ubuntu and Gentoo and the results were markedly better in Ubuntu. The reason appears to be that Ubuntu is running the latest release of Compiz&amp;nbsp; (0.9.10.2) whereas the version available through portage is 0.8.8 (described as &quot;the latest stable release&quot; on&lt;a href=&quot;http://www.compiz.org/&quot;&gt; compiz.org&lt;/a&gt;). There are more display setting options in the later version and, possibly because of this, it works better with Flash videos.&lt;br&gt;
&lt;br&gt;
It&#39;s important to note that the procedure described here shouldn&#39;t be followed if it&#39;s critical you don&#39;t break your system. I use my Gentoo installation as a sandbox as well as a working tool, a way of keeping up to date with, and learning new, Linux skills. Hence it&#39;s not critical if something breaks. This being said, I have ended up with a useful and fully-functioning Compiz desktop under Gentoo.&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
To install the latest release of compiz you have to remove all Compiz components if they have been installed through Portage. In my case:&lt;br&gt;
&lt;br&gt;
*&amp;nbsp; dev-python/compizconfig-python&lt;br&gt;
*&amp;nbsp; x11-libs/compiz-bcop&lt;br&gt;
*&amp;nbsp; x11-libs/compizconfig-backend-gconf&lt;br&gt;
*&amp;nbsp; x11-libs/compizconfig-backend-kconfig4&lt;br&gt;
*&amp;nbsp; x11-libs/libcompizconfig&lt;br&gt;
*&amp;nbsp; x11-plugins/compiz-plugins-extra&lt;br&gt;
*&amp;nbsp; x11-plugins/compiz-plugins-main&lt;br&gt;
*&amp;nbsp; x11-plugins/compiz-plugins-unsupported&lt;br&gt;
*&amp;nbsp; x11-wm/compiz&lt;br&gt;
*&amp;nbsp; x11-wm/compiz-fusion&lt;br&gt;
*&amp;nbsp; x11-apps/ccsm&lt;br&gt;
*&amp;nbsp; x11-apps/simple-ccsm&lt;br&gt;
&lt;br&gt;
Note that simple-ccsm (simple &lt;u&gt;C&lt;/u&gt;ompiz &lt;u&gt;C&lt;/u&gt;onfiguration &lt;u&gt;S&lt;/u&gt;ettings &lt;u&gt;M&lt;/u&gt;anager) is not currently available for the latest version of Compiz.&lt;br&gt;
&lt;br&gt;
Fortunately,&amp;nbsp; all the sources for Compiz have now been merged into one repository, which makes configuration, compilation and installation much easier.&lt;br&gt;
&lt;br&gt;
Obtaining the latest source code is straightforward as described &lt;a href=&quot;http://wiki.compiz.org/C%2B%2BCompiling&quot;&gt;here&lt;/a&gt;:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;bzr branch lp:compiz&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
This creates a compiz directory in the location where you have entered this command. Now:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;mkdir build&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
and&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;cd build&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
Next is the configuration stage. You need to run &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;cmake&lt;/span&gt; with flags indicating the &lt;i&gt;location&lt;/i&gt; of the installation and the &lt;i&gt;options &lt;/i&gt;and &lt;i&gt;plugins&lt;/i&gt; to install. Currently on Gentoo the 0.9.10.2 default compile configuration won&#39;t work&amp;nbsp; because of a missing header file&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt; kdecorationbridge.h&lt;/span&gt;. I worked around this by disabling the KDE window decorator option:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;-DUSE_KDE4=false&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
You also have to nominate a location for the installation which by default will otherwise be /usr/local. I installed in the standard location to avoid having to set additional library paths:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;-DCMAKE_INSTALL_PREFIX=/usr&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
Hence in the build directory the full configuration command was:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;cmake -DUSE_KDE4=false -DCMAKE_INSTALL_PREFIX=/usr ..&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
I found with the subsequent &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;make install&lt;/span&gt; command the code compiled without a hitch on Gentoo.&lt;br&gt;
&lt;br&gt;
A useful initial way of testing if the compiz command is running is:&lt;br&gt;
&lt;br&gt;
compiz --version&lt;br&gt;
&lt;br&gt;
which should give the output:&lt;br&gt;
&lt;br&gt;
compiz 0.9.12.0&lt;br&gt;
&lt;br&gt;
Next you need a working desktop running Compiz. I decided to make this as lightweight as possible by running Compiz alongside the excellent &lt;a href=&quot;http://fbpanel.sourceforge.net/&quot;&gt;fbpanel&lt;/a&gt; (which can be emerged through Portage for this purpose). In the &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;directory /etc/X11/Sessions&lt;/span&gt; on Gentoo I have a compiz file containing:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;#!/bin/sh&lt;br&gt;xsetbg /home/my_name/.fluxbox/backgrounds/sid_fluxbox.jpg&lt;br&gt;setxkbmap gb&lt;br&gt;fbpanel &amp;amp;&lt;br&gt;exec /usr/bin/compiz ccp&amp;nbsp;&lt;/span&gt;&amp;nbsp; &lt;br&gt;
&lt;br&gt;
This sets a background, the keyboard to British, runs the Fluxbox panel in the background and then calls compiz. Note that, contrary to the guidance in &lt;a href=&quot;https://wiki.archlinux.org/index.php/Compiz#Compiz_startup&quot;&gt;this Archlinux wiki&lt;/a&gt; the ccp switch is still necessary otherwise settings in&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt; ccsm&lt;/span&gt; appear to have no effect.&lt;br&gt;
&lt;br&gt;
Next, to create a user-selectable desktop option in a graphical login manager (I use &lt;a href=&quot;http://en.wikipedia.org/wiki/LightDM&quot;&gt;lightdm&lt;/a&gt;) I have the following &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;compiz-session.desktop&lt;/span&gt; file in /usr/share/xsessions:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;[Desktop Entry]&lt;br&gt;Encoding=UTF-8&lt;br&gt;Name=Compiz&amp;nbsp;&lt;/span&gt;&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;Comment=dynamic window manager&lt;br&gt;Exec=/etc/X11/Sessions/compiz&lt;br&gt;TryExec=/usr/bin/compiz ccp&lt;br&gt;Icon=&lt;br&gt;Type=Application&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
I achieved good results in Adobe flash with the following configuration:&lt;br&gt;
&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;the nouveau video driver (the proprietary Nvidia driver still caused screen tearing)&lt;/li&gt;
&lt;li&gt;the following options:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;In cssm General =&amp;gt; OpenGL =&amp;gt; Sync to VBlank&lt;/li&gt;
&lt;li&gt;In /etc/X11/xorg.conf:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Option &quot;GLXVBlank&quot; &quot;True&quot; #as described &lt;a href=&quot;http://ryanclouser.com/?p=388&quot;&gt;here&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;br&gt;
This setup produced significantly better results in Flash videos (including the  &lt;a href=&quot;https://www.youtube.com/watch?v=ceX18O9pvLs&quot;&gt;the test Youtube video)&lt;/a&gt; than the same videos run under a different window manager.&lt;br&gt;
&lt;br&gt;
Tip: following&lt;a href=&quot;http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=MTc3NDU&quot;&gt; recent development work&lt;/a&gt; on the nouveau driver, Nvidia cards can be re-clocked to some degree. Add &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;nouveau.pstate=1&lt;/span&gt; to your &lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;kernel&lt;/span&gt; line in Grub. In my case I then use the command:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;cat /sys/class/drm/card0/device/pstate&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
which results in the output:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;20: core 350 MHz shader 350 MHz memory 532 MHz&lt;br&gt;--: core 200 MHz shader 0 MHz memory 401 MHz *&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
To re-clock based on this output, in root:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;echo 20 &amp;gt; /sys/class/drm/card0/device/pstate&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
resulting in:&lt;br&gt;
&lt;br&gt;
&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;&quot;&gt;20: core 350 MHz shader 350 MHz memory 532 MHz *&lt;br&gt;--: core 351 MHz shader 0 MHz memory 532 MHz&lt;/span&gt;&amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/1461758403837516754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2015/01/installing-development-version-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1461758403837516754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1461758403837516754'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2015/01/installing-development-version-of.html' title='Installing the latest version of Compiz for tear-free Flash playback in Gentoo Linux '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-4790348937668592013</id><published>2014-02-25T17:52:00.001+00:00</published><updated>2014-03-02T11:18:00.993+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A2DP"/><category scheme="http://www.blogger.com/atom/ns#" term="bluedevil"/><category scheme="http://www.blogger.com/atom/ns#" term="blueman"/><category scheme="http://www.blogger.com/atom/ns#" term="bluetooth"/><category scheme="http://www.blogger.com/atom/ns#" term="bluetoothctl"/><category scheme="http://www.blogger.com/atom/ns#" term="bluez 5"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><title type='text'>How to play audio from a smarthone through a PC running Linux  </title><content type='html'>&lt;i&gt;Last tested on bluez 5.15&lt;/i&gt;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
A few notes on how to setting up an audio connection between a smartphone and a PC running Linux. &lt;a href=&quot;http://www.skifta.com/&quot;&gt;Skifta&lt;/a&gt; is useful just for mp3&#39;s but I need to run iReal jazz backing tracks through my PC&#39;s speaker system for keyboard improvisation practice for which bluetooth is required.&lt;br /&gt;
&lt;br /&gt;
I am using Gentoo but these notes should be applicable to other distributions. &lt;br /&gt;
&lt;br /&gt;
The key software to install is bluez version 5 and Pulseaudio (the latest at the time of writing is 4.99.4). Pavucontrol (Pulseaudio volume control should also be installed).&amp;nbsp; Kernel options to enable are described &lt;a href=&quot;http://wiki.gentoo.org/wiki/Bluetooth&quot;&gt;here.&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Hardware I am using is the Atheros Communications AR3011 bluetooth dongle (badged as Trust and bought from Ebuyer). The phone is HTC One V.&lt;br /&gt;
&lt;br /&gt;
Blueman currently doesn&#39;t work with bluez 5 so is no use for this purpose. Bluedevil (a KDE dongle) does work. I haven&#39;t tested Bluetooth using the Gnome control center.&lt;br /&gt;
&lt;br /&gt;
In my experience it is much easier to use the &lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;bluetoothctl&lt;/span&gt; interactive command line utility than it is to use GUI programs like Blueman and Bluedevil. If the connection fails the GUI programs don&#39;t give very helpful output.
 Connection attempts may appear to &quot;hang&quot; and it&#39;s not clear why. The &lt;a href=&quot;https://wiki.archlinux.org/index.php/bluetooth&quot;&gt;Arch wiki&lt;/a&gt; is a useful guide to bluetoothctl but there doesn&#39;t seem to be a great deal of documentation available apart from this.&lt;br /&gt;
&lt;br /&gt;
The bluetooth daemon (service) has to be running either through &lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;/etc/init.d/bluetooth start&lt;/span&gt; or through systemd (where the command is &lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;systemctl start bluetooth&lt;/span&gt;).&lt;br /&gt;
&lt;br /&gt;
There are some forum posts about configuration of /etc/bluetooth/audio.conf, for instance whether Disable=Socket is necessary. Unless specific bluetooth services are to be disabled, none of these service should be specifically enabled or disabled. Every service that is implemented on your system with then be available.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
There are two main stages to the bluetooth audio setup: &lt;b&gt;pairing&lt;/b&gt; and &lt;b&gt;connecting&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Bluetooth obviously must be enabled on the phone, discoverable to all nearby devices and within range of the dongle.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Enter bluetoothctl which will give you the bluetoothctl command line:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]#&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
Subsequent commands below are all within the bluetoothctl utility. &lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Power on the controller. if you don&#39;t do this, neither the controller (dongle) or the phone may be picked up&lt;/span&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]#&lt;/span&gt;power on&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;Make the dongle discoverable:&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# &lt;/span&gt;&lt;/span&gt;discoverable on&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Another useful command if the phone isn&#39;t showing (e.g. when you enter the &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;devices&lt;/span&gt; command) is:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;

&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# &lt;/span&gt;&lt;/span&gt;scan on&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Use the &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;devices&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt; command to check what devices have been picked up. This should return&amp;nbsp; a MAC (hardware) address which looks like this:&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# &lt;/span&gt;&lt;/span&gt;Device E6:48:C2:AB:91:32 my_smartphone&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Use the&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt; info&lt;/span&gt; command to check what bluetooth services are available, e.g.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# info &lt;/span&gt;&lt;/span&gt;E6:48:C2:AB:91:32&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Before trying to pair the dongle and the smartphone make sure you register the agent:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# agent on&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;There are other options for this command, but this is sufficient to ensure the dongle and smartphone are ready to be paired. If this command isn&#39;t used, a pairing&amp;nbsp; prompt appears on the phone but without a passkey. Although this prompt can be accepted, the phone and teh dongle won&#39;t be paired.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Use &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;show&lt;/span&gt; command&amp;nbsp; to check the controller is pairable and likewise the &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;device&lt;b&gt; &lt;/b&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;co&lt;/span&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;mmand for the phone. If both are shown as pairable, enter the &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;pair &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;command with the phone&#39;s MAC address e.g.:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# pair &lt;/span&gt;&lt;/span&gt;E6:48:C2:AB:91:32&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;You are returned to the bluetoothctl &lt;/span&gt;&lt;/span&gt;prompt. Wait until &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt; bluetoothctl confirms the pairing is successful.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Now run up pavucontrol (pulseaudio volume control). Select the &quot;Playback&quot; tab and then&amp;nbsp; select &quot;All streams&quot; from the picklist at the bottom of the screen. pavucontrol helps you monitor whether a successful audio connection has been made using the A2DP protocol.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Next try to&lt;b&gt; connect&lt;/b&gt; the phone to the dongle, e.g.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[bluetooth]# connect E&lt;/span&gt;&lt;/span&gt;6:48:C2:AB:91:32&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;bluetoothctl should indicate if the connection&amp;nbsp;is successful. If so you should also see the phone shown as a &quot;loopback&quot; device in pavucontrol.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;At this point, I sometimes find that the phone appears to be connected as an audio source but there is no sound. The only workaround for this issue appears to be to using &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;the bluetoothctl&lt;/span&gt; disconnect &lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;command followed by &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;connect.&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/4790348937668592013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2014/02/how-to-play-audio-from-smarthone.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/4790348937668592013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/4790348937668592013'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2014/02/how-to-play-audio-from-smarthone.html' title='How to play audio from a smarthone through a PC running Linux  '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-6993227224738651497</id><published>2013-06-22T01:36:00.000+01:00</published><updated>2013-06-22T10:15:13.544+01:00</updated><title type='text'>Streaming mp4 videos from an Android device to gmediarender on a UPNP-enabled remote device </title><content type='html'>&lt;a href=&quot;https://github.com/hzeller/gmrender-resurrect&quot;&gt;gmediarender&lt;/a&gt; is a resource efficient UPNP-compatible media renderer suitable for lower specification devices such as the Raspberry pi.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjWq-wJ35WeOxfwQXBuuvtEtYepfS6UdikbfVL4yTiJs-eIl2QKSokNYsqDsn8Fka9uPV4V_MBUsTvKyIYvl-_F5sGzV0KsAKeb1pzVXmSPJN-aPPbSdFZBEDjkeO3cJucumW9odohhBU/s1600/android.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjWq-wJ35WeOxfwQXBuuvtEtYepfS6UdikbfVL4yTiJs-eIl2QKSokNYsqDsn8Fka9uPV4V_MBUsTvKyIYvl-_F5sGzV0KsAKeb1pzVXmSPJN-aPPbSdFZBEDjkeO3cJucumW9odohhBU/s1600/android.jpg&quot; height=&quot;194&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Skifta can be used as both media server and control point (i.e. the remote) but in my experience mp4 files can&#39;t be streamed from the Skifta server on the phone (HTC One V in this case) to gmediarender. This results is an error &quot;media unable to perform play&quot;.&lt;br /&gt;
&lt;br /&gt;
One solution is to use BubbleUPnP as the control point with the setting &lt;i&gt;Mime-type check&lt;/i&gt; unchecked (this setting can be found under &quot;UPNP tweaks&quot;). Within BubbleUPnP on the Android device either Skifta or BubbleUPnP&amp;nbsp; can be used as the media server. &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Another app which works well with gmediarender is MediaHouse which plays back mp4s without any need to configure the app.&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The UPnP Play app seems to have the same issue with mp4&#39;s being streamed to gmediarender, it returns &quot;unsupported format video/mp4&quot;&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/6993227224738651497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/06/streaming-mp4-videos-from-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6993227224738651497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6993227224738651497'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/06/streaming-mp4-videos-from-android.html' title='Streaming mp4 videos from an Android device to gmediarender on a UPNP-enabled remote device '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjWq-wJ35WeOxfwQXBuuvtEtYepfS6UdikbfVL4yTiJs-eIl2QKSokNYsqDsn8Fka9uPV4V_MBUsTvKyIYvl-_F5sGzV0KsAKeb1pzVXmSPJN-aPPbSdFZBEDjkeO3cJucumW9odohhBU/s72-c/android.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-5930657876996016586</id><published>2013-06-16T10:49:00.003+01:00</published><updated>2016-04-24T10:20:21.299+01:00</updated><title type='text'>How to create create karaoke videos in Linux from midi files created in the nted score editor</title><content type='html'>The &lt;a href=&quot;http://www.google.co.uk/url?sa=t&amp;amp;rct=j&amp;amp;q=pykaraoke&amp;amp;source=web&amp;amp;cd=1&amp;amp;cad=rja&amp;amp;ved=0CC8QFjAA&amp;amp;url=http%3A%2F%2Fwww.kibosh.org%2Fpykaraoke%2F&amp;amp;ei=vny9UdSoLuPQ0QXH2IGYCw&amp;amp;usg=AFQjCNGByzYGb5NVGVN4X6LTVVpUvkXFqQ&amp;amp;bvm=bv.47883778,d.d2k&quot;&gt;pykaraoke&lt;/a&gt; utility can be used to generate karaoke videos in Linux from original midi files created using the &lt;a href=&quot;http://vsr.informatik.tu-chemnitz.de/~jan/nted/nted.xhtml&quot;&gt;nted &lt;/a&gt;score editor. Other score editors in Linux that I have tested do not appear to work (Denemo, Musescore, Rosegarden) as they don&#39;t produce a midi file with lyrics in a form which can be&amp;nbsp; processed by pykaraoke. Another solution is to use &lt;a href=&quot;http://www.noteworthysoftware.com/composer/&quot;&gt;Noteworthy composer&lt;/a&gt; under &lt;a href=&quot;http://www.winehq.org/&quot;&gt;wine&lt;/a&gt;. Noteworthy is an excellent score editor with a very user-friendly interface although not open source. Noteworthy produces tidier output because hyphens used to separate syllables in the lyrics do not show in the final video. In Noteworthy, midi files must be created a type 0 (there is a pick list in the midi export dialog). nted is a good solution for Linux. It has more advanced functionality in some areas than Noteworthy. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First create a midi file with lyrics using nted &lt;a href=&quot;http://vsr.informatik.tu-chemnitz.de/~jan/nted/doc/ch01s30.html&quot;&gt;as explained in the documentation&lt;/a&gt;. Make sure the midi score&amp;nbsp; doesn&#39;t start with rests as this causes music/video synchronisation issues. Export the nted score you have created in midi format.&lt;br /&gt;
&lt;br /&gt;
Download and unpack &lt;a href=&quot;http://www.temaroma.com/linux_stuff/karaoke.tar.gz&quot;&gt;this script&lt;/a&gt; into your folder which contains the pykaraoke scripts and make the script executable. Run the script with the first argument as the midi file and the second argument as the soundfont e.g.:&lt;br /&gt;
&lt;br /&gt;
karaoke /midi_files/my_midi_file.mid /my_soundfonts/soundfont.SF2 &lt;br /&gt;
&lt;br /&gt;
The script produces a standard video in mp4 format. You can also run the nted midi file directly using a progam such as kmid but the music won&#39;t be synchronised accurately with the lyrics in my experience and the output is not so easily shared as an mp4 video. &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The script assumes:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;python 2, mjpegtools, mplayer, ffmpeg and fluidsynth are installed&lt;/li&gt;
&lt;li&gt;you are running the script from the same folder into which you have downloaded the pykaraoke scripts (pykaraoke also has its own dependencies) &lt;/li&gt;
&lt;li&gt;a soundfont is available on your system (such as FluidR3_GM.sf2) &amp;nbsp; &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Any further information needed, please leave a comment.&lt;br /&gt;
&lt;div class=&quot;notification-area&quot;&gt;
&lt;div class=&quot;yt-alert yt-alert-actionable alert-multi yt-alert-info&quot;&gt;
&lt;div class=&quot;yt-alert-icon&quot;&gt;
&lt;img alt=&quot;Alert icon&quot; class=&quot;icon master-sprite&quot; src=&quot;http://s.ytimg.com/yts/img/pixel-vfl3z5WfW.gif&quot; /&gt;
  &lt;/div&gt;
&lt;div class=&quot;yt-alert-buttons&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;yt-alert-content&quot; role=&quot;alert&quot;&gt;
&lt;span class=&quot;yt-alert-vertical-trick&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;span class=&quot;watch-page-link&quot;&gt;&lt;a href=&quot;http://youtu.be/A9rX3CuuS3Q&quot; target=&quot;_blank&quot;&gt;&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/5930657876996016586/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/06/how-to-create-create-karaoke-videos-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5930657876996016586'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5930657876996016586'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/06/how-to-create-create-karaoke-videos-in.html' title='How to create create karaoke videos in Linux from midi files created in the nted score editor'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-9185147964400147806</id><published>2013-02-13T20:40:00.000+00:00</published><updated>2015-10-13T18:54:41.296+01:00</updated><title type='text'>Using MMA to generate musical accompaniments under Linux </title><content type='html'>&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;&lt;a href=&quot;http://www.mellowood.ca/mma/&quot; target=&quot;_blank&quot;&gt;Musical Midi Accompaniment&lt;/a&gt; (MMA) provides an open source alternative to the proprietary Windows/Mac &lt;i&gt;Band in a Box&lt;/i&gt;. It is a command line utility with an&amp;nbsp;&lt;a href=&quot;http://www.mellowood.ca/mma/mma-pdf-12.10.tar.gz&quot;&gt;extensive reference manual&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;There is also a GUI available called &lt;a href=&quot;http://linuxband.org/&quot; target=&quot;_blank&quot;&gt;linuxband&lt;/a&gt; which is simple to use and provides some access to the functionality of MMA. Linuxband enables you to quickly create chord sequences for midi output and choose a &quot;Groove&quot; which is a musical style for the chords. Linux band requires the jack soundserver which is typically started up and configured using &lt;a href=&quot;http://qjackctl.sourceforge.net/&quot;&gt;qjackctl&lt;/a&gt;. You may find, like me, that linuxband appears as an output port in qjackctl with nothing&amp;nbsp; to connect it to, like so...&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGds18-uU7K6CwT77GLnkjRMalSjKfIUhDGTQreOmUQU2VckAOg5QQIYcOTMUCI_WDtJq0TiwneBIGL6xmn-CkvG5XM1xLpkr_4-s4sSmcQHSKp0R06RpRRqZiZ9Sa2B6H9pNA7Yj4azI/s1600/jack_no_writable_client1.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;263&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGds18-uU7K6CwT77GLnkjRMalSjKfIUhDGTQreOmUQU2VckAOg5QQIYcOTMUCI_WDtJq0TiwneBIGL6xmn-CkvG5XM1xLpkr_4-s4sSmcQHSKp0R06RpRRqZiZ9Sa2B6H9pNA7Yj4azI/s1600/jack_no_writable_client1.jpeg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;...because your input ports are all under the ALSA tab...&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjugz8sP2-8Or3cctCPK8TFEu2sPIhMwMn7A22LUUJZBM4KJz3hpch9rsNihWrZeBwqNYmUfttBSm3eQxQ0mS45N7REqmauOv5EnL7RVSGhm20dRMazw0ndM5AfYwCdl8VfLSJCeC-w1gE/s1600/jack_alsa_tab.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjugz8sP2-8Or3cctCPK8TFEu2sPIhMwMn7A22LUUJZBM4KJz3hpch9rsNihWrZeBwqNYmUfttBSm3eQxQ0mS45N7REqmauOv5EnL7RVSGhm20dRMazw0ndM5AfYwCdl8VfLSJCeC-w1gE/s1600/jack_alsa_tab.jpeg&quot; width=&quot;400&quot; /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;If this is the case, you can use &lt;a href=&quot;http://home.gna.org/a2jmidid/&quot;&gt;a2jmidid&lt;/a&gt;&amp;nbsp; to surface the ALSA input ports under the midi tab (for Gentoo and OpenSUSE users there are packages available). Once &lt;i&gt;a2jmidid&amp;nbsp;&lt;/i&gt;is running, the relevant connections can be made. Use the -e switch to make hardware ports available such as the emu10k1 ports (shown below):&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgah34MorGVsl2qUR7KAR7GkdFajxFFzENAP29NlkqWj2MUEHpEcuHlRYXwr1Hvjhj0MgXz4TIv_neMSHVeANzjcZQvcWO3cvrGMWXpV6jkDie4BtFKlwLIQcrxWBglDPtNKyeoPDoh7hY/s1600/jack_a2jmidid.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgah34MorGVsl2qUR7KAR7GkdFajxFFzENAP29NlkqWj2MUEHpEcuHlRYXwr1Hvjhj0MgXz4TIv_neMSHVeANzjcZQvcWO3cvrGMWXpV6jkDie4BtFKlwLIQcrxWBglDPtNKyeoPDoh7hY/s1600/jack_a2jmidid.jpeg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;&lt;i&gt;a2jmidid&lt;/i&gt; will also make software synths such as &lt;a href=&quot;http://sourceforge.net/apps/trac/fluidsynth/&quot;&gt;fluidsynth&lt;/a&gt; and its GUI frontend &lt;a href=&quot;http://qsynth.sourceforge.net/qsynth-index.html&quot;&gt;qsynth&lt;/a&gt; available as a writable client for linuxband.&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;There are a huge number of &lt;i&gt;Band in a Box &lt;/i&gt;files available on the Internet so it&#39;s useful to have a utility that converts these files to MMA format. &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;Alain Brenzikofer&#39;s &lt;a href=&quot;http://brenzi.ch/builder.php?content=projects_biabconverter&amp;amp;lang=de&quot;&gt;Perl script&lt;/a&gt; no longer works with recent versions of Perl 5 (because of a deprecated function. I tried it on v5.16.1). H&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;ere is &lt;a href=&quot;http://www.temaroma.com/linux_stuff/biabconverter-0.6.9.tar.gz&quot;&gt;an amended version &lt;/a&gt;which will work. The download includes a gentoo ebuild which will pull in this version from my Web site. According to the documentation, the script can&#39;t convert all BIAB files but so far it has worked fine with everything I have tried. &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;If you are learning to improvise, it&#39;s useful to have a backing track in all 12 keys. &lt;a href=&quot;http://www.temaroma.com/linux_stuff/transpose.tgz&quot;&gt;This script&lt;/a&gt;&amp;nbsp;(usage: &lt;i&gt;transpose [file].mma&lt;/i&gt;)&lt;i&gt;&amp;nbsp;&lt;/i&gt; transposes an mma file into all the other keys of &amp;nbsp;he chromatic scale. It assumes the mma file contains a Groove command.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;&quot;&gt;The -T switch used with the mma command is very handy if you need to reduce the number of instruments in a backing track.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;I use this to create backing tracks containing only bass and drums. The -c switch displays which tracks are available in any given mma file. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;Here are some midi files with bass and drums generated from mma which I use for jazz practice:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/autumn-leaves_swing.mid&quot;&gt;Autumn leaves&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/deep-purple_swing.mid&quot;&gt;Deep purple&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/exactly-like-you_swing.mid&quot;&gt;Exactly like you&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/fly_swing.mid&quot;&gt;Fly me to the moon&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/ipanema_swing.mid&quot;&gt;Girl from Ipanema&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/paper_moon_swing.mid&quot;&gt;Paper moon&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Trebuchet MS&#39;, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.temaroma.com/linux_stuff/someday_swing.mid&quot;&gt;Someday my prince will come&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/9185147964400147806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/02/using-mma-to-generate-musical.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/9185147964400147806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/9185147964400147806'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2013/02/using-mma-to-generate-musical.html' title='Using MMA to generate musical accompaniments under Linux '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGds18-uU7K6CwT77GLnkjRMalSjKfIUhDGTQreOmUQU2VckAOg5QQIYcOTMUCI_WDtJq0TiwneBIGL6xmn-CkvG5XM1xLpkr_4-s4sSmcQHSKp0R06RpRRqZiZ9Sa2B6H9pNA7Yj4azI/s72-c/jack_no_writable_client1.jpeg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-8030064675601419178</id><published>2012-12-23T00:19:00.002+00:00</published><updated>2012-12-23T00:22:16.002+00:00</updated><title type='text'>UPnP clients for Linux</title><content type='html'>Networked media in the home using protocols such as UPnP is sure to grow hugely in popularity. An Android app such as &lt;a href=&quot;http://www.skifta.com/&quot; target=&quot;_blank&quot;&gt;Skifta &lt;/a&gt;allows access to all available UPnP-compliant AV servers both locally and remotely and the media can be streamed to any UPnP-compliant device. In practical terms this allows media to be streamed around the house using a smartphone&amp;nbsp; as a &quot;remote&quot;. &lt;br /&gt;
&lt;br /&gt;
There are three principal elements to a UPnP system:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;the AV media servers, in my case these are &lt;a href=&quot;http://www.mythtv.org/&quot; target=&quot;_blank&quot;&gt;MythTV&lt;/a&gt; and the smartphone itself &lt;/li&gt;
&lt;li&gt;a control point (such as Skifta on a Smartphone), enabling you to browse the media and stream it to a UPnP-compliant device &lt;/li&gt;
&lt;li&gt;the media renderer which resides on a device such as a PC or a piece of dedicated UPnP hardware and which plays the media&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
When I installed Skifta on an Android smartphone, the MythTV AV server was immediately discovered by Skifta. I installed &lt;a href=&quot;http://xbmc.org/&quot; target=&quot;_blank&quot;&gt;XBMC&lt;/a&gt; on a reasonably high specification Linux client and it worked fine as a media renderer (Skifta support recommended XBMC under Linux).&lt;br /&gt;
&lt;br /&gt;
I also needed a media renderer for a much lower specification PC. On this PC, XBMC made the machine unusable because it consumed so much memory.&lt;br /&gt;
&lt;br /&gt;
It proved difficult to find other media renderers under Linux. A UPnP Linux client like &lt;a href=&quot;http://projects.gnome.org/rhythmbox/&quot; target=&quot;_blank&quot;&gt;Rhythmbox&lt;/a&gt; can access media using the UPnP protocol (e.g. it can &quot;see&quot; the media on a mythtv server) but I found a &quot;client&quot; in this sense was not discoverable by Skifta. One solution I identified was a useful project called &lt;a href=&quot;https://github.com/hzeller/gmrender-resurrect#readme&quot; target=&quot;_blank&quot;&gt;gmrender-resurrect&lt;/a&gt;, a fork of an earlier, incomplete project (GMediaRender). This software is designed primarily for devices like the &lt;a href=&quot;http://www.raspberrypi.org/&quot; target=&quot;_blank&quot;&gt;Raspberry pi&lt;/a&gt; but is equally usefully for older conventional hardware running Linux. &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/8030064675601419178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/12/upnp-clients-for-linux.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/8030064675601419178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/8030064675601419178'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/12/upnp-clients-for-linux.html' title='UPnP clients for Linux'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-5792666816735533861</id><published>2012-11-11T10:03:00.000+00:00</published><updated>2012-11-20T21:15:03.534+00:00</updated><title type='text'>Openshot on Gentoo</title><content type='html'>&lt;a href=&quot;http://www.openshot.org/&quot; target=&quot;_blank&quot;&gt;Openshot&lt;/a&gt;, an open source non-linear video editor, has received &lt;a href=&quot;http://www.pcadvisor.co.uk/reviews/software/3286898/openshot-review/&quot; target=&quot;_blank&quot;&gt;a lot of positive reviews&lt;/a&gt; especially for its simple and user-friendly interface. There is no official Gentoo ebuild for Openshot but I have been installing and testing the &lt;a href=&quot;http://gpo.zugaina.org/Overlays/luman/media-video/openshot&quot; target=&quot;_blank&quot;&gt;luman overlay&lt;/a&gt; (Openshot 1.4.3) over the last two days which seems to work fine.&lt;br /&gt;
&lt;br /&gt;
Together, Linux NLE video editors provide a very powerful capability although each one tends to have unique features meaning it&#39;s sometimes necessary to use more than one piece of software to achieve a desired end. Cinelerra is particularly powerful and flexible, but I spotted recently that it can&#39;t generate a wipe transition with a softened edge (as noted in &lt;a href=&quot;http://lumiera.org/project/background/history/CinelerraWoes.html&quot; target=&quot;_blank&quot;&gt;this rather dated review&lt;/a&gt;). This led me back to &lt;a href=&quot;http://lumiera.org/project/background/history/CinelerraWoes.html&quot; target=&quot;_blank&quot;&gt;Kdenlive&lt;/a&gt; (an excellent program in its own right) and then Openshot for this feature. Initial impressions of Openshot are that it is similar to Kdenlive but with the ability to generate 3d titling through a simple-to-use interface to Blender. Note that the &lt;a href=&quot;http://gpo.zugaina.org/Overlays/luman/media-video/openshot&quot; target=&quot;_blank&quot;&gt;luman overlay&lt;/a&gt; does not install Blender, you have to install it separately and it has to be a very recent version. At the time of writing this is Blender 2.63 in Portage (Openshot requires 2.62 or later). Blender looks very complex to use (I am not familiar with it) but the Openshot interface to Blender is straightforward, offering a range of effects such as dissolving or exploding text and a few parameters to adjust for each effect (such as the colour of the text). The rendering of these effects is very processor-intensive, I gave up waiting on a single-core machine and ssh&#39;d to a triple-core machine on my home network. The time waiting for Openshot to render is a reminder that Cinelerra&#39;s render farm is a great feature. &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/5792666816735533861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/11/openshot-on-gentoo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5792666816735533861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5792666816735533861'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/11/openshot-on-gentoo.html' title='Openshot on Gentoo'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-7321132210247313071</id><published>2012-09-16T20:54:00.001+01:00</published><updated>2015-02-23T23:55:16.723+00:00</updated><title type='text'>Using a render farm with the Cinelerra video editor </title><content type='html'>&lt;a href=&quot;http://cinelerra.org/&quot;&gt;Cinelerra&lt;/a&gt; is an advanced Linux non-linear video editor. Cinelerra provides a timeline-based editing interface similar to Kdenlive and other non-linear video editors. It also provides a wide range of video effects but only a limited number of ready-made transitions. Many interesting transitions can, however, be created from the functionality in Cinelerra.&lt;br /&gt;
&lt;br /&gt;
This blog post focusses on a very useful feature of Cinelerra, the render farm. These notes are based on Cinelerra 2.2CV on Gentoo. &lt;br /&gt;
&lt;br /&gt;
A render farm enables multiple machines on a network to contribute to video rendering, speeding up this memory- and processor-intensive operation. Cinelerra enables the render farm to be used for both &quot;background rendering&quot; and for rendering of the final video.&lt;br /&gt;
&lt;br /&gt;
Background rendering is a feature of Cinelerra whereby the video is rendered in the background for preview purposes. This is far superior to viewing a preview where frames are skipped to reduce the burden on the CPU (in which case&amp;nbsp; the preview will be jerky and not representative of the final rendered video). The render farm speeds up background rendering significantly.&amp;nbsp; In my own case, using an AMD XP4000 single-core processor for background rendering is, well, like watching paint dry. Since I have another machine with an AMD triple-core processor on the network, this can be pressed into service.&lt;br /&gt;
&lt;br /&gt;
As far as I can tell from the documentation, the render farm needs to be set up so that the output directory of the video rendering is the same on all machines on the render farm (which Cinelerra calls &quot;nodes&quot;). I achieve this by logging on with the same username on the master node and the client node (nfs server and nfs client).&amp;nbsp; Assume that the output of the video rendering is this directory on the machine you are using (the master node):&lt;br /&gt;
&lt;br /&gt;
/home/media_user/videos&lt;br /&gt;
&lt;br /&gt;
then all the machines must have this directory, including the same path.&amp;nbsp; Here&amp;nbsp; is an example of how the NFS share would be mounted on the client node:&lt;br /&gt;
&lt;br /&gt;
192.168.1.95:/home/media_user/videos /home/media_user/videos nfs rw,user&amp;nbsp; 0 0&lt;br /&gt;
&lt;br /&gt;
Obviously with NFS you need to make the usual checks that the video output directory is contained in /etc/exports, that the directory is exported rw (read + write) and that the uid and gid (respectively for the user and user&#39;s group) match up.&lt;br /&gt;
&lt;br /&gt;
The render farm also needs to be configured in Cinelerra. Below is a screenshot of my own configuration with some notes on the configuration underneath.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZX2lsASGIJAPLoVQ3dHJ_iSkLB8faSLWI6WtH4LD9VeBP5rfpuKsmvczewJNeGf2ZgAdP0OI_VkbOT2U6UzX8C4WqFCfUHfCqi8kbdX7nRz2tgBKmYkK6EPa71bbYN6U4M5uR4brgV0M/s1600/render_farm_screenshot.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZX2lsASGIJAPLoVQ3dHJ_iSkLB8faSLWI6WtH4LD9VeBP5rfpuKsmvczewJNeGf2ZgAdP0OI_VkbOT2U6UzX8C4WqFCfUHfCqi8kbdX7nRz2tgBKmYkK6EPa71bbYN6U4M5uR4brgV0M/s640/render_farm_screenshot.png&quot; height=&quot;640&quot; width=&quot;583&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://heroinewarrior.com/cinelerra/cinelerra.html#BACKGROUND-RENDERING&quot;&gt;Cinelerra&#39;s documentation&lt;/a&gt; covers the configuration options fairly well, but there are a few things to watch out for. The option &quot;Output for background rendering&quot; must include the directory &lt;i&gt;and &lt;/i&gt;the prefix of the rendered files. In our case, it&#39;s not enough to enter&amp;nbsp; &quot;/home/media_user/videos&quot;. That would be interpreted by Cinelerra as the directory &quot;/home/media_user&quot; and the prefix for the rendered files as &quot;brender&quot; (with the individual files being named by Cinelerra as &lt;i&gt;brender + number&lt;/i&gt;, e.g. brender001035).&lt;br /&gt;
&lt;br /&gt;
I changed the default option for &quot;Frames per background rendering job&quot; to the uppermost value recommended by the documentation, which seems to work fine. I also changed &quot;Frames to preroll background&quot; from 0 to 3. The documentation recommends 0 but I found this failed to work properly on video where I was using the Ken Burns effect (zooming in or out). With a value of 0, the interpolation engine didn&#39;t work properly with the rendered video switching between a full size image and the size specified by the x y z projector values.&lt;br /&gt;
&lt;br /&gt;
Cinelerra must be installed on all client machines. The syntax for initiating the daemon is:&lt;br /&gt;
&lt;br /&gt;
cinelerra -d [port number]&lt;br /&gt;
In our case this would be:&lt;br /&gt;
&lt;br /&gt;
cinelerra -d 1055&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Note the high number used for the port. A port number greater than 400 must be used in Linux if you want the Cinelerra daemon on the client node to be started as a non-root-user.&amp;nbsp; If root is initiating the process, the default note can be used (i.e. cinelerra -d without the port number will default to 400).&lt;br /&gt;
&lt;br /&gt;
Once your Cinelerra installations are set up as described, all background rendering and final video rendering will use the render farm. The best way to check whether the render farm is working is to run some background rendering on an extended section of your video timeline. When you play back the rendered video, Cinelerra will complain about missing frames if the render farm isn&#39;t working correctly. You can also check in Settings =&amp;gt; Preferences to see whether the framerate is greater than zero for the client node.&lt;br /&gt;
&lt;br /&gt;
In conclusion, the render farm is a great feature of a great piece of open source software.&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; 
</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/7321132210247313071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/09/using-render-farm-with-cinelerra-video.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/7321132210247313071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/7321132210247313071'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/09/using-render-farm-with-cinelerra-video.html' title='Using a render farm with the Cinelerra video editor '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZX2lsASGIJAPLoVQ3dHJ_iSkLB8faSLWI6WtH4LD9VeBP5rfpuKsmvczewJNeGf2ZgAdP0OI_VkbOT2U6UzX8C4WqFCfUHfCqi8kbdX7nRz2tgBKmYkK6EPa71bbYN6U4M5uR4brgV0M/s72-c/render_farm_screenshot.png" height="72" width="72"/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-8175796574121210324</id><published>2012-09-05T17:18:00.000+01:00</published><updated>2012-09-05T19:15:10.983+01:00</updated><title type='text'>Why Gentoo is a great Linux distrubution</title><content type='html'>I have been using Linux as a desktop system at home for a number years, with my usage focusing on academic work and multimedia tasks such as music scoring and video.&lt;br /&gt;
&lt;br /&gt;
Until very recently I used a well-known rpm-based distribution, which was a good introduction to Linux and had the advantage of a user-friendly installation process. The difficult with this, and a number of similar, distributions is the focus on periodic releases where the update process can be unreliable. A major attraction of Gentoo is the ability to do a once-only installation of the base system and then be able to customise and upgrade this base system indefinitely. &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
As an IT-literate amateur (with a little bit of very dated formal training in programming), it is a revelation to use Gentoo and I think it shows the flexibility and reliability of Linux at its best. The initial installation and configuration certainly requires time and patience, so it&#39;s wise to keep a working system running during the initial setup, for instance on a separate partition. Probably the main hurdle is acquiring a &amp;nbsp;good understanding of your hardware for the initial kernel configuration. In my case, I found that a well-known network card driver was present on the Gentoo live disk but not in Gentoo&#39;s default Genkernel so it took a bit of research on the Internet to troubleshoot this particular issue. &amp;nbsp; Configuring the kernel was otherwise surprisingly straightforward.&lt;br /&gt;
&lt;br /&gt;
Once set up, using Gentoo is a real pleasure. Available official and user-generated documentation is very helpful and extensive while the portage software repository is huge and well-maintained. The requirement to compile software from scratch adds an element of complexity, but I often found the apparent simplicity of my previous rpm distribution a bit illusory -- I frequently ended up with versioning issues which were hard to resolve.&amp;nbsp; I also found that the vendor-specific configuration files on my former system made the configuration of Linux much more complex than it actually needed to be. There was something of an uneasy mix between GUI-based configuration and the inevitable manual editing of text files once the GUI options had proved to be inadequate.&lt;br /&gt;
&lt;br /&gt;
I have been particularly impressed by the ease with which complex software like &lt;a href=&quot;http://www.heroinewarrior.com/cinelerra.php&quot;&gt;Cinelerra&lt;/a&gt; can be installed on Gentoo. The installation process is no easier or harder than with a binary distribution but much more flexible. My initial installation of Cinelerra without the OpenGL compile flag was easily corrected with a short line of text in the Gentoo &lt;i&gt;package.use&lt;/i&gt; configuration file. It is interesting to compare this straightforward solution to some of the issues which are evident when users try to grapple with an rpm-based system where the vendor has decided not to include a particular compile flag.&lt;br /&gt;
&lt;br /&gt;
In the usual manner of the IT press, Gentoo is often compared with other distributions in terms of performance and ease of use. Sometimes it&#39;s a bit like comparing apples and pears. Some Linux distributions appear to be taking their users more towards a one-size-fits-all Windows-like experience whereas Gentoo offers complete configurability and flexibility -- the ability to build a unique system which optimises the use of system hardware. It demands a bit more technical knowledge which can be readily acquired but the effort is worthwhile in my view.&lt;br /&gt;
&lt;br /&gt;
I haven&#39;t mentioned any other Linux distributions by name because they all have their strengths. I am a strong advocate of Linux, particularly the &amp;nbsp;underlying values of freedom and collaboration which are evident across &amp;nbsp;much of the GNU/Linux community. I think the Gentoo approach embodies these values in a particularly successful way.</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/8175796574121210324/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/09/why-gentoo-is-great-linux-distrubution.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/8175796574121210324'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/8175796574121210324'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2012/09/why-gentoo-is-great-linux-distrubution.html' title='Why Gentoo is a great Linux distrubution'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-5691171369153636937</id><published>2011-11-19T23:19:00.000+00:00</published><updated>2011-11-20T11:58:41.717+00:00</updated><title type='text'>Creating m3u playlists on the Sansa clip+ player in Linux</title><content type='html'>&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;The &lt;a href=&quot;http://www.sandisk.com/products/sansa-music-and-video-players/sandisk-sansa-clipplus-mp3-player&quot;&gt;Sansa clip+ player&lt;/a&gt; is an excellent audio player which works very well under Linux. m3u playlists can easily be created and this blog post describes some simple&amp;nbsp; ways of doing this. All that&#39;s required is to create a list of audio files which is saved to the Clip&#39;s MUSIC directory in a file with an .m3u extension. &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The first technique uses a custom action in the &lt;a href=&quot;http://thunar.xfce.org/&quot;&gt;Thunar file manager&lt;/a&gt;. The player needs to be in MSC mode which is set on the player itself:&amp;nbsp; Settings =&amp;gt; System settings =&amp;gt; USB mode =&amp;gt; MSC). Now you need to configure a custom action in Thunar. From the Edit menu in Thunar select Configure custom actions... Click on the + icon to add a new action and in the Name field enter &lt;i&gt;Create a Sansa clip playlist&lt;/i&gt;. Don&#39;t worry about the Description field but in the command field enter:&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;ls %N &amp;gt; playlist.m3u&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif; font-size: small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: inherit; font-size: small;&quot;&gt;Now select the Appearance &lt;/span&gt;&lt;span style=&quot;font-family: inherit; font-size: small;&quot;&gt;conditions tab, make sure there is an asterisk (*) in the File pattern field and that Audio files is checked.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-family: inherit; font-size: small;&quot;&gt;To create a playlist, the player needs to be mounted in Linux. Under Gnome this happens automatically on my system (currently OpenSuse 11.4) but I prefer the &lt;/span&gt;&lt;a href=&quot;http://www.fluxbox.org/http://www.fluxbox.org/&quot;&gt;Fluxbox window manager&lt;/a&gt; and use the &lt;a href=&quot;http://freecode.com/projects/wmvolman&quot;&gt;wmvolman dockapp&lt;/a&gt; to mount the player manually. In Thunar, navigate to the MUSIC directory (on my system for the Sansa clip&#39;s internal memory this is /media/0123-4567/MUSIC) and CTRL+Click to select the files which will make up the playlist. Next, right click and you should see an option to &lt;/span&gt;use your custom action: &lt;i&gt;Create a Sansa clip playlist. &lt;/i&gt;Select this menu, and a file called playlist.m3u will appear in the same directory. This is an m3u playlist which should be usable on your Sansa Clip+. &lt;span style=&quot;font-size: small;&quot;&gt;It&#39;s useful to rename the file, since it will be overwritten next time you run the script. &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;I ran into problems when I tried to delete playlists in Thunar, because it places the files in a Trash folder which I couldn&#39;t delete permanently. I therefore delete the playlists from the command line but Nautilus works as well. &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Another (and more flexible) way to create playlists on the Sansa Clip+ is to use the kid3 KDE ID3 tag editor. Under Suse, install the package using: sudo zypper install kid3-qt. With the Sansa clip mounted, open the MUSIC directory on the player in kid3 (File =&amp;gt; open directory) and CNTRL+click to select multiple files. Now click on the &lt;i&gt;Create playlist item&lt;/i&gt;. In the Format field you can use any name for the playlist as well as ID3 tags.&amp;nbsp; Make sure you use the following options: &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt;Create in: current directory&lt;/li&gt;
&lt;li&gt;Format: m3u&lt;/li&gt;
&lt;li&gt;Include only the selected files&lt;/li&gt;
&lt;li&gt;Use relative path for files in playlist&lt;/li&gt;
&lt;li&gt;Write only list of files&lt;/li&gt;
&lt;/ul&gt;One advantage of kid3 is that you can create playlists based on strings in the filename or in the ID3 tags. First, in kid3 open the MUSIC directory on the Sansa Clip.&amp;nbsp; Now Select the menu option Tools then Filter... Now set up a custom filter. All the variables you can use (filename, duration etc.) are displayed if you hover over the dialog box for the filter itself. As an example, the following filter selects filenames which contain the string &quot;Elgar&quot;:&lt;br /&gt;
&lt;br /&gt;
%{file} contains &quot;Elgar&quot;&lt;br /&gt;
&lt;br /&gt;
You can now create a playlist which contains only those files. &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/5691171369153636937/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/11/creating-m3u-playlists-on-sansa-clip.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5691171369153636937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/5691171369153636937'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/11/creating-m3u-playlists-on-sansa-clip.html' title='Creating m3u playlists on the Sansa clip+ player in Linux'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-1003528667836539543</id><published>2011-05-15T14:23:00.000+01:00</published><updated>2011-11-19T23:22:02.729+00:00</updated><title type='text'>Relacing a bootable disk which has a root partition (Suse Linux)</title><content type='html'>This weekend I replace an old IDE bootable hard disk containing a Suse Linux partition with a new Sata disk.&lt;br /&gt;
&lt;br /&gt;
First stage was to clone the old disk using &lt;b&gt;dd&lt;/b&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;dd if=/dev/sdb of=/dev/sda&lt;/div&gt;&lt;br /&gt;
Where /dev/sdb is my old hard disk (the input file) and /dev/sda (the output file) is the new hard disk.&amp;nbsp; This took a few hours on a 120GB disk but is reported to be faster if you specify the block size in the &lt;b&gt;dd&lt;/b&gt; options. However, the clone operation worked fine. &lt;br /&gt;
&lt;br /&gt;
Having rebooted, I didn&#39;t initially realise that the Grub bootloader configuration would now be out of date and that the machine would continue to boot from the old hard disk. It is not possible to reassign the root partition in Yast, but there are some useful instructions on &lt;a href=&quot;http://stackoverflow.com/questions/247030&quot;&gt;this site&lt;/a&gt; on how to do a fresh install of Grub onto a new disk.&lt;br /&gt;
&lt;br /&gt;
Following these instructions, I first created a directory where the cloned root partition on the new disk could be mounted:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir /mnt/new&lt;/div&gt;&lt;br /&gt;
Next I mounted the cloned root partition:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/mount /dev/sda6 /mnt/new&lt;/div&gt;&lt;br /&gt;
Next, to bind /dev to the cloned partition:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mount --bind /dev /mnt/new/dev&lt;/div&gt;&lt;br /&gt;
and then chroot into the new partition:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chroot /mnt/new&lt;/div&gt;&lt;br /&gt;
Now for a fresh install of Grub onto the cloned disk:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;grub-install.unsupported /dev/sda&lt;/span&gt; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The grub-install.unsupported command has to be used (rather than just grub-install) because Suse prefers you to use Yast for bootloader configuration. However, when I tried this, neither yast2 (the graphical interface) or yast (the character-based interface) worked within the chroot jail.&lt;br /&gt;
&lt;br /&gt;
A reboot still gave the original result (i.e. the machine booted from the old disk) so the next stage was to edit the Grub bootloader configuration files.&lt;br /&gt;
&lt;br /&gt;
First (and working within the chroot jail on the cloned partition), the new disk has to be entered into the /boot/grub/device.map file. Since I had two old IDE disks in the PC, there were two existing lines in the device.map file:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;(hd0)&amp;nbsp; /dev/disk/by-id/ata-[device_ID of first hard disk]&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;(hd1)&amp;nbsp; /dev/disk/by-id/ata-[device_ID of second hard disk]&lt;/div&gt;&lt;br /&gt;
I added a third line for the next hard disk starting (hd2). If you don&#39;t know the disk ID, you can check it in the Yast2 bootloader configuration to copy the disk ID from there.&lt;br /&gt;
&lt;br /&gt;
A reboot confirmed that Grub was happy with the new disk in the device.map file, so I created a new menu entry in the /boot/grub/menu.lst file. My original menu.lst file looked like this:&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;# Modified by YaST2. Last modification on Tue Mar&amp;nbsp; 1 15:19:29\&lt;br /&gt;
# GMT 2011&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;# THIS FILE WILL BE PARTIALLY OVERWRITTEN by perl-Bootloader&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;# Configure custom boot parameters for updated kernels in&lt;br /&gt;
# /etc/sysconfig/bootloader&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;default 0&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;timeout 8&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;##YaST - generic_mbr&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;gfxmenu (hd0,5)/boot/message&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;##YaST - activate&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;###Don&#39;t change this comment - YaST2 identifier: Original&lt;br /&gt;
###name: linux&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;title Desktop -- openSUSE 11.3 - 2.6.34.7-0.7&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; root (hd0,5)&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; kernel /boot/vmlinuz-2.6.34.7-0.7-desktop \&lt;br /&gt;
root=/dev/disk/by-id/ata-[old disk_ID]-part[partition no.]\&lt;br /&gt;
resume=/dev/disk/by-id/ata-[old disk_ID-part[partition no.]\&lt;br /&gt;
splash=silent quiet showopts vga=0x31a&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; initrd /boot/initrd-2.6.34.7-0.7-desktop&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;###Don&#39;t change this comment - YaST2 identifier: Original&lt;br /&gt;
###name: failsafe&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;title Failsafe -- openSUSE 11.3 - 2.6.34.7-0.7&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; root (hd0,5)&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; kernel /boot/vmlinuz-2.6.34.7-0.7-desktop \&lt;br /&gt;
root=/dev/disk/by-id/ata-[old disk_ID]-part[partition no.]\ showopts apm=off noresume nosmp maxcpus=0 edd=off \&lt;br /&gt;
powersaved=off nohz=off highres=off \&lt;br /&gt;
processor.max_cstate=1 nomodeset x11failsafe vga=0x31a&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; initrd /boot/initrd-2.6.34.7-0.7-desktop&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Using the first menu option as a model, I created a new menu option to boot from the new hard disk:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;###New menu option###&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;title Suse linux 11.3&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; root (hd2,5)&lt;br /&gt;
# Note: hd1 was still the 2nd old hard disk at this stage&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; kernel /boot/vmlinuz-2.6.34.7-0.7-desktop  \&lt;br /&gt;
root=/dev/disk/by-id/ata-[new disk_ID]-part[partition no.]\ resume=/dev/disk/by-id/ata-[new disk_ID]_ID-part\&lt;br /&gt;
[partition no.]splash=silent quiet showopts vga=0x31a&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; initrd /boot/initrd-2.6.34.7-0.7-desktop &lt;/div&gt;&lt;br /&gt;
A reboot confirmed that this new option worked fine.&lt;br /&gt;
&lt;br /&gt;
Th final stage was to comment out the lines in the &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/boot/grub/device.map&lt;/span&gt; file for the old disks, and assign&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;(hd 0)&lt;/span&gt; to the new hard disk. Next, I edited the &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/boot/menu.lst&lt;/span&gt; file, commenting out the menu options for the old hard disk and retaining the menu option for the new hard disk, ensuring that the line beginning root now pointed to &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;(hd0,5)&lt;/span&gt; since this &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;hd0&lt;/span&gt; was now the hard disk number for the new disk in device.map. &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
I disconnected the old disks, rebooted and then selected the new menu option, but for some reason&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/etc/fstab&lt;/span&gt; now had a line for a root partition on one of the old drives (the drive which didn&#39;t actually have a root partition...) so the reboot failed. Changing &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/etc/fstab&lt;/span&gt; fixed this.</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/1003528667836539543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/relacing-boootable-disk-with-root.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1003528667836539543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/1003528667836539543'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/relacing-boootable-disk-with-root.html' title='Relacing a bootable disk which has a root partition (Suse Linux)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-7079959128944917749</id><published>2011-05-02T22:51:00.000+01:00</published><updated>2015-10-21T00:26:23.338+01:00</updated><title type='text'>Building a silent PC for MythTV</title><content type='html'>I started using &lt;a href=&quot;http://www.mythtv.org/&quot;&gt;MythTV&lt;/a&gt; a few years ago as an experiment. My main intention was to access foreign-language TV and radio broadcasts on my lounge TV but I was amazed at the power and flexibility of this open-source PVR when I gave it a trial run.&lt;br /&gt;
&lt;br /&gt;
My original MythTV PC recently hit the buffers, so I&#39;ve built a new box with the following components:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Antec Fusion NSK-2480 case&lt;/li&gt;
&lt;li&gt;Scythe mini-ninja (eBay)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;AMD Athlon II X3 400E Triple Core CPU&lt;/li&gt;
&lt;li&gt;LiteOn IHOS104-32 4x Internal Blu-Ray BD-ROM&lt;/li&gt;
&lt;li&gt;Seasonic X-460FL 460W ATX Fanless PSU&lt;/li&gt;
&lt;li&gt;CORSAIR 4GB 1333MHz CL9 DDR3 Memory Kit&lt;/li&gt;
&lt;li&gt;ASUS M4A78LT-M LE motherboard&lt;/li&gt;
&lt;li&gt;2 x Western Digital WD10EARS 1TB Hard Drive SATAII 5400rpm 64MB&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Noctua NF-S12B 120mm case fan&lt;/li&gt;
&lt;li&gt;Sparkle GT220 coolpipe graphics card (passively cooled)&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
This setup works well for a media centre PC because it is effectively silent. You might just pick up a feint whine from the hard disks if you are close to the PC but otherwise you can&#39;t hear it. The Noctua fan is completely silent at around 600rpm and is sufficient to cool the heatsink on the now-discontinued Scythe mini-ninja, so there is no need for a dedicated CPU fan. Likewise, the Seasonic PSU, although pricey, is also silent. Seasonic in the Netherlands told me the Antec Fusion NSK-2480 case and this PSU are a good match because of the &quot;headroom&quot; in this case.&lt;br /&gt;
&lt;br /&gt;
I am currently running MythTV 0.24 under Suse Linux. A few Mythtv users have reported that the video runs in &quot;slow motion&quot; under this version, something which I managed to fix (on the basis of a forum post) by setting the audio output to &lt;i&gt;ALSA:pulse&lt;/i&gt;. &lt;br /&gt;
&lt;br /&gt;
High-definition Freeview has just arrived in my area. This is progressively being rolled out across the UK and uses the DVB-T2 standard. PC hardware to decode this signal is very new although the PCTV systems nanoStick T2 290e DVB-T2 USB tuner is available which I am currently running under Windows 7.&amp;nbsp; This works fine under PCTV&#39;s own software but under Windows Media Center the audio drifts out of sync with the video. This seems be a common problem with Windows Media Center (which doesn&#39;t occur with MythTV) and there &lt;a href=&quot;http://answers.microsoft.com/en-us/windows/forum/windows_7-tv/media-center-live-tv-audio-behind-video/f35b85e6-dd26-41fe-a4f6-4fb8047fa3b0&quot;&gt;doesn&#39;t seem to be a solution&lt;/a&gt;. The use of Windows 7 for high definition Freeview is a stopgap as far as I am concerned so I am watching with interest &lt;a href=&quot;http://stevekerrison.com/290e/&quot;&gt;the development of a Linux driver&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Update: driver for the nanoStick T2 now built into the Linux Kernel. </content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/7079959128944917749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/building-silent-pc-for-mythtv.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/7079959128944917749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/7079959128944917749'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/building-silent-pc-for-mythtv.html' title='Building a silent PC for MythTV'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-504289268530445289.post-6862384960673133078</id><published>2011-05-02T20:41:00.000+01:00</published><updated>2011-05-02T23:46:42.076+01:00</updated><title type='text'>BT Infinity on Linux</title><content type='html'>I recently upgraded to BT infinity and being a Linux user didn&#39;t know whether the new&amp;nbsp;&lt;a href=&quot;http://bt.custhelp.com/app/answers/detail/a_id/32813/~/bt-home-hub-3&quot;&gt;BT Home Hub 3 router&lt;/a&gt; would offer the same flexibility as my previous router, a Linksys Wireless-G ADSL Home Gateway.&lt;br /&gt;
&lt;br /&gt;
Fortunately the functionality I required under Linux from the Linksys router is largely replicated on the BT Home Hub 3. You don&#39;t need a Windows or Mac disk to install anything, everything can be configured under a Linux-enabled browser such as Opera.&lt;br /&gt;
&lt;br /&gt;
Dynamic DNS is supported, currently the router offers DynDNS, NoIP and DtDNS.&lt;br /&gt;
&lt;br /&gt;
The Infinity router also allows port forwarding, although the way it is implemented is a bit awkward. You can&#39;t assign the same port to more than one device. Say, for instance, you exchange files with a smartphone using FTP on port 21, you can&#39;t assign 21 to another device (e.g. the PC from which you access the router). If you try, the Home Hub 3 will throw up an error. Fortunately there is a workaround. The router has a number of pre-configured port settings for games and applications including FTP and SSH. Under the &quot;supported applications&quot; tab within &quot;port forwarding&quot; (all under &quot;advanced settings&quot;) you can &lt;i&gt;Add a new game or application&lt;/i&gt;,&lt;i&gt; &lt;/i&gt;so for the smartphone example you could add an entry for &quot;FTP smartphone&quot; and assign a port such as 2121 to the device. This can create additional work on Linux because you may have to change configuration files in order to associate a port number with a service, for instance you have to change /etc/ssh/sshd_config on SUSE for &amp;nbsp;SSH. A custom rule may also be required for the firewall. This is irksome but manageable, and once the port settings are configured the router seems to forward the relevant ports OK.&lt;br /&gt;
&lt;br /&gt;
On balance the Home Hub seems a decent upgrade in terms of speed, about 22 MB/sec download where I am and around 4 MB/sec upload, an enormous improvement on copper-based ADSL where I could only scrape 2MB/sec download. From a Linux perspective, I haven&#39;t found any major issues with it although it&#39;s always worth bearing in mind that BT expect customers using Linux to set up their own Internet connections (as &lt;a href=&quot;http://bt.custhelp.com/app/answers/detail/a_id/13723/~/which-products-and-services-work-with-bt-infinity%3F&quot;&gt;BT&#39;s own Web site&lt;/a&gt; makes clear). Some Linux users seem to have difficulty, particularly with&amp;nbsp;&lt;a href=&quot;http://community.bt.com/t5/BB-Speed-Connection-Issues/Linux-and-BT-infinity/td-p/75459&quot;&gt;certain distributions&lt;/a&gt;. I have always found&amp;nbsp;&lt;a href=&quot;http://kde-apps.org/content/show.php/KNetworkManager?content=46395&quot;&gt;knetworkmanager&lt;/a&gt; a user-friendly way of managing wireless connections under Linux.</content><link rel='replies' type='application/atom+xml' href='http://uklinuxinfo.blogspot.com/feeds/6862384960673133078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/bt-infinity-on-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6862384960673133078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/504289268530445289/posts/default/6862384960673133078'/><link rel='alternate' type='text/html' href='http://uklinuxinfo.blogspot.com/2011/05/bt-infinity-on-linux.html' title='BT Infinity on Linux'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>