> As for my hardware restraints / preferences:>
> Specs
> ## Dual independant Ethernet
Are you sure? The dual ethernets may cause more trouble then they're worth. They should ramp up the network configuration problems by a factor of a few hundred and makes the required network support on that box a lot more complicated.
The whole POINT of networking is to save us from the tyranny of the wires. It doesn't matter where the services are on the network, we can link ports on programs with each other nomatter where they're running.
So a good "network application" should run with the picture source (presumably a camera), picture processor (this thing your building) and the "picture sink" on the same machine, different machines or in different countries. It shouldn't matter. If it DOES matter then something is wrong with the design and will cause problems.
So in that case,the simplest interconnection has the three things connecting to each other via an Ethernet hub or switch, and in that case the "picture processor" doesn't need two ethernet ports.
The Camera sends to a TCP port on the processor which is connected to the "input" side of the compression program. The "output" side connects via a different TCP port to wherever the output is going.
That makes the hardware cheaper, gives you a wider choice of parts and makes the programming a LOT simpler .You'll have to run something like Linux on it to support two Ethernet ports, because you're going to be "dual-hosting" to be able to send and receive packets on the right cables. It'll also mean you'll need the cables to be on separately configured networks, which means it won't be able to "plug and play" with DHCP.
If the camera expects DHCP to configure itself and get an IP address, then your box is going to have to run a managed DHCP server on that port, configured differently (so it doesn't clash) to the DHCP-configured port on the other side.
If you're going to need Linux in there to handle the networking you're going to need a LOT of RAM just for the OS and network stack, and mass storage, file system, a way to load it (USB sticks or SD cards) and so on.
If it only needs a single network port then it can run a very cut down OS and network stack and could fit in a part with on-chip FLASH.
I'd suggest you implement your "application" in C or C++ on a PC first and find out how much RAM in needs. That's going to be your limiting factor.