[grilo-plugins] freebox: Add support for Freebox Radios
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [grilo-plugins] freebox: Add support for Freebox Radios
- Date: Tue, 17 Feb 2015 17:06:38 +0000 (UTC)
commit a5110d6460b90065148914d1855fbeeedfd20fc3
Author: Bastien Nocera <hadess hadess net>
Date: Sun Feb 8 16:10:04 2015 +0100
freebox: Add support for Freebox Radios
Using the playlist from:
http://play.with.free.fr/index.php/radios-freebox-sur-la-freebox-revolution/
and newer version of totem-pl-parser, export the radios proxied by the
Freebox all-in-one router.
Note that the audio player will need to respect the "audio-track" number
given out in the GrlMedia for the correct radio station to be played.
https://bugzilla.gnome.org/show_bug.cgi?id=744168
src/freebox/freebox.gresource.xml | 1 +
src/freebox/grl-freebox.c | 176 +++++++++++---
src/freebox/radios.m3u | 465 +++++++++++++++++++++++++++++++++++++
3 files changed, 603 insertions(+), 39 deletions(-)
---
diff --git a/src/freebox/freebox.gresource.xml b/src/freebox/freebox.gresource.xml
index 5942941..b65f7d2 100644
--- a/src/freebox/freebox.gresource.xml
+++ b/src/freebox/freebox.gresource.xml
@@ -2,5 +2,6 @@
<gresources>
<gresource prefix="/org/gnome/grilo/plugins/freebox">
<file compressed="false">free.png</file>
+ <file compressed="false">radios.m3u</file>
</gresource>
</gresources>
diff --git a/src/freebox/grl-freebox.c b/src/freebox/grl-freebox.c
index ac09623..8ad3bfc 100644
--- a/src/freebox/grl-freebox.c
+++ b/src/freebox/grl-freebox.c
@@ -34,7 +34,8 @@
#include "grl-freebox.h"
#include "freebox-monitor.h"
-#define FREEBOX_URL "http://mafreebox.freebox.fr/freeboxtv/playlist.m3u"
+#define FREEBOXTV_URL "http://mafreebox.freebox.fr/freeboxtv/playlist.m3u"
+#define FREEBOXRADIO_URL "resource:///org/gnome/grilo/plugins/freebox/radios.m3u"
/* --------- Logging -------- */
@@ -45,9 +46,13 @@ GRL_LOG_DOMAIN_STATIC(freebox_log_domain);
#define PLUGIN_ID FREEBOX_PLUGIN_ID
-#define SOURCE_ID "grl-freebox"
-#define SOURCE_NAME _("Freebox TV")
-#define SOURCE_DESC _("A source for browsing Freebox TV channels")
+#define TV_SOURCE_ID "grl-freeboxtv"
+#define TV_SOURCE_NAME _("Freebox TV")
+#define TV_SOURCE_DESC _("A source for browsing Freebox TV channels")
+
+#define RADIO_SOURCE_ID "grl-freeboxradio"
+#define RADIO_SOURCE_NAME _("Freebox Radio")
+#define RADIO_SOURCE_DESC _("A source for browsing Freebox radio channels")
/* --- Grilo Freebox Private --- */
@@ -63,7 +68,8 @@ struct _GrlFreeboxSourcePrivate {
/* --- Data types --- */
-static GrlFreeboxSource *grl_freebox_source_new (void);
+static GrlFreeboxSource *grl_freebox_source_new_tv (void);
+static GrlFreeboxSource *grl_freebox_source_new_radio (void);
static void grl_freebox_source_finalize (GObject *object);
@@ -85,20 +91,31 @@ freebox_found (FreeboxMonitor *mon,
{
GrlFreeboxSource *source;
GrlRegistry *registry;
+ const char *sources[] = {
+ "source-tv",
+ "source-radio"
+ };
+ guint i;
+
+ for (i = 0; i < G_N_ELEMENTS(sources); i++) {
+ if (g_object_get_data (G_OBJECT (plugin), sources[i]) != NULL)
+ return;
- if (g_object_get_data (G_OBJECT (plugin), "source") != NULL)
- return;
+ GRL_DEBUG ("Found a Freebox: %s", name);
- GRL_DEBUG ("Found a Freebox: %s", name);
+ if (g_strcmp0 (sources[i], "source-tv") == 0)
+ source = grl_freebox_source_new_tv ();
+ else
+ source = grl_freebox_source_new_radio ();
- source = grl_freebox_source_new ();
- registry = grl_registry_get_default ();
+ registry = grl_registry_get_default ();
- g_object_set_data (G_OBJECT (plugin), "source", source);
- grl_registry_register_source (registry,
- plugin,
- GRL_SOURCE (source),
- NULL);
+ g_object_set_data (G_OBJECT (plugin), sources[i], source);
+ grl_registry_register_source (registry,
+ plugin,
+ GRL_SOURCE (source),
+ NULL);
+ }
}
static void
@@ -106,20 +123,26 @@ freebox_lost (FreeboxMonitor *mon,
const char *name,
GrlPlugin *plugin)
{
- GrlFreeboxSource *source;
GrlRegistry *registry;
+ const char *sources[] = {
+ "source-tv",
+ "source-radio"
+ };
+ guint i;
- source = g_object_get_data (G_OBJECT (plugin), "source");
- if (source == NULL)
- return;
+ for (i = 0; i < G_N_ELEMENTS(sources); i++) {
+ GrlFreeboxSource *source = g_object_get_data (G_OBJECT (plugin), sources[i]);
+ if (source == NULL)
+ continue;
- GRL_DEBUG ("Remove a Freebox: %s", name);
+ GRL_DEBUG ("Remove a Freebox: %s", name);
- registry = grl_registry_get_default ();
+ registry = grl_registry_get_default ();
- grl_registry_unregister_source (registry,
- GRL_SOURCE (source),
- NULL);
+ grl_registry_unregister_source (registry,
+ GRL_SOURCE (source),
+ NULL);
+ }
}
gboolean
@@ -158,7 +181,7 @@ G_DEFINE_TYPE (GrlFreeboxSource,
GRL_TYPE_SOURCE);
static GrlFreeboxSource *
-grl_freebox_source_new (void)
+grl_freebox_source_new_tv (void)
{
GIcon *icon;
GFile *file;
@@ -175,13 +198,45 @@ grl_freebox_source_new (void)
icon = g_file_icon_new (file);
g_object_unref (file);
object = g_object_new (GRL_FREEBOX_SOURCE_TYPE,
- "source-id", SOURCE_ID,
- "source-name", SOURCE_NAME,
- "source-desc", SOURCE_DESC,
+ "source-id", TV_SOURCE_ID,
+ "source-name", TV_SOURCE_NAME,
+ "source-desc", TV_SOURCE_DESC,
"supported-media", GRL_MEDIA_TYPE_VIDEO,
"source-icon", icon,
"source-tags", tags,
NULL);
+ grl_media_set_url (GRL_FREEBOX_SOURCE(object)->priv->media, FREEBOXTV_URL);
+ g_object_unref (icon);
+
+ return object;
+}
+
+static GrlFreeboxSource *
+grl_freebox_source_new_radio (void)
+{
+ GIcon *icon;
+ GFile *file;
+ GrlFreeboxSource *object;
+ const char *tags[] = {
+ "radio",
+ "country:fr",
+ NULL
+ };
+
+ GRL_DEBUG ("%s", __FUNCTION__);
+
+ file = g_file_new_for_uri ("resource:///org/gnome/grilo/plugins/freebox/free.png"); //FIXME
+ icon = g_file_icon_new (file);
+ g_object_unref (file);
+ object = g_object_new (GRL_FREEBOX_SOURCE_TYPE,
+ "source-id", RADIO_SOURCE_ID,
+ "source-name", RADIO_SOURCE_NAME,
+ "source-desc", RADIO_SOURCE_DESC,
+ "supported-media", GRL_MEDIA_TYPE_AUDIO,
+ "source-icon", icon,
+ "source-tags", tags,
+ NULL);
+ grl_media_set_url (GRL_FREEBOX_SOURCE(object)->priv->media, FREEBOXRADIO_URL);
g_object_unref (icon);
return object;
@@ -209,7 +264,6 @@ grl_freebox_source_init (GrlFreeboxSource *source)
priv = source->priv = GRL_FREEBOX_SOURCE_GET_PRIVATE(source);
priv->media = grl_media_new ();
- grl_media_set_url (priv->media, FREEBOX_URL);
}
static void
@@ -273,9 +327,9 @@ remove_flavour (const char *url)
}
static GrlMedia *
-filter_func (GrlSource *source,
- GrlMedia *media,
- gpointer user_data)
+filter_func_tv (GrlSource *source,
+ GrlMedia *media,
+ gpointer user_data)
{
GrlFreeboxSourcePrivate *priv = GRL_FREEBOX_SOURCE (source)->priv;
GrlMedia *ret;
@@ -322,17 +376,61 @@ filter_func (GrlSource *source,
return ret;
}
+static GrlMedia *
+filter_func_radio (GrlSource *source,
+ GrlMedia *media,
+ gpointer user_data)
+{
+ GrlMedia *ret;
+ const gchar *title;
+ char *new_title;
+
+ title = grl_media_get_title (media);
+ if (title == NULL) {
+ g_object_unref (media);
+ return NULL;
+ }
+
+ /* Title are of the form:
+ * channel_num - Name
+ * such as:
+ * 100003 - France Inter */
+ new_title = cleanup_title (title);
+
+ ret = grl_media_audio_new ();
+ grl_media_set_url (ret, grl_media_get_url (media));
+ grl_media_set_id (ret, grl_media_get_url (media));
+ grl_data_set_int (GRL_DATA (ret), GRL_METADATA_KEY_AUDIO_TRACK,
+ grl_data_get_int (GRL_DATA (media), GRL_METADATA_KEY_AUDIO_TRACK));
+ grl_media_set_title (ret, new_title);
+ g_free (new_title);
+
+ g_object_unref (media);
+
+ return ret;
+}
+
static void
grl_freebox_source_browse (GrlSource *source,
GrlSourceBrowseSpec *bs)
{
GrlFreeboxSourcePrivate *priv = GRL_FREEBOX_SOURCE (source)->priv;
- grl_pls_browse (source,
- priv->media,
- bs->keys,
- bs->options,
- filter_func,
- bs->callback,
- bs->user_data);
+ if (g_strcmp0 (grl_source_get_id (source), TV_SOURCE_ID) == 0) {
+ grl_pls_browse (source,
+ priv->media,
+ bs->keys,
+ bs->options,
+ filter_func_tv,
+ bs->callback,
+ bs->user_data);
+ } else {
+ grl_pls_browse (source,
+ priv->media,
+ bs->keys,
+ bs->options,
+ filter_func_radio,
+ bs->callback,
+ bs->user_data);
+ }
}
diff --git a/src/freebox/radios.m3u b/src/freebox/radios.m3u
new file mode 100644
index 0000000..bdc54a0
--- /dev/null
+++ b/src/freebox/radios.m3u
@@ -0,0 +1,465 @@
+#EXTINF:0,10001 - Europe 1
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10003 - France Inter
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10004 - RMC Info
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10005 - RTL
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10006 - Chérie FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10007 - Virgin Radio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10008 - Fun Radio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100013
+#EXTINF:0,10009 - Nostalgie
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100004
+#EXTINF:0,10010 - NRJ
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10011 - RFM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10012 - Rire et Chansons
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10013 - RTL 2
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100001
+#EXTINF:0,10014 - Skyrock
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10015 - BFM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10016 - France Culture
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10017 - France Info
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10018 - France Musiques
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10019 - Radio Classique
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10020 - Contact FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100013
+#EXTINF:0,10021 - FIP
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10022 - Le Mouv'
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10023 - Nova
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10024 - Ouï FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10025 - TSF Jazz
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10026 - France BLEU - la CityRadio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10027 - RFI
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10028 - RFI Multilingues
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100013
+#EXTINF:0,10030 - Radio FG
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100005
+#EXTINF:0,10031 - TEMPOMIX
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10032 - Fréquence Jazz
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100011
+#EXTINF:0,10033 - Tropiques FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10034 - Beur FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100013
+#EXTINF:0,10035 - Voltage
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100001
+#EXTINF:0,10036 - Sud Radio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100001
+#EXTINF:0,10037 - Ado FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100001
+#EXTINF:0,10038 - MplusM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10039 - RFO Martinique
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10040 - Metropolys
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10041 - Top Music
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10042 - Rts FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10043 - Evasion
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10044 - Radio Scoop
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10046 - Radio 8
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10048 - Vibration
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100001
+#EXTINF:0,10049 - KISS FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10050 - 1onAir Connect
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10051 - Radio Mont Blanc
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10053 - Public Sante Detente
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10054 - Public Sante Famille
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10055 - Public Sante Loisirs
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10056 - Public Sante Seniors
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10061 - Radio Latina
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100013
+#EXTINF:0,10063 - Espace FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10064 - Hit West
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10065 - Radio Public Santé
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10068 - FC RADIO L'essentiel
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10069 - NTI
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10070 - Web-Station
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10071 - Radio Junior
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10073 - Corsica Radio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10077 - Radio ô
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10078 - Bachata Dominicana
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100010
+#EXTINF:0,10079 - 100 %
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10080 - Netradio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100006
+#EXTINF:0,10082 - Radio Notre-Dame
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10084 - Radio Sing Sing
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10085 - Monte-Carlo Doualiya
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10087 - Radio Star
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10088 - SUN
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10089 - Radio Soleil
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10090 - RFO Guadeloupe
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10091 - RFO Guyane
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10092 - RFO Réunion
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10093 - RFO Saint Pierre et Miquelon
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10094 - RFO Polynésie
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10095 - RFO Nouvelle Calédonie
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10096 - RFO Wallis
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10097 - RFO Mayotte
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100014
+#EXTINF:0,10098 - Only 1
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10099 - Public Santé Sexo
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1009
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100002
+#EXTINF:0,10100 - HAG'FM
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1002
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10101 - Public Santé Nutri-Conso
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1009
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100007
+#EXTINF:0,10102 - FG Underground
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10103 - FG Dance By Hakimakli
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1009
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100012
+#EXTINF:0,10109 - XHTVFM Latina
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1003
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10110 - XHTVFM Europa Dance
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1004
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10111 - Chante France
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1005
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10112 - Imagine Hautes-Alpes
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1006
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10113 - Urban Hit
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1009
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100009
+#EXTINF:0,10114 - France Maghreb 2
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1007
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10115 - Only Rai
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1008
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
+#EXTINF:0,10116 - Radio Vag
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1001
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100008
+#EXTINF:0,10118 - Corail la webradio
+#EXTVLCOPT:ts-es-id-pid
+#EXTVLCOPT:no-video
+#EXTVLCOPT:audio-track-id=1009
+rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=100015
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]