lavc: Add an internal wrapper around get_format()

It will be useful in the following commits.
lavc: set AVCodecContext.hwaccel in ff_get_format()

This way each decoder does not have to do the same thing manually.
lavc: document which parts of AVHWAccel are private.
hwaccel: Rename priv_data_size to frame_priv_data_size

This describes more accurately what this field is for.
hwaccel: Support specific frame allocators

It would reduce the boilerplate code users have to write.
lavc: Add hwaccel private data and init/uninit callbacks
Merge commit '632ad2248e2e5d8cd4b51e6c87c943a38c3da425'

* commit '632ad2248e2e5d8cd4b51e6c87c943a38c3da425':
  lavc: Add an internal wrapper around get_format()

Conflicts:
	libavcodec/h264_slice.c
	libavcodec/mpeg12dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '5c1d7246cd65dc4db1b6dc36e29ce39fc1068f3f'

* commit '5c1d7246cd65dc4db1b6dc36e29ce39fc1068f3f':
  lavc: set AVCodecContext.hwaccel in ff_get_format()

Conflicts:
	libavcodec/mpeg12dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '08bb2567586599d62a282c4cd31567a0807f3d92'

* commit '08bb2567586599d62a282c4cd31567a0807f3d92':
  lavc: document which parts of AVHWAccel are private.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'a871ef0cc936612bdb0e643196be72efcf0c8986'

* commit 'a871ef0cc936612bdb0e643196be72efcf0c8986':
  hwaccel: Rename priv_data_size to frame_priv_data_size

Conflicts:
	libavcodec/avcodec.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'ebc29519d1634bfeb386c20a5d8a52837aae2436'

* commit 'ebc29519d1634bfeb386c20a5d8a52837aae2436':
  hwaccel: Support specific frame allocators

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'dd2d3b766b20196d0b65a82e3d897ccecbf7adb8'

* commit 'dd2d3b766b20196d0b65a82e3d897ccecbf7adb8':
  lavc: Add hwaccel private data and init/uninit callbacks

Conflicts:
	libavcodec/avcodec.h
	libavcodec/internal.h
	libavcodec/pthread_frame.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>