Note that this is all unofficial information. I'm just a solo developer with no direct ties to Roku labs.
The Roku HD1000 is a set-top high definition media player. It is primarily marketed as a photo viewer and for use with commercial "art packs". Within the device is an ATI Xilleon CPU with a high definition hardware MPEG2 decoder. This makes it technically possible to play back some high definition video content, such as recordings of over-the-air digitial TV broadcasts. The HD1000 runs Linux internally and an SDK is freely available.
Firmware 1.5.11 is the current stable release. It can use DHCP to get an IP address and mount passworded SMB shares. With the addition of the StreamPlayer application, you can play back large transport streams by first chopping them into small pieces. The player is very primitive, with no trick modes like fast forward or reverse.
Firmware 1.5.12 is the current firmware and SDK beta release. It provides an improved environment for developers (such as bash as /bin/sh), a portmap binary for NFS support, and a more complete set of header files and documentation than previous releases. Compilation is done natively on the HD1000. You will need to enable swap space somehow.
The HD1000 cannot play back DVD VOB files or any other sort of MPEG2 content you're likely to have lying around. It understands only transport streams, which are used almost exclusively in broadcast applications. Many users have tried many tools to convert non-TS files into TS files, with mixed results. Sound sync problems are typical for home-made TS files. You cannot yet interactively select the PID to play back from a TS, so some streams will play and some will not. You cannot manually set the IP address yet; it only does DHCP.
Rokulabs has said they will be releasing a new SDK soon, to include a cross-compiler and likely the same environment they use internally. The kernel sourcecode is also expected to be released soon; they say they are checking with ATI to ensure that the stuff they're going to release doesn't run afoul of their NDA.
I've got some transport stream examples on-line for testing and analysis.
This is a simple test program that feeds MPEG data to the HD1000 decoder for display. You can specify the PIDs to use.
Kernel module and userspace tools for using nbd on the Roku. The main reason I did this was to enable the Roku to swap over the network.
This is just a random set of links to MPEG2 resources I've come across.