func getPlaylist()

in clips/hls/hls.go [58:78]


func getPlaylist(playlistURL string) (*m3u8.MediaPlaylist, error) {
	resp, err := http.Get(playlistURL)
	if err != nil {
		return nil, err
	}

	defer resp.Body.Close()

	p, listType, err := m3u8.DecodeFrom(resp.Body, true)
	if err != nil {
		return nil, err
	}

	switch listType {
	case m3u8.MEDIA:
		mediaPlaylist := p.(*m3u8.MediaPlaylist)
		return mediaPlaylist, nil
	}

	return nil, fmt.Errorf("Could not decode playlist.")
}