lwlibav: Update decoder configuration out-of-bandly.

All extradata is now written in lwi file.
lwlibav: Add PTS generator for MPEG-1/2 Video.
lwlibav: Also add VC-1/WMV3 PTS generator.
lwlibav: Make an effort to get picture type.
lwlibav: Forgot to write pict_type from the own parser into lwi file.
lwlibav: Decode to get picture type when indexing ASF.
lwlibav: Shift the current frame number in order to match DTS.
lwlibav: Add NULL dereference check for the index helpers.

The helpers are not allocated for non-Audio/Visual streams.
lwlibav: Generate PTS only when there is any invalid PTS and all DTS are valid.
lwlibav: Shift the current audio frame number in order to match file offset/PTS/DTS.
lwlibav: Retry seek when the first decoding after seek failed.
lwlibav: Use index helper to get audio frame length.
lwlibav: Fix pict_type when there is decoder delay.
lwlibav: Fix MPEG-1/2 Video picture type by actual decoding.

Also fix audio decoding was always used for getting audio frame length.
lwlibav: Fix PTS based seek when PTSs are generated.
lwlibav: Mark only I-picture as a keyframe in VC-1/WMV3 stream.
lwlibav: Fix a C++ compilation with ffmpeg.

There is incompatibility of pointer data type.
Merge branch 'plain' into build-msvc

Merge revision: r491
Conflicts:
	AviUtl/libav_input.c
	VapourSynth/lwlibav_source.c
	common/lwindex.c
	common/lwlibav_audio.c
	common/lwlibav_video.c