Back to vanilla MythTV - Part 2: Fiddling

Oliver Brown
— This upcoming video may not be available to view yet.

After installing MythDora, there were a few extra things I had to do that took a while to figure out.

Upgrade to mythtv-trunk from ATrpms

I figured I just enable the “bleeding” repository and then do yum install mythtv. This worked fine. But nothing was different. It seems that “mythtv” is a meta package that just says you have Myth installed without actually containing anything. So then I tried yum install mythtv-frontend mythtv-backend mythtv-setup mythweb mythplugins. This worked up until a point but then failed a transaction test. The actual failure was a mismatch between themes that different parts provided. I decided this was unimportant but couldn’t force yum to install. So I installed apt (yum install apt) and used that (apt-get install mythtv-frontend mythtv-backend mythtv-setup mythweb mythplugins and it all went fine.

Import old recordings

This was easier than I expected. Simply replace the database with your old one (make sure you stop mythbackend before you do). I had previously copied all my old recordings to my FreeNAS box and dumped the database (mysqldump -u _username_ -p mythconverg > mythconverg.sql). So I deleted the mythconverg database and imported the SQL file (mysql -u _username_ -p < mythconverg.sql. You could also just copy the mythconverg directory in the MySQL data directory directly. The next time you start mythbackend it will update the database schema (if necessary) and everything will work. Apparently if you had slave backends on your old system you might have problems but I didn’t so I’m not entirely sure what they are…

Automatically mount a remote file system

To get MythTV to save on my FreeNAS server I obviously needed to mount it at start up. This was simpler than I expected (although I did it using a terminal). Open the file /etc/fstab and add the line: _server_:_/share_ _mount_point_ cifs defaults 0 0. server is the IP address of the FreeNAS server, /share is the folder on the server mount_point is the name you want to access it with locally (this directory should already exist - you normally make a sub directory of /mnt. After adding this run the command mount -a to force the system to mount all the file systems (it does this automatically at start up). Then run MythTV Setup, select storage groups and add the mount point you chose as a directory.

Back to vanilla MythTV - Part 1: MythDora Rocks

Oliver Brown
— This upcoming video may not be available to view yet.

Well I tried LinuxMCE but didn’t really get very far.

After deciding everything was too much of a hassle, I downloaded MythDora 4.0 and installed it. I have to say that unless you have a specific reason otherwise, MythDora is definitely the way to go for a MythTV installation. It was really easy and actually worked (something that seems not to have happened a lot when I’ve tried Linux). One of the big advantages of using MythDora is since it’s Fedora based you can update (usually) painlessly from ATrpms. It has MythTV packages based on regular SVN checkouts. Importantly for me it also has packages from from mythtv-trunk (the latest version). Although they’re marked as “bleeding” they are usually stable.

The reason I needed the latest version is for storage group support. Without storage groups MythTV is limited to storing recordings in a single directory, storage groups allows you to specify multiple storage groups, each containing several directories. MythTV then use some clever load balancing to spread things out across available drives. This is important for me since I was planning on keeping most of my recordings on my new FreeNAS server, at least in the long term. The recordings aren’t tied to a specific storage group by the way - you can move them around freely (so I record to the local hard drive and then move them to the FreeNAS server later).

Once it was installed I did have to do a bit of fiddling, and it’s the sort of fiddling other people may have to do, so I’ll explain in part 2.

LinuxMCE 0704

Oliver Brown
— This upcoming video may not be available to view yet.

A new version of LinuxMCE is out. And from what I’ve read (I haven’t installed it yet) it looks like a big improvement.

The biggest factor is improved MythTV support (which to be honest I feel is the most important part of it). They also claim the DVD quick install only requires three keypresses (but that’s only for the install, no setup). There is thankfully a new video as well that is considerably less annoying than the previous one - complete with disclaimers about things that may only work on specific hardware.

On the subject of specific hardware, there is a company called Fiire offering some pretty affordable computers with LinuxMCE already installed. Personally I’d build the core myself but maybe buy their thin clients.. They also a do a cool remote with built in gyro (like a remote/gyro-mouse combo) but it’s a $150…

FreeNAS

Oliver Brown
— This upcoming video may not be available to view yet.

In an effort to get more storage to share between the three computers at home (two Windows and one MythTV) I setup yet another machine running FreeNAS.

FreeNAS is a small (about 30MB) operating system based on FreeBSD designed just to be a NAS (Network Attached Storage). You add hard drives to it and it makes them (optionally) available in several different ways, including:

  • CIFS/Samba
  • NFS
  • rsync
  • HTTP
  • FTP

After a few minor problems setting it up (like a power cable breaking and installing from an old CD-ROM drive that didn’t work) it works great. Copying a large (~40GB) chunk of files to it at once took a while but writing to and reading from it at more sensible levels isn’t noticeably slower than using local files (on a gigabit network).

Windows Vista

Oliver Brown
— This upcoming video may not be available to view yet.

Well for various reasons I now have Windows Vista. I installed it myself and to be honest everything went smoothly. That’s not to say everything went perfectly, but nothing unsurmountable happened.

The first problem was the fact that I bought the upgrade version. I’d previously bought Windows XP Media Center Edition 2005 but I was doing a clean install. Previous version of Windows just asked for you to pop the disk of the previous version in this situation - Vista didn’t. It would only let me install from Windows. So I had to install Media Centre first.

Then once I had installed Vista it didn’t have drivers for my network card or my sound card (and no network card meant no internet and therefore no video drivers and therefore horrible resolution (at the wrong aspect ratio no less). Well luckily I have another computer with internect access so I got the network drivers (and then the video and sound drivers).

Beyond that, I haven’t done much with it yet. The Aero glass lucks cool and stuff and the new games it comes with are at least as entertaining as the old ones were when I first saw them.

PS. User Account Control really is as annoying as they say it is for at least two reasons: Firstly it seems to ask you everything twice. Second since I have administrator access anyway it doesn’t really provide any security (it happens so often that you just click accept straight away without reading it).

Revelations II for EVE Online

Oliver Brown
— This upcoming video may not be available to view yet.

Tonight (well tomorrow morning) Revelations II is deployed. Lots of changes affecting everyone from solo players up to major alliances. I’ll summarise the things I find most important personally (for a non-alliance (and at the moment non-corp) player).

  • Revamping the loyalty system for agents. Instead of agents giving you offers, NPC corporations will let you “buy” things with your loyalty points meaning you no longer have to wait for a specific offer to be available - if you have the LPs, you can have it.
  • A lot of static deadspace sites have been moved to the exploration system which anyone can scan with a new low quality on board scanner on each ship.
  • Heat (which may or may not be important to me) has been added allowing you to overpower some modules at the risk of damaging them.

If you’re not already an EVE Online player, get a free EVE trial account, and if you already a player, get some EVE Game Time Codes :P

N73, 770 and the Internet

Oliver Brown
— This upcoming video may not be available to view yet.

I recently finally got a new mobile phone contract with a Nokia N73 with T-Mobile (UK), complete with “unlimited” Internet access. I have to say it is actually more useful than I thought it would be.

I have a little app called GCalSync which synchronizes the calendar with Google Calendar. I also have the official Google Mail client which is almost perfectly (it doesn’t seem to show whether messages in my inbox have a label or not - but it’s a minor concern). The best bit though it accessing the internet from Nokia 770 using the N73 as a bluetooth modem.

Setting is not as straight forward as it should be. The 770 has settings wizard and T-Mobile Internet is an option, but it’s settings are wrong. After searching for a bit I found the correct settings:

  • Number to dial: *99***1#
  • APN: general.t-mobile.uk
  • Username: user
  • Password: pass

The “1” part of the number to dial has a slight chance of being different. This number refers to the different connections your phone might have setup. By default the one you want is the first one and will only need to be something different if you’ve changed things.

After that you may want to set your 770 as a trusted device (in the bluetooth pairing options on you N73) so that you don’t need to say “OK” all the time on your N73 when your 770 wants to connect.

LinuxMCE 1.1

Oliver Brown
— This upcoming video may not be available to view yet.

Last month a new version, of LinuxMCE was released bringing with it some much needed improvements. The most noticeable is a switch from Ubuntu to Kubuntu (and an upgrade to Feisty) which apparently the KDE people are so happy about they want to bundle LinuxMCE with KDE 4. The most important in my opinion however is better integration with MythTV. From what I’ve been reading on their forums it’s not mature enough for general users (even less so than MythTV on its own) but it definitely has potential and if you’re comfortable with Linux and have a spare machine, you should go try it.

Google Checkout is cool

Oliver Brown
— This upcoming video may not be available to view yet.

Google Checkout is an online payment processor. It was originally billed as a “PayPal killer” but there are important differences. Checkout is more shopping orientated whereas PayPal is for general payments. Checkout is also available in far fewer countries at the moment. The best part is their tactics to gain users.

For a limited time Google Checkout will give you £10 off any order over £30 (excluding delivery). Not just your first order, but all your orders while they keep the offer open. This is as much to attract businesses as users (the increased custom from charging £10 less for a lot of different items).

There are still few UK sites supporting Google Checkout - the biggest I know of is Ebuyer. Since most of this blog is about technology though, I’d have to say that’s a pretty good site to get £10 off at…

Handling regional variations in language learning

Oliver Brown
— This upcoming video may not be available to view yet.

Warning, this post is long and rambling. You have been warned! :P

Part of the design philosophy of my language learning app is to reuse as much as possible. This brings up an interesting issue regarding regional variations of languages (I’m talking mainly about somewhat standardised variations) and how much should be shared between them.

For example in Belgium, French is an official language. This is almost the same as French as spoken in France but with a few important differences. Firstly there are minor vocabulary variations (Belgian French has specific words for 70 and 90 for instance). There is also a lot of Flemish and Walloon vocabulary used in addition to the French vocabulary. Finally there are pronunciation differences but these seem no greater than differences in accent.

So, a course on Belgian French should be almost identical to a course on Standard French. The question is how to notate that in the script files the language app uses.

There are basically three ways I’ve come up with to cope with the situation, and I think I’ll support all of them since they have different advantages in different situations.

The first is to allow in line region specific phrases. So for the numbers in Belgian French, the standard French files would be used but any Belgian French sections would take priority.

The second is to have whole region specific files. Extra Belgian phrases not appearing in standard French would be in these and be loaded in addition to the standard French files. This is really an extension of the first.

The final case is no link at all. This would be needed for Chinese. The language code for Mandarin is “zh-guoyu” and the code for Cantonese “zh-yue”. In this case however there is no such spoken language with the code “zh” and therefore nothing to inherit from. This is an specific case of the first two where no parent language exists.

So far this has just been considering audio. The app already supports text and will eventually support text only lessons of some sort. The first method above could be using for spelling variations (when learning English “color” and “colour” could use the same audio while appearing differently on the screen). As more dramatic example Serbian could be taught using either the Cyrillic alphabet or the Latin alphabet with the codes “sr-cyrl” and “sr-latn” respectively. Or perhaps even both…

The final point I want to make regards the actual audio files themselves. Although it is true than most of spoken French is almost the same in Belgium and France, the accents are different and generally identifiable to French speakers. Therefore regional specific audio is desirable where possible. Since the script files and the audio are kept separate this is is possible with the language app. If the Belgian French audio exists that will be used, if not the standard French is used. That means that if a standard French course is created, an adequate Belgian French course can then be created with little effort but with the possibility of improving it later