Browse Source

avformat/dashenc: Support HTTP Persistent for master.m3u8 as well

tags/n4.1
kjeyapal@akamai.com Karthick J 6 years ago
parent
commit
f848d384dd
1 changed files with 6 additions and 5 deletions
  1. +6
    -5
      libavformat/dashenc.c

+ 6
- 5
libavformat/dashenc.c View File

@@ -878,14 +878,14 @@ static int write_manifest(AVFormatContext *s, int final)
snprintf(temp_filename, sizeof(temp_filename), use_rename ? "%s.tmp" : "%s", filename_hls);

set_http_options(&opts, c);
ret = avio_open2(&out, temp_filename, AVIO_FLAG_WRITE, NULL, &opts);
ret = dashenc_io_open(s, &c->m3u8_out, temp_filename, &opts);
if (ret < 0) {
av_log(s, AV_LOG_ERROR, "Unable to open %s for writing\n", temp_filename);
return ret;
}
av_dict_free(&opts);

ff_hls_write_playlist_version(out, 7);
ff_hls_write_playlist_version(c->m3u8_out, 7);

for (i = 0; i < s->nb_streams; i++) {
char playlist_file[64];
@@ -894,7 +894,7 @@ static int write_manifest(AVFormatContext *s, int final)
if (st->codecpar->codec_type != AVMEDIA_TYPE_AUDIO)
continue;
get_hls_playlist_name(playlist_file, sizeof(playlist_file), NULL, i);
ff_hls_write_audio_rendition(out, (char *)audio_group,
ff_hls_write_audio_rendition(c->m3u8_out, (char *)audio_group,
playlist_file, i, is_default);
max_audio_bitrate = FFMAX(st->codecpar->bit_rate +
os->muxer_overhead, max_audio_bitrate);
@@ -923,10 +923,11 @@ static int write_manifest(AVFormatContext *s, int final)
av_strlcat(codec_str, audio_codec_str, sizeof(codec_str));
}
get_hls_playlist_name(playlist_file, sizeof(playlist_file), NULL, i);
ff_hls_write_stream_info(st, out, stream_bitrate, playlist_file, agroup,
ff_hls_write_stream_info(st, c->m3u8_out, stream_bitrate,
playlist_file, agroup,
codec_str, NULL);
}
avio_close(out);
dashenc_io_close(s, &c->m3u8_out, temp_filename);
if (use_rename)
if ((ret = avpriv_io_move(temp_filename, filename_hls)) < 0)
return ret;


Loading…
Cancel
Save