v4l2: avoid pointless indirection.

v4l2_read_header() does no cleanup, so it can return directly, without
any need for goto.
v4l2: set the average framerate instead of codec timebase.

Codec timebase is supposed to be set by decoders only.
v4l2: do not assert on a value received from outside of Libav
avpacket: free side data in av_free_packet().

Freeing it in av_destruct_packet(), as is done currently, would mean
that we allow it to be allocated with other means. But that would make
av_packet_new_side_data() unsafe.

Side data is not expected to be large, so copying it if required
shouldn't be a problem.