Browse Source

avformat/hlsplaylist: Audio rendition's name and defaultness made configurable

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
tags/n4.0
Karthick Jeyapal Steven Liu 8 years ago
parent
commit
8fd2bdd072
3 changed files with 6 additions and 4 deletions
  1. +1
    -1
      libavformat/hlsenc.c
  2. +3
    -2
      libavformat/hlsplaylist.c
  3. +2
    -1
      libavformat/hlsplaylist.h

+ 1
- 1
libavformat/hlsenc.c View File

@@ -1169,7 +1169,7 @@ static int create_master_playlist(AVFormatContext *s,
goto fail; goto fail;
} }


ff_hls_write_audio_rendition(hls->m3u8_out, vs->agroup, m3u8_rel_name);
ff_hls_write_audio_rendition(hls->m3u8_out, vs->agroup, m3u8_rel_name, 0, 1);


av_freep(&m3u8_rel_name); av_freep(&m3u8_rel_name);
} }


+ 3
- 2
libavformat/hlsplaylist.c View File

@@ -36,12 +36,13 @@ void ff_hls_write_playlist_version(AVIOContext *out, int version) {
} }


void ff_hls_write_audio_rendition(AVIOContext *out, char *agroup, void ff_hls_write_audio_rendition(AVIOContext *out, char *agroup,
char *filename) {
char *filename, int name_id, int is_default) {
if (!out || !agroup || !filename) if (!out || !agroup || !filename)
return; return;


avio_printf(out, "#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=\"group_%s\"", agroup); avio_printf(out, "#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=\"group_%s\"", agroup);
avio_printf(out, ",NAME=\"audio_0\",DEFAULT=YES,URI=\"%s\"\n", filename);
avio_printf(out, ",NAME=\"audio_%d\",DEFAULT=%s,URI=\"%s\"\n", name_id,
is_default ? "YES" : "NO", filename);
} }


void ff_hls_write_stream_info(AVStream *st, AVIOContext *out, void ff_hls_write_stream_info(AVStream *st, AVIOContext *out,


+ 2
- 1
libavformat/hlsplaylist.h View File

@@ -37,7 +37,8 @@ typedef enum {
} PlaylistType; } PlaylistType;


void ff_hls_write_playlist_version(AVIOContext *out, int version); void ff_hls_write_playlist_version(AVIOContext *out, int version);
void ff_hls_write_audio_rendition(AVIOContext *out, char *agroup, char *filename);
void ff_hls_write_audio_rendition(AVIOContext *out, char *agroup,
char *filename, int name_id, int is_default);
void ff_hls_write_stream_info(AVStream *st, AVIOContext *out, void ff_hls_write_stream_info(AVStream *st, AVIOContext *out,
int bandwidth, char *filename, char *agroup); int bandwidth, char *filename, char *agroup);
void ff_hls_write_playlist_header(AVIOContext *out, int version, int allowcache, void ff_hls_write_playlist_header(AVIOContext *out, int version, int allowcache,


Loading…
Cancel
Save