I do this with SonicWall all the time. Very easy.
On SonicWall:
Define a subinterface (X0:10 for instance) and assign 10.10.10.0/24 and assign VLAN 10. Set subinterface IP to 10.10.10.1 which will be your default gateway for anything in VLAN 10.
Define a zone called CAMERAS for that interface.
Define DHCP server for that subinterface if your camera system needs it.
Define address object for your DVR server. 10.10.10.2 for example.
Define service ports as required. For example HTTP 8080 for the web interface of the DVR.
Assign firewall and NAT rules for WAN>CAMERAS for inbound web/mobile app ports. If you want more security you can set another address object for your office IPs and only allow inbound traffic for that firewall rule from that IP block. For more secure mobile device access you can use the SonicWall mobile VPN app and set up VPN access.
Assign firewall rules for CAMERAS > LAN and LAN > CAMERAS as required for the specific ports only. For instance, one rule for DENY ANY ANY ALL but for LAN>CAMERAS allow 8080 from ALL to the DVR.
On switches:
Define new VLAN 10 and call it CAMERAS.
Set the PVID as 10 on the ports the DVR and cameras are connected to - this applies VLAN 10 to any untagged inbound traffic. Set tagged 10 for those ports so the switch knows you want VLAN 10 to egress there also.
On the port you connect to the router interface (SonicWall X0 by default) set it to trunk mode (if applicable) and tag the data VLAN (VLAN 1 if you leave it as default) and VLAN 10 for the cameras.
Other routers will be very close.
Cisco SMB SG series switches are very good units. I use LOTS of them. 2xx are L2, 3xx and 5xx are L3 lite. Also look at the Ubiquiti line of switches. The ES-24-LITE and ES-48-LITE (non-PoE) as well as the PoE models are ALL L3 lite and the newest firmwares have a GREAT GUI interface for working with VLANs. Pricewise they kill anything else on the market with comparable features. Do not order ES-48-LITE from Amazon though. There are people selling defective ones there that are DOA with memory errors.