xcbgrab: XCB-based screen capture

Matches the x11grab screen capture by features.
matroskaenc: write correct Display{Width, Height} in stereo encoding

should be the raw amount of pixels (for example 3840x1080 for full HD side by
side) and the DisplayWidth/Height in pixels should be the amount of pixels for
one plane (1920x1080 for that full HD stream)."

So, move the aspect ratio check in the mkv_write_stereo_mode() function
and always write the embl when stereo format and/or aspect ration is set.
Also add a few comments to that function.

CC: libav-stable@libav.org
Found-by: Asan Usipov <asan.usipov@gmail.com>
filmstripdec: avoid integer overflow

CC: libav-stable@libav.org
Bug-Id: CID 732246
bethsoftvid: check return value and clean memory

CC: libav-stable@libav.org
Bug-Id: CID 733777
mxfdec: reduce loop bound in mxf_read_pixel_layout()

Makes coverity less confused and code more readable.

Bug-Id: CID 732262
avcodec/sgidec: fix linesize for 16bit

Fixes: asan_heap-oob_22b30d4_39_038.sgi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/sgidec: fix count check

Fixes: asan_heap-oob_22b30d4_39_038.sgi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'a6674d2e7771dbf7a4a5556f5e126be83cadac96'

* commit 'a6674d2e7771dbf7a4a5556f5e126be83cadac96':
  xcbgrab: XCB-based screen capture

Conflicts:
	Changelog
	configure
	libavdevice/Makefile
	libavdevice/alldevices.c
	libavdevice/version.h

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

* commit '090c67d586e3916f9acc49e010b6389d07f97153':
  matroskaenc: write correct Display{Width, Height} in stereo encoding

Conflicts:
	libavformat/matroskaenc.c

See: 6103faaa51d2f46d6ccecaad9a089b4b42ff66ee
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'b46b233baffc2076a1a17a264ba9553ae0d4878f'

* commit 'b46b233baffc2076a1a17a264ba9553ae0d4878f':
  filmstripdec: avoid integer overflow

Merged-by: Michael Niedermayer <michaelni@gmx.at>
avformat/filmstripdec: Fix several integer overflows

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'e6c66f1e4ea19a3aa6ed999c5cb92e1b682c7600'

* commit 'e6c66f1e4ea19a3aa6ed999c5cb92e1b682c7600':
  bethsoftvid: check return value and clean memory

Conflicts:
	libavformat/bethsoftvid.c

See: 3632f35c8e163f6aa6d63c317e3e1fca6a4a5fab
Merged-by: Michael Niedermayer <michaelni@gmx.at>
avformat/bethsoftvid: print error in case the side date failed to be allocated

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '11467ecf519788f2e2f49c63a17eb600e618489e'

* commit '11467ecf519788f2e2f49c63a17eb600e618489e':
  mxfdec: reduce loop bound in mxf_read_pixel_layout()

See: 187630b2449f1eae1096f81f31bab7d81bed3cf1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/diracdec: Use 64bit in calculation of codeblock coordinates

Fixes integer overflow
Fixes out of array read
Fixes: asan_heap-oob_107866c_42_041.drc
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/diracdec: Tighter checks on CODEBLOCKS_X/Y

Fixes very long but finite loop
Fixes: asan_heap-oob_107866c_42_041.drc
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/dirac_arith: fix integer overflow

Fixes: asan_heap-oob_1078676_9_008.drc
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Support raw dvdsub palette as stored on normal dvd's

This is how the palette is stored on dvd's. Currently
only xbmc passes the palette information to libavcodec
this way.
Check return value of avio_seek and avoid modifying state if it fails

The code still modifies state if the timestamp is not found. Not
sure exactly how to avoid that.
asf hacks