Author |
Message |
Giorgio Bogoni
Rating: N/A Votes: 0 (Vote!) | Posted on Friday, January 18, 2002 - 10:13 am: | |
All of us are interested in stereoscopy and so all of us would like to get 2 video streams in real time. We have different ways to get them: - analog video-in (the jellow one) - firewire wideo-in - usb channel All of us have the same questions: - what's the available bandwidth of these channels? (USB, for example, cannot stand more than one 640x480 video signal) - which of these channels can be duplicated? (2 firewire board? 2 usb board?) - Can we use different drivers to make 2 video streams caming in? Does anybody know something more? Any suggestion? Giorgio. |
M.H.
Rating: N/A Votes: 0 (Vote!) | Posted on Friday, January 18, 2002 - 12:07 pm: | |
Common fireware card have usualy 3 IO ports. I see this way as the most promising ... |
David C. Qualman
Rating: N/A Votes: 0 (Vote!) | Posted on Friday, January 18, 2002 - 9:44 pm: | |
Hi Giorgio, I have some experience in the field of capturing video. Based upon your brief description, I'll assume that you have two video sources, such as cameras or VCR's. Each of these is providing a video stream representing a different eye's view. I think that you may want to consider using video frame capture cards designed for this purpose. The frame grabbers capture analog video signal, and convert the video stream into digital images. They typically capture one frame at a time. I assume that you would want color, so you would need a color frame grabber. Example cards are from www.imagenation.com, www.coreco.com, and www.bitflow.com. The bandwidth is a concern. All of the images will be coming across the PCI bus. If you have one image at 640 by 480, 30 frames per second, you will get over 9 million pixels per second. For two channels, you would get over 18 million pixels per second. You obviously don't want to capture monochrome, so you would need the pixels to contain RGB information. You could use 2 byte pixels, such as with RGB 565. You could use 3 byte pixels, such as with RGB 888. Or, you could use 4 bytes pixels, such as with RGBA 8888. With two-byte pixels, you are pumping a steady 37 Megabytes across the PCI core per second. With three-byte pixels, you are pumping a steady 55 Megabytes across the PCI core per second. to see if this is too much, you need to get a feel for the available bandwidth of the PCI bus. With a maximum bandwidth of 133 MHz, and assuming about 60% sustainable capacity, we should not expect more than about 80 MHz bandwidth on the PCI bus. Keep in mind that if you pull the data into the computer across the PCI bus, you may need to push it back out to another device, such as a hard disk. This would chew up more of your bandwidth. My experience is that I can receive two channels of 16bpp images without missing data. But, when I try to use 24bpp, I start to lose data because he bus is too busy. To capture the two video streams, I use two frame grabbers. If possible, I like to genlock the cameras. This way, I am getting images at the same instance in time from each camera. In the worst case, they will be +- 1/60th of a second apart. Of course, this would requie developing some software to use the frame grabbers. As we are well aware, almost nobody develops stereoscopic software. |
David C. Qualman
Rating: N/A Votes: 0 (Vote!) | Posted on Friday, January 18, 2002 - 9:46 pm: | |
BTW - my understanding of Firewire is that the three ports are 8 bits per port only. I don't expect that this would be adequate for capturing pairs of color images. If my understanding is wrong, please let me know - I have little experience with Firewire. |
M.H.
Rating: N/A Votes: 0 (Vote!) | Posted on Saturday, January 19, 2002 - 8:07 pm: | |
David: I thing that the data bandwitch throw one Fireware chanel (10Mb/s or so) is enought for anything. Why shuld the data coding method play a rule ? You will be probably using DV compresed video data transfer anyway ... |
Anonymous
Rating: N/A Votes: 0 (Vote!) | Posted on Saturday, January 19, 2002 - 8:15 pm: | |
another extra point for fireware is that many addon cards for PCs have 2 ports. Anyone want to try using them at once with different software? |
Anonymous
Rating: N/A Votes: 0 (Vote!) | Posted on Sunday, January 20, 2002 - 12:08 pm: | |
I have a specialized custom system that I believe can do this. I'm running dual 1.7piv xeons and have separate 32bit bus for captures and 64 bit buses running ultra 160 scsi drives. I get around 250megs/sec throughput on the drives. I've already run 6 video layers realtime while doing pips/moves/scaling/dve's etc. and recording the output back to the drives. I'll have to tweak a dve that will interlace two video inputs and that should give me stereoscopic video.. time will tell..... |
Giorgio Bogoni
Rating: N/A Votes: 0 (Vote!) | Posted on Sunday, January 20, 2002 - 1:51 pm: | |
David, can we reduce fps rate? 15 fps may be enough for a lot of video application. Take a look here: http://www.gotchanow.com/text/multicam.html#anchor261744 they sell software and "custom" (??) PCI-video cards to get analog video-in up to 4 cameras (buying 4 video-cards); maybe we can make it work with "standard" PCI-video cards. Anonymous ... keep 2 full resolution videos, do not interlace (you'd lost half of the resolution!), choose side-by-side stereo format! Giorgio. |
David C. Qualman
Rating: N/A Votes: 0 (Vote!) | Posted on Sunday, January 20, 2002 - 9:02 pm: | |
Hi Giorgio, If you are considering to use standard cameras - i.e. those with standard NTSC or PAL timing and providing an analog video stream - you have a few choices to hook up multiple cameras to the computer. As I mentoned, I am familiar with PCI frame grabber cards. So, when I see a problem nail, I'll pick up my frame grabber hammer to solve the problem :-) Many of the frame grabbers for color cameras have multiple inputs. For instance, the PXC-200 from Imagenation (www.imagenation.com) has four inputs. For low cost frame grabbers - under $600 each like the PXC-200 - the mulitple inputs will be multiplexed. That is, you can grab from one camera, switch to another, and then grab from the other camera. But, you can't grab from both cameras at the same time. This is fine if you don't mind slower frame rates and the image is rather static. Or, you could use more than one of the low cost frame grabbers. You could put in two of the PCI frame grabbers, and grab from two cameras at the same time. Keeping the camerss genlocked is a definite advantage. You could grab as infrequently as you want. Since the cameras always put out 30 frames per second (or 25 for the Euro's), you just skip a multiple of frames for a slower frame rate. Thus, to get 15 fps, grab a frame, skip a frame, etc. A more upscale solution is to use the expensive asynchronous multichannel frame grabbers. For color, these can be more than $2,000. With a single frame grabber, you could simultaneously grab from multiple cameras. I think that if you have the PCI slots, multiples of the cheaper grabbers can suffice. Again, genlocked cameras are better here. The bounding conditions for using frame grabbers are: the bandwidth you want to use, the cost you want to spend, the number of PCI slots you want to use, and whether you have access to a person that can write applications to get input from the frame grabbers. I have experimented with grabbing from two cameras and displaying the image on the PC's monitor in stereo. I used two PXC-200's from Imagenation, and a program that I wrote using WINx3D. It was just an afternoon experiment, so I was getting about 20 fps, although I could have been getting 30fps with more development time. I don't think that it is necessary to use custom frame grabbers. |
Anonymous
Rating: N/A Votes: 0 (Vote!) | Posted on Monday, January 21, 2002 - 12:09 am: | |
David, can we see that program released as an unsupported "beta" limited release thingy? |
Anonymous
Rating: N/A Votes: 0 (Vote!) | Posted on Monday, January 21, 2002 - 11:25 pm: | |
>Anonymous ... keep 2 full resolution videos, do >not interlace (you'd lost half of the >resolution!), choose side-by-side stereo format! >Giorgio. Giorgio, can todays shutter glasses handle playing a 1440x480 stream realtime ? wouldn't interlaced format be compatible with more shutter glasses? |
Giorgio Bogoni
Rating: N/A Votes: 0 (Vote!) | Posted on Monday, January 21, 2002 - 11:51 pm: | |
Of course it would be. Anyway your HW can play this video stream in full screen mode connecting two 800x600 DLP videoprojectors ... just wear polarized glasses and don't forget to invite me when you're ready! Giorgio. (even page-flipping can benefit of full resolution ... there's no reason to waste half of the lines) |
|