Wednesday, December 19, 2007

Updates - Assasin's Creed, PS3 Divx, NMT

Assassin's Creed
Ubisoft finally released the Assasin's Creed patch that fixed up the freezing issues. After completing the final portion of the game using the patch, I have to say that it appears that they have removed the freezing bugs entirely. The graphical bugs are still there, but it doesn't matter so much to me anymore since I've beaten the game. It seems it doesn't have a whole bunch of replay value. I might go around and collect all the flags one day when I beat Ratchet and Clank and the new Mario game.

PS3 Firmware Update
Sony released the newest firmware for PS3 (2.10). The updates include support for the final Blu-ray specification, and a full Divx-blessed MPEG-4 implementation. I'll be doing some testing with different formats to see what all plays and what all doesn't, but I hear that basically Xvid and Divx both play from media (hard drives, CDs, etc) but that streaming Xvid doesn't work. I'll post my results.

Networked Media Tank
In other news, I was finally "invited" to order that Popcornhour NMT. In case you didn't know, because of all the demand and buzz around the device, they are are allowing customers to place orders on an invitation basis. You sign up in an invitation queue, and when its your turn you get an order invite that is good for two days. Its kind of like preordering to guarantee that you'll get the NMT eventually. So I'm excited about this device shipping...it should be in sometime in January.

Monday, December 3, 2007

Assassin's Glitch

I got Assassin's Creed for PS3 even after reading the mixed reviews. All the reviews I've seen echo the same thing: repetitive gameplay. So with this in mind, I decided to go ahead and buy it anyway. I figure its about expectations: I wasn't expecting a lot of variety, so I wasn't disappointed. I'm now on the sixth assassination into the game and I am still not bored with the gameplay. Saving citizens is probably my favorite part of the missions you can complete: there is something satisfying about owning four or five guards and then walking away stealthily just in time to hear the investigating guards say "Who has done this!". And all the RPG folks who are used to getting engrossed in a story will probably have no problem with the verbosity of this title (there is a LOT of dialog). Does it have real stealth on the assassinations? I've only managed to pull off ONE truly stealth assassination so far, so I'm thinking no. Is it a hell of a lot of fun to fight and stealth kill guards, scale the rooftops, pickoff archers with throwing knives, and fly through the air for cinematic hidden blade kills? ABSOLUTELY. The game falls short in several areas, and could have been one of the most amazing titles ever. But having known what to expect a priori, this title is still really really fun.

And now the bad part, the reason for the title of this post: the game is glitchy as HELL. And on multiple levels. For example, there are blatant graphical bugs, like people and smaller details like pots and boxes being drawn-in off in the distance. I even once had a guy draw in about three feet in front of my eyes. Aside from the intermittent framerate drops that last for a second or two, after one assassination as I was running back to headquarters, the framerate dropped to about 10 fps or less (no lie) and stayed that way. It was unplayable. And I don't mean for 5 or 6 seconds: it was several minutes. There was no more guard action or chasing, I had cleared the alert, etc. and it still lagged.

And these graphical glitches are the upside. When I next entered headquarters to complete the assassination in 10fps mode, it froze on the next load screen. I rebooted (luckily it had saved the assassination) and tried to leave for the next city. The load screen froze again while riding my horse out of town. All told the game froze about 4 times on Saturday, and twice yesterday. They are always slightly different too:
  1. The load screen where Altair can walk around never goes away. I was gone for half an hour, and when I came back it was still "loading".
  2. White "fast forwarding" screen freezes, but you can walk around "underneath" the white screen. It was frozen like this for minutes, but I could run and climb and hear myself doing these things from the audio.
  3. During a pickpocket while I was locked onto a guy, all he characters including myself stop moving and I can't pause the game, but the camera can still be controlled.
  4. Straight up freeze in game.
Basically, it seems to me that I get one freeze that requires a reboot once every 1.5-2 hours of continuous gameplay. When I notice this sort of mean time before crashes and freezing of software, I immediately think "memory leaks". Its the same reason that Firefox 1.x is pretty much guaranteed to crash if you use it without quitting it for 3-4 hours. You'd think that the developers MIGHT think to run some sort of primitive memtest or profiler on some real gameplay scenarios. It appears to me that they didn't. There is word from Ubisoft that they will be releasing a patch addressing these issues. Let's hope that it doesn't take TOO long to come out. All told though, this game is still striking me as so damn fun that I don't really care.

Tuesday, November 20, 2007

Installing Gutsy on PS3 and musings on Blu-ray backups

Well, its done. The instructions on psubuntu.com are really all that you need, so I won't go into much detail here. I'll note that I tried an update straight up using the update-manager, but this left me with an unbootable system, so I decided to install from scratch. Then I upgraded the kernel to support Bluetooth, Wifi, and UDF 2.5.

I popped in a Blu-ray movie, and was amazed to see that the UDF 2.5 functionality actually works and the disk was mounted as a drive almost immediately. I was able to browse through the disk's directories etc. but due to AACS, was unable to play any of the m2ts files containing the actual video and audio. Next thing I'm going to tackle is how to work with Blu-ray movies to decrypt them and put them onto my external drive for watching. The following things come to mind, which remain to be tried out:
  1. Using the dd command to rip an ISO of the entire disk from PS3 to an external drive, then mounting that ISO in Windows and using AnyDVD to do the decryption.
  2. Using DumpHD in on the PS3 itself to do the decryption (I THINK this is written in Java, have to make sure).
Of course there are annoyances here with number one, like determining what filesystem plays nice with Windows and Linux while supporting 20 GB files, all the while remembering that my target drive is formatted for playback with my Mac. I think HFS+ is my best bet, as Ubuntu supports it, MacDrive is available for Windows, and its Apple's native format. Number two sounds easier, but I'm not sure at all how user friendly the UI is. I guess I'll post another update maybe after Thanksgiving.

Tuesday, November 13, 2007

Divx support coming to PS3!

That's right, it looks like there is going to be some sort of a software update either from the Divx folks of from Sony that will enable Divx playback on the PS3.
This is a huge step towards making this device a better media hub. I think its really funny that in July, I got the following comment in response to my rant about the suckage of the PS3's media abilities:

"No console supports xvid/divx for a reason and they most like [sic] never will." --Roberto (who won't keep a public profile)
Looks like "never" was less than 6 months. Oh well, people are dumb and horribly wrong sometimes.

Ars is also reporting that the 360 will be getting Divx soon too. This has me now wondering if the 360 would do a better job at playing 1080i HDTV rips. I think the 360 even supports HFS+ formatted drives, making it a good candidate for us Mac folks as a HTPC type of device. The question now for me is how much of a dork do I look like if I have all three of the major gaming system's that are out there now? And I've been looking at this NMT solution from Popcorn hour, but they're making like 50 of those at a time and selling out before I can get one. Oh what to do?

Friday, November 2, 2007

Why I can't get excited about the new Mac OS X Leopard

There have been plenty of reviews out there about how awesome the latest version of OS X is. I can't help but see a few a day as I go through my RSS feeds. Well, I'm here to say that I'm not thrilled. It doesn't actually seem that much greater than what I've got now with version 10.4. I'm going to run down a few of the new features, and my opinion on them as applied to my Macbook. Looking at their advertising, the biggest features they are pushing are:

  1. Snazzy Finder and UI enhancements.
  2. Time Machine backup capability.
  3. Spaces.
  4. Upgrades to apps: Mail, iChat, and Safari.
  5. Parental controls.
  6. Boot camp.
Let's start with number one. Obviously, these are cool...new ways to interact with your system, cool new visual effects, etc. They've added a iTunes-esque cover flow UI for navigating your files, a cool file preview mode, and some improvements to the dock. That said, they kind of screwed up little aspects of the dock too...remember that little black triangle under your icons that told you an app was running? That's gone, replaced by a blue bubble that is about the same color as the new dock itself. Coupled with the dock transparency, you'll have no idea which icons have this icon and which do not.

What about Time Machine? From a software perspective, it is probably one of the best solutions to regular backups, and seems very well written. The thing is, I have a laptop. Time Machine requires an external drive, and I'm not going to buy one and lug it around or want to plug into it regularly, especially for a feature that is pretty useless for me. My laptop is for lightweight use, i.e. I don't have lots of un-losable data on it. Its just a feature that I don't particularly desire. In other words, I never once thought OOH! I need daily backups on my Macbook!

Then there are Spaces...oh what to say. They're a tired old UI that have been around in the GNOME desktop for years as workspaces. They even shamelessly stole the name. Being a GNOME user in Ubuntu, I can say that they aren't phenomenally useful if you have multiple monitors. I suppose they'd be useful on my Macbook though, but again, it doesn't WOW me at all.

The application upgrades are all really cool...I just don't use any of those apps. I use Firefox for browsing, gmail for mail, and Skype for messaging when I need it, if at all.

Parental controls...I'm not a parent, its my personal laptop. Completely useless to me. Nuff said.

Boot camp has been upgraded from the beta. What does this mean? Well, they released some new drivers on the Leopard install DVD, and got rid of the public beta installer while replacing them with install files on the DVD. That's all! Boot Camp isn't even a separate technology...its just multiple OSs, a feature of ALL hardware, coupled with some drivers from Apple so that some of the devices like the built in webcam is better supported in Windows. You can hack your own multiple OS setup without Apple's blessing anyway. And I'll bet I'll just be able to get the new drivers soon too.

So, while there are some cool features in Leopard, none of them are must haves for me, particularly at the $129 price. The only thing that makes me go "hmm" is the new Finder and UI aspect. I think they're cool, but not THAT cool. I guess I've gotten spoiled on getting my OS upgrades for free with Ubuntu. To summarize, if this upgrade were $50, I'd get it in a heartbeat. But at the $129 price, I'd rather spend my money on Wii and PS3 games.

Wednesday, October 24, 2007

Gutsy on PS3

There are two places I use Ubuntu: at work, and on my Playstation. The work machine has been upgraded, so now it is time to upgrade the PS3 to Gutsy. This should be very interesting...I'll tackle this in the next few days and post updates.

Thursday, October 18, 2007

Upgraded to Gutsy

The upgrade went off without a hitch! I'm now a proud user of Ubuntu 7.10.

In terms of features, it is more of the same of what you love about Ubuntu. The system runs as it should, and I'm happy with it. I really haven't noticed much new, other than the Display control panel that now has support for multiple monitors. It didn't do what I wanted really (screwed up the resolutions), so I went back to the files I had from when I manually edited my configuration files to work perfectly. Its a shame that this was supposed to be one of the biggest features, but doesn't seem to quite work. The whole system seems a little more snappy and responsive though which is nice, but it could just be my imagination.

Wednesday, October 17, 2007

Upgrading to Gutsy Today

I decided to beat the rush and get the newest Ubuntu a day early. It goes official release tomorrow, but there is a chance that the servers will be overloaded on release day. For those of you wanting to do the same today, just run "update-manager -d".

Monday, October 15, 2007

Back to Technology: The Networked Media Tank


I've recently lost a little focus, writing about things other than technology. Today, I'd like to go back, namely to a product that is coming out soon, the networked media tank (NMT). This is from a company called Sybas, but they only sell to other distributors right now, like popcornhour. I've been looking at one of these, as it is basically a standalone playback device that can play directly from a hard drive, and can connect to a screen/TV via HDMI, component, etc. Think "stripped down home theater PC" (or "Apple TV without the restrictions of the iTunes/Apple universe").

I've got a lot of media recorded from my DVR and backed up onto external HDD, and as I've said before, it would be great to have a simple solution to play this content back without having ANOTHER huge device in my entertainment center, be it full blown computer or my laptop. I thought the PS3 would do it, but Sony's MPEG playback is still bugging out on files that do fine on a PC...but I digress, I'm tired of that not working. As it is now, I have to set up my laptop whenever I wish to watch this content. I have to:
  1. Plug my laptop into the power outlet.
  2. Plug the external drive into the power outlet.
  3. Plug USB from the drive to the laptop.
  4. Plug the mini-DVI to HDMI cable into my laptop.
Its pretty intense and takes just a couple minutes longer than I want. The NMT might solve my problems now, as it can playback the files off of my drive directly. Of course there is still the dreaded filesystem support question...it looks like the NMT supports the Linux EXT3 filesystem and no others, so this is another issue...sigh.

Friday, October 12, 2007

If you want to comment, at least keep a public profile

I'm kind of tired of reading comments from people and thinking that I'd like to know more about them, only to find that their profile isn't publicly shared. I'd say that this is 99% of the case with comments. Please people...if you are going to comment, at least make it so the reader can find out a little bit about who you are. The meaning of a comment on an article or post is diminished without context. For example, if I post on someone else's blog about a technical issue with, I don't know, software, well then at least you can look up my profile and blog an maybe glean that I am somewhat qualified to talk about such things. I feel that people kind of hide behind anonymity, which is the point of the internet I suppose, but it never hurts to bring in real world context into online discourse.

Wednesday, October 10, 2007

Watch out for Amway/Quixtar

I was recently approached in a parking lot by a fresh off the boat Indian guy looking for the campus bookstore. I pointed him in the right direction and began walking away. As I did, I heard the question "Are you from India?". I get this a lot, and I politely answered that no, I am not, but my parents are from Bangladesh, the country next door. He starts asking me where I'm from, what I do, etc., and he exchanges the same information with me. He tells me that he works in IT, but that he also has his own business on the side in which he has a concept similar to amazon.com, in which he is partnered with people like Dell and IBM to help increase their market share. I think "cool, this guy might have connections, it never hurts to keep contacts." I'm thinking that because he is a kind of start up, he might need a coder to manage this new amazon.com type of website. How wrong I was.

He asked for my phone number, and since I thought he'd be a good connection since he had a start-up internet business, we exchanged numbers. I get call Friday night saying how he really felt good about me, and that his company was kind of hiring. He wanted to meet to discuss the opportunity.

The meeting started with a condescending overview of how franchising works, and how McDonalds makes their money, and how I have to multiply my time by getting others to work for me if I want to become wealthy. Instead of offering me a job opportunity in any real start-up, he goes on about how I can open an online store through this system he uses, and how I can get bonuses for signing up other people into the system. It became apparent that this guy was just trying to get me to sign up so that he gets more of a cut.

Basically this guy has an "online store" where all of his product is provided by this company called Quixtar, which is just the online arm of the notorious Amway. I suspect the online store website itself isn't anything at all but just the Quixtar page itself, and I'd have to put in some sort of ID number indicating that I'm buying from him. The fact that he had given me a business card with no URL for this supposed e-business website should have tipped me off.

He showed me some DVD on his laptop of a conference he attended, a Quixtar conference where 20k people with 40 millionaires among them attended. Of course this is a part of the scam, you have to drink the cool-aid and attend conferences and meetings to be successful...and guess what, you have to pay big money to attend, money that goes directly into the hands of higher up members who host the conference to teach you how to be successful. There is some bigwig up at the top of this scheme who started a company that sells informational materials and conference tickets on how to be successful in this program.

The point is that there is really not money in moving the retail products themselves, only money in selling promotional materials and signing up other poor saps. I think I've learned my lesson. This guy was dishonest with me, misrepresenting himself as a businessman looking to hire, when really he is just a peon in this pyramid setup. Note I don't say pyramid scheme, because that is a very specific thing regulated by the FTC, but Quixtar straddles the boundary between multi-level marketing and pyramid scheme. So if you ever encounter someone claiming to be a business person wanting to discuss an opportunity, makes sure you ask them upfront if they are with Quixtar...and if they are, wish them good luck and walk away.

Friday, October 5, 2007

Gutsy Counter

Its just a few days now until Gutsy goes official. If you've been on the fence about Linux, give this one a try when it officially comes out.



Tuesday, October 2, 2007

Editing hosts file for convenience and ad blocking

DNS Servers
When you type in www.google.com into your browser, we all know that there is a DNS server somewhere that gets queried to resolve that name into an IP address that can actually be used to start connections. But did you know that you can override these lookups locally? The TCP/IP stack looks in a file called "hosts" that resides somewhere on your system to FIRST resolve names to IP addresses before querying the DNS. This file is just a plain text document with a list of IP addresses and hostnames. On most *nix machines (MAYBE not on all BSDs though), the file lives in /etc. On Windows, it's usually in windows\system32\drivers\etc. Play around with it.

Make Digg Load Faster
I've had a bug with the digg ad servers that causes each digg page to take upwards of a minute to load, with my status bar saying "Transferring data from y.digg.com", so I added the following line:

127.0.0.1 y.digg.com

This redirects all requests to y.digg.com to the IP address 127.0.0.1 which always corresponds to your own machine, the localhost. Since your machine isn't hosting any evil ad server, your browser can't establish a connection and gives up immediately trying to contact y.digg.com, making digg load faster. There are other fun things you can do, like add aliases to your hosts file for commonly accessed hostnames:

192.168.1.110 rajserv

This could let you do things like ssh rajserv on a local network instead of having to type in the whole IP address.

General Adblocking
The more general thing to do with this technique is to find hosts files on the net that have a list of all the bad adservers on the web. One such file can be found here, or you can just google for "hosts file". Some care must be taken editing these, just make sure to keep back up copies of the file when you are editing. On *nix, you will have to be root, so make sure to do the proper su or sudo before editing.
Having one of these adblocking hosts files pretty much blocks every ad/banner/cookie you can imagine, making the web experience a lot faster for many sites. Enjoy!

Monday, October 1, 2007

Learning Typesetting in TeX and LaTeX

If you are in academia, or ever have been, chances are you've seen the output of a system called LaTeX (pronounced la-tek or lay-tek). This typesetting system lets you create professional document with figures, mathematical equations, etc. Many professor's notes are written in this format and then distributed via PDF or HTML. Many professors then take sets of notes like this and publish textbooks. Pretty much every peer reviewed journal out there requires submissions to be formatted in LaTeX. In short, if you want to be in academia, its important to know how to work with it.

I just wanted to share this good tutorial I found:
http://frodo.elon.edu/tutorial/tutorial.pdf

This is a good reference if you are wondering "how do I insert a _________?", this document will most likely tell you how to get the symbol you desire. Another good place to get this type of information is from Wikipedia:
http://en.wikipedia.org/wiki/Help:Displaying_a_formula
It turns out that the equations and math typesetting in Wikipedia use a subset of TeX, of which LaTeX is a variation/implementation. So most of these are valid and useful, although you may find that some of the tags/commands on this page don't work as expected.

I hope this was useful to SOMEONE...

Wednesday, September 26, 2007

Gutsy goes beta officially tomorrow!

As I've mentioned in previous posts, I've been using Linux at work for about 9 months now, and switched to Ubuntu from Red Hat Enterprise a few months ago in hopes of having GUI configuration of multiple monitors. The version of Ubuntu that is the newest officially supported one (Feisty Fawn) has no such tool, but the release that is coming out next month (Gutsy Gibbon) does:
And this goes officially beta tomorrow! I'm excited. Of course it's been available in alpha form for a few months now, but the development process is moving along towards the release date next month.

Monday, September 24, 2007

Motorola STB 5C bug?

DVB can be encrypted, making it useless once captured via Firewire. If you're using the Apple Firewire SDK, these channels come up as "Copy Once" in the Copy Protection field. I found a workaround...just play with the Pause and Play buttons during playback and recording. I hope this works for you, and sorry for the intentional vagueness. The DMCA is a scary thing.

Tuesday, September 4, 2007

1080p Macbook Update

This is an update to my original post, which is a full tutorial on getting 1080p to come out of your new Macbook.

I've been getting comments about how the workaround given here doesn't work for some particular TV models. Several people have issues with 10.4.9. I would suggest firstly to update to the LATEST (10.4.10 I believe), which is what I've been conducting my tests with.

There is another caveat I failed to mention, and that there is an issue with signal strength that could be at fault. I've read reports on other forums that TVs expect higher signal voltage levels than what the Macbook outputs, resulting in the TV being unable to lock onto the appropriate parts of the signal. This could be the problem for people getting a picture for a moment, and then a garbled nonsense screen. This device could be the answer, although it is pricey. Googling for HDMI ampilfier might help, or if you're and adventuresome electronics tinkerer, you might be able to DIY, that is make a three channel high bandwidth amplifier.

Others have suggested using switchresx:
Take the 1080i settings and just disable interlaced button and set the 30Hz refresh rate to 60Hz. I now get the problem that the picture is totally blurry/blocky. (Thanks David)
This is unfortunate, because when this works correctly, you get a glorious full resolution image that looks breathtaking.

My last bit of additional advice is to bootcamp install Windows if all else fails. XP home is sufficient, and hopefully you have an old copy lying around. I retired an old Pentium II machine I had with XP Home on it, and transferred the license/key to my Macbook. Or you can hope Leopard has fixed this issue entirely, but that is a more expensive solution, and one that we have to wait for until next month.

Thursday, August 23, 2007

iPhone recessed headphone jack DIY hack

Yes, that's right, this "hack" enables you to use your iPhone the way YOU want to, not the way Apple wants you to. They want you to use their stupid headphones or an adapter, and YOU want to use your own.

What does it even mean to hack a headphone jack, does that even make sense? I think of hacking as a way of making an item/object/system/whatever do something which it isn't designed to do.

Which brings me to the fact that the iPhone has a recessed headphone jack, meaning that unless you happen to have a pair of headphones with an incredibly small connector, it won't quite fit right into the iPhone. Companies like Belkin try to sell you an "adapter" that fits into the recessed jack for like 10$, but this is a bunch of bull, its a direct feed through. We can make one ourselves for a few bucks and about 2 minutes of our time. Get a hold of the following:
  1. A 3.5mm M/F audio cable if you want to plug in other headphones. If you are trying to plug the iPhone into another device that accepts 3.5mm input, use a M/M cable. I would suggest Monoprice, but you should get a good look at the cable before you buy, so try your local Radioshack if you are unsure. More on this below.
  2. A sharp knife (anything that uses a razor, like a utility knife or box cutter, etc).
I had these both laying around the house, and I suspect many others do too. If you're buying the cable, make sure you get a good look at it, particularly near the base of the metal jack. There is always a little bit of a metal disk at the base, and you have to make sure this is smaller than the recession in your iPhone. In my experience, most cables have one small enough, but try to look at to make sure anyway.

To apply the hack, simply whittle away some of the plastic jacket around the jack itself. I would recommend using angled strokes starting at the metal disk's edge, then cut a wedge off downward. Do this all the way around, so your plastic jacket is now more of a cone than a cylinder. Don't give into Apple's BS, DIY instead.

Return of the Hack
This is really just another option, but "return of the hack" sounded so much cooler :-) Get a hold of an old pair of iPod earbuds. I happen to have a pair I stepped on that don't work. It's little connector is small enough, so we're going to use it to make a Frankencable. If you have ANY experience splicing your own cables, this should be cake, but I'll walk you through it anyway.
  1. Snip snip. That's right, cut the cable just anywhere between the jack and the earphones.
  2. Keep the side with the jack and strip away the insulation, about two inches worth. Your teeth work well for this, or just get crafty with a utility knife (or god forbid wire strippers).
  3. There should be three little wires in here, strip away about an inch on each one of these.
  4. Repeat steps one through three on your good headphones, but cut closer to the jack this time and work on the headphone side instead of the jack side. See where this is going?
  5. You should have three bare wires sticking out of both parts. Now all we do is twist them together in matching pairs, and electrical tape each splice. Now electrical tape all three together, et voila.
If you wanted to (and aren't afraid to try) you could apply some solder to the twisted splices, and maybe use some shrink tubing instead of electrical tape. This makes for the best solution, but the one given above is quicker. I'll leave the details up to you. Enjoy.

Saturday, August 11, 2007

1080p out of a Macbook

You have a shiny new Macbook, and you want to try it out with that 1080p native TV you have. Chances are you have an HDMI input on your TV, and hopefully one that also accepts external audio. This is a little start to finish guide on how to get it all hooked up and working.

The Hardware
You'll need the following:
  1. Apple mini-DVI to DVI converter dongle
  2. DVI to HDMI cable
  3. 3.5mm audio to RCA cable
If you already have an HDMI cable laying around, you can instead get a DVI-HDMI converter for step two. Luckily DVI and HDMI use the same kind of TMDS video signals/protocol just with different connectors, so this is a nice simple conversion of pinout with the signal not even being altered. And its all digital, so don't too much worry about signal loss through all these connectors.

A Problem Arises...
This covers the hardware side. Run the mini-DVI to DVI from your Macbook, plug in the DVI-HDMI cable you have/made into this, then plug the other end into the TV. If you want audio, use the RCA cables from your audio out to the HDMI audio in. You'd think you could plug it into a 1920x1080 native TV and it would "just work" right? Well it doesn't:


As you can see, the maximum resolution listed in your display preferences is "1920 X 1080 (interlaced)". There is apparently a little bug in OS X Leopard Tiger that makes it output 1080i, and no matter how you fiddle with your Sytem Preferences and Display settings, it won't give you 1080p. (Updated 9-26-2008; I mistakenly said Leopard before, I meant Tiger. I think Leopard fixed this issue, not sure though)

The Workaround
Despite this bug, there is another related bug that makes 1080p work. First, go to System Preferences -> Displays, and check "Show displays in menu bar".
Before
After

You might or might not have already had this enabled. Then, go to the display settings, and set the external monitor to something else like 1600 x 900, then back to 1920x1080 (interlaced). This has the effect of adding the 1920 x 1080 resolution to your list of recently used resolutions. Note overscan is in this set of menus too, and depending on your TV, you might have to turn it on or off. The TV needs to be set in a 1-to-1 pixel mode too. This is called "Full-pixel Mode" by Sony, it will vary by manufacturer...go through the TV menus to find these settings.

So now check the top Display menu you just enabled: it should have two options for 1920x1080 on the external monitor with no difference between the two visible in this menu:


There is however, a difference: one is progressive, the other is interlaced. All you have to do is try the other one, and watch your TV to see when it says it is receiving a 1080p signal. Bingo!
Update 10-15-2007: Increase the number of recent items in this menu if you still don't see the extra item. Thanks to Kristofer from the comments for pointing this out.

Caveats
You might notice some low framerates if you try 1080p trailers and the like. This is because the Macbook (with its RAM sharing Intel GMA 950 graphics chipset) may not be the best powerhouse to deliver full framerate 1080p, so I'd reccommend dual booting into Windows. Why? Because for some reason, according to Wikipedia, Windows will share up to 224MB of your system RAM for graphics purposes, while OS X will only steal 64MB. So if you have the RAM for it, Windows will do a better playing back some 1080p trailers and whatnot. Enjoy your new monitor :-)

Friday, August 10, 2007

Multiple Monitors in Linux

I had been using Red Hat Enterprise Linux 4 at work for about 6 months. It was truthfully a pain in the ass to use because the package management is based around rpm and a Red Hat tool called up2date. The default repositories up2date looks at are pitifully lacking substance. I'd found a useful repository of RPMs, but I found changing a bunch of .conf files to point to the new repo was still painful. Then recently my configuration tools like up2date, the screen settings, and the print settings wouldn't launch. For those of you in the Windows world, all of my "Control Panels" were unavailable. So, my desire for a nice GUI update/package manager combined with the non working control panels lead to one conclusion: scrap RHEL4, install Ubuntu. I decided to add another graphics card and monitor to my setup at this point too, hoping the Ubuntu install would pickup on the hardware and automagically set up multiple monitors. Unfortunately I was wrong.

Quick and Dirty secrets of xorg.conf
My Ubuntu install went off without a hitch, but the second monitor never came on. To be clear, I have a main AGP graphics card, and a much older crappy PCI one. They both connect to their monitors (two of the same model of Dell LCD) via VGA. It turns out the problem is with the X server, which is the thing that is the basis of every GUI on Linux, be it GNOME, KDE, Xfce, whatever. Configuring X is the first step in getting multiple monitors with the proper resolutions, color depths, etc. There is this file /etc/X11/xorg.conf that does the magic. If you have the right configuration settings here, you can make wondrous things happen. The first thing I thought was "Hey, Ubuntu probably has a really nice GUI multiple monitor configuration!". Turns out it doesn't so that means that I'd have to modify xorg.conf by hand. At first I tried setting up something called Xinerama using a forum post I found. No luck with this, even though I am convinced I did things exactly like they said. After digging around some more, I came up with the following, and it pretty much works. Where the Debian configuration of X failed to find and set up the second monitor, X's own configuration of itself does not. Try the following:

  1. Reboot into a failsafe shell/single user mode. This keeps X and your desktop environment from running. You need to do this to configure X (can't configure itself while its running). Failsafe mode usually involves stopping your boot loader by pressing some buttons during bootup, then picking the appropriate option. Note that you'll be root, so be careful.
  2. Make sure all graphics cards and monitors you want are hooked up and ready to go.
  3. Do a "X -configure". This gets you a local version of a configuration file called xorg.conf.new
  4. Now try it out: "X -config /root/xorg.conf.new". You should be greeted with some test patterns on both screens! The mouse will move back and forth across both screens too. Simple as pie.
  5. Now quit X: ctrl+alt+backspace. If you didn't get the test patterns...abandon all hope, I know not what else to do.
  6. Backup your working xorg.conf just in case: "cp /etc/X11/xorg.conf /etc/X11/xorg.conf.working"
  7. Copy over the new config file to where X expects its configuration file "cp xorg.conf.new /etc/X11/xorg.conf"
  8. Do a "reboot"
There you have it, you should have two desktops! If it didn't work, you'll get some scary output...no fear if this happens. You'll be in a root shell, so just replace the file with your backup ("cp /etc/X11/xorg.conf.working /etc/X11/xorg.conf") then "reboot".

If it worked, this gets you a fresh, working start to editing xorg.conf. The two Desktops are still distinct and have no way of moving windows between them at this point, so one last thing to enable that is to open up your xorg.conf ("sudo gedit /etc/X11/xorg.conf") and add the following line:
Option "Xinerama" "true"
To the "ServerLayout" section. Save the file, then do a ctrl+alt+backspace to try it out! Remember if you screw things up, just go back to the backed up file you have. You might need to edit the "Screen" section some to support the display modes you want, and maybe comment (#) out the HorizSync and VertRefresh parts of the "Monitor" section. You can see your backed up copy of xorg.conf for the formatting of the display modes.

Final Thoughts
It's not Windows. It's not easy. It's kind of a pain to set up. Oh Ubuntu, why don't you make a GUI tool to make this configuration nice and easy, and why oh why don't you include it as a System->Preference option? I guess they're working on it for 7.10. But I hope I have saved you some of the trouble I came across when trying to configure multiple monitors. Happy editing!

Wednesday, August 8, 2007

Thoughts on some HBO HD broadcasts : 810i ?

I was watching HBO HD the other day, and Flight of the Conchords came on. I noticed that although this was a 1080i broadcast, and the aspect ratio of the show appeared to be a regular 16:9, the whole show was windowboxed top to bottom, left to right:I know this is Entourage (which doesn't display like this), but you get the idea. The gray colors are for emphasis, you most likely see black all the way around. You might have noticed the same thing about HBO HD commercials too. My Sony TV has a "zoom" feature that zooms in on a 16:9 shaped box right in the middle of the screen, so that the letterboxing is perfectly offset and I have fullscreen. This got me to thinking: what effective resolution am I getting out of this ?

Some Quick Calculations
The whole frame is 1920x1080. Its pretty clear that the lighter gray box is a 4:3 box maximally fitting the larger box. The height is 1080, and if it is in a 4:3 proportion, then the width of the smaller box is 1080/3 * 4 = 1440. So we're down to 1440x1080. The content itself is 16:9, maximally fitting in THIS box. So if the width of the content is 1440, the height is 1440/16 * 9 = 810. So we're finally down to 1440x810.

Keeping in mind that the original broadcast was interlaced, we could easily call this resolution 810i (even though this isn't a broadcast standard). So when I use my TV's zoom/scaling feature, what I'm seeing is broadcast 810i. Pretty interesting...companies like HBO probably use this little shortcut to get away with putting out a broadcast comparable in quality to 720p, while saving on bandwidth over a 1080i channel.

Conclusion
Who knows, its just a random thought I had. Feel free to comment with your thoughts...

Monday, August 6, 2007

uPnP server for PS3

This is just a brief roundup of what I have found, and what has worked for me for streaming to my PS3.

The XP side of things
I've had luck with the following:
http://www.microsoft.com/windows/windowsmedia/devices/wmconnect/default.aspx
I personally don't trust WMP11, I use WMP10, so I had to find the standalone version of Windows Media Connect that works with WMP10. Some googling did the trick. Note that Hi-def program stream stutters over 802.11 connection I am using.

On the Mac side of things
I found this:
http://www.applesource.com.au/how-to/how-to-stream-media-to-a-ps3-from-a-mac/210/
This basically is how to setup the FOSS package called Mediatomb for use on your Mac. If you already use the Fink package management system on your Mac, this is a lot easier. If not, this still walks you through.

Sorry for the short post, but I figure this will help some people out.

Friday, August 3, 2007

The Truth about Upconverting DVD Players

HD and related technologies aren't that well understood by the general public. We've all seen the hype about "true HD" displays and about "upconverting/HD compatible" DVD players, and not many people care about or understand what these things mean to their viewing experience. I had a friend recommend that I get a 1080i compatible DVD player instead of getting BD or HD-DVD right now while I wait out the format wars. He claimed his DVD picture was as good as HDTV. I've read advice that says that for fixed panel displays, upconverting DVD players match the native pixel count of the display, and thus provide a better picture. I'm here to say this:
all of the above is bull. Whether we're talking about interlaced vs progressive, upscaling DVD or not, its all fancy marketing terms to get you to think you can get a better picture. The truth is, both of these rely on real-time interpolation, and its a question of which device has the best algorithm.

What is interpolation?
It is any method of guessing at information you don't have. For example, we all know that an interlaced signal shows you all the even lines of one frame, and then all the odd lines of the next. For a CRT, the phosphorescence lifetime (the time it stays bright) of the pixel plus the phenomenon of human visual perception called the persistence of vision effectively blur the picture to where we don't notice we are seeing half the data for any given frame. But for any fixed resolution panel display (LCD, PDP) this wouldn't be the case. These each have a native resolution (usually 1920x1080 or 1280x720 pixels), and what you see on the screen is in this resolution, ALWAYS. For example, I have a 1920x1080 display. When I view broadcast 1080i HD from my cable box, somewhere along the path from where the cable enters the cable box to where image gets rendered on the screen, the picture has been converted to 1080p. Period. The cable box could do the conversion, or the TV could. In my case, the TV does it. It performs a deinterlace. It separates the even and odd lines of the pictures, then guess at the missing pixels, then shows you the two frames back to back. What about native 720p content from my cable box? In this case, my cable box is set to upconvert this to a 1080i signal (so my TV isn't always switching modes from channel to channel). How does it do this? Interpolation. It takes the pixels it has, spaces them further apart (with unknown pixels in the middle), then guesses at the unknowns. The 1080i signal gets to the TV, where it is deinterlaced (again by interpolation) to give me my 1080p display. DVDs? Same thing. A regular DVD player outputs 480p. This gets upconverted by my TV to display at 1920x1080.

Wrong Focus in the Consumer Market
So while people are worried about upconverting DVD players giving a better picture, they don't realize that their TVs do the same scaling themselves. What they should be worried about is HOW each device does its interpolation. There are various algorithms for interpolation (zero-order, bilinear, bicubic, all sorts of proprietary adaptive ones based on identifying motion, etc). Consumers should want to know the details of how each one works, and a side by side comparison. This comes up for my regular old DVDs: do I let the PS3 playing the DVD do the scaling/upconverting to 1080p, or do I let my Sony TV? The answer is "whichever one is better at it" but at this point it is impossible to find comparisons such as this available to consumers. You might think that with them both being Sony, they should be the same, but the truth is there is no way of knowing other than side by side comparison. I suspect the PS3 has more raw DSP capability, and my tests confirm that getting the PS3 to do the upconversion gives a visibly better PQ.

The bottom line is this: there is a fundamental idea in information theory that says that no algorithm can recover 100% of missing information for all inputs. So a particular algorithm might do really well for some inputs, but MUST fair horribly for some others. It is all about what devices have the best algorithms for the type of signals we feed them, namely moving pictures. And this is something you have to decide with your own two eyes.

Thursday, August 2, 2007

PS3: recorded HDTV playback update

As opposed to a few days ago, now I know that captured HDTV (MPEG2) playback is a problem with the PS3:
http://www.redkawa.com/forums/showthread.php?t=64
http://www.avforums.com/forums/showthread.php?p=5227297

I'd REALLY like my PS3 to play my recorded HDTV. I'm outraged that they could make such a crappy decoder. Oh well, maybe one day they'll release a decoder that isn't buggy as hell (one can only hope they'll do a multicore/CellBE enabled port of VLC, but this will never happen :-).

In related news, Sony wants me to send in my PS3 for repairs because it won't play MPEG2 correctly. That's right, instead of admitting what is a common problem others are facing, they are accusing my hardware of being faulty. I've sent them several e-mails, even linked to a file demonstrating the problem, and asked them to forward it to a technical person to look at it. The first two rounds of e-mail went like this:
Raj: My MPEG2-PS files aren't playing correctly on my PS3.
Sony: The Playstation only supports (other formats) and MPEG2-PS. Make sure that is what you are playing.
Raj: Yes dumbass, that's what I said. Here is a link to a file for you to test, and for you to debug your MPEG decoder against.
Sony: Sorry, I can't answer that question on e-mail. Please call us.
Of course phone support gets me nowhere (transfered back and forth between SCEA and Sony corporate). Then I get the dreaded "are you using the most updated system software?" I just want to file a bug report, is it that hard!? A valid input file to your decoder isn't rendered properly, so you should fix your decoder. It is that simple. I'm sick of being disappointed with this thing. The only thing keeping me from returning this 380W space heater is Ninja Gaiden, and the promise of buying a Blu-Ray movie or two to test this thing out.

If anyone downloads the offending file from above and tests it on a PS3 vs. on a PC, please leave a comment. It is a VERY brief HD clip from the television series Entourage, and is for debugging purposes only, which I believe constitutes fair use under US copyright law.

Tuesday, July 31, 2007

I was wrong about Transport Stream Audio on PS3

I'd recently written that sound playback is screwed up on PS3 for MPEG2-TS files. It turns out I was wrong...its a "feature" not a bug. I got the following from Sony:

The PLAYSTATION(R)3 computer entertainment system will only support video files saved under the the
following formats.

  • - Memory Stick Video Format (MPEG-4 SP (AAC LC), H.264/MPEG-4 AVC Main Profile AAC LC)
  • - MPEG-1 (MPEG Audio Layer 2)
  • - MPEG-2 PS (MPEG2 Audio Layer 2, AAC LC, AC3(Dolby Digital), LPCM)
  • - MPEG-2 TS (MPEG2 Audio Layer 2)
  • - AVI (Motion JPEG (Linear PCM), Motion JPEG (u-law))
  • - AVCHD (.m2ts)

Notice that Dolby Digital audio is supported in program streams, but unsupported in transport streams. So that is why my TS files are missing audio occasionally. This STILL doesn't explain why some valid MPEG-2 PS files are choppy and not working. I have posted a clip to Sony...hopefully they will take a look at it and find the bug that causes the playback to suffer. I'll keep updates posted here.

Thursday, July 26, 2007

Backing Up files from your DVR (and why its not pirating if you do)

Since yesterday's post, I've gotten some readers who seem to think that copying content off of your DVR is illegal, and somehow piracy and/or copyright violation. The FCC, in late 2003, ruled that all cable customers with HD set top boxes should have functioning Firewire ports on them (see paragraph 24 on page 12, and paragraph 36 on page 17). They say this is so that "Digital VCRs" will interoperate properly with HD set top boxes. That's right, the FCC, a government agency, ruled that we were allowed to connect digital VCRs to our Hi-Def cable boxes. Clearly they're tricking us into thinking that it is legal, so they can bust down our doors! Engadget has written about this, so I'll spare you even more details.

What is DVB?
Digital broadcasts over cable, called DVB-C, come down the pipes as an MPEG2 Transport Stream. This is a stream of packets not unlike those sent over IP networks. Each packet is part of the video stream, the audio stream, or a part of some other meta-data stream (sub-titles, program info, etc). These packets are interleaved in time, and the receiving end identifies each one by a PID number, and demultiplexes the data using these PID numbers. The receiver then decodes the streams into signals your TV understands, and sends them on their merry way via HDMI, component, or whatever you use.

Capturing DVB
So we want to capture the transport stream. The essential idea is to capture a raw transport stream over Firewire as it plays by making your computer emulate a D-VHS recorder. This is not unlike a PCAP dump for you networking folks, essentially a packet trace, a log of all the packets that are coming fromt he cable company. I stress again that this constitutes fair use and is explicitly allowable BY THE FCC according to the link above. Wikibooks has a good collection of resources, so read on there if you want to do this. In short, this overcomes drive size limits on your DVR. I have a Motorola box from Comcast, and it has a 160GB drive. I DVR things onto the box, then play them back while recording them onto a 500GB external USB drive using my MacBook. Then, delete off my DVR box as necessary, and lo and behold, I effectively have 760GB hard drive for my DVR. These transport streams aren't playable by many players, but I know VLC can demux and play them. Connect my Macbook to the TV via DVI/HDMI, and there we go.

Re-Multiplexing/Transcoding
One last note, sometimes VLC will choke on the TS files. In this case, I suggest ProjectX, a free/open-source MPEG tool. I'll do a tutorial about using the latest version in the future. Or, you can use VLC's transcoding options to go from TS to PS, which is what you want. I was hoping my new PS3 would play these files correctly, but my last post was about my tribulations with making that work. More on this later. Any way, happy DVRing!

Why the PS3 is NOT a HD media Hub


I just bought a Playstation 3, my rationale being that it is "three revolutionary devices all in one" (sorry Steve): a Linux PC, a gaming device, and a Blu-Ray player. And after the latest price drop, it was more attractive than ever, who could resist? I certainly couldn't, I wanted something to really show off what my new 1080p TV can do. It turns our the Playstation isn't the box to do the things that I want when it comes to HD.

1. Linux is nerfed.
So I get the box home, get Ubuntu 7.04 on there, open up Synaptic, and download VLC. I try some 1080i MPEG2 content from a USB external HFS+ formatted drive I have. These recordings are direct, uncompressed digital rips of DVB-C MPEG2 recorded from my Cable Box via Firewire. When the picture looks grainy and the framerate is about 10fps, I remember that the Linux kernel is running on top of a hypervisor that restricts access to certain parts of the hardware, namely the badass mother of a GPU. Without access to the graphics hardware (and without a custom kernel and apps designed for the additional six availiable SIMD cores), there is no hope of being able to decode a 1.5MB/s MPEG2 stream. So I give up on Linux as my solution.

2. The Playstation3 OS supports no modern filesystem on external media.
As they might say on Law and Order, Linux is OUT. So I try the next logical step, booting up the PS3 OS and seeing if it will support my files. I connect my HFS+ drive...and nothing happens. As a sanity check, I connect a FAT32 drive I have, and it shows up as a USB device. After some google-ing, I read that the PS3 OS will only support FAT on external drives. This KILLS any hope of using it as a HD media hub. Why? Because FAT32 only supports files up to 4GiB in size. While this is okay for 1080i content under about 45 minutes, it is USELESS for movies. I have several 9GB and 10GB rips of 1080i broadcast movies, and I know there are plenty of people out there who are starting to rip 20GB and 30GB copies of their HD-DVD and BD-ROM movies. No dice for you if these are on drives that support large file sizes and you want to use them with the PS3. Hell, the Xbox360 supports HFS+ so that it can play music off of your Mac formatted Ipod. The PS3 needs support for SOMETHING modern that PCs use, either NTFS (Windows), EXT2/3 (most Linuxes), or HFS (MacOS).

3. Even when all else is right, playback can suck!
There is a small piece of good news: the Playstation3 OS can play raw MPEG2 TS, something which was unexpected. This should mean that if you are recording from a cable box via firewire, you don't have to perform a remux to a program stream. Of course it doesn't mean this, because of a bug in the TS playback. It for some reason cannot identify the audio packets in streams that VLC on a computer has no problem with, and doesn't demux them properly for playback. The end result: no sound for some TS files. Okay, so I remux to PS, and playback. Bear in mind these are all 30min TV show files under the 4GiB limit, transferred using a FAT32 drive. Hey, I have sound, I have 1080i video!...I have jerky motion, frames skipped...and this is the best, frames filled in from about two seconds back! Thats right, the scene has cut to the next shot, and I'm seeing randomly interspersed frames from about two seconds ago. Looks like the decoder hiccups and goes crazy when the scene changes drastically but before an I-frame comes up. This problem only happens with content recorded from certain channels, and not with others. Either way, it is a bug in the video playback, with no convenient bug reporting system. Give me bugzilla, and I would post a clip to Sony devs proving that the MPEG-2 playback can choke on regular files that play fine on a computer with VLC. They are no help on the phone, Sony Entertainment pawning me of on Sony Corporate, and vice versa, with no one listening to my complaint. I finally sent an e-mail...I wish I could talk to a developer or engineer.

4. Video File Format Support?
Its nice that the system supports MPEG-4 AVC and SP, somewhat cool for people who have things that were already converted for their iPods. I tried some of my iPod compatible videos both 320*240 AVC, and 640*480 SP, and they worked...but what joy is there in watching these on a 1920*1080 display? The advanced simple profile, however, is not supported, meaning that any DVDs you might have encoded with DivX or Xvid won't play, as these are MPEG4 ASP. I tried a few CDs with 700MB Divx/Xvid files, with the PS3 saying "unsupported format". And anyway these would look like crap on my display.


In conclusion, they shouldn't try to bill it as a HD media hub. It plays games well, and it plays Blu-Ray...but not much else useful.