5 ms·
The most reliable and cost-effective method I found was an array of USB cameras, recording on a host PC with PCI-E expansion cards and an SSD array. You avoid t
by joefourier 6y ago
The most reliable and cost-effective method I found was an array of USB cameras, recording on a host PC with PCI-E expansion cards and an SSD array. You avoid the hassle of file transfers, h264 compression artefacts and frame synchronisation issues.
- blincoln 6y agoI'm really curious, because I tried something similar maybe 5-10 years ago with a moderately powerful Linux system, and it couldn't support more than 2 USB cameras recording simultaneously. What were the hardware specs on the PC like? How many cameras could you record from simultaneously? Which OS were you using, and did you have to do anything special to make it work?
- joefourier 6y agoThe PC was nothing special, just a middle-of-the-road i5 4000-series running plain Ubuntu. The compute requirements were practically nil, so the CPU was actually overkill for the application. The main considerations are having enough USB bandwidth (hence the need for PCI-E expansion cards), dumping the USB camera data straight to the SSD (no re-encoding, use a proper Gstreamer pipeline or ffmpeg command), and ensuring you can sustain the write speeds (through RAID array). There was some bug in the USB drivers that caused the cameras to reserve more bandwidth than they actually used, limiting their numbers, but that was easy to fix. My guess is that you probably re-encoded the stream, which would indeed drastically limit the number of cameras if their resolution was high enough.
- dylan604 6y agoYeah, except dragging a full sized PC around in the field to shoot video is not practical either. There's a lot of ideas that sounded good and technically worked in the lab/studio, but immediately fall down once the actual camera crews get their hands on them and try to use it for something real.