Browse Source

hlsenc: Only write PAT/PMT once per segment

This saves a lot of muxing overhead, especially on lower bitrate
segments.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
tags/n3.0
Derek Buitenhuis 11 years ago
parent
commit
9ae73d0644
1 changed files with 9 additions and 1 deletions
  1. +9
    -1
      libavformat/hlsenc.c

+ 9
- 1
libavformat/hlsenc.c View File

@@ -560,8 +560,16 @@ static int hls_start(AVFormatContext *s)
}
av_dict_free(&options);

if (oc->oformat->priv_class && oc->priv_data)
/* We only require one PAT/PMT per segment. */
if (oc->oformat->priv_class && oc->priv_data) {
char period[21];

snprintf(period, sizeof(period), "%d", (INT_MAX / 2) - 1);

av_opt_set(oc->priv_data, "mpegts_flags", "resend_headers", 0);
av_opt_set(oc->priv_data, "sdt_period", period, 0);
av_opt_set(oc->priv_data, "pat_period", period, 0);
}

if (c->vtt_basename)
avformat_write_header(vtt_oc,NULL);


Loading…
Cancel
Save