diff options
author | Michael Niedermayer | 2013-10-30 10:26:00 +0100 |
---|---|---|
committer | Michael Niedermayer | 2013-10-30 10:26:00 +0100 |
commit | 70737b83f06e34a8b4f9eb70948b2f2ca6711992 (patch) | |
tree | 918a1ec45b3a8622b4c732ddc5db7451849fd509 /libavformat/oggparsetheora.c | |
parent | 558784f113f1436a48f34db2612c3b6460e6c734 (diff) | |
parent | d4c12b8be4bdd2ffddb3bd5e11773de4c4c46f68 (diff) |
Merge commit 'd4c12b8be4bdd2ffddb3bd5e11773de4c4c46f68'
* commit 'd4c12b8be4bdd2ffddb3bd5e11773de4c4c46f68':
oggparsetheora: K&R cosmetics, reformat
Conflicts:
libavformat/oggparsetheora.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/oggparsetheora.c')
-rw-r--r-- | libavformat/oggparsetheora.c | 107 |
1 files changed, 54 insertions, 53 deletions
diff --git a/libavformat/oggparsetheora.c b/libavformat/oggparsetheora.c index 0fd5812e0f..c0290e6bf4 100644 --- a/libavformat/oggparsetheora.c +++ b/libavformat/oggparsetheora.c @@ -1,26 +1,26 @@ /** - Copyright (C) 2005 Matthieu CASTET, Alex Beregszaszi - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation - files (the "Software"), to deal in the Software without - restriction, including without limitation the rights to use, copy, - modify, merge, publish, distribute, sublicense, and/or sell copies - of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - DEALINGS IN THE SOFTWARE. -**/ + * Copyright (C) 2005 Matthieu CASTET, Alex Beregszaszi + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, copy, + * modify, merge, publish, distribute, sublicense, and/or sell copies + * of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + **/ #include <stdlib.h> #include "libavutil/bswap.h" @@ -29,26 +29,26 @@ #include "internal.h" #include "oggdec.h" -struct theora_params { +typedef struct TheoraParams { int gpshift; int gpmask; unsigned version; -}; +} TheoraParams; -static int -theora_header (AVFormatContext * s, int idx) +static int theora_header(AVFormatContext *s, int idx) { - struct ogg *ogg = s->priv_data; + struct ogg *ogg = s->priv_data; struct ogg_stream *os = ogg->streams + idx; - AVStream *st = s->streams[idx]; - struct theora_params *thp = os->private; - int cds = st->codec->extradata_size + os->psize + 2, err; + AVStream *st = s->streams[idx]; + TheoraParams *thp = os->private; + int cds = st->codec->extradata_size + os->psize + 2; + int err; uint8_t *cdp; - if(!(os->buf[os->pstart] & 0x80)) + if (!(os->buf[os->pstart] & 0x80)) return 0; - if(!thp){ + if (!thp) { thp = av_mallocz(sizeof(*thp)); os->private = thp; } @@ -59,15 +59,15 @@ theora_header (AVFormatContext * s, int idx) int width, height; AVRational timebase; - init_get_bits(&gb, os->buf + os->pstart, os->psize*8); + init_get_bits(&gb, os->buf + os->pstart, os->psize * 8); - skip_bits_long(&gb, 7*8); /* 0x80"theora" */ + /* 0x80"theora" */ + skip_bits_long(&gb, 7 * 8); thp->version = get_bits_long(&gb, 24); - if (thp->version < 0x030100) - { + if (thp->version < 0x030100) { av_log(s, AV_LOG_ERROR, - "Too old or unsupported Theora (%x)\n", thp->version); + "Too old or unsupported Theora (%x)\n", thp->version); return -1; } @@ -81,12 +81,13 @@ theora_header (AVFormatContext * s, int idx) if (thp->version >= 0x030200) { width = get_bits_long(&gb, 24); height = get_bits_long(&gb, 24); - if ( width <= st->codec->width && width > st->codec->width-16 - && height <= st->codec->height && height > st->codec->height-16) + if (width <= st->codec->width && width > st->codec->width - 16 && + height <= st->codec->height && height > st->codec->height - 16) avcodec_set_dimensions(st->codec, width, height); skip_bits(&gb, 16); } + timebase.den = get_bits_long(&gb, 32); timebase.num = get_bits_long(&gb, 32); if (!(timebase.num > 0 && timebase.den > 0)) { @@ -105,11 +106,11 @@ theora_header (AVFormatContext * s, int idx) skip_bits(&gb, 2); thp->gpshift = get_bits(&gb, 5); - thp->gpmask = (1 << thp->gpshift) - 1; + thp->gpmask = (1 << thp->gpshift) - 1; st->codec->codec_type = AVMEDIA_TYPE_VIDEO; - st->codec->codec_id = AV_CODEC_ID_THEORA; - st->need_parsing = AVSTREAM_PARSE_HEADERS; + st->codec->codec_id = AV_CODEC_ID_THEORA; + st->need_parsing = AVSTREAM_PARSE_HEADERS; } break; case 0x81: @@ -128,21 +129,21 @@ theora_header (AVFormatContext * s, int idx) st->codec->extradata_size = 0; return err; } - cdp = st->codec->extradata + st->codec->extradata_size; + cdp = st->codec->extradata + st->codec->extradata_size; *cdp++ = os->psize >> 8; *cdp++ = os->psize & 0xff; - memcpy (cdp, os->buf + os->pstart, os->psize); + memcpy(cdp, os->buf + os->pstart, os->psize); st->codec->extradata_size = cds; return 1; } -static uint64_t -theora_gptopts(AVFormatContext *ctx, int idx, uint64_t gp, int64_t *dts) +static uint64_t theora_gptopts(AVFormatContext *ctx, int idx, uint64_t gp, + int64_t *dts) { - struct ogg *ogg = ctx->priv_data; + struct ogg *ogg = ctx->priv_data; struct ogg_stream *os = ogg->streams + idx; - struct theora_params *thp = os->private; + TheoraParams *thp = os->private; uint64_t iframe, pframe; if (!thp) @@ -154,7 +155,7 @@ theora_gptopts(AVFormatContext *ctx, int idx, uint64_t gp, int64_t *dts) if (thp->version < 0x030201) iframe++; - if(!pframe) + if (!pframe) os->pflags |= AV_PKT_FLAG_KEY; if (dts) @@ -200,10 +201,10 @@ static int theora_packet(AVFormatContext *s, int idx) } const struct ogg_codec ff_theora_codec = { - .magic = "\200theora", + .magic = "\200theora", .magicsize = 7, - .header = theora_header, - .packet = theora_packet, - .gptopts = theora_gptopts, + .header = theora_header, + .packet = theora_packet, + .gptopts = theora_gptopts, .nb_header = 3, }; |