Have you thought about using a regular desktop PC?
You could teach people how to set up a minimal Linux system using their own kernel, busybox etc. As far as embedded hardware goes, I'm sure the parallel port can be one good way of introducing device drivers on several levels. It is fairly simple to understand and program.
Everyone who knows about this are pretty much in agreement that DMCA might seem like a reasonable law to regular people (it just means no piracy, right?). The problem is that it leads to ridiculous things like you can't watch your own DVDs that you bought at Best Buy using anything else than an approved DVD player.
There hasn't been much in the mainstream media about this, and when there is I haven't seen the reporters take the side that DMCA needs to be changed. If you're really serious about this issue and you're not afraid of Bubba, consider using the law against itself to get some major press.
Just set up your computer in your living room and hook it up to your TV or a monitor. Insert a legal DVD and start watching it using MPlayer, Xine or Ogle. Then call the cops and turn yourself in. Be prepared to cite the appropiate sections of the DMCA and recent rulings because they will probably have a hard time believing that they should care about you watching DVDs (what do you mean, you're watching Shrek on your TV, exactly how is that illegal???). I'd like to see the court trying to impose any kind of fine or jail time on people for doing this (except on me maybe:-).
With enough people doing this (it might take only one that gets a lot of press), it'll be much harder for people/press/politicans to say that the DMCA is OK.
Haha...that does not strengthen your argument at all.
My equipment isn't touched by rental media...talk about asking for trouble...
And how common do you think that view is? Most people still don't mind renting movies on VHS.
So if you don't like DVD's that's fine by me, but you made it sound like DVD->DivX conversion isn't acceptable by any standard.
I seem to remember a similar discussion when MP3's became popular 5 years ago. I guess some people still won't use MP3 (or even CD's!), but if you do, you'll probably be happy with DivX. It is pretty nice to have all my favourite movies on a hard-drive so that I can view bits of them without swapping discs in the DVD player.
What have you been smoking?!? Ripping a DVD to ~700MB DivX (MPEG-4) results in a quality that is better than rental VHS! Check out Doom9 for more info (like this example of DVD ripping).
The only problem is the fastest ADC on the market is about 200MHz. I told a vendor the systems guys needed a 1GHz and they just laughed. Now it's a running joke at work...
You obviously didn't talk to the right vendor. Maxim has had 1GHz ADC's out since at least 1997. Their fastest one right now is 1.5 GHz (MAX108). If you think about it, there's gotta be fast ADC's since there are digitizing scopes that run at several GHz.
Hardware YUV translation. The only thing that makes video playback bareable in Linux on my box.
Yeah, that probably helps a lot, I use it on my G400. I thought you meant hardware mpeg encoding support.
Can you also watch the item being recorded or does this box act as a standalone video server?
Umm, not sure what you mean exactly. I've patched NVrec:DIVX4rec to use the Matrox G400 back-end scaler (=hardware YUV -> RGB) to display the frames being encoded to disk on the TV as well. If you just wanna watch stuff without recording there's fbtv (WinTV video-in -> Matrox G400 TV-out).
After a recording is finished, I can watch it on the TV using mplayer and the mga framebuffer driver for TV-out.
I have not used the DivX codecs in my testing.
Well, I can really recommend the Xvid MPEG-4 (=DIVX4) encoder. It is open-source, and plug-compatible with the older divx4linux encoder.
There are MPEG decoder cards, but they are barely supported in Linux.
You don't have to use custom hardware. Use mplayer which can easily decode MPEG-[124] video/audio (MP3 is really MPEG-1 Layer III audio) in realtime on an normal machine (mine's a P-III 500 MHz), using no other hardware than the CPU (which of course has MMX etc).
2) TV-OUT technology simply doesn't exist in the US for Linux.
I'm using a Matrox G400 DH to display video-out from Linux on a regular NTSC TV. It works just fine. TV's here don't have SCART, but you can buy a cheap Radio-Shack RF modulator box for Video->RF.
The most promising technology is with the ATI-AIW card. I have heard some folks have mixed success using a framebuffer but in framebuffer mode, all video acceleration is lost.
Video acceleration? What do you need it for? The framebuffer works just fine for me to display DivX movies.
3) It takes an _aweful_ lot of processor power to perform real-time MPEG-encoding.
My P-III 500 MHz does realtime DivX (MPEG-4) and MP-3 encoding of 320x240 29.97 Hz (NTSC) video. Granted, it can't do 640x480, but it is good enough IMHO for casual viewing. I made a test clip to show what I mean (1.6 MB DivX4 AVI, 14 seconds).
4) Cost is just enormous.
I use one machine (P-III 500MHz) as a dedicated box next to the TV in the living-room. It has a $50 WinTV card for video capture and a ~$50 Matrox G400 Dualhead for TV-out. I have the large harddrives on my regular Linux box, using NFS for file sharing.
Why would anyone want to cripple their home-brew PVR with a recording app that requires X,Gnome or KDE and lost of other eye-candy bloat?
You're right, one shouldn't do that! You're missing my point, which is that NVrec can't display what it is recording. Which is convenient in a lot of cases, I use this to see that I'm recording the right stuff, or to watch a show and also tape it for my wife, or watch another channel using an RF switch for my TV, etc. So that is why I've made a patch which takes the captured frame inside NVrec and sends it directly to the framebuffer using the Matrox back end scaler (doesn't use much CPU). I'm hoping to have it cleaned up and sent to the NVrec maintainer soon.
If you want an X interface, make a program that controls NVrec and leave the bloat of a GUI away from my favorite linux recording program.
The application I'm working on uses the framebuffer directly on a Matrox G400 on the pixel-level, no external libraries at all. I'm thinking about rewriting that part to use mplayer in some sort of command-line slave-mode to display menus etc on whatever video hardware is available, but the point still is that it doesn't require even X11!
Oh you are wrong as it [mplayer] only supports the Matrox for Tv out.
I didn't claim that! I was talking about my control application. mplayer supports a ridiculous amount of video hardware, which is why it would be nice to use it to display OSD menus.
Other video cards: I haven't tried them, I'm sure some are better than Matrox G400 for MPEG decoding and video out. But the G400 is good enough for me, and I'd say that the weakest link is not the G400 in my system, it's the quality of the video input signal from the WinTV capture card.
Hmm, kinda. The parts are there, but no-one has put them together in a neat package yet. That's probably since Linux video software has really taken off in just the last 6 months.
There's mplayer which is a great player for any video-format out there. It can even play DVD's, although it doesn't have menu support like Ogle. It can also rip DVD:s to MPEG-4 (a.k.a DivX) using a couple of different encoders. Xvid is my favorite open-source MPEG-4 encoder, it's also got good reviews on Doom9 (good place for DivX info!).
For the TV-in recording part you can use a $50 WinTV card and the Video4Linux drivers. On top of that you need an audio-video capture application that can use encoders such as Xvid and Lame to encode to MPEG-4 (video) and MP3 (audio). I use NVrec. If you try the NVrec suite, use the DIVX4rec app (with the Xvid library instead of divx4linux which isn't maintained anymore). On my P-III 500MHz I can compress 29.97 Hz (NTSC) 320x240 in real-time to 800 kbit/s (video) + 80 kbit/s (audio). It takes about 5 hours to make a one-pass encoding of a DVD, so with a faster CPU it's probably possible to do real-time de-interlacing and encoding of 640x480 video.
A drawback is that NVrec is a command-line app for recording, I'm working on a patch for real-time preview on Matrox G400 TV-out. Or if you have a fast enough computer you might be able to run mplayer on the file as it is being recorded. This would allow for Tivo-like pause and resume. It might be a problem with AVI files from NVrec though since I don't think they're streamable.
Now, to put all of this together you need some kind of control application. That's not really that hard to write compared to all the other pieces (mplayer, xvid, nvrec). I've been working on one for the last couple of months, and have an alpha version that is usuable. It only supports the Matrox G400 for TV-out, and is a little crude, but it works good enough that I have it hooked up to my TV for everyday use. It's controllable by a remote control (see Lirc), using a very simple text-menu system to view tv, play avi/mpeg/mp3/dvd, record tv-in and rip DVD's. I'm getting ready to put it up on Sourceforge as Freevo within the next couple of weeks.
The application is written in Python which is great for stuff like this. Once the basic stuff is done, it might be cool to make a plugin architecture where you could interface to other stuff. For instance, with OSD (on screen display), it is easy to add things like new mail notification while you're watching TV. Or new Slashdot headlines, ICQ chat notif, phone caller ID interface, www control, etc. And, of course, an interface to some kind of tv-guide.
I haven't really found any other complete applications like this. Not that I've looked that hard, I'm always looking for an excuse to write software. mplayer might end up with all these feaures eventually, it is improving at an incredible rate at the moment.
Norsk Data ("Norwegian Computers") designed fairly advanced 32-bit systems in the middle of the 80's. I remember using them at my local university in Sweden. (Obviously the VAX 11/785 we had too was more exciting since it could run Hack under VMS Eunice).
Back then there was an export embargo on advanced computers to the Soviet union, which basically meant that 32-bit computers couldn't be sold there. So they cut off 4 bits and voila! had an exportable 28-bit computer (ND-505).
Maybe technically not a soviet machine, but still...
There's a privacy issue with these things. If you have a receiver for the signals, you can watch the power consumption of everybody in your neighborhood.
Ummm, like you haven't been able to do that forever by just walking up to your neighbour's meter and performing an ocular inspection (gawking at it).
TWACS is a competitor to Turtle, and has been around for more than 20 years now.
It is faster as it can read about 100 meters/minute on a three-phase system. The meters themselves are pretty reliable, e.g. they aren't susceptible to lightning.
The TWACS systems is pretty secure. I won't divulge any technical details, quoting BillG: Trust me:-)
Seriously though, people have been hacking their utility bills for over 100 years now. There's an amazing number of ways to fool an electro-mechanical meter using various devices.
One trick that I heard about was that some meters could be unplugged and plugged back in upside-down, thus making it run backwards....
Yeah, TWACS works really well since it is a low-frequency signal that easily passes through the transformers.
The signal is generated at the sub-station level, and the system as it is used today is master-slave (sub-station - meter), so there aren't any contention problems.
Wrong. TWACS has been around since the 70's, and it works great since it uses low-frequency modulation of the 60Hz carrier. The system has a range of at least tens of miles from the sub-station to the meter (and back).
I know Europe definately a lot more expensive that here for landline phone/internet.
What are your data for that? It costs 8 cents a minute to call from Sweden to Missouri, while it costs ~12-15 cents a minute to call long-distance within Missouri! Phone service is $15/month in Sweden, here in Missouri it is more like $30-40!
Have you thought about using a regular desktop PC?
You could teach people how to set up a minimal Linux system using their own kernel, busybox etc. As far as embedded hardware goes, I'm sure the parallel port can be one good way of introducing device drivers on several levels. It is fairly simple to understand and program.
You can check out my project: http://freevo.sourceforge.net.
Although for a 266 MHz computer you're probably looking at either buying some kind of HW-based encoder, or upgrading to a faster machine.
this is no fault of Microsoft that they are good at it
:-)
Not as long as someone fixes the compiler to generate an Illegal instruction, execution aborted error in this case
Everyone who knows about this are pretty much in agreement that DMCA might seem like a reasonable law to regular people (it just means no piracy, right?). The problem is that it leads to ridiculous things like you can't watch your own DVDs that you bought at Best Buy using anything else than an approved DVD player.
:-).
There hasn't been much in the mainstream media about this, and when there is I haven't seen the reporters take the side that DMCA needs to be changed. If you're really serious about this issue and you're not afraid of Bubba, consider using the law against itself to get some major press.
Just set up your computer in your living room and hook it up to your TV or a monitor. Insert a legal DVD and start watching it using MPlayer, Xine or Ogle. Then call the cops and turn yourself in. Be prepared to cite the appropiate sections of the DMCA and recent rulings because they will probably have a hard time believing that they should care about you watching DVDs (what do you mean, you're watching Shrek on your TV, exactly how is that illegal???). I'd like to see the court trying to impose any kind of fine or jail time on people for doing this (except on me maybe
With enough people doing this (it might take only one that gets a lot of press), it'll be much harder for people/press/politicans to say that the DMCA is OK.
Try Freevo. It does about what you're looking for, including controlling it using a regular remote.
Haha...that does not strengthen your argument at all.
My equipment isn't touched by rental media...talk about asking for trouble...
And how common do you think that view is? Most people still don't mind renting movies on VHS.
So if you don't like DVD's that's fine by me, but you made it sound like DVD->DivX conversion isn't acceptable by any standard.
I seem to remember a similar discussion when MP3's became popular 5 years ago. I guess some people still won't use MP3 (or even CD's!), but if you do, you'll probably be happy with DivX. It is pretty nice to have all my favourite movies on a hard-drive so that I can view bits of them without swapping discs in the DVD player.
the quality ends up being extremely poor
What have you been smoking?!? Ripping a DVD to ~700MB DivX (MPEG-4) results in a quality that is better than rental VHS! Check out Doom9 for more info (like this example of DVD ripping).
So if you forget to lock your car you could be arrested for entrapment when someone steals it???
The only problem is the fastest ADC on the market is about 200MHz. I told a vendor the systems guys needed a 1GHz and they just laughed. Now it's a running joke at work...
You obviously didn't talk to the right vendor. Maxim has had 1GHz ADC's out since at least 1997. Their fastest one right now is 1.5 GHz (MAX108). If you think about it, there's gotta be fast ADC's since there are digitizing scopes that run at several GHz.
Ok, so buy a faster computer or a Tivo.
In my opinion it is comparable to a VHS rental tape, at least when you watch it on a TV.
Hardware YUV translation. The only thing that makes video playback bareable in Linux on my box.
Yeah, that probably helps a lot, I use it on my G400. I thought you meant hardware mpeg encoding support.
Can you also watch the item being recorded or does this box act as a standalone video server?
Umm, not sure what you mean exactly. I've patched NVrec:DIVX4rec to use the Matrox G400 back-end scaler (=hardware YUV -> RGB) to display the frames being encoded to disk on the TV as well. If you just wanna watch stuff without recording there's fbtv (WinTV video-in -> Matrox G400 TV-out).
After a recording is finished, I can watch it on the TV using mplayer and the mga framebuffer driver for TV-out.
I have not used the DivX codecs in my testing.
Well, I can really recommend the Xvid MPEG-4 (=DIVX4) encoder. It is open-source, and plug-compatible with the older divx4linux encoder.
I put up some more info on the Freevo project website.
There are MPEG decoder cards, but they are barely supported in Linux.
You don't have to use custom hardware. Use mplayer which can easily decode MPEG-[124] video/audio (MP3 is really MPEG-1 Layer III audio) in realtime on an normal machine (mine's a P-III 500 MHz), using no other hardware than the CPU (which of course has MMX etc).
2) TV-OUT technology simply doesn't exist in the US for Linux.
I'm using a Matrox G400 DH to display video-out from Linux on a regular NTSC TV. It works just fine. TV's here don't have SCART, but you can buy a cheap Radio-Shack RF modulator box for Video->RF.
The most promising technology is with the ATI-AIW card. I have heard some folks have mixed success using a framebuffer but in framebuffer mode, all video acceleration is lost.
Video acceleration? What do you need it for? The framebuffer works just fine for me to display DivX movies.
3) It takes an _aweful_ lot of processor power to perform real-time MPEG-encoding.
My P-III 500 MHz does realtime DivX (MPEG-4) and MP-3 encoding of 320x240 29.97 Hz (NTSC) video. Granted, it can't do 640x480, but it is good enough IMHO for casual viewing. I made a test clip to show what I mean (1.6 MB DivX4 AVI, 14 seconds).
4) Cost is just enormous.
I use one machine (P-III 500MHz) as a dedicated box next to the TV in the living-room. It has a $50 WinTV card for video capture and a ~$50 Matrox G400 Dualhead for TV-out. I have the large harddrives on my regular Linux box, using NFS for file sharing.
Why would anyone want to cripple their home-brew PVR with a recording app that requires X,Gnome or KDE and lost of other eye-candy bloat?
You're right, one shouldn't do that! You're missing my point, which is that NVrec can't display what it is recording. Which is convenient in a lot of cases, I use this to see that I'm recording the right stuff, or to watch a show and also tape it for my wife, or watch another channel using an RF switch for my TV, etc. So that is why I've made a patch which takes the captured frame inside NVrec and sends it directly to the framebuffer using the Matrox back end scaler (doesn't use much CPU). I'm hoping to have it cleaned up and sent to the NVrec maintainer soon.
If you want an X interface, make a program that controls NVrec and leave the bloat of a GUI away from my favorite linux recording program.
The application I'm working on uses the framebuffer directly on a Matrox G400 on the pixel-level, no external libraries at all. I'm thinking about rewriting that part to use mplayer in some sort of command-line slave-mode to display menus etc on whatever video hardware is available, but the point still is that it doesn't require even X11!
Oh you are wrong as it [mplayer] only supports the Matrox for Tv out.
I didn't claim that! I was talking about my control application. mplayer supports a ridiculous amount of video hardware, which is why it would be nice to use it to display OSD menus.
Other video cards: I haven't tried them, I'm sure some are better than Matrox G400 for MPEG decoding and video out. But the G400 is good enough for me, and I'd say that the weakest link is not the G400 in my system, it's the quality of the video input signal from the WinTV capture card.
Hmm, kinda. The parts are there, but no-one has put them together in a neat package yet. That's probably since Linux video software has really taken off in just the last 6 months.
There's mplayer which is a great player for any video-format out there. It can even play DVD's, although it doesn't have menu support like Ogle. It can also rip DVD:s to MPEG-4 (a.k.a DivX) using a couple of different encoders. Xvid is my favorite open-source MPEG-4 encoder, it's also got good reviews on Doom9 (good place for DivX info!).
For the TV-in recording part you can use a $50 WinTV card and the Video4Linux drivers. On top of that you need an audio-video capture application that can use encoders such as Xvid and Lame to encode to MPEG-4 (video) and MP3 (audio). I use NVrec. If you try the NVrec suite, use the DIVX4rec app (with the Xvid library instead of divx4linux which isn't maintained anymore). On my P-III 500MHz I can compress 29.97 Hz (NTSC) 320x240 in real-time to 800 kbit/s (video) + 80 kbit/s (audio). It takes about 5 hours to make a one-pass encoding of a DVD, so with a faster CPU it's probably possible to do real-time de-interlacing and encoding of 640x480 video.
A drawback is that NVrec is a command-line app for recording, I'm working on a patch for real-time preview on Matrox G400 TV-out. Or if you have a fast enough computer you might be able to run mplayer on the file as it is being recorded. This would allow for Tivo-like pause and resume. It might be a problem with AVI files from NVrec though since I don't think they're streamable.
Now, to put all of this together you need some kind of control application. That's not really that hard to write compared to all the other pieces (mplayer, xvid, nvrec). I've been working on one for the last couple of months, and have an alpha version that is usuable. It only supports the Matrox G400 for TV-out, and is a little crude, but it works good enough that I have it hooked up to my TV for everyday use. It's controllable by a remote control (see Lirc), using a very simple text-menu system to view tv, play avi/mpeg/mp3/dvd, record tv-in and rip DVD's. I'm getting ready to put it up on Sourceforge as Freevo within the next couple of weeks.
The application is written in Python which is great for stuff like this. Once the basic stuff is done, it might be cool to make a plugin architecture where you could interface to other stuff. For instance, with OSD (on screen display), it is easy to add things like new mail notification while you're watching TV. Or new Slashdot headlines, ICQ chat notif, phone caller ID interface, www control, etc. And, of course, an interface to some kind of tv-guide.
I haven't really found any other complete applications like this. Not that I've looked that hard, I'm always looking for an excuse to write software. mplayer might end up with all these feaures eventually, it is improving at an incredible rate at the moment.
Norsk Data ("Norwegian Computers") designed fairly advanced 32-bit systems in the middle of the 80's. I remember using them at my local university in Sweden. (Obviously the VAX 11/785 we had too was more exciting since it could run Hack under VMS Eunice).
Back then there was an export embargo on advanced computers to the Soviet union, which basically meant that 32-bit computers couldn't be sold there. So they cut off 4 bits and voila! had an exportable 28-bit computer (ND-505).
Maybe technically not a soviet machine, but still...
Ummm, like you haven't been able to do that forever by just walking up to your neighbour's meter and performing an ocular inspection (gawking at it).
These things don't seem to have strong crypto.
They do contain security measures.
It is faster as it can read about 100 meters/minute on a three-phase system. The meters themselves are pretty reliable, e.g. they aren't susceptible to lightning.
Seriously though, people have been hacking their utility bills for over 100 years now. There's an amazing number of ways to fool an electro-mechanical meter using various devices.
One trick that I heard about was that some meters could be unplugged and plugged back in upside-down, thus making it run backwards....
The signal is generated at the sub-station level, and the system as it is used today is master-slave (sub-station - meter), so there aren't any contention problems.
As far as interference goes, the system has a very good comm performance, and it very rarely interferes with other equipment.
Wrong. TWACS has been around since the 70's, and it works great since it uses low-frequency modulation of the 60Hz carrier. The system has a range of at least tens of miles from the sub-station to the meter (and back).
If you want a high-performance functional programming language
Boy, and I thought "military intelligence" was the biggest oxymoron ever.
Is it possible to buy access to a virtual Linux server anywhere, e.g. on an IBM S/390?
It would seem like a good business idea for someone to sell 10,000 virtual Linux servers to amateur users for $10-$20/month.
/Krister
I know Europe definately a lot more expensive that here for landline phone/internet.
What are your data for that? It costs 8 cents a minute to call from Sweden to Missouri, while it costs ~12-15 cents a minute to call long-distance within Missouri! Phone service is $15/month in Sweden, here in Missouri it is more like $30-40!
Don't sue them. Turn them over to the FBI instead. After all, they're terrorists who should spend life in prison!