Archive for September, 2007

planet larry + planet venus migration

Thursday, September 6th, 2007

After a few bumps in the road, Planet Larry has finally migrated over to using Planet Venus on the backend. Right now, only the front page (the universe feed as I call it) is switched over. The per-language ones will continue to use the original Planet until I have time to switch them over.

Also, I added a link to the Feedburner version of the RSS feed. If you wanna use that instead, have at it.

The old universal planet feed is still available, but it will eventually be going away.  You can get it at http://planetlarry.org/planet/ but this one will only update on a daily basis instead of every 30 minutes like the main feed.
More changes coming on the way, though they are probably going to be trickling in for a while. One thing I’m thinking of doing is kicking off any subscribers who only post partial RSS feeds. That’s a part of my general “get rid of annoying stuff” directive which you’ll see more as I get my backend admin cleaned up. Venus’ ability to use regular expressions to filter posts is going to also play a big part in that.

As always, let me know if general problems with the feed / page, and we’ll try to get it taken care of. And send in some hackergotchis / avatars. :)

openwrt and x-wrt

Tuesday, September 4th, 2007

One of the cool things I got to do this weekend was put OpenWRT on my router, a Linksys WRTSL54GS. This router is actually designed by Linksys to be easily hackable, and run Linux on there. I tried this before last year, and things didn’t go too well then (part one, two, three). I decided to give it another try though, since I originally wanted to use two routers, one as a wireless bridge, to connect a mythtv frontend in my bedroom. I haven’t gotten the bridge thing to work, mainly because the new router I tried turned out to have issues in general, but having OpenWRT on my original one has been really nice. This time, I’m glad to say that the new firmware installed without a hitch, and the first try, too. I haven’t had anything even close to a hiccup yet. It probably helps that I’ve restrained myself from making any unnecessary changes.

On top of that, I installed X-WRT, which is a very nice web interface to control the router. When I first found out about this, that made me want to try again. I have managed to successfully install OpenWRT on another Linksys router back in the day, and it worked great, but I had a lot of trouble getting the firewall to work properly (networking is really not my thing). In fact, I remember locking myself out of it a few times trying to test things. So having a nice simple GUI to do things for me really saves me. This thing is jam packed with features, too. Originally I was expecting something similar to just the original Linksys interface (like DD-WRT, which is also very nice), but this is completely different. It’s pretty advanced, I’d say, and let’s you access everything you’d need to get to to properly setup your network however you like. I had everything setup just the way I liked it in a few minutes.

There are tons of packages in the OpenWRT repositories, too. My little router has 16 megs of memory on it that I can install stuff to, and I’m only using about 40% of that right now. I don’t expect to really put much of anything on here, since I’m happy to have a nice, snappy router all by itself, but there’s a lot of options, from asterisk to lighttpd with php. I suppose this thing would really be a nice setup for someone who was a network hacker, since there’s a lot of fun stuff you could do with all the ports and wireless setup and tools.

My router also has a USB port on there, so if I wanted more space I could just format a small stick and throw it in there. I’ve toyed with the idea of putting some music on there and setting up NFS, but for now gnump3d works pretty well.

Anyway, lots of cool stuff, and tons of options. It’s cool enough that I’m running a custom Linux firmware on there. It’s really nice being able to SSH into your router and poke around. :)

milestones and most wanted list

Monday, September 3rd, 2007

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

Monday, September 3rd, 2007

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.