USB Camera

This patch adds USB Camera functionality to the ffmpeg producer.  It supports syntax like:

PLAY 1-10 "device://video=Some Camera" or
PLAY 1-10 DEVICE "video=Some Camera"

This patch requires (includes) the ffmpeg patch and also the parameters patch previously submitted.  This patch is not that clean, in that it includes my VCExpress mods in this branch so you will want to watch for that when merging.

This patch addresses some instability / crashes in previous USB Camera attempts where the AVPacket lifetime was too short, being freed before consumption in the call to write_frame.  A PacketFrame structure has been introduced to ensure that the AVPacket is not freed until after use in the write_frame call in the frame_muxer.