summaryrefslogtreecommitdiff
path: root/libavcodec/dvbsub_parser.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-06-29 17:11:48 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-07-04 17:36:19 +0200
commit3d0dca2856ecf46f8f26512a94931a32e9f18649 (patch)
tree0df166fec6c3db5c278736ad5d7856e30a8c7741 /libavcodec/dvbsub_parser.c
parentec33f7793e035b14fe729a2eec48870651611a7f (diff)
avcodec/dvbsub_parser: Don't allocate buffer separately
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavcodec/dvbsub_parser.c')
-rw-r--r--libavcodec/dvbsub_parser.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/libavcodec/dvbsub_parser.c b/libavcodec/dvbsub_parser.c
index 8ced3c4c34..b7a3d6154c 100644
--- a/libavcodec/dvbsub_parser.c
+++ b/libavcodec/dvbsub_parser.c
@@ -35,20 +35,12 @@
/* parser definition */
typedef struct DVBSubParseContext {
- uint8_t *packet_buf;
int packet_start;
int packet_index;
int in_packet;
+ uint8_t packet_buf[PARSE_BUF_SIZE];
} DVBSubParseContext;
-static av_cold int dvbsub_parse_init(AVCodecParserContext *s)
-{
- DVBSubParseContext *pc = s->priv_data;
- pc->packet_buf = av_malloc(PARSE_BUF_SIZE);
-
- return 0;
-}
-
static int dvbsub_parse(AVCodecParserContext *s,
AVCodecContext *avctx,
const uint8_t **poutbuf, int *poutbuf_size,
@@ -173,16 +165,8 @@ static int dvbsub_parse(AVCodecParserContext *s,
return buf_size;
}
-static av_cold void dvbsub_parse_close(AVCodecParserContext *s)
-{
- DVBSubParseContext *pc = s->priv_data;
- av_freep(&pc->packet_buf);
-}
-
AVCodecParser ff_dvbsub_parser = {
.codec_ids = { AV_CODEC_ID_DVB_SUBTITLE },
.priv_data_size = sizeof(DVBSubParseContext),
- .parser_init = dvbsub_parse_init,
.parser_parse = dvbsub_parse,
- .parser_close = dvbsub_parse_close,
};