| /* GStreamer |
| * Copyright (C) 2011 Andoni Morales Alastruey <ylatuya@gmail.com> |
| * |
| * gstm3u8playlist.h: |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Library General Public |
| * License as published by the Free Software Foundation; either |
| * version 2 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Library General Public License for more details. |
| * |
| * You should have received a copy of the GNU Library General Public |
| * License along with this library; if not, write to the |
| * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, |
| * Boston, MA 02110-1301, USA. |
| */ |
| |
| #ifndef __GST_M3U8_PLAYLIST_H__ |
| #define __GST_M3U8_PLAYLIST_H__ |
| |
| #include <glib.h> |
| #include <gio/gio.h> |
| |
| G_BEGIN_DECLS |
| |
| typedef struct _GstM3U8Playlist GstM3U8Playlist; |
| typedef struct _GstM3U8Entry GstM3U8Entry; |
| |
| |
| struct _GstM3U8Entry |
| { |
| gfloat duration; |
| gchar *title; |
| gchar *url; |
| gboolean discontinuous; |
| }; |
| |
| struct _GstM3U8Playlist |
| { |
| guint version; |
| gboolean allow_cache; |
| gint window_size; |
| gint type; |
| gboolean end_list; |
| guint sequence_number; |
| |
| /*< Private >*/ |
| GQueue *entries; |
| GString *playlist_str; |
| }; |
| |
| |
| GstM3U8Playlist * gst_m3u8_playlist_new (guint version, |
| guint window_size, |
| gboolean allow_cache); |
| void gst_m3u8_playlist_free (GstM3U8Playlist * playlist); |
| gboolean gst_m3u8_playlist_add_entry (GstM3U8Playlist * playlist, |
| const gchar * url, |
| const gchar *title, |
| gfloat duration, |
| guint index, |
| gboolean discontinuous); |
| gchar * gst_m3u8_playlist_render (GstM3U8Playlist * playlist); |
| void gst_m3u8_playlist_clear (GstM3U8Playlist * playlist); |
| guint gst_m3u8_playlist_n_entries (GstM3U8Playlist * playlist); |
| |
| G_END_DECLS |
| #endif /* __M3U8_H__ */ |