Would it be possible to use a image/video file as an emulated camera?
I think Snapchat has the use of the camera integrated into the app, so to do this you would need to replace or hook into the camera driver or firmware.  (Or alter the Snapchat app.)  Most ways of doing this would require root, I'm not sure about a method to do this offhand.

However, some apps will use an activity from an external camera app.  For those, it's totally possible to use another app that registers as a camera app and then does whatever it wants.  Here's one app for this: Fake Camera