video sending now throws exceptions instead of returning error codes
more errors as exceptions instead of unused error codes