io.lindstrom.m3u8.model.MasterPlaylist Maven / Gradle / Ivy
package io.lindstrom.m3u8.model;
import org.immutables.value.Value;
import java.util.List;
/**
* Master playlist interface
*/
@Value.Immutable
public interface MasterPlaylist extends Playlist {
/**
* A list of alternate renditions related to this playlist.
*
* @return list of alternate renditions
* @see
* RFC 8216 - 4.3.4.1. EXT-X-MEDIA
*/
List alternativeRenditions();
/**
* A list of Variant Streams, each of which describes a different version of the same content.
*
* @return list of variant streams
* @see
* RFC 8216 - 4.3.4.2. EXT-X-STREAM-INF
*/
List variants();
/**
* A list of I-frame variant streams related to this playlist.
*
* @return list of I-frame variant streams
* @see
* RFC 8216 - 4.3.3.6. EXT-X-I-FRAMES-ONLY
*/
List iFrameVariants();
static Builder builder() {
return new Builder();
}
class Builder extends MasterPlaylistBuilder {
}
}