Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Technology

Building a Multi-Channel PVR System? 344

Dr.Ruud asks: "What would be good ways to build a multichannel VCR? Think of a cluster of 4 PCs, each having 4 TV-cards (with MPEG-hardware on each) and (if necessary) a separate harddisk per TV-card, and maybe a 5th PC that controls the others, holds a DVD-writer and any other necessary hardware. Could it be done in a simpler and cheaper way? See also linuxtv.org, linuxmedialabs.com and of course SouceForge-vcr-projects like Freevo." What would be the best way to go about cutting down the number of machines such a cluster would need? Could this be done by building an all-in-one-wonderbox without it getting really expensive?
This discussion has been archived. No new comments can be posted.

Building a Multi-Channel PVR System?

Comments Filter:
  • hmm (Score:4, Interesting)

    by twiggy ( 104320 ) on Wednesday January 22, 2003 @06:38PM (#5138841) Homepage
    In theory, you'd also need an array of hard drives, because the thrashing of four or more things being recorded at once would be painful...

    This would mean you'd have a maximum of 4 hard drives, unless you buy an IDE card that lets you support more, wouldn't it? (Each IDE chain can have only two devices, right? or is that outdated info now?)

    An interesting idea for certain though...
  • 16-channels at once? (Score:3, Interesting)

    by Anonvmous Coward ( 589068 ) on Wednesday January 22, 2003 @06:39PM (#5138853)
    Well, I gotta admit, I'm baffled as to why one would want to record 16 channels at the same time. Why is that interesting to you? What's your goal here? Are you providing a service for somebody? Is this something you'd just like to do at home? Answer that for me and I might be of more assistance.

    Personally, I can't help but think that 4 cards capturing at ideal quality would saturate the PCI bus unless each card directly controlled a hard drive.
  • Re:Eh? (Score:3, Interesting)

    by pythorlh ( 236755 ) <<moc.liamg> <ta> <rohtyp>> on Wednesday January 22, 2003 @06:40PM (#5138854) Journal
    I could maybe understand for archive purposes. As for me, I don't think I've ever had more than 3 things on at any one time that I wanted to watch, and even very seldom more than 1. But a single machine of this hypothetical cluster would do it for me, quite happily.
  • Why do you want it (Score:4, Interesting)

    by btempleton ( 149110 ) on Wednesday January 22, 2003 @06:43PM (#5138875) Homepage
    While I see the occasional need for 2 tuners, frankly sometimes even that sounds like overkill. I find when there are two shows on at once it's a subtle message from the TV gods that I shouldn't watch so much TV.

    I've also never figured out why you need the DVD burner. With so much disk in my Tivo, there is always stuff to watch, and my need for archiving stuff to watch again later is so small as to be unimportant. If I _really_ need it, a lot of it is at the video store for rent.

    Is the 16 tuners so you could have a box shared by a whole LAN of people? I guess if you have the bandwidth that would make sense.

    Right now the public thinks PVRs are too complex, so the big vendors will probably be working to make them simpler rather than more complex.

    What we really need is a component architecture, with lots of little pieces, all with 100mbit ethernet (firewire and USB 2.0 are too "smart" for their own good. ether is the
    way to go.)

    Then just add what you need. Tuner boxes (OTA, digital or satellite as needed.) Decoders, mounted right on the inputs of the TV that plug in ethernet and spit out component video or NTSC. The ethernet of course leads you to drives running NFS or SMB, and an always on processor to control it all that's simple.

    That way you can start simple, with just a tuner, a decoder and a controller (these 3 might be in the same box) and a networked drive or a drive-in-a-box, and add what you want.
  • by maddogsparky ( 202296 ) on Wednesday January 22, 2003 @06:43PM (#5138880)
    For the amount that you are talking about spending on hardware, you might be able to afford a high-bandwidth A2D converter configured to capture the raw signal (you may have to frequency shift it). Then you can decode it off-line and in slack time when you figure out what you want.

    Same idea for for HDTV, except save the data stream.

  • TV Listings? (Score:3, Interesting)

    by AssFace ( 118098 ) <stenz77@gmail. c o m> on Wednesday January 22, 2003 @06:44PM (#5138895) Homepage Journal
    I have a TiVo right now and it is great.

    I've seen the software to do it yourself and also machines that also do it (but aren't the TiVo service).

    TiVo calls up a number every night and gets the listing information, is there a way to get that for the free programs and/or other machines?

    I know that TV Guide has a web page with the listings - do they have an XML stream that you can grab and parse - or someone else?

    If so, I'm not exactly a power user of TiVo and that would be a nice thing to have - but I don't want it as just a VCR sort of thing where I have to manually tell it "record XYZ at 4pm every thursday" - I am spoiled by the listings intelligence that TiVo has.

    If there is something out there like that, esp avail over the net, that would be a lifesaver when I move to Bermuda since they don't have TiVo there and I would love to have that or something like that there.
  • 5 PCs?!? (Score:5, Interesting)

    by nuxx ( 10153 ) on Wednesday January 22, 2003 @06:44PM (#5138897) Homepage
    I highly doubt you'd need five PCs. What you would need, though, is four MPEG2 hardware capture cards with built-on TV tuners. Remember, a MPEG2 isn't all that big... From rough estimates in my head, any modern DMA100 IDE disk should be able to handle the bandwidth of four MPEG2 streams. You also won't need that powerful of a CPU, either. I'd say that with a little bit of special capture software (that can address four different cards) that will do tuning and scheduling and a TV-out device (Composive, S-Video, and Component) with hardware MPEG2 decoding (or a fairly fast box), you'll have all you need. If they are combination capture / playback cards, you could technically have four outs, too. Might be nice for family time. Queue it up so capture takes priority on all cards but one, or...? The possibilities are endless.

    But anyway, I personally would think that you would only need two or MAYBE 3 streams at once, but if you already have software to address more than one card, why stop with just two? As long as the hard drive and PCI bus can handle it, you're set.
  • Possible Hack (Score:4, Interesting)

    by nukey56 ( 455639 ) on Wednesday January 22, 2003 @06:44PM (#5138901)
    I recall a conversation I had with the digital cable installer awhile back. He had never heard of PVRs before, and as I was talking about them, he suggested that since the data for all the channels is coming in on the same line at the same time, it could be possible to modify a cable receiver to capture multiple channels at once. This wouldn't solve the problem of how to record them all, though I'm guessing a 8/16/(insert number of channels here) SCSI hard drive setup would work nicely.
  • Re:hmm (Score:3, Interesting)

    by Wesley Felter ( 138342 ) <wesley@felter.org> on Wednesday January 22, 2003 @06:47PM (#5138924) Homepage
    I think you could record quite a few channels to a single disk if you use good enough scheduling. Let's conservatively assume that each stream is 8Mbps (1MB/s), the disk can write 20MB/s, and every seek costs 20ms. If you have a 1-second buffer for each channel, then writing that buffer takes 20+(1000*(1/20)) = 70ms. Thus you can write 14 streams to one disk.
  • by teamhasnoi ( 554944 ) <teamhasnoi AT yahoo DOT com> on Wednesday January 22, 2003 @06:49PM (#5138939) Journal
    would be perfect for such a multitasking box. It's exactly what Beos was designed to do. Multiple video streams would most likely be cake to a low end Beos box.

    I talked to some developers over at BeBits about the idea; one said that he had no interest in updating any of his Beos apps and that he had entirely moved over to Windows. (ugh)

    The other was intrigued, but had far too much stuff going on already.

    Any ideas? Anyone thought this too? I would dive on in, but I am a musician and left programming behind with Apple II basic...

    P.S. Trolls: Oh yes, Beos is dead, what am I thinking, I should learn to code, I smell like cats, blahblahblah.

  • by mlyle ( 148697 ) on Wednesday January 22, 2003 @06:50PM (#5138952)
    720 horizontal pixels * 480 vertical pixels * 32 bits per pixel * 29.97 frames per second = 331MBytes/second.

    32bit, 33MHz PCI is 105MBytes/second. Most PCs have this, which is not capable of even supporting one uncompressed card. Of course, for this reason, TV cards do compression.

    DVD quality video is 9 Mbit/sec. Assuming the encoder on the card is not as good, you can get plenty good video at 10-12mbit/sec. And you can fit pretty much as many of those onto a PCI bus as you have slots, I'd think, if the software is decently efficient and supports it. Likewise, this is pretty slow compared to typical disk I/O rates, assuming you do some buffering to allow decent-sized writes to occur and aren't seeking all the time.
  • by mckwant ( 65143 ) on Wednesday January 22, 2003 @06:58PM (#5139020)
    I played with this idea briefly. Imagine a high end hotel offering "whatever" on demand for sum of cash $x. Networking to the rooms is a solved problem (see spectravision, etc.). Only question is how to get the content.

    Well, that, and selling and servicing it in a scalable fashion to hotels that aren't terribly interested in giving you much of a cut.

    Not a bad idea, but you run into trouble with the marketing and the amount of time you need to keep things vs. your affordable drive space. Not to mention the copyright issues the networks will come up with.
  • by Zurk ( 37028 ) <zurktech@gmail . c om> on Wednesday January 22, 2003 @07:03PM (#5139055) Journal
    yes and where are you going to dump 132MB/sec coming off the PCI bus ?
    no hard drive or raid array on a PC can do that and no network can support that without using the PCI bus.
    motion.sourceforge.net sounds like a better idea.
  • Re:Why not... (Score:5, Interesting)

    by Ssolstice ( 198935 ) on Wednesday January 22, 2003 @07:05PM (#5139068)
    Why watch less tv? So he can just put useless posts on Slashdot like yours? The guys asked for technical advice, not for gripes.

  • by t0qer ( 230538 ) on Wednesday January 22, 2003 @07:07PM (#5139084) Homepage Journal
    I've read all the comments about the limitations on the PCI bus, basically there's no way around the lack of bandwidth.

    What if he wanted to do distributed capture though?

    Think about it, you have 4 machines capturing alternating frames. Machine 1 does frame 1,5,9 machine 2 does 2,6,10, machine 3 does 3,7,11 ect.

    This thought occurred to me last night while doing some kazaa downloading. Maybe a better P2p capture system would involve each client downloading 1 frame per movie, and sharing that with the world. The clients could assemble the movie from a distributed network, much like a frame server does in premiere.

    The real advantage to doing this would be movies that are stored in a lossless format.
  • by btempleton ( 149110 ) on Wednesday January 22, 2003 @07:15PM (#5139145) Homepage
    Everybody seemed to have the same question. If that's the case, you should explain the reason because it will help people come up with an answer.

    In this case, of course you are going to have to do custom work because so few people would seem to need it. I could I could imagine a campus dorm, but even then 16 tuners would be too many.

    (One reason for that is that so many of the shows you watch these days are repeated many times. Since with a PVR you don't care when you watch, many 'conflicts' aren't really conflicts, though the software could be better about this.
    In fact, only the major networks seem not to repeat a lot.)

    Now a more interesting project would be to build a receiver that could record all the closed captioning from all the channels. While you could do that with tons of tuner cards, it seems that there should be an easier way to do it since all you really want is that low bitrate VBR.

    I wonder if you could do something with GNU Radio to get those VBR data streams from multiple channels at once? With enough CPU you could use GNU Radio or other software radio to do the multiple channel recording too.
  • by Stalemate ( 105992 ) on Wednesday January 22, 2003 @09:23PM (#5140216)
    This is only slightly related, but here goes. Does anyone out there know of a way that I can use some combination of computer programs/scripts and hardware to control my dish network receiver from within a program? I have dish network and cable and I'd like to use something like freevo (modified) with the guide features, but I would like to be able to do all of my channel changing through one interface. For example, if I selected a channel that I got through the satellite only then I could send a command to the satellite to tune to that channel. It would give me a seemless interface into all the channels I receive, and the person watching wouldn't have to know that to watch FOX you use the regular cable channel and to watch TLC you have to turn on the satellite and put the tv on channel 3.

    I feel confident that this could probably be done using some infrared transmitter, but does anyone know of a way that might be able to send commands directly to the satellite receiver without just acting like a remote control?
  • Anti-TV Religion (Score:4, Interesting)

    by nathanh ( 1214 ) on Wednesday January 22, 2003 @10:33PM (#5140687) Homepage

    What is it with this anti-TV religion that some people seem to have joined? It's not just that they don't watch TV, they insist that nobody else should watch TV either. If you watch TV you're an inferior person! They interrupt conversations to make sure that everybody knows they don't watch TV. They are insanely PROUD of the fact that they have never seen an episode of Farscape, or didn't watch the 6-o-clock news last night.

    At what point did "not watching TV" become such a huge achievement for these people? Is there a similar group of anti-readers? Imagine some nutjob interrupting a conversation about an Asimov novel to make it clear that he never reads novels and in fact doesn't even own any novels! You'd rightfully think a person like that was mentally deranged, yet this bizarre behaviour is proudly proclaimed when the medium is television.

    To all you idiots repeating the tired mantras of "I never watch TV!" and "You TV watchers should get lives!", I say that you are the people without lives if you think not watching TV is some sort of achievement.

  • by mcloran ( 249745 ) on Wednesday January 22, 2003 @10:38PM (#5140713)
    You would be far better off using DirectTivos for the capture boxes. You can then 'hoover' the recorded shows onto a massive central server by using the Turbonet cards and simple protocols. This is better for multiple reasons:

    1) You get the direct satellite stream without going through the decode-reencode step that reduces quality. This results in a huge increase in picture quality.

    2) The Tivos can pull double duty as playback devices and capture devices. You'd just need a minor first step to make sure what you want is transferred from the server before playback.

    3) If you want you can build a diskless, (fanless?) box with a 100M ethernet connected to a switchport on a switch with a gig ethernet to the server. This would give you better control over the output, especially if going to an HDTV ready TV.

    4) The Tivos can act as backup devices for what is recorded when the server goes kaplonk. Still playable! This increases the WAF (Wife Acceptance Factor) greatly.

    Good luck with whatever you are doing recording sixteen channels simultaneously.

Those who can, do; those who can't, write. Those who can't write work for the Bell Labs Record.

Working...