Merge remote-tracking branch 'qatar/master'
* qatar/master: lavf: make compute_pkt_fields2() return meaningful error values matroskadec: set timestamps for RealAudio packets. intelh263dec: aspect ratio processing fix. intelh263dec: fix "Strict H.263 compliance" file playback oss,sndio: simplify by using FFMIN. swscale: extract monowhite/black output from yuv2packed[12X]_c(). swscale: de-macro'ify RGB15/16/32 input functions. swscale: rearrange code. movdec: Add support for the 'wfex' atom. ffmpeg.c: Add a necessary const qualifier riff: Fix potential memleak. swscale: change 48bit RGB input macros to inline functions. swscale: change 9/10bit YUV input macros to inline functions. swscale: extract gray16 output functions from yuv2packed[12X](). swscale: use standard clipping functions. swscale: merge macros that are used only once. swscale: fix function declarations in swscale.c. swscale: fix function declaration keywords in x86/swscale_template.c. Conflicts: ffmpeg.c libavcodec/intelh263dec.c libswscale/swscale.c libswscale/x86/swscale_template.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
2ec77aae67
6 changed files with 908 additions and 615 deletions
|
|
@ -513,6 +513,19 @@ static int mov_read_dac3(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int mov_read_wfex(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
||||
{
|
||||
AVStream *st;
|
||||
|
||||
if (c->fc->nb_streams < 1)
|
||||
return 0;
|
||||
st = c->fc->streams[c->fc->nb_streams-1];
|
||||
|
||||
ff_get_wav_header(pb, st->codec, atom.size);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int mov_read_pasp(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
||||
{
|
||||
const int num = avio_rb32(pb);
|
||||
|
|
@ -2261,6 +2274,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = {
|
|||
{ MKTAG('e','s','d','s'), mov_read_esds },
|
||||
{ MKTAG('d','a','c','3'), mov_read_dac3 }, /* AC-3 info */
|
||||
{ MKTAG('w','i','d','e'), mov_read_wide }, /* place holder */
|
||||
{ MKTAG('w','f','e','x'), mov_read_wfex },
|
||||
{ MKTAG('c','m','o','v'), mov_read_cmov },
|
||||
{ MKTAG('c','h','a','n'), mov_read_chan },
|
||||
{ 0, NULL }
|
||||
|
|
|
|||
|
|
@ -537,6 +537,7 @@ int ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size)
|
|||
}
|
||||
codec->extradata_size = cbSize;
|
||||
if (cbSize > 0) {
|
||||
av_free(codec->extradata);
|
||||
codec->extradata = av_mallocz(codec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE);
|
||||
if (!codec->extradata)
|
||||
return AVERROR(ENOMEM);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue