A Django site.
July 8, 2008

Scott Morris
nexangelus
OpenSUSE Linux Rants
» If you haven’t already, take a look at Flash 10 for Linux

If you haven’t already, take a look at the new features available with the new Linux Flash 10 Beta. Such new features include:

3D Effects

Custom Filters and Effects

Advanced Text Layout

Enhanced Drawing API

Visual Performance Improvements

Enhanced Sound APIs

More information can be found at the link posted above.

The Flash 10 plugin is available both as a gzipped tarball and as an RPM.

June 12, 2008

Steve Dibb
beandog
wonkablog
» charlie the unicorn ringtone

Okay, this is great. This morning at work we were talking about YouTube videos, and then cell phone ringtones, and we got the awesome idea — let’s make some ringtones from YouTube videos! Sweet!

So I downloaded the incomparable video Charlie the Unicorn, used audacity to cut out the Candy Mountain song, and then uploaded it to my cell phone with Bluetooth using my co-worker’s Mac. Freaking right on.

It’s a mecca of love, the candy cave!

Okay, so if you wanna know the technical details, here’s specifically what I did:

Download the youtube video using youtube-dl:

$ youtube-dl -b -t “http://youtube.com/watch?v=Q5im0Ssyyus”

Extract the audio to WAV format using MPlayer:

$ mplayer charlie_the_unicorn-Q5im0Ssyyus.mp4 -ao pcm:file=candy_mountain.wav

Edit the WAV file with Audacity, select the song portion, and export it to MP3 with a64 kbps bitrate. The start point was 2:26 and it’s 42 seconds in length

$ audacity candy_mountain.wav

And that was it! Instant ringtone goodness. :) Here’s the MP3.

May 13, 2008

Steve Dibb
beandog
wonkablog
» blu-ray dvd drives

An interesting post came up the other day on the Gentoo forums about how to rip Blu-Ray discs on Linux. Short summary: I have no idea if it’s possible, and the original poster is still investigating. It has gotten me thinking though. The Blu-Ray player that I want to get it is $600, and it looks like it’s being phased out of production anyway, so why not get a disc drive instead and rip the movies? It’d save me some money, and I’d eventually buy one anyway.

Well, the questions that come to mind are, will the software actually work, will the drive firmware let me do that, and am I going to have to use Windows?

I haven’t done any research at all, mostly because I can’t afford to buy a DVD drive right now, but the whole thing does have me curious. I always assumed there was no way to rip the stuff under Linux, but I haven’t gone looking for possible solutions either. The only thing I am sure about though, is that once ripped, you can play the content just fine. At least, I think so. I’m not positive about the HD audio codecs, pretty sure about the video ones though.

I tend to buy hardware first and figure out how to get it working second, but because the DRM is so finicky in this case, I really don’t want to take that approach and be out a couple hundred bucks.  In the meantime, I really wish I could at least demo the stuff at home.  That would be cool.  The only 1080p content I’ve seen so far is the movie trailers I’ve downloaded from Apple’s website.  I gotta say that stuff looks pretty good.

April 30, 2008

Steve Dibb
beandog
wonkablog
» blu-ray cartoons

Okay, now this is something I wasn’t expecting. Warner Bros. is releasing season one of Justice League on Blu-ray. Wow.

I’d been planning on *eventually* getting a Blu-ray player anyway, but I’ve been pretty indifferent about the decision, or when. Actually, the real thing that’s holding me back right now is that I can’t natively rip them on Linux right now (play back, yes, but that’s an entirely different matter). There’s no way I’m firing up my Windows box just to get some 1080p goodness on my harddrive. I’m a sucker for automation.

April 17, 2008

Adam Olsen
synic
Vimtips Lates Articles
» Exaile LastFM Proxy Plugin

A few versions ago, Exaile had Last.FM streaming support using LastFMSource - a pygst plugin created by Philippe Normand of Elisa. It worked... sort of. Every other time you tried to connect to LastFM station, Gstreamer would lock up entirely, taking Exaile out with it. Not being able to fix this problem, it was eventually removed from Exaile entirely.

Enter: LastFM Proxy. This is a program written in python created to connect to LastFM and start streaming the music to a proxy that you can connect to on your local machine using any music player that supports HTTP streaming.

After a bit of hacking (and really, this is some seriously hackish stuff), I've created a plugin for Exaile called "LastFM Radio" that (mostly) seemlessly integrates LastFMProxy into Exaile. To the user, it appears to just be a Radio Panel plugin like the current "Shoutcast Radio" plugin. The user just clicks on the station they want to listen to, and it starts playing. They can "Skip", "Ban", or "Love" tracks just like in the LastFM native player.

It still needs some work, but overall, I'm pretty pleased with how well it works. Give it a try!

Note: You must be using the latest bzr version of Exaile for this plugin to work. You can get instructions on doing that from Exaile's downloads page.

January 19, 2008

Steve Dibb
beandog
wonkablog
» movies on demand

Continuing in my slow re-examination of playing with Comcast’s DVR offerings, something else is coming back to me — I really like their On Demand selection. In fact, it’s actually the best I’ve seen to date. Although, in all fairness, I’ve only looked at three: Comcast, Real and Netflix.

I was flipping through the free movies section of Comcast’s on demand menu, and it occurred to me that there was a lot of movies that seemed interesting to watch. So many, in fact, that I went back and counted to get an idea. There were 12 total that I thought looked decent enough to at least try and start watching them, and I’m pretty sure a few of them were in my Netflix queue (which is maxed out at 500 movies). On top of that, there were four movies that I’d already seen, but I wouldn’t mind watching again. In fact, I did watch a movie tonight (Field of Dreams) for free, and that was cool.

That’s not to say the user experience still couldn’t be improved. First of all, the things I like, aside from the selection, is that the shows start instantly, and I never have a problem with caching or anything like that. As usual, all the issues I have deal with the user interface again. You can only fast forward at one speed, which is not very fast at all. So if you want to jump ahead at all, whatsoever, you are really screwed. The second minor issue is that the box is really slow to respond, which many people complain about. It’s interesting because the menu will respond quickly but anything related to playback takes a good second or two to apply. So if you hit fast forward, the OSD will immediately display on button press, but it won’t start fast forwarding right then. That wouldn’t be nearly so bad a problem except if you want to resume playback, by the time it does work, you’re already a good five seconds ahead of where you wanted to be. I haven’t watched any TV shows using the DVR (I was just skipping through the boring parts in the movie), but I imagine that would be a real pain if you’re trying to skip commercials and you constantly go too far ahead. I can’t help but wonder if that’s intentional, since in all my experience with TV tuners, recording and playback, seeking and pausing has never been an issue. Who knows. It wouldn’t be hard to attribute it to crappy coding either, since the entire thing is a mess.

One other problem I just remembered is that pausing a movie isn’t very friendly either. If you leave it paused for more than something like three minutes, it will stop the playback completely, and dump you back to the original on demand menu. That’s a bit of a pain since you have to re-navigate the menu to get back to your movie. I can understand doing that after a long wait, but every time it happened to me I had either just gone to the bathroom or to the kitchen for a minute and it had already exited out. It is a really short delay. And I’d be surprised if it does that when you’re watching live tv and you paused it. Another odd UI decision.

The only other on demand instant movie services I’ve tried is RealPlayer’s offerings (although that was a little less than a year ago, I doubt much has changed) and Netflix. Netflix just barely announced that for any of the unlimited plans, customers can also watch unlimited movies as well. That news might be exciting, except that their selection is incredibly crappy right now. If you don’t believe me, just look at the Top 50. Number 40 is Turbo: A Power Rangers Movie.

Admittedly, I really don’t think it’s their fault, though. I’m sure it’s the movie studios being really, really reluctant to open up their libraries to the internets to let everyone have them on their home computer. I think things are changing, but I also believe it’s going to be a few years before things really take off. Maybe with Apple TV entering the ring the landscape will start to change a bit faster. We can only hope.

The other thing I like about Comcast is I can actually watch the movies on my TV. I’ve never been one for watching things on the computer, which is why I ditched my RealPlayer account and never really bother with Netflix. I mean, I could easily hook up my Windows machine to a TV, but I’d still have no remote, and I have to deal with downloading and buffering the thing. It’s not worth the hassle.

Finally, I should disclaim that anyone should consider any of these services based on my recommendation, since my taste in movies is really unique. I’d say that a good portion of my movie collection you can’t even find in the DVD rental stores, and every time I go there it literally takes me up to an hour to find something I feel like watching. But that’s okay, I wouldn’t recommend Comcast’s DVR option right now anyway. I just wish there were more on demand options, with more movies, with the possibility of natively watching it on my TV.

January 13, 2008

Steve Dibb
beandog
wonkablog
» mplayer-resume-1.5

A bug in MythVideo inspired me to work on fixing mplayer-resume tonight, so that it can properly handle movies with filenames.  I don’t know why I didn’t think about this before, but it’s simple if the file is properly escaped or quoted.  And so, mplayer-resume v1.5 is released, with support for spaces in filenames, finally, and also one other cool little thing: it works with playlists now, to a degree.

The playlists thing is kind of hard to explain, and it’d be easier to point you to the documentation that I’ve already written.  Instead, I’ll just describe what it is I’m going to use it for.

One thing I’ve been wanting to add to my MythVideo setup is some playlists so that I can randomly play something.  I have a lot of cartoons and videos and movies, and sometimes I don’t feel like picking something myself — one of the nice things about TV in general is you are genuinely surprised when you’re channel surfing and something cool just happens to crop up.  That’s kinda what I like, and what I wanted to do.  But, I wanted to take it a step further.  If I started playing $random_episode, then if I quit, I want to be able to resume playback of that same show.  Up until now, mplayer-resume wouldn’t work that way, since if you’re randomly picking something from a playlist file, there’s no real way to seek back to the same one.

That’s fixed now.  The script will read the filename of the movie you are playing when you exit (once you setup .lircrc correctly), and checks to see if that’s the same file you started playing.  So if I play random.pls and it plays Tarzan.mkv, and I exit, then when I go back to watch Tarzan, it will resume in the same place.  Basically, it saves the file position for Tarzan instead of the playlist file.  Pretty cool. :)

So, there you go.  I’ll put it in portage shortly as well.  Enjoy. :D

January 12, 2008

Steve Dibb
beandog
wonkablog
» comcast cable tv upgrade, part two

Comcast came out on Friday morning and installed my upgraded cable connection. Strictly speaking, I have no idea which tier I’m actually on right now. I know it’s at least expanded digital cable, and I think I get some HDTV channels. To be honest, I haven’t played with the settop box for more than 5 minutes. The real reason I wanted to get cable was so that I could have the Hallmark Channel again. Unfortunately, it looks like that’s not going to happen. I’ve tried everything, and the only way I can get the channel is by using the settop box. In the meantime, I only added 4 channels that I was interested in watching (Food Network, TLC, HGTV and Animal Planet), and am living with that.

There’s a lot more channels that I like to watch, but I’m taking it slow. Another channel I’m mostly interested in is TNT, since they play Without a Trace and Cold Case regularly. I think. Anyway, I’m actually trying to cut *back* on the number of channels I watch (one of my TVs only has all the PBS channels on it, which is a nice change of pace), but the fact is that some channels on cable have a much better and interesting lineup than the local ones.

Onto the cool stuff though. The settop box is a disaster and a half, or at least the menu is. I’m going to have to take screenshots because it really is unfathomable how much of a UI nightmare this is. Here’s my biggest beef with the whole thing: you can’t setup a custom channel list, or even add / delete channels from your lineup. If you want to go channel surfing, you have to go through *every* *single* *channel*. The only option around that is to add a ‘Favorites’ list, for which the remote has a button that will flip through those, but only going up. It’s incredibly annoying because adding / deleting channels has been a standard option for TVs for decades. Comcast’s settop box does let you setup a list of your favorite channels, but to browse it, you have to go through about 3 or 4 actions on the remote to get there, and even then it only displays the list in a guide. If you go back to hitting channel up or down, it just cycles again through every channel you get. And there are a lot of channels. And of coures it doesn’t ignore the ones that you aren’t signed up for, so you get to muddle through about three dozen that you aren’t authorized for.

I *think* that that the DirecTV and Dish Network boxes let you create lists, and then keep you in those channel lists for when you want to channel surf. I’m not sure, since I’ve never given one a good hard look. I’d switch to one of those just for that, though. In fact, I probably will.

In the meantime, I’m going to screw around with this settop box for a bit more before taking it back to Comcast. From what I’ve been reading, MythTV can add the box as an input device, using a firewire connection to control the channel tuner, and of course record TV. Mine is the HDTV DVR (Motorola DCT3416), and I haven’t yet seen much info about connecting one. The anecdotal evidence so far seems to be along the lines of “plug in the cable, and it works great.” We’ll see. I don’t even have a firewire cable.

So that’s where I’m at right now. I’m not gonna use the settop box unless I can get Myth to play around with it. Even then, I don’t need it, since I can tune into all the channels I wanted anyway with my normal TV tuner cards. I still need to see exactly which channels I get. I actually ripped it out from my HDTV since the picture was so horrible to begin with. Even on component output it looked incredibly crappy, not to mention worse than my original coaxial input connection. I plugged it in briefly using HDMI, but that was just as unimpressive.

I’m toying with the idea of getting a Tivo just to see what my options are (yet another area I don’t know anything about, so who knows), but I’m not too optimistic anything good would come out of it. I’ll probably buy one used somewhere just so I can see if its worth it.

The real good thing is that, despite all these interesting issues, is that I’m perfectly happy with my original cable lineup, so if I rip everything out, I won’t miss it one bit. I’m just curious to see what I can accomplish though. It’s fun. :)

January 9, 2008

Steve Dibb
beandog
wonkablog
» comcast cable tv upgrade

So, I finally made an impulsive move and called up Comcast to get an expanded cable TV package. I got an ad in the mail yesterday (addressed specifically to me, interesting) from them offering Digital Cable with HD for only $25 for 6 months. I thought that was a pretty spanky deal (certainly less than their bundled crap), so I called em up. The only hidden fees were a $13 installation fee for the guy to come out, and the HDTV box is gonna cost me $7 a month to rent. Still, I’ve been wanting to check out their HD selection for a while now, and in fact was planning on calling them for the past month or so, but never got around to it. For HD programming, I’ve actually done my research and decided that Dish Network is the best one to go with (Comcast is too expensive, and DirecTV are crooks). I haven’t gotten around to calling them yet though … so I guess I’ll give Comcast a spin first.

I’ve been going with Digital Basic or whatever it’s called for the longest time. That in itself is an incredible deal — its only $12.95 a month, and I get all my local channels, plus 5 HD channels (ABC, CBS, NBC, KUED, FOX), plus Discovery Channel and Travel Channel, BYU TV and a few other cable channels that I’d never watch (C-SPAN, some shopping network, TV Land). I used to get Hallmark Channel as well, which I really loved because they would show stuff like Matlock and Perry Mason all the time, but one day it just disappeared. That’s probably the main reason I want cable again, I really enjoyed having that channel.

If you do want the most basic lineup though you’ll have to call them up and ask for it specifically. I don’t think it’s listed on the website anywhere, and of course when you call they’ll try to talk you out of it, but it’s worth it. Plus you still get the $10 discount a month for having cable internet with them. Not too bad.

Anyway, I haven’t had expanded cable TV for a long time. I wonder if the box is gonna come with a DVR or not. They’re coming out Friday to install it, so I guess we’ll see.

January 2, 2008

Steve Dibb
beandog
wonkablog
» region-free dvd drives

Following up on an earlier post about region-free dvd players, I happened to have a stroke of luck — I found a DVD-RW drive that is region free. I happened to pick up an SATA DVD drive, and as I was playing around with it, I decided I wanted to rip one of my Region 2 DVDs. In order to do that, I had to use regionset to change the region code first.

Part of the program options, though, is that regionset will display what region the drive is currently set to. When I ran it, it didn’t have any setting at all, which seemed curious to me. I wondered what would happen if I just played the disc without changing the code. Normally, on my old IDE drives, it would throw all kinds of errors before dying on me, and I’d have to do a hard reset to get my drive working again. In this case, though, it worked flawlessly without any modification! I thought my luck was too good to be true, so I popped a Region 1 DVD back in the drive to see if it had any issues playing those, and it did fine as well.

I’ve since tried ripping other Region 2 and Region 4 discs on it, and it has taken everything I’ve thrown at it so far. I’m pretty excited, to say the least. It would have been nice to have a region-free DVD player with HDMI output, but I haven’t been able to find one at a decent price. Being able to rip and watch them on the computer though is just as good.

For the record, the drive I have is a Lite-On and the model is LH-20A1L (firmware revision BL03). Interestingly enough, the Lite-On brand is the only one when it comes to DVD drives that I have never had problems with. When it comes to poorly authored DVDs, when my other IDE drives (Pioneer, Sony) would freak out, freeze up and die, the Lite-On one would always (well, about 95% of the time) take those crappy discs and skip over the bad sectors and manage to complete the rip. I’ve been really impressed with them.

December 12, 2007

Steve Dibb
beandog
wonkablog
» remuxing the audio

I really, really hate AAC.  Don’t ask me why … it’s an unreasonable hatred.  But, who cares.  Last night I downloaded a trailer from Apple’s website (they have them in HD, how cool is that … my computer couldn’t handle the 1080p one, heh), and of course the audio was in AAC.  I hate that.

I wanted to get just the audio from the file, decode it using faad, then re-encode it to AC3.  Normally in a situation like this, you would just use mencoder to re-encode the audio portion and create a new AVI.  But, I always have problems with that when I just want to copy the video portion (mencoder -ovc copy -oac whatever … ), so instead I just dump the audio, reencode it, then mux it all back in one file.

More specifically, this is what I do:

1. Start with a file where I want to keep the video the same (copy it, no encoding), but only re-encode the audio to another codec.

2. Extract the audio to a WAV file using mplayer

mplayer cool_movie_trailer.mov -vo null -vc null -ao pcm:fast:file=cool_movie_trailer.wav

3. Reencode the WAV to the codec of my choice.  In this case, AC3 (emerge media-sound/aften).

aften cool_movie_trailer.wav cool_movie_trailer.ac3

4. Mux the original video into a Matroska file, ignoring the audio track, and inserting the AC3 track instead

mkvmerge -o cool_movie_trailer.mkv -A cool_movie_trailer.mov cool_movie.trailer.ac3

The -A flag tells mkvmerge to ignore any audio tracks from the .mov file, thus the .ac3 file becomes the first (and only) audio track.  Without that flag, I could have had both audio tracks on there, but I don’t really want that either.

That’s pretty much it.  I wrote a little bash script to do the whole thing for me:

#!/bin/bash
I=${1}
EXT=${1/*./}
BASE=`basename ${1} .${EXT}`

WAV=${BASE}.wav
AC3=${BASE}.ac3
MKV=${BASE}.mkv

mplayer ${1} -vo null -vc null -quiet -ao pcm:fast:file=${WAV}
aften ${WAV} ${AC3}
mkvmerge -o ${MKV} -A ${1} ${AC3}
rm ${AC3} ${WAV}

Just save it as some_script.sh and the first (and only) argument is the movie you want to convert.  So foobar.sh cool_movie_trailer.mov, and it’ll spit out the .mkv file and delete all the temp files.

No more AAC.  I’m happy. :)

» dvd ripping scripts

I was lucky enough to catch Martin’s post on Planet Larry today about undvd, a script he’s working on — very cool, Martin, I love it.  I’m actually working on one of my own, or have been for a while, and I’ve been toying with the idea of cleaning it up and releasing it for public consumption.

I actually started writing my own because, as Martin says, all the other ones out there are too complex, and I prefer a simple command-line app that does exactly what I need it to do.  I call mine dvd2mkv, since I extract everything I want (video, audio, subtitles, chapters) and dump it straight into a Matroska file.

In fact, the script is already done, and it works great.  It automates the entire process — selects the longest video track, the widescreen one if there if full frame is on there as well, grabs the English (or preferred language track) with the highest number of channels (Dolby or DTS), plus the English subtitles if they exist, and finally the chapters.  All I have to do is put in the title of the movie, and even then if the disc ID is the title, then you can skip past that as well.

In fact, here’s the output of a movie I just ripped a few minutes ago, Return to Me.  Great movie, btw.

steve@charlie ~/dvd $ dvd2mkv
[DVD] Disc title: RETURN_TO_ME
Enter a movie title: [Return To Me]
[Video] Track number: 5
[Video] Aspect ratio: 16/9
[Video] Length: 115.79
[Audio] Track: 128
[Audio] Format: Dolby Digital
[Audio] Channels: 6
[DVD] Subtitles: None
[DVD] Ripping MPEG-2
[DVD] Ripping chapters
[MKV] Creating Matroska file

And that’s it!  Pretty simple. :)  Mine doesn’t have support (right now) for re-encoding the movies, since I’ve already gone into quite a bit of length on why I don’t like doing that, but it would be simple to add.  In fact, my shortcut method would just be to have the user setup mencoder profiles in the config file and call those directly.

Anyway, I like the idea of cleaning it up and throwing it out there, so I’ll probably be doing that fairly soon here.  If it works good enough for me (picky as I am), it’s sure to help out someone.  :)

November 7, 2007

Steve Dibb
beandog
wonkablog
» matroska + vobsub + subtitles … finally!

Oh, man, this is something I’ve been struggling to wrap my brain around for a good while, and I finally got it figured out.  I’ve always wanted to be able to add subtitles to my matroska videos … no real reason other than it’d be nice.  I don’t normally turn them on, but I do occasionally.  The problem I kept running into was the same with a lot of software documentation out there — it was just sparse or assumed you knew some certain terms or skipped over explanations.  Adding to the complexity is the fact that there are a few subtitle formats that different containers can handle.

In my setup, I’m once again skipping a few steps to just plain keep this simple, mostly at the cost of space, though even that is hardly anything.  As an example, on a 1.5 GB MPEG2, the resulting VobSub file is 1 MB.  I can live with that.

Anyway, here’s what I have so far … and I promise to update the Gentoo wiki as soon as I get time to cover this more in detail.  The first step is to rip the subtitles from the DVD.  To do that you have to calculate the subtitle index, which I won’t go into right now.  On the DVD I used, “It’s the Great Pumpkin, Charlie Brown” it was the first (and only) subtitle track for the movie, so it was pretty easy for me.

In fact, here’s the command I used to rip both the movie and the subtitles at once:

$ mencoder dvd://1 -ovc copy -oac copy -vobsubout subtitles -vobsuboutindex 0 -sid 0 -o pumpkin.avi

This created three files: pumpkin.avi (the unencoded MPEG2), subtitles.idx and subtitles.sub.

After that, and this is where I never realized how easy it is, to dump it all into Matroska, you just add the .idx file along with the others you are going to mux.

$ mkvmerge -o pumpkin.mkv pumpkin.avi subtitles.idx

When watching the movie with MPlayer, you can toggle through the possible subtitles with the ‘j’ key.

I can’t believe it was as simple as that.

June 8, 2007

Adam Olsen
synic
Vimtips Lates Articles
» DAAP Music Sharing and Exaile

I’m pleased to announce that Exaile gained a new developer last week – Aren Olson. Aren has been contributing here and there for a while now, and as of last week with his new plugin, daap-share.py, I asked him if he wanted commit access. What is DAAP you might ask?

Imagine that while at home, you could load up Exaile and connect to your collection running on your machine at work, search through it just like you search through your local collection, drag some tracks over to your playlist and listen away.

With Aren’s plugin you can, and here’s a little how-to on getting it set up under Ubuntu (Feisty Fawn).

DAAP is the protocol that Apple uses in iTunes to allow different users of iTunes on a local network to share their music with each other.

Aren has created a Feisty repository for Exaile’s svn (which also contains Tangerine [a DAAP server]), which he keeps pretty up to date, so first things first, you’re going to want to add the following lines to your /etc/apt/sources.list:

deb http://download.tuxfamily.org/syzygy42 feisty exaile-svn
deb http://download.tuxfamily.org/syzygy42 feisty reacocard


and then run the following:

wget http://download.tuxfamily.org/syzygy42/8434D43A.gpg
sudo apt-key add 8434D43A.gpg
sudo apt-get update
sudo apt-get install exaile python-daap tangerine python-avahi


Start up Exaile by going to Applications->Sound & Video->Exaile. If this your first time running Exaile, you will be prompted to add some directories to your collection. Do this, and wait for it to complete scanning.

Open up a terminal, and type tangerine-properties. Check the “Enable music sharing” box, the “Find in” radio butt, and choose Exaile from the dropdown. This will start Tangerine, which will begin serving up music from Exaile’s library.

In Exaile, go to Tools->Plugins and select the “Available Plugins” tab. When the list finishes loading (which can take a minute), select the checkbox next to the “Music Sharing” plugin, and click the “Install/Upgrade” button. Close the plugin manager.

You will now see a new tab on the left called “Network”. In the dropdown at the top, you should see your local tangerine share (which will be an IP and a port number, something like 66.79.34.24:52106), and then “Custom Location”. If you are working in an office with people who are running iTunes, you might also see their shares. You can connect to any of these, so long as you have the password, and browse them like they were your own collection.

Now, if you write down that IP and port for your local share, when you get home from your office, you can follow this guide again to get Tangerine and Exaile up and running, choose “Custom Location” from the dropdown in network, and type the IP and port of your work share. AWESOME.

Note, this assumes that you don’t have a firewall at work… you may need to forward a port or something, but I’ll leave that part to you. The hard part is done…. thanks Aren!

vim tip: Setting up Vi keybindings in bash

If you’re like me, you’re constantly ending up with sequences like this in your firefox address bar or at the command line in bash: ciw. That’s right, I’m trying to change the word that my cursor is under. It’s quite annoying. Well, you can actually do this in bash. Open up a terminal, and type set -o vi. You now have Vi keybindings in BASH. Note, that unlike in Vi, you are in insert mode by default. To enter command mode, you have to type escape. Most commands work here… but there are a lot of exceptions. If the command you’re typing is getting complex, you can open an actual vi screen for the command you’re typing by hitting the v key.

November 2, 2007

Steve Dibb
beandog
wonkablog
» region-free dvd players

I’ve picked up my quest again to find a DVD player that is region-free.  This is about the fourth or fifth time I’ve looked around, this being my most serious attempt.  I’ve been doing my research quite a bit on this one instead of just randomly buying whatever looks like it might work the second I see it.

The first question is whether you want to get a player that is region-free “out of the box” or hack one to reset the region settings.  I’d rather go with the first one, for fear of getting stuck with a player that for one reason or another isn’t hackable.

I actually found a lot of search results on Amazon, which surprised me.  Almost all of them are either Philips  or some cheap-o brands I’ve never heard of.  A Philips DVD player is most certainly out of the question.  I bought one once and it had the most horrible remote I’ve ever seen.  Today, that’s no real excuse since you can use a universal remote, but one feature it also lacked was that you couldn’t eject a disc from the remote.  Lame.

Aside from my experiences, everywhere I read about their players, people regret the purchase, and have lots of complaints about them.  So, definately going to steer clear.

The only thing I’ve really found so far that looks like it’d work is this one, the Samsung DVD-P171.  The only problem is that I can’t find any reviews for it, anywhere at all.  Either no one bought this thing or it was quickly replaced by another model.  Neither scenario exactly inspires confidence.  Even then, I couldn’t find the specifications for it on any website.  I finally downloaded the product manual from Samsung’s website, and it has component and rca video out, along with coaxial audio out.  No HDMI or S-Video which stinks for maximum options, but it’s not a big deal.  Samsung seems to be generally a good brand overall, so I think I might get it and check it out.

The one feature I really want in my DVD player is what my Sony already has — remembering the last playback location.  It’s great.  The Sony players will remember the last position for six discs.  So you can take them out and put them in later and pick back up exactly where you left off.  I couldn’t really tell by reading the manual for the Samsung if it had that or not.  Not a huge deal though, the reason I’m looking in the first place is to have it play any regions.

The reason I want a region-free DVD player in the first place should be pretty obvious — I want to be able to play DVDs from other regions.  It’s the most annoying feature of DVD’s DRM that I hate.  Ironically enough, HD-DVD and Blu-ray discs, known for their DRM, actually don’t employ this tactic … all discs are region-free.  Sheesh.

Even dumber is that the studios will release some movies only in certain countries, or release them as widescreen only other places, but not in the USA or for Region 1.  That means if I want to get Looking for Richard on DVD, I’d have to buy it from the UK.  Or if I want George of the Jungle with widescreen I have to get it from Germany.  I already bought Disney’s Shipwrecked from Australia, and changed the region code on my DVD ROM in my computer so I could rip it.  I’m limited by the number of times I can change it though, so I’d rather have a player that I can just throw anything at.

For the record, here’s a list of Disney’s pan & scan only DVD releases, and which regions have the widescreen ones available.

September 18, 2007

Lars Rasmussen
lars-ut
Lars Rasmussen (Lars-UT)
» Royalty Free Music

Looking for some music to include in a multimedia project, or maybe on a telephone system? These tracks are high quality and royalty-free. The author requires Attribution under a Creative Commons license, and accepts donations.

I enjoyed the African and Celtic tracks - here's one example.

September 13, 2007

Steve Dibb
beandog
wonkablog
» pimp my mythtv

I’ve been having a lot of fun with my mythbox lately. I’ve learned some really cool stuff about Myth, MPlayer, LVM2 and multimedia in general that is really helping to polish my setup. Add to that the fact that I’ve been working on dvd::bend quite a bit lately, and getting some bugs taken care of, and things are really adding up. I also finally took the plunge last week and bought my first 750 GB harddrive. I’m up to 1.6 TB of space in my server now (5 harddrives in one box), and I haven’t even hit 50% capacity yet. I’m sampling a little bit from all my TV series and getting them on there, so I can at least watch something from everything I have. Eventually, somewhere down the road when I have lots more space, I’ll have everything completely archived. For now, I’m still experimenting and getting used to the setup. It’s getting pretty nice.

Here’s some of the cool little stuff I’ve found out recently.

mythtv custom menus

I didn’t know this til just the other week, but the design for the menu layout that Myth uses is all in XML files, and right there in the themes directories (/usr/share/mythtv/themes). That said, you can customize them all you want! Just read the docs, and you’ll be up and running in no time. It’s really simple. It took me just a few minutes to simplify my main menu so I can jump to the TV recordings and MythVideo really easily.

mythvideo gallery view

I’m really having fun with this one. There’s a few things I’d change, but for the most part it works great. Here’s what my layout looks like right now:

mplayer + xvmc + high motion

I just barely discovered this tonight. One of my frontends is a Pentium 4 1.6 gHz, which does plenty well. You really don’t need that much horsepower to play back video. It’s got an older nvidia AGP card in there which works just fine with s-video out. The only problem I have is that there is sometimes a slight stutter on the video with some high-motion scenes. I’ve actually started to get used to it, but then I found out that using the XvMC video out option really makes things much smoother.

At first I was just playing with it to see if I could get the CPU usage down. It was only dropping by about 10%, which wasn’t that great, especially since it was still running high … around 35%. Turns out I had cpufrequtils set to use the powersave governor, so my CPU was only running at 400 mHz. Whoops. I bumped it back up to full speed, and mplayer dropped down to around 10% total.

But, even then, at the lowest speed, the video looked gorgeous. I’ll admit it might have been my imagination, but those motion blur issues seemed to go away. I was so surprised by the results that next I ran it through the Star Trek test (which everything has failed), and played back some Deep Space Nine. Normally I’ll test TNG since I’m extremely picky about the video quality on that one, and I’ve seen them enough that I can notice video artifacts more easily, and this was only the 2nd time I’ve seen this DS9 episode. But, it still looked nice. I could notice some small amounts of blur, but it was pretty minimal. So, who knows, that solution might work well for everything. We’ll see. I’m feeling pretty optimistic about it, and at the very least it works great for my older TV.

mplayer + audio delay

Before that, I was taking a break and watching some A-Team. Great stuff. On one episode, the A/V was off just slightly. This has always plagued me in the past, and it’s one of the reasons I don’t bother with encoding files. Also, this has happened before on another Universal disc (of all the DVDs I have, they have the most problems … they are rare, admittedly, but that studio is still the winner). I remembered reading somewhere about adjusting the audio delay with mplayer, so I checked the man page. You just use + and - keys on the keyboard to adjust it by 1/10th of a second each way, faster or slower. Played around with that, and the A/V was back in perfect sync. So, I mapped my channel up / down keys on my remote to do that in case I ever run into that problem again, and now that’s all fixed too.

matroska saves the day, and disk space

This is another cool one I noticed last week. This is all anecdotal evidence, so YMMV, but I’ve noticed that Matroska files are consistenly smaller than AVIs. About 8% smaller, in fact. I noticed that quite by accident while playing around with some encoding files. At first I figured I had done something wrong, but the results proved the same after quite a few tests. That is a lot of overhead for AVI, sheesh. Just one more reason to love and use Matroska. :)

Seems like there was something else, but I can’t remember now. Ah well. Anyway, I was hoping to get all those random thoughts down sometime, so there you go. Lots of fun playing around with this stuff. I’m pretty blown away by how well it’s working and how polished the whole thing is getting. Once I’m done for good, I’ll be sure to document how to reproduce the entire step in detail. Good times. :D

September 12, 2007

Steve Dibb
beandog
wonkablog
» poorly authored dvds: chapters

In ripping my mass library of DVDs, I run into all kinds of problems I never would have expected. I’ve been mentally keeping notes about them, and how to workaround them, but I should probably document the findings and process as well. The first one I want to touch on is poor authoring of chapters and their start times.

Here’s what happens. On a normal, full-length thirty or sixty minute (usually about 22 and 48 minutes, respectively) episode, there will be one track per episode on the DVD. Then, for each track, there will be chapters during major scene breaks, usually when the show would pause for a commercial break.

There can be a variety of problems though. Here’s the cases I’ve run into so far with tracks + chapter support:

  • Wrong chapter start time
  • No chapters at all
  • Trailing chapters

The first one, wrong chapter times, becomes an issue on certain TV shows where there is an introductory preview to the show itself. This is very common on Universal Studios’ TV shows. Murder, She Wrote, Knight Rider and The A-Team will all have an introductory segment at the start of the show pitching what’s about to happen. I prefer watching a show blind, or not knowing what’s going to happen, so when ripping them, I can save a marginal amount of space (about 5%) by skipping over the summaries. Generally speaking, the chapters are authored correctly, so with mplayer, you start at chapter 2 and dump the stream or rip from that starting point. I’ve already setup my web interface for dvd::bend to specify a starting chapter that can either be set on a series or individual track.

That’s not always the case though — there are some DVDs where the authoring is broken. There will be an introductory scene like always, but the first chapter doesn’t end until the first commercial break. So skipping the first chapter also skips a chunk of the beginning of the story. That’s a bit of a problem.

The only solution I can come up with is pretty tedious — finding the correct starting position, putting it in the database, and tell MPlayer to start ripping from there. Unfortunately, this becomes pretty laborious because only some of the tracks are messed up, meaning you have to go through each track one by one to see which are correct and which aren’t. The upside to all of this is that it’s something you only do once.

One other idea I have, that I haven’t researched yet, is that the time duration from the beginning to the first commercial break are probably going to be about the same, and so I could insert my own chapter break. I’m basing that theory on the fact that the time lengths on each episode are all within a few seconds of each other. Obviously strict timing is a key element, for commercials. The idea needs some looking into, since there are two scenarios for intro scenes plus broken chapters: a summary intro or a show intro, plus the broken chapter ending. The second one would be consistent across the board, while the first I’d just have to find an average, and then calculate whether the next chapter break is so far back that it warrants inserting a fix.

That fix is also somewhat related to the second problem, of not having any chapters at all.  Generally speaking, the only chapter I care about the most is when I can skip unwanted content, which is usually just the introduction.  Not having any chapters usually happens on a per box set basis.  I know that some Warner Bros. cartoons do it, Batman Beyond comes to mind as an example if I’m remembering correctly.  Once again, it’s just going to be a matter of finding the start spot of the individual episode and inserting it manually.  Or you can just fast forward through it.

There’s no real need to insert the chapters for the other commercial breaks, unless you wanted them.  If I want to skip ahead through a show, I’ll skip by a minute or more, mapping a remote event with LIRC.

The only time the last issue bites me is when I’m manually checking a disc out.  For some reason, a lot of them will have a chapter start time that is actually the end time of the episode.  I don’t know why that is.  What would be really nice is if the last chapter started at the end credits, because that way I could cut out even more stuff I’ll never watch, and again save on some disk space.  That one would probably be easy to calculate as well, and no doubt it’s going to be a fixed amount of time (or really close) just like the intros.  I haven’t had enough disk space issues yet to warrant investigating the problem just yet.

Bad chapters are just one symptom of poorly authored DVDs, for whatever reason.  There’s a lot more things that can go wrong, and I’ll cover them when I get some time.  All together, they are only small annoyances, but it does make things difficult when you want to automate the process as much as possible, and you can’t expect things to be right all the time.  It’s stopping and coding around these inconsistencies that make creating a universal solution impossible.

September 4, 2007

Steve Dibb
beandog
wonkablog
» milestones and most wanted list

One thing I forgot to do in my last post, which was rather lengthy, was to quickly display a list of ingredients for my perfect multimedia setup, software, hardware or otherwise. Here’s the component list I’ve always wanted … what’s really cool is the milestones I’ve reached along the way, making future progress possible. It’s great stuff to see a dream come true after years of working at it. :)

Milestones

  • Remote control that doesn’t suck. Streamzap USB remote.
  • Nice backend to archive everything: dual-core amd64 box running Gentoo Linux, motherboard with six serial ATA connectors
  • High quality TV tuners: Hauppauge PVR-500 (dual-tuner, MPEG2 hardware encoding).
  • Chapter support, metadata storage: Matroska container format
  • Playback chapter support: MPlayer
  • Playback / resume position: MythTV for TV recordings, mplayer-resume for everything else
  • Automated DVD ripping solution: mplayer, ogmtools, lsdvd, mkvtoolnix, bend

Most Wanted

  • Video browser: MythTV + MythVideo works … needs some tweaks, though.
  • Quiet frontend(s): Mini-ITX with onboard DVI, audio, S/PDIF, USB, network

So, as you can see, I’m pretty close. My issues about MythVideo are minor, there’s just three really small things I would change, I’ll write about them later.

One thing I’d add to the “most wanted” list is a playback / resume option for playlists. For instance, if I’m watching a season series, I don’t want to remember which episode I’m on … I just want to resume watching the shows. Coming up with something shouldn’t be too hard, I just haven’t looked into it yet.

Good times. :)

» my own multimedia progress

While I wrote about multimedia tips, hardware and software on a general basis, I think that the only time I talk about my setup is in passing as I’m in a hurry to fit one more piece of the puzzle into the grand scheme of things. The fact of the matter is, I have some very specific goals (a vision, I guess you could say) of how I want things to be done, and why. I also thought that for once, I might write up a bit about what that is all in one place. Also, because I have made some great strides this weekend into coming much closer to my completed goal. In fact, as you’ll see, I’m almost completely there.

First of all, I should mention that I’ve had this vision of mine for a long time now. A couple of years, I’d say. I know how I want things to be, and I’ve been slowly piecing things together as I learn, find new applications, tweak my settings and explore the possibilities. There are a couple of things that drive me that are based on my own personal preferences of doing things, and a lot of times that will make things slow down as I need to either find a solution or create an interesting workaround.

Here’s the basic setup that I want though: have all my multimedia (tv shows on dvd, tv recordings, movies, music) on demand from one central location, accessible to different frontends (I have a TV in my living room and one in my bedroom). That alone is simple enough. Although, I’m not too interested really in having my movies ripped because it’s not a hassle to watch the DVDs. I don’t mind pulling them out and waiting for the ads (any more than the average pereson). It becomes a real hassle for TV shows though because I’ll switch between watching different series all the time, and having to navigate through menus and ads constantly is a real pain there. All that brings up a good point though — you’ll notice that my original goal is simple enough, and easy to accomplish — just a multimedia frontend with satellites. That’s not hard at all. But as I mentioned already, the thing that really makes this difficult is that I’m extremely picky about my options, and catering to that isn’t always feasible. That’s the reason why I quit this project at times for a while — it’s because I’ve exhausted my options and things won’t work the way I want them to. But, I keep coming back, because I still want it. My random, shotgun attempts at accomplishing this may seem arbitrary, but it actually helps me not get too frustrated. Every time I revisit the issues, I’ll push things just a little farther and make more progress until I hit another wall.

Specifically, here are some of the things that I want personalized that trip me up, and usually create some barriers. One, is that I like the way my DVD player works. Every DVD player I’ve owned has always been a Sony. Name-brand loyalty aside, I like them because the remotes are nicely designed, and the firmware has some great options. I can’t remember when I bought my first player, but it was when they first came out, because it costs $400. That was probably back in 1998 or so.

Anyway, the firmware. It has some great features. One of them I like is that it can save the playback position for six discs. That is incredibly nice, especially considering my lifestyle, where I’ll start watching a movie and come back to it later all the time. Well, if I was going to have my own multimedia center, at the very least I want it to duplicate one small feature that a $60 DVD player has. Truth be told, in some ways, that DVD player still out-simplifies the process of watching video more than anything I’ve ever seen in any multimedia playback software. That’s not meant as a rip on anything in particular, just a testament to how nice it is when things “just work”, even if it is proprietary and locked up, it’s a hard taskmaster to give up completely. I never have to worry about which audio track to play, or whether it’s widescreen, or how to crop the display, audio-video sync, variable framerates or video interlacing. It just works. It’s so nice. That’s why I don’t rip my movies. It’s too much work to duplicate that *perfectly* so that it’s not worth the effort.

Well, as of this writing, none of the major media players for Linux (VLC, MPlayer, Xine) have native playback / resume / bookmark support, that I know of. That’s fine. No hard feelings. I’ll just write my own. And it works perfectly, by the way. In fact, one of the things I found out this weekend is that you can use -sb with mplayer to seek to a byte position. Much cleaner than trying to seek to a time position, because this way you can jump to the exact spot where you left off in the playback. The only problem is it doesn’t work well. I could only get jumping to a byte position working with MPEG2 videos, and pretty much nothing else. I’ll have to file a bug about that, if they don’t know about it already. A bit of a shame, but not a show-stopper. Mine throws the playback off by about 2 seconds (going back), so it’s not a nuisance.

The second thing, coming from getting used to DVDs is chapter support. Again, with the me leaving and coming back, it makes it nice to be able to quickly jump to where I want to be. Also, this is unfortunately not something that seems to be a really popular idea. Matroska is the only container format (aside from a DVD of course) that supports chapters. That’s the reason I talk about it so much, and always fawn over its features — because it seriously made this project possible. Also, MPlayer is currently the only media player that supports reading those chapters, and so I can easily skip back and forth — no matter what the audio or video codec, as long as Matroska supports it — and duplicate the functionality of my DVD player just a little bit more.

The next hurdle is the video quality. I’m not an audiophile in the least, thank goodness, but I am extremely attentive to detail of video, and the slightest artifacts will really annoy me. I remember growing up, watching movies on television as a kid, and realizing that something was wrong on these pan & scan transfers. There were so many times that the picture looked cut off, or the person they were talking to was off-camera, or something just didn’t sit right with me. From an early age, I realized something was wrong, but couldn’t put my finger on it. It wasn’t until DVDs came out that I really learned about widescreen (I guess it never occurred to me that the size of the movie screen wasn’t the same ratio as my television) and all the options that come with it. Every time I see a movie in widescreen for the first time, after only having seen it previously in pan & scan, it’s like a little dream has finally been fulfilled, even to this day. I also love going out of my way to see old movies on the big screen when they play in theaters, if only to enjoy the theater experience and see things as they were originally intended.

The solution to solving my video issues was pretty simple though — don’t reencode it. Just leave it alone as MPEG2, uncompressed, untouched, and in sync. Interestingly enough, the obsession only kicks in with movies. If its a televised show, any amount of signal degradation doesn’t bother me in the slightest. But when I’m trying to make a digital copy, you better believe I’m going to get cranky if it doesn’t look as good as the DVD.

I’ve spent weeks, if not months, trying to find those “perfect” settings, whether with transcode or mplayer to get the video just as nice as I’d like it, while at least saving me enough harddrive space to make this all worth the effort. I’ve since given up on that and I’m much happier not trying to figure it out. There was *always* something that was just a little bit off, and there’s never going to be a configuration where one size fits all. That made it even harder, creating profiles and categorizing what each video / tv series / whatever fell into.

The only drawback to not doing any re-encoding is that my library is of course going to need a lot of harddrive space. I’m roughly guessing that I’ll need somewhere between seven to ten terabytes of disk space to archive everything. And that’s only with what I have right now. Actually, that’s only with my TV shows on DVD, of which my collection is growing all the time as new releases come out, and I’d guess that I’ve probably got about half of what I’ll eventually end up with.

Buying up all the hardware might seem like a real pain, but I do make it up in other areas. Quality is one, but time is another. Think about all the time I save by not having to wait to re-encode everything. Plus, if I lose some data, it’s just a matter of re-ripping it and it’s done. It’s very quick. Another custom solution, of course, when it comes to ripping and wrapping my DVDs into Matroska was born out of making the whole process easier, which is what I call the dvd::bend project (dvd batch encoding daemon). I’ve been working on that a lot lately, too, and it’s really getting to the point where I’m almost done. There’s a lot of bugs, sure, but it is so nice, and it works so well, especially considering all the variables and possible ways to author DVDs.

The third big problem, and this one isn’t quite duplicated yet, is that a DVD player is near silent in operation. I get distracted easily by noise, so I can’t have a desktop system humming away in my living room at full speed all the time. I’m not an audiophile, but when I’m watching a movie, that’s the only thing I want to be able to hear.

The solution to that is simple enough, really, and I’ve been exploring my options for months trying to find out what works best. I’ve mentioned this before, but when it comes to hardware, I’ll find something that I think will work, and I’ll snatch it up without doing all the necessary research, and then get stuck with a half-baked solution. This sets me back, financially mostly, because I can’t just keep buying things that I think will work until I find the right one. I’ve been getting much better on that lately thank goodness, especially with a lot of help from some friends (hi Jason and Josh).

I’ve got a pretty good idea of what I want my hardware setup to be now — it’s just a a little expensive, and hard to find. I really think the best thing for a frontend is to get a Mini ITX board, something with onboard video that has DVI out, so I can hook it it up to my HDTV. There aren’t too many options right now, and I’m fine with that, so I’m just sort of waiting on the market right now. To be more specific, I do know exactly what I want. A mini-itx that’s fanless, but powerful enough to deliver (a VIA C7 would be great), onboard DVI, onboard NIC, S/PDIF support and some USB ports. I’d have to make sure that the video card has enough power though to actually display video fine — that was the huge mistake I made with my last one. I’m not too familiar what the XvMC support is like with the VIA video chipsets … I’ve never used anything but nvidia myself. In the meantime, I really do have a huge, loud desktop sitting in my living room. I’ve actually gotten used to it, believe it or not. I’d prefer the silence, though.

One thing worth mentioning here is the importance of getting a video card with a DVI connection. S-Video or component out is nice … if you are using an old television. But if you have an HDTV with HDMI inputs, then you want to get a DVI to HDMI cable, and your TV will act and register as a computer monitor, meaning you have zero overlay issues, and the picture is outstandingly gorgeous. My eyeballs just about fell out of my head the first time I saw MythTV on that. There’s just no going back.

Well, that’s about it for me. Three simple little features from my DVD player from Circuit City that I’m trying to duplicate with my own customized combination of hardware and software. It’s taken me a long time to where I’ve got things setup now, but it is extremely nice. I’ll write more about the cool things I discovered this weekend, they deserve posts of their own. One thing’s for certain though — I’m getting really close to my perfect setup. Pretty much all that’s left is getting the right hardware now, and I’m done. That’s pretty freaking cool.

August 29, 2007

Steve Dibb
beandog
wonkablog
» ivtv docs in progress

Believe it or not, I love writing documentation. I dunno why. One thing I enjoy about it is taking programs that have lots of options and breaking it down into clear and concise noob-friendly wording. The main reason for that is I remember all too well what it’s like being a beginner, and just not understanding what documentation is trying to tell you when it throws out all these references that you should have apparently already known about.
Once upon a time, I was really active on the Gentoo wiki. Then I became a staffer, and then a developer, and I shifted to working on the tree instead. I still miss just writing docs, though.

Anyway, I’ve been kinda half-heartedly wanting to write a quick doc for IVTV for a while now. For me though, it seems pretty simple: pick the right branch, load everything as modules, and emerge the ebuild and yer done. I figure some Gentoo-specific docs can’t hurt, though, so I went ahead and started on some tonight. I haven’t gotten really far just yet, because I’m still in the “gosh, this is so easy” stage that I can’t really come up with some content.

So, if anyone has any suggestions or ideas of what should go in this thing, lemme know. Here’s my half-written draft so far.

And for the record, if there’s any Gentoo multimedia docs you think we need, lemme know that as well.

August 20, 2007

Steve Dibb
beandog
wonkablog
» dvd ripping notes

I’m working on bend right now, and while I’m poking through the source code and fixing bugs, I’m finding small notes about stuff.  I figured some of it might be worth repeating.  Besides, I’m waiting for Super Friends to rip.

mkvmerge, dumpstream, multiple chapters and audio tracks

I use Matroska as the final wrapper format for my ripped movies.  The reason for this is that I like the features that come with mkvmerge (the binary to create .mkv files), and the fact that MPlayer supports reading chapters in the format.

Now, one thing I have happen a lot with DVDs is that there are audio commentaries on some tracks.  I’m not interested in those, but I still have to tell Matroska to ignore them when creating the final movie file.  That part is easy enough.  You just add -a to the command if there is more than one, and Matroska will ignore the others, thus saving you space in your final file if your ripped file still has multiple audio tracks (which mine do, since I copy them straight to MPEG-2 with full AC3 audio).

Another small thing that crops up sometimes, and this can be specific to certain tracks or an entire series, is there is an introduction chapter to the track that I don’t want to watch.  An example of the first (certain tracks) is that on Super Friends, some episodes have a short “intro summary” that is about 30 seconds long.  Actually, it’s the same thing for the second scenario as well (entire series).  Universal does it on all the old TV shows that I have so far on DVD (Murder, She Wrote, Knight Rider, The Incredible Hulk).  Again, its content that I don’t want as part of the final file, so for bend’s frontend, I can specify (either on a per-series or per-track, or even per-episode basis) which chapter to start ripping at.

Now, that would be all fine and good, but I use mplayer -dumpstream -dumpfile to rip my movies from the DVD.  If I’m also starting from a chapter, it will break mkvmerge’s ability to see all the audio tracks, because the AC3 headers are incomplete.  And they are incomplete because I started dumping in the middle of the audio/video.

The workaround is easy though, just use mencoder to copy the stream, and rewrite the file as an AVI (mencoder dvd://2 -chapter 2 -ovc copy -oac copy -o copy.avi).

If you haven’t figured out by now, this is a really fringe bump that someone with only very specific ripping settings would run into.   So if you’re not ripping specific chapters, with no encoding, and using matroska to cherry pick your audio tracks, you’ve got nothing to worry about. :)

buggy ide and starting chapter with dumpstream

Here’s another comment I found in my source code.  On some DVD tracks, for some odd reason I never figured out, my disc drive would flip out and freeze on the ripping.  I’ve since changed out my hardware to another motherboard completely, and I can’t remember if I ever tracked down the problem to another cause anyway, but I do remember, and I have this hardcoded now, is that if you added a starting chapter of 1 to your dumpstream command, then it would oddly enough workaround the issue and my drive always worked.

So, if you’re having funky issues with a DVD drive on an IDE cable (not serial ATA, that is), and you are using “mplayer dvd:// -dumpstream -dumpfile movie.vob”, then try adding “-chapter 1″ to the arguments.  Works for me.

getting chapters with a starting chapter

One last thing.  I use mkvmerge to include my chapter information, but to get those, I use dvdxchap, which is part of ogmtools.

Well, dvdxchap can also start at a certain chapter, and reset the chapter count from there.  Just add -c and the chapter number, and you’re done.  Very nice.

Here’s an example command of starting from chapter 2:

dvdxchap /dev/dvd -c 2 > chapters.txt

Okay thats enough for me, back to fixing more bugs.  For the record, the subversion / trac repository is horribly out of date, since bend is still under lots of development, and in some cases doesn’t even work.  I’ll fix them as soon as I get the code working properly.

August 13, 2007

Steve Dibb
beandog
wonkablog
» one htpc, coming right up

So, how long does it take to build an HTPC with Gentoo, from scratch? How about, Gentoo + LVM2 + vesafb + bootsplash + nvidia + LIRC + mplayer + XvMC + IVTV + MythTV? All in all, about eight hours. I think that’s gotta be some sorta record.

Actually, just setting up vesafb plus splashutils took me about three hours. I haven’t played with that stuff in a very long time, and since I’m on amd64, I can’t use vesafb-tng. I did try uvesafb, but didn’t feel like experimenting to see if I could get bootsplash working as well, so just went with plain old vesafb at 800×600 instead. The end result is still really nice. From boot to MythTV’s main screen, the user never sees any text (BIOS is setup to display a VGA image on POST as well).

I mostly set it up again to see if I could do it again. I’ve already got my (original) mythbox in my bedroom, which is just a small Pentium4 with a small 250 GB IDE drive. This new one, though, this is my dual-core Athlon64 with 5 SATA harddrives, totalling 880 GB just for media files. I hadn’t played with LVM2 in a good long while either, and I was cautious since last time I didn’t have much luck. This time, reading the docs, it just clicked and made sense. The thing that always confused me was how the partitioning worked. Once you wrap your brain around the concepts, it starts to work.

I’m also running the latest MythTV that is 0.20, which needs to go real stable here anyway. I’m using 2.6.22 kernel and the 1.0.1 of IVTV which is supposed to have a lotta nice fixes. I’m just glad to see Hans finally got it into the kernel. Good work, man. :) I love the new new MythTV themes in mythtv-themes-extra, too. I’m using a nice widescreen one and it’s gorgeous.

Anyway, I’ve been thinking about it for a while on and off, but I think that this time I’m going to actually write up a good Gentoo doc on how to actually do all the stuff in detail. I still can’t believe I set it all up so fast. I’ll have to post some pictures. :)