avformat/segment: Use avformat_alloc_output_context2()

This avoids having to assign oformat, allows returning the
correct error code and allocates priv_data

Based on patch by: Mika Raento <mika.raento@elisa.fi>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/88/head
Michael Niedermayer 11 years ago
parent 3668168afa
commit 0ffe32cf8f
  1. 9
      libavformat/segment.c

@ -133,12 +133,13 @@ static int segment_mux_init(AVFormatContext *s)
SegmentContext *seg = s->priv_data;
AVFormatContext *oc;
int i;
int ret;
seg->avf = oc = avformat_alloc_context();
if (!oc)
return AVERROR(ENOMEM);
ret = avformat_alloc_output_context2(&seg->avf, seg->oformat, NULL, NULL);
if (ret < 0)
return ret;
oc = seg->avf;
oc->oformat = seg->oformat;
oc->interrupt_callback = s->interrupt_callback;
av_dict_copy(&oc->metadata, s->metadata, 0);

Loading…
Cancel
Save