>Plus, with the FPGA, not only could be hack the DRIVERS, you could hack the FIRMWARE! Think! You could buy the card, and write software to take the burden off the CPU for decoding MPEG2 or 4.
We sell them now for $800 (+lens+power supply). There is also a $100/camera discount for those who are going to develop software to work in/with the camera and release it under GNU/GPL or compatible license.
Last winter I've got an idea of trying a software competition to develop a video streamer for the network cameras developed by Elphel (both software and hardware are GPL'ed). I decided to try Russian software developers (I'm Russian myself) so I wrote an article in a Russian online magazine "Computerra" and offered a $3000 prize for the best streamer to use with the camera (the code was to retain author's copyright and be released under GNU/GPL). I did not expect many participants and thought I'l sacrifice 3 cameras. But it turned different and I've sent out 9 of them - 4 to Russia, 3 - to Ukraine, 1 - to Germany and 1 to India (the article was in Russian - that restricted participants to Russian-reading).
Of those 9 participants 6 reached the finish line and the winner is Ukrainian Alexander Melichenko. What amazed me was that I've got the first version of his steamer in just a couple weeks after the announcement _before_ he received the hardware! Hi used my online camera to download his application over the Internet and made it working. And the camera uses Axis ETRAX100LX CPU - something he never programmed before.
In some cameras internal (usually reflective) IR cutoff filter can be placed close to the sensor. That makes "red eye" effect lower than having the surface in focal plane, but it still might be detactable.
So usage of an external IR cutoff filter will definitely help. I would also recommend attaching it not exacly perpendicular to the optical axis to prevent direct reflections some systems may be counting on.
The only way I can think of you can detect a camera is a "red eye" effect. To make it not disturbing for viewers you have to make it invisible and so much less effective as the cameras have IR cutoff filters inside. So there are at least 2 things that can be done about that:
1. Use additional high quality dielectric IR cutoff filters in front of the camera lens and
2. Make fun of them - take pieces of reflective tape (maybe cut as circels) or bycicle reflectors and stick them to the walls and chairs in the theater. Make it look as there are dozens of cameras recording the show!
Yes it definitely makes sense to develop such an FPGA-based board and letting FOSS crowd to hack the FPGA code similary to the software. FPGA are really powerful toys these days and can easily compete with ASIC devices. Total reconfigurability extends it's lifetime a lot - I know that the cameras http://developers.slashdot.org/article.pl?sid=02/1 2/04/1526226&tid=8&tid=106 are shipped now with much improved "hardware" without any actual changes on the boards.
Are there any graphic cards that natively support rendering of Ogg Theora? What about wavelet BBC Dirac that is still in alpha stage and many specs are not finalized? Can _any_ of the high end cards do that?
The FPGA-based with the open HDL code can. And will support bleeding-edge just emerging tasks, formats designed after the hardware is manufactured.
Concerns about the licensing and patents? Yes those are nasty things. But have you ever downloaded any applications or drivers to your Linux box separately from the distro you've got? Because of the "licensing issues"?
That can work for reconfigurable FPGA too. Still I prefer to avoid those - our next cameras (FPGA code is under development) will support Ogg Theora, not MPEG*
And we will be happy to buy such cards and ship them with every our camera.
OpenRISC is a nice project, but it still follows older design.
I believe there could be a lot of real innovation where OSH meets OSS - reconfigurable hardware supported maybe as deep as the OS kernel.
That will probably work: http://www.xilinx.com/ise/products/webpack_config. htm
Simulator is too LT - see article
And I thought of "configure" as a process of loading bitstream into the chip, not generating it.
Andrey
As you may probably guess I do have some idea about the "synthesis", "mapping", "placing" and "routing". And still I called them "compillation" or do you know another single word of the process that creates a bit-stream file from the HDL sources?
The tools I used for the camera design are $00,000.00 - http://www.xilinx.com/xlnx/xil_prodcat_landingpage.jsp?title=ISE+WebPack
Andrey
The frame rate of the Kodak KAC-1310 sensor used in the camera runs at pixel clock up to 20MHz,and the frame rate is calculated by the following formula:
fps=1/(((H-1)*(W+44)+2672)*0.00000005)
W : H : fps
1280 : 1024 : 14.73704687
640 : 480 : 60.54954769
320 : 240 : 223.0450105
160 : 120 : 742.1701054
Hardware compression provides standard (quality,frame size) -> filesize ratios, for 1280x1024 50% quility gives 50-100k, so 15fps can be easily sent over the LAN. For smaller sizes/higher frame rates data rate over the LAN stays about the same, you just need to format image in multiple of 16x16 pixels.
Andrey
Sorry, I probably hit the wrong button and was called "Anonymous Coward"
1. Price for a module as shown on a data sheet is $5000-$7000, depending on the MCP quality. The least expensive I've seen was $1300, decent one $2500
Next most expensive component - fiberoptic taper ~$500
2. The most important for me with Linux was not that I did not need to pay for it but I was *free* to modify it and the applications.
3. External trigger - see schematics at http://www.elphel.com/3fhlo/index.html
You forgot about another use - taking it to the computer store to check the hardware - is it Linux compatible?
>Plus, with the FPGA, not only could be hack the DRIVERS, you could hack the FIRMWARE! Think! You could buy the card, and write software to take the burden off the CPU for decoding MPEG2 or 4.
k &project_task_id=106273&group_id=105686&group_proj ect_id=38873
(code itself is in the CVS of the same project).
Why MPEG? What about Ogg Theora? You can even reuse parts of the Verilog code (GNU/GPL) designed for Theora encoder (same Xilinx Spartan 3 architecture) - http://sourceforge.net/pm/task.php?func=detailtas
And I would definitely love to have such cards to use (and provide to our customers) with the cameras we make.
We sell them now for $800 (+lens+power supply). There is also a $100/camera discount for those who are going to develop software to work in/with the camera and release it under GNU/GPL or compatible license.
Last winter I've got an idea of trying a software competition to develop a video streamer for the network cameras developed by Elphel (both software and hardware are GPL'ed). I decided to try Russian software developers (I'm Russian myself) so I wrote an article in a Russian online magazine "Computerra" and offered a $3000 prize for the best streamer to use with the camera (the code was to retain author's copyright and be released under GNU/GPL). I did not expect many participants and thought I'l sacrifice 3 cameras. But it turned different and I've sent out 9 of them - 4 to Russia, 3 - to Ukraine, 1 - to Germany and 1 to India (the article was in Russian - that restricted participants to Russian-reading).
Of those 9 participants 6 reached the finish line and the winner is Ukrainian Alexander Melichenko. What amazed me was that I've got the first version of his steamer in just a couple weeks after the announcement _before_ he received the hardware! Hi used my online camera to download his application over the Internet and made it working. And the camera uses Axis ETRAX100LX CPU - something he never programmed before.
All that software is now on our Sourceforge project page - https://sourceforge.net/projects/elphel.
In some cameras internal (usually reflective) IR cutoff filter can be placed close to the sensor. That makes "red eye" effect lower than having the surface in focal plane, but it still might be detactable.
So usage of an external IR cutoff filter will definitely help. I would also recommend attaching it not exacly perpendicular to the optical axis to prevent direct reflections some systems may be counting on.
The only way I can think of you can detect a camera is a "red eye" effect. To make it not disturbing for viewers you have to make it invisible and so much less effective as the cameras have IR cutoff filters inside. So there are at least 2 things that can be done about that:
1. Use additional high quality dielectric IR cutoff filters in front of the camera lens and
2. Make fun of them - take pieces of reflective tape (maybe cut as circels) or bycicle reflectors and stick them to the walls and chairs in the theater. Make it look as there are dozens of cameras recording the show!
Yes it definitely makes sense to develop such an FPGA-based board and letting FOSS crowd to hack the FPGA code similary to the software. FPGA are really powerful toys these days and can easily compete with ASIC devices. Total reconfigurability extends it's lifetime a lot - I know that the cameras http://developers.slashdot.org/article.pl?sid=02/1 2/04/1526226&tid=8&tid=106 are shipped now with much improved "hardware" without any actual changes on the boards.
Are there any graphic cards that natively support rendering of Ogg Theora? What about wavelet BBC Dirac that is still in alpha stage and many specs are not finalized? Can _any_ of the high end cards do that?
The FPGA-based with the open HDL code can. And will support bleeding-edge just emerging tasks, formats designed after the hardware is manufactured.
Concerns about the licensing and patents? Yes those are nasty things. But have you ever downloaded any applications or drivers to your Linux box separately from the distro you've got? Because of the "licensing issues"?
That can work for reconfigurable FPGA too. Still I prefer to avoid those - our next cameras (FPGA code is under development) will support Ogg Theora, not MPEG*
And we will be happy to buy such cards and ship them with every our camera.
OpenRISC is a nice project, but it still follows older design. I believe there could be a lot of real innovation where OSH meets OSS - reconfigurable hardware supported maybe as deep as the OS kernel.
Model 313 camera does not have capability to send *interlaced* frames ;-)
I'm going to post camera's IP in several days. Earlier - possible by email
That will probably work: http://www.xilinx.com/ise/products/webpack_config. htm
Simulator is too LT - see article
And I thought of "configure" as a process of loading bitstream into the chip, not generating it.
Andrey
As you may probably guess I do have some idea about the "synthesis", "mapping", "placing" and "routing". And still I called them "compillation" or do you know another single word of the process that creates a bit-stream file from the HDL sources?e .jsp?title=ISE+WebPack
The tools I used for the camera design are $00,000.00 - http://www.xilinx.com/xlnx/xil_prodcat_landingpag
Andrey
The frame rate of the Kodak KAC-1310 sensor used in the camera runs at pixel clock up to 20MHz,and the frame rate is calculated by the following formula:
fps=1/(((H-1)*(W+44)+2672)*0.00000005)
W : H : fps
1280 : 1024 : 14.73704687
640 : 480 : 60.54954769
320 : 240 : 223.0450105
160 : 120 : 742.1701054
Hardware compression provides standard (quality,frame size) -> filesize ratios, for 1280x1024 50% quility gives 50-100k, so 15fps can be easily sent over the LAN. For smaller sizes/higher frame rates data rate over the LAN stays about the same, you just need to format image in multiple of 16x16 pixels.
Andrey
Sorry, I probably hit the wrong button and was called "Anonymous Coward"
1. Price for a module as shown on a data sheet is $5000-$7000, depending on the MCP quality. The least expensive I've seen was $1300, decent one $2500
Next most expensive component - fiberoptic taper ~$500
2. The most important for me with Linux was not that I did not need to pay for it but I was *free* to modify it and the applications.
3. External trigger - see schematics at http://www.elphel.com/3fhlo/index.html
I believe for the nuclear test they may use that huge and expensive older stuff. I tried to make something more simple.