RSS

9 HTPC Plugins that Should Exist

0 Comments | This entry was posted on Aug 16 2011

Much of my site is dedicated to home theater computers because it is one of those hobbies that never seems to get old. Even though HTPCs are very niche, I can’t help but love having one and love the freedom it brings to my TV.
Despite the great things they can do, I always find features that are missing no matter what the software. Thanks to plugin support, most HTPC software can easily be extended beyond what features “come out of the box”. Here are a few plugin ideas I have for anyone willing to code them.

  • Movie Watcher – I don’t aimlessly watch TV very often, but when I do I usually end up on either A) a movie I have never seen before and don’t care to pay attention to, or B) a movie I own and have seen a million times. The thing is, I have all of my movies ripped onto my HTPC. So why can’t my HTPC software know that I am watching The Rock and offer to switch me to the copy I have in higher quality without commercials? It would be even better if it offered to either start me at the beginning of the movie or try to sync the time so I start watching from my rip in roughly the same place.
  • Automatic Login – I know not many people have webcams plugged into their HTPCs. I believe that is only because there is no compelling reason to. But what if when you sat down in front of the TV your experience was customized to you favorite channels and shows? Facial recognition is fairly common on personal laptops so why can’t my HTPC know who I am and customize the TV just for what I like? Only a few HTPC software applications even allow individual logins (XBMC and Boxee come to mind), but I think it is time we start using it to it’s fullest.
  • Pandora TV – If the software knows who we are, cause we logged in by sitting down, we should be able to just push a “comedy station” or “drama station” and the software already knows what shows we like and can recommend shows we might like based on our tastes. Of course there would be a way to “thumb-up” or “thumb-down” a show and the software can fine tune its results for us. Sometimes it would just be nice to have my TV pick something for me.
  • Universal Video Chat – Yet another reason to have a webcam plugged into our HTPC. I don’t want to buy a Google TV, Cisco Umi, or PS3 just so I can video chat with people that have the same box. Why is there no good video chat client for HTPC software that incorporates Skype, Google chat, and Facetime all in one interface? If software like pidgin can incorporate every chat protocol known to man, I wouldn’t think 3 video chat clients would be so hard.
  • Multi-room Simulcast Viewing – Some software can sorta do this with a funky hack. But really, why can’t I just tell the TV to broadcast what I am watching to all TVs (in case of a big game) or why can’t I tell the TV I am going to the garage so continue my show out there in 30 seconds? If all of the systems are communicating, the only limitation would be if your network is fast enough.
  • PIPIPIPIP – I don’t really want 5 nested picture in pictures, but I think I should at least have the option of displaying a picture for each tuner I have (or up to 4 recordings at once). Why would you want to do this, sports. Windows Media Center has a pretty neat sports center and things like the NFL Red Zone drive customers to spend money every month. I know you would have to have a pretty beefy computer to display 4 HD videos at once. But I don’t think that has ever stopped people in the past from trying. Sure beats dragging out 4 TVs, especially if you can easily select one to view in full screen mode. Think expose or multiple workspaces but with multiple channels.
  • Live Buffers – I have 2 channels and I keep switching between the two. I also have 2 tuners that aren’t doing anything and 2 terabytes of storage. Why is it so hard to keep 2 buffers so that I don’t miss anything while I am watching the other channel? I could understand 3-4 buffers needing some serious disk throughput, but 2 buffers seems absolutely reasonable.
  • Search and Browser – These are two ideas taken straight from Google TV but they were the best two ideas Google TV had. All HTPC software should have an easy way to search for shows/music/movies/actors/whatever. I don’t care if it is a button on the remote or just type like webOS, in any case, the remote should be the first thing we go for when trying to look up information while watching TV, not our laptops, tablets, or phones. Oh and the browser can’t suck.
  • More appliances – I know this isn’t a plugin per se but I think a lot of HTPC software can’t truly shine because the average person doesn’t know how or want to know how to set it up. Boxee has a great idea with building a box based on their software and focusing on that box for compatibility and features. Sure it isn’t the best seller out there, but it is a good start for them. XBMC, MythTV, MediaPortal, etc. all need to have some sort of all in one TiVo-killer box that is an appliance and not a computer. Just look at the AppleTV and Roku, and their software sucks in comparison to XBMC and MythTV.

A New Way to Skip Commercials

0 Comments | This entry was posted on Feb 07 2011

If you have never owned an HTPC with the ability to automatically skip commercials then you probably should stop reading this post right now. Otherwise, carry on and I will explain to you how I think commercial skipping should work.

How Things Work Now

Currently if you want to flag commercials, you need to record the program and then set up your commercial skipping software to evaluate your recording. The flagging software will look for things like black frames, station logos, volume fluctuation, and other differences that can use to know when there is a commercial and when your show is on. Some software will even allow you to set up profiles on a show by show basis if there is a pattern to when they show commercials. This method works fairly well but there are some major drawbacks that will never be addressed with this model.
The flagging isn’t always 100% accurate
Despite getting better all the time, there are still some tricks that stations do that throw off commercial flagging software. One of the worst in my experience is playing the last joke of the show while the credits are rolling.
Commercial flagging takes a while
Not only does the flagging take a while because every frame of the show needs to be analyzed but the process is also very dependent on how fast your CPU is. If you are flagging commercials while trying to watch TV this can slow down other things drastically. While the process can be sped up a bit with software optimization it will never be instantaneous and this will always be a problem.
It is difficult to flag commercials in real time
If you have a fast enough CPU you can do this with some software but in most cases trying to flag commercials in real time will slow down your system and cause either the CPU to be used 100% or your hard drive won’t be able to keep up and your system will start to freeze or stutter during playback. Just imagine if you were trying to watch live TV, while flagging commercials, while another recording was happening with its own commercial flagging running. Your hard drive would be writing two shows while simultaneously reading 2 shows. If you do want to flag commercials in real time it is going to cost you extra money in hardware.
Commercial info doesn’t sync between all devices
If you have more than one TV your second HTPC should have all the information of the first, but what if you want to take that recording on your laptop, phone, or tablet? Most likely the video player on that device won’t support commercial skipping. The only way to get around this is to transcode the video, but if your flagging isn’t 100% accurate you can’t trust removing parts of the show until after you have watched it. And who wants to watch a show, set the flagging information correctly, transcode the show, and then transfer the show to your mobile device so you can enjoy it?

The Solution

So how can we fix the problem? Crowd sourcing. This would work by having people scan their recordings like they currently do, but it would also give them an option to upload their commercial timestamps to a centralized server.
This server will store the show ID, channel ID, commercial times, and location (time zone). I am not sure if all of that information is needed but it seems like it would cover scenarios of different stations cutting up shows for first time airs as well as repeats and also should cover any differences based on location. The more people that upload their timestamps the more reliable the information will be because the backend can compare uploads to see which ones are consistent and which ones may have missed a part of the show.
With this model all of the above problems could be taken care of because you now can trust your commercial flagging 100% and can even flag commercials in real time on a slow machine. Transcoding would be accurate which would let you transcode with confidence and skip commercials on the go.
Because most HTPC software allows for plugins, there would need to be plugins written for the major HTPC software or current software could be made to adapt to this method. In either case, downloading an XML file to be used for commercial skipping is vastly easier to do than creating the video processors that exist currently. With this method, commercial flagging can be cross platform without the need of video analyzers to detect commercials.

How to Make it Free

This model will be sustained by allowing people to upload their own commercial flags in exchange for being able to download commercial flags. The upload does not need to be done immediately after the show airs and this will allow for commercial flagging to take place during downtime without affecting live TV on the HTPC.
If someone does not have a machine capable of flagging commercials, they can purchase commercial flags for a cheap fee, something to help cover server costs.

I don’t have the time, nor the skill to set up this system so I am throwing it out there for anyone to take advantage of and make the HTPC world a better place. If you do create something that can do this, I only ask that you make a MythTV plugin and let me use the service for free.

Why the Mac Mini sucks for MythTV/PVR

9 Comments | This entry was posted on Nov 17 2008

I bought the mac mini for a few reasons:
1. It is very small and very quiet
2. It looks good with my AV equipment
3. There are a lot of accessories that match the looks of the mini
4. It came with good enough specs for video playback and recording

The main problem I had was dealing with the small/slow hard drive. So I wanted to upgrade that but here are some of the things I ran into.

First of all, the Mac Mini had almost everything I wanted (and some things I didn’t care about) built in. I wouldn’t need to add any features to the device unlike other small computers I was looking at. Most other small computers came with almost everything I needed except one or two thing, built in IR for a remote or firewire. These were requirements for me. I know I could have used a USB -> IR adapter but I wanted this computer to look a little less DIY than my last MythTV. And not having firewire seemed too complicated to try and add my own through expensive adapters.

My goal for the Mac Mini was to upgrade the internal hard drive and use an external 1 TB drive. The reason for this was storage and speed. The internal hard drive in the Mac Mini is only 5400 rpm and while that works fine for web pages and word documents, when reading and writing large media files all day it just would not be fast enough for the task. One option was to install the OS on the internal hard drive and use a external hard drive just for storage over USB but the CPU overhead of USB and the read/write speeds would just not cut it (internal SATA II is over 6 times faster than USB 2.0/Firewire 400). There also is no firewire 800 port so that wouldn’t work either. I tried following a walk through that someone else already did with a mini hard drive upgrade but apparently Apple has updated their device since this was done and adding a hard drive the same way is no longer possible. If this worked for you on a post Nov 2007 Mac Mini please let me know in the comments. The problem I had was the Mac Mini would never detect any hard drive outside of the chassis. I tried with multiple cables, hard drives (2.5″ and 3.5″) but never once was able to get OSX or Ubuntu installed on the bigger hard drive.

To break it down, the reasons the Mac Mini actually sucks for building your own PVR are these.
1. Slow (low storage) hard drive
2. Expensive features that are not needed but you don’t have a option but pay for. (OSX, iLife, Apple tax, etc.)
3. Hard to upgrade processor and memory

And these are the reasons I picked the AOpen over the Mac Mini.
Mac Mini uses a older 945GM chipset with 667 Mhz vs. GM45 chipset with 1066 Mhz, it uses a more power hungry 65nm (T5600/T7200) processor vs. 45nm (T8100 or any socket p processor you want), and GMA950 GPU vs. GMA X3100. Not really big deals considering both should have the ability to play back most 1080p content. But having updated specs just make things a little easier, and the ability to upgrade helps make the PVR future proof…well almost.

For anyone interested, here are some pictures of the steps I took to make the Mac Mini NOT work with an external eSATA 1 TB hard drive.

Sata to eSATA adapter. I was sent the wrong adapter and Microbarn would not accept the fact that this was a female SATA to male eSATA cable when I needed male to male. Even after sending them this picture. P.S. don’t order this, order this.
Adapter plugged into the Mac Mini SATA riser card with a male to male sata adapter I had to buy extra thanks to Microbarn. Maybe I just don’t understand male and female connectors. :)
SATA cable run inside the case. This wasn’t as hard as I thought it would be. See the picture above for what it looked like coming out of a slightly modified Kensington lock hole.

Let me know how a Mac Mini is working out for you as a PVR or what other machine you bought as a substitute in the comments.