[FFmpeg-devel] [PATCH v2] avformat/dashenc: Support HTTP Persistent for master.m3u8 as well
Jeyapal, Karthick
kjeyapal at akamai.com
Sun Oct 21 13:59:01 EEST 2018
On 10/18/18 11:49 AM, Karthick J wrote:
> ---
> libavformat/dashenc.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
> index 3f5f290e25..15b84a0f3b 100644
> --- a/libavformat/dashenc.c
> +++ b/libavformat/dashenc.c
> @@ -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;
Pushed
Regards,
Karthick
More information about the ffmpeg-devel
mailing list