mailto: blog -at- heyrick -dot- eu
Welcome to the Neuros OSD
It is an awesome box. Sturdy, neat little magnetic clasp. All in all it is well presented. I love the idea of the serial link. This machine is inviting you to tickle its insides. With the exception of an S-video lead, everything is included in the box - even SCART adaptors, batteries for the remote, and a little window sticker!
The unit itself is stylish and well presented. While it offers only a single status LED (green (on/play), red (recording), or orange), we must not forget that all the information is available on your TV.
The unit is designed with the input/output connectors on the back - audio/video in/out, S-video (input only), power, ethernet...
...while the front is for media. There is a low-powered USB port (it'll run a Flash memory device, but probably not a USB-powered harddisc). There is a CompactFlash interface, but this is best ignored for reasons that'll be apparent. And there's an SD/MMC interface.
I can report that using the OSDng firmware, recording works well to a USB flash device (4Gb) and also to a 4Gb SDHC card. But note that you MUST "Eject" a device before removing it from the OSD.
I especially like the printing on the unit. Not tiny letters, weird symbols, or raised-plastic. No, it is actual white letters on black, as shown on the left. Very clear.
The only problem is there is no user guide. There is a quick start guide, and a reference to a user guide, but since the firmware has changed a lot, the user guide was removed. So for a lot of it, you'll be relying on, well... guesswork.
Why is the OSD special?
The OSD is extremely special, not so much because of its capabilities which are evermore commonplace, but because of what the OSD in the name actually stands for - Open Source Design.
There are parts of the OSD which cannot be open source. These are provided as static chunks of code, and are primarily the video codecs used on the DSP. I believe the DSP itself is covered under some sort of Non-Disclosure Agreement, and NDAs don't mix well with open source. But for the rest of it, it is a modified ARM port of Debian Linux with applications designed to provide features (i.e. XMMS2 for MP3 playback). You can read some specifics at wiki.neurostechnology.com/. Not only that, but the board itself is open source. The PCB layout files aren't available, but it's a small board so there should be no difficulty in matching the schematics to the actual board.
The only major problem is the apparent lack of availability of documentation for the hardware used, for a lot of it appears to be under NDA. I'm sorry, but isn't it a tad silly to make an open project with non-open parts? But the power of the Internet means that if manufacturers want to be all stupid and protectionist, we end users don't have to tolerate their caprices, especially since Texas Instruments told me that they're only really willing to deal with educational establishments and companies. So they slam the door on me. Tant pis, there's more than one way to find an answer...
Oh, and a schematic of the "Recorder III" (as it was originally known) can be found here (PDF, 282Kb).
Now, where all of this open source stuff makes a difference is in the wishes and desires of the end users. I would have liked to fix a number of issues with my older PVR, but being closed source I had no choice. But with the OSD, I mention several times that it needs firmware designed to act as a video recorder and not with a complete full OS behind it. Will this ever happen? Maybe, maybe not. Will I be the one to do it? Maybe, maybe not. But the choice is there...
To be honest, I'm a little surprised that official OSD development seems to have tailed off and the only alternative is OSDng, a modification to the firmware to fix bugs and add the idea of "packages" instead of all that reflash nonsense. Given the potential here, not many have stepped up to the plate.
Of course, nowadays it is easy to dismiss. The CPU is too slow, it doesn't do HD, blah blah. Shame, for it has now a price to rival my older PVR, it certainly offers a degree of quality that is missing in a lot of these little digital recorders (it would appear that my older PVR is fixed at about 1000kbps, for instance) while this unit can do considerably better. It isn't without its flaws (it can't cope with full PAL at 720×576 for instance), but it is capable of more than a fair few things on the market.
What the OSD desperately needs is a source derivation that concentrates on the core function of the project. Namely, that of being a video recorder/player. I understand the slowness (you'll read a lot about this in the paragraphs below) but people such as my mother may expect to press a button and have something happen then, not six seconds later.
Think about it - it is less than half of price of a DVD recorder. And how many DVD recorders use MPEG4? They tend to be stuck back in the MPEG2 era. I wanted a DVD recorder, but ditched that idea when I realised the attributes of MPEG4 and Flash memory. How many DVD recorders offer Flash storage? Oh, harddisc? Well, not only is that fixed inside the unit, but you've just doubled the price!
It compares favourably with traditional video recorders. No which way you cut it, tape video is old hat. Digital suffers from treating video as a set of blocks, so you can often 'see' artefacts in the picture, be it your little PVR or a minority channel on satellite. Tape video, on the other hand, suffers from reduced bandwidth. This is harder to see, and the long trade in video rentals shows that it was not too much of a problem, however... play a video and a DVD of the same thing side by side, you'll wonder why we put up with tapes for so long!
Even today, years after the launch of the OSD, I can see a viable market for it.
Oh my God this thing responds slowly. It takes around two minutes to boot, the menus seriously lag a competent user. Invoking record takes in the order of twenty seconds. Nothing is quick.
This is bizarre given that my older PVR uses exactly the same core chip - yes, it's a TMS320DM320 running an ARM9 core at some 200MHz plus a DSP unit. That device takes about twenty seconds to boot and three-four to start recording. Most of the menu lag is down to the naff remote control! In addition, RISC OS is perfectly nice on a 40MHz CPU. There's not enough grunt on my ARM7 to handle MP3 playback, yet I can use the windowing system and do desktop publishing etc. So what's with the OSD? It can cope with playing MP3s, certainly at 128kbit though there are reports the Amazon 320kbit MP3s fail.
The problem, I believe, is that this device is a vastly overengineered geek toy. For the love of God, it's running a VNC server so I can talk to it across the network. There's a telnet daemon for admin stuff. You could quite probably start up an ARM/Debian port of httpd, whack this on to an ADSL router, and get it to run a live website from files on an SD card. I'm not sure how much spare processing power there is, you may or may not be able to cope with PHP as well.
But, the problem... Well, in a nutshell, this isn't a Beagle Board. It is a PVR. Its core purpose is to record and play back standard definition video. But since it does that from custom applications existing within a port of Debian Linux... I think its power is both a blessing and a curse.
I have it now set up so it can read files stored on Ayleigh. It is a Windows share. The OSD can probably save there too. At one time it had a YouTube interface/player, but since YouTube messes with their internals fairly regularly it doesn't currently work. It can also (from the command line) play internet streaming radio. I've listened to Kawaii Radio on my PVR!
But, if I'm recording a video and I wish to pop up the information banner or press Pause, it'll take around 10 seconds (or more) for anything to happen.
When I first put in my SD card, the interface became non-responsive. It didn't want to know SDHC cards. Removing a USB device pretty much disabled the USB port, it just wouldn't see the USB device any more.
So I updated to latest Torfu firmware. OMFG it's slow. I don't think I've ever known a device that programs FlashROM to take THAT long. I mean, satellite receivers and such take, what, about a minute all in? This, I could put the kettle on, walk about 400 metres across a field to feed the cats, put the kettle on again, make a cuppa, and sit down to patiently wait for it to finish... SDHC now works.
Now, the problem is, being based upon a Linux distro, there is a lot of flexibility to the firmware, but also a lot of bulk. The newer firmware, based on Qt4, and called "Arizona", runs to some 19Mb as an upgrade packaged file. Well, that ain't gonna fit in a 16Mb FlashROM. So the FlashROM is changed to be more or less a loader for Arizona which exists on the CompactFlash card. Neuros supply a CF card that is, I think, 128Mb. But, on the other hand, this does mean that you can no longer use the CF slot for recording. Well, you could stuff in a 1Gb CF card, but transferring files could be tricky if the card must remain connected as the OSD's OS is running from it!
So I update to Arizona. Better looking but even slower and quite a number of bugs.
Give it credit though, while the menus are not overly well designed and a lot of stuff is hiding behind an "Xi" key, it does look quite good.
As I use WiFi to go on-line, I had to take Azumi into the living room. Put it on the floor, plug in a TV capture box, plug the OSD into that, then hook it to the Livebox. Phew!
Here's what I mean:
My next step, and yet another mind-bending update (but hey, it plays Pong with itself while updating!) was to upgrade to the third party firmware "OSDng". This seemed to make the system a bit more responsive. It also made the USB remount (mostly) work. The ShoutCast add-on fails, lots, but buried in the box if you telnet into it is "xmms2" which can play streams. The OSDng firmware supports a package manager so you can install not only that (non-working?) ShoutCast client, but also a VNC server to bring up the menu display on your computer, remotely! I mean, think how sweet it would be to sit in bed with www.tvguide.co.uk and a VNC client, programming your PVR.
YouTube won't work, in any incarnation. There is no browser, it relies upon knowing some of the YouTube internals, and this has recently changed. The OSD has not changed to reflect this. Will it?
Thoughts of the OSD
I think the best way to describe the OSD is "work in progress". For example, there's a nifty little IR blaster function where the OSD will 'learn' commands from your satellite's remote (can be tricky to do if you use an energy saving bulb as this can interfere with the IR signals, and even trickier if your remote sends the same code over and over when a key is held, leaving the decode to the receiver's firmware). When it is done, you can test it works. I've managed to have the OSD remember my keys, maybe. But I've yet to get the satellite to change channels. :-(
If the slowness, I wonder how much is actually due to the fact that the thing is running Linux? When I press REC, it says "Starting application" and asks me to wait. It will do it, but we're looking at around twenty seconds. My older PVR (exact same CPU/DSP core!) takes 3-4 seconds.
My big wish, that will probably never happen as it is a monster of a project, is to examine the OSD's source and aqttempt to hack it to pieces to make a single non-OS monolithic hulk of an application that records and plays back video and NOTHING else. No ethernet, no extfs2, no command line, just a flat firmware executable. My older PVR gives me an idea of how fast the machine COULD run... you know, without the bloaty Penguin.
The big sorrow is that the OSD doesn't quite have the ability to handle playback of a full PAL frame. So DVD rips and digital video at 720x576 won't work. On the plus side, it will talk a number of FLV formats.
It cannot do H.264. Flat out not possible. It is quite processor intensive, being the latest nifty version of MPEG4 as used by YouTube, modern QuickTime MOV, and HD BluRay discs.
The older H.263, no problem. It records in that format and plays it back. DivX and XviD are H.263-alike formats. Not as good as H.264, but I think a lot of this is fairly subjective anyway.
I have not hit it with a lot of tests, however, it would appear to support:
Audio can be either MP3 or AAC, up to 128kbit.
- XviD / DivX - up to 640x512ish.
- MPEG4 - probably most H.263 versions, up to 640x512ish.
- FLV - with "VP6" video.
- Windows Media Video - version 8
Ironically, it won't play videos recorded with my older PVR. Both claim to be "standard MPEG4 video". Both use the "isom" codec marker, with codec ID 20 ("mp4v"), H.263 video. The only difference is the older PVR uses 30fps while this one understands 25fps too. I can't believe it would be so lame as to fail on that...
I am having interference issues with S-video inputs. Not in the monitor, but in the recording. Shame, as S-video is technically a lot better than the composite input.
Let's face it. You are not going to get DVD quality no matter what anybody says. An average DVD is MPEG2 running to some 6000-8000kbit. While MPEG4 is better, we only go up to 2500kbit. That said, the results are, generally, pretty impressive. Near DVD quality, perhaps.
There is, however, an important lesson in not being over-zealous. A fair number of satellite channels broadcast MPEG2 at around 2000kbit, so you will notice digital artefacts on these channels. You should capture it all fairly well using the 2000kbit option, but frankly I'm using 1200kbit for smaller files and the quality is not that much different from that broadcast. You'd need a good bitrate for BBC One, but not so much for the Horror channel. Experiment, see what works, and understand a certain amount of blockiness is inevitable.
The OSD offers a number of resolutions: 320×240, 352×288, 512×384, 640×480, 640×512. I currently use 640×480 as with my older PVR.
The quality, the video bitrate, can be a ridiculous 256kbit, 512, 768, 1200, 1500, 2000, or 2500kbit. I currently use 1200 as my older PVR was "about 1000" and the output was okay. I know I have the option for better for stuff I think deserves it, but need to be mindful of file sizes. For example, a movie lasting and hour and a half:
Where the OSD scores a win is the sound. You can pick MP3 or AAC (I use AAC) at 64/96/128kbps (I use 128). Nice and clear. The older PVR often sounded like the speaker was in a bucket. The OSD rocks when it comes to decent audio.
- 256kbit = about 256Mb
- 512kbit = about 420Mb
- 768kbit = about 580Mb
- 1200kbit = about 860Mb
- 1500kbit = about 1055Mb
- 2000kbit = about 1370Mb
- 2500kbit = about 1700Mb
These samples are a snippet of the film Azumi (© Optimum Asia), roughly 30 seconds in length, recorded directly from the DVD. I picked Azumi as my eeePC is named that, after this character. ☺ I picked this specific scene because it contains large areas of fairly flat colour (the wood, the sky) coupled with some frenetic movement - things which show the flaws in digital video if the bandwidth is too low. The 256kbps recording is laughably awful, as you may well imagine! The 2500kbps recording may not stand up to comparisons with DVDs if you pause and look at frames in detail, but for generally watching the recording, I bet you'd find it difficult to tell the difference...
It is important to understand that your media player's concept of time may be a little off. This is correct. Due to the difficulty in recording at fixed times, the recording contained stuff either side of what I wanted. So I used an editor to clip off the unwanted parts so the result is frame-for-frame that same thing and a rough edit instead of a transcode. So what you will see below may have a weird timeline, but in all other respects it is exactly as it was recorded.
Except for the final two, it is all 640×480 25fps (PAL), and using the composite input. Audio is AAC at 128kbit.
- 256kbps (!) - pretty useless, but might work for a lower-end smartphone?
- 512kbps - still pretty poor quality.
- 768kbps - starting to be watchable. This could be a useful level for soaps and stuff you plan to watch but not keep.
- 1200kbps - acceptable, though not overly good with flat colour or motion. This is my current 'general' setting.
- 1500kbps - acceptable, slightly better. A setting I'd use for TV programmes I'd like to keep.
- 2000kbps - good quality, with a filesize to prove it. I might consider this for really special things.
- 2500kbps - the maximum, check out the much less noticable motion blocking and the decent looking sky shading. If I wanted something "almost as good as a DVD", I'd use this... but there's not so many digital channels that use a high enough bitrate to justify this. BBC and FilmFour, perhaps?
- Maxi - 640×512 at 2500kbps with S-video input. This is the best the OSD can do. It's pretty damn fine except for that interference. Look at the flattish colours (like the wood in the building) and spot the dither-like pattern creeping upwards. It is hard to see, but once you notice it, it is hard to not be driven mad by it!
- Portable - 320×240 at 768kps with MP3 audio. Basically aimed at portable devices, though I doubt my DivX-capable Zen would want to play this; most DivX/XviD compatible devices only understand the AVI wrapper, even if MPEG4 H.263 is pretty much the same thing. This was also recorded using S-video and the interference pattern has been zoomed up. Could indicate which part is suffering for the interference? Anyway, if you can't see anything wrong with the above, play this to get an idea of what I mean.
If Asian chicks with really big swords sounds like your idea of fun, you can buy Azumi from Amazon:
Azumi is, at least for the UK release, presented with Japanese audio and subtitles. Please check that the links provided above are correct for you before you purchase, relating to an appropriate language and/or TV system. Prices correct on 2010/04/18.
- United Kingdom: Azumi, £4.42 (rrp £19.99); or Azumi/Azumi 2, £6.99 (rrp £24.99)
- France: Azumi, €9.98; or Azumi/Azumi 2, €14.99
- United States of America: Azumi, $22.49 (rrp $24.95); and Azumi 2, $21.99 (rrp $24.95) [Azumi 1+2 not available]
- Japan: Azumi, ¥4,077 and Azumi 2, ¥3,557 [Azumi 1+2 not available; but the original manga is...]
- Germany: Azumi, €9.99; or Azumi/Azumi 2, €12.99
The links above provide "
www.heyrick.co.uk" as a link reference. This is so Amazon, if they bother to collate link data, can see which links are from this site. Please note, however, that I am not a member of the Amazon affiliate/associate programme, and I will not receive any money should you decide to purchase Azumi.
This is not the final word...
There's a lot more to say... but for now:
There is potential here. But I think the OSD has to concentrate less on what it ISN'T (YouTube, VNC, webserver, streaming radio, command line... all the cool stuff) and concentrate MORE on what it is.
Bloody hell - it's a video recorder! Do that, and do that right!
Would I recommend it? For mom, no. It is not friendly enough. By this I mean the box is full of help, but the "Xi" key hides too many things, calling up on-screen messages while recording or playing are not obvious, and the lack of speed means that it is possible to press a key more than once on the belief the unit didn't see your key, only to wind up looking at something unexpected as it acts on both keypresses. It would fail the mom test.
For me, for a geek, yes. You can either have a nifty "quirky" video recorder, or you can have a helluva hack session. It does also work as a PVR, amazingly enough!
Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.
|Rob, 10th April 2010, 09:03|
"think how sweet it would be to sit in bed with www.tvguide.co.uk and a VNC client, programming your PVR" .. been doing that for ten years - Look up TiVoWeb.. In fact, if you want a great, hackable, fast PVR that still does an unbeatable job of it's core functionality, TiVo is the way to go. Pity they've not made any new ones for the UK market for ten years. And I don't think they were ever sold in France...
|Rob, 10th April 2010, 09:05|
PS: What's with the "Rick's blog" title changing font every now and again? cute.
|Rick, 10th April 2010, 12:23|
The logo changes randomly, but weighted to not do it too often - a 1-in-6 chance. Apart from the '' (taken from one of the kana) and the 'g' (flipped because there was nothing g-like), they're all real Japanese characters.
Glad you like it! ☺
|opal, 10th April 2010, 17:42|
"... No ethernet, no extfs2, no penguin, just a flat firmware executable...".
How do you know it is "monolithic" ? May be it is crypted/compressed/obfuscated in order to make more fun to curious people ;) ?
I believe I saw an article about the router firmware unpacking in "2600" magazine once ? I guess it was one of year 2006 issues.
May be you should take a closer look at the firmware trying to find some readable strings or known signatures like "PK" ?
|Rick, 11th April 2010, 02:54|
Opal, the flat monolithic firmware was the one *I* wished I could write.
The *actual* firmware is a version of Debian Linux. Apart from some deep DSP stuff presented as a "black box" binary, the entire rest of the OSD is open source, from the firmware to the schematics of the circuit board... http://wiki.neurostechnology.com/index.php/Neuros_OSD_1.0
|opal, 11th April 2010, 08:47|
Correct,I had to understand you wrong first time: "My big wish, the will probably never happen as it is a monster of a project, is to examine the OSD's source and hack it to pieces ...",
|Rick, 11th April 2010, 12:05|
'tis okay, Opal.
One of the problems of the English language is ambiguity. Things that may seem to be clear and make sense, but are not. That line is still in this b.log entry, but as you rightly point out, it could be written a little better. My bad, not yours. ☺
List all b.log entries
Return to the site index
PS: Don't try to be clever.
It's a simple substring match.
Last read at 21:47 on 2020/07/03.
© 2010 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.