From 83be551710764199e0b59380d3a1b2a8630f8f74 Mon Sep 17 00:00:00 2001 From: Adam Sutton Date: Mon, 17 Jun 2013 17:30:35 +0100 Subject: [PATCH] iptv: update to new MPEGTS API so it will compile It probably won't actually work just yet, some stuff probably needs further updates. --- src/input/mpegts/iptv/iptv.c | 19 ++++++++++--------- src/input/mpegts/iptv/iptv_mux.c | 6 ++++-- src/input/mpegts/iptv/iptv_service.c | 4 +++- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/input/mpegts/iptv/iptv.c b/src/input/mpegts/iptv/iptv.c index c5f4336a..8e552cfc 100644 --- a/src/input/mpegts/iptv/iptv.c +++ b/src/input/mpegts/iptv/iptv.c @@ -178,8 +178,9 @@ iptv_input_start_mux ( mpegts_input_t *mi, mpegts_mux_instance_t *mmi ) im->mm_active = mmi; /* Install table handlers */ - mpegts_table_add(mmi->mmi_mux, 0x0, 0xff, psi_pat_callback, NULL, "pat", - MT_QUICKREQ| MT_CRC, 0); + mpegts_table_add(mmi->mmi_mux, DVB_PAT_BASE, DVB_PAT_MASK, + dvb_pat_callback, NULL, "pat", + MT_QUICKREQ| MT_CRC, DVB_PAT_PID); // TODO: need to fire mux start event } @@ -267,7 +268,7 @@ iptv_input_thread ( void *aux ) if (!strncmp(im->mm_iptv_url, "http", 4)) { pos = mpegts_input_recv_packets((mpegts_input_t*)&iptv_input, &im->mm_iptv_instance, - tsb, r, NULL, NULL); + tsb, r, NULL, NULL, "iptv"); } pthread_mutex_unlock(&iptv_lock); @@ -289,7 +290,7 @@ const idclass_t iptv_network_class = { static mpegts_mux_t * iptv_network_create_mux - ( mpegts_mux_t *mm, uint16_t onid, uint16_t tsid, void *aux ) + ( mpegts_mux_t *mm, uint16_t onid, uint16_t tsid, dvb_mux_conf_t *conf ) { return NULL; } @@ -311,22 +312,22 @@ void iptv_init ( void ) /* Init Input */ mpegts_input_create0((mpegts_input_t*)&iptv_input, - &iptv_input_class, NULL); + &iptv_input_class, NULL, NULL); iptv_input.mi_start_mux = iptv_input_start_mux; iptv_input.mi_stop_mux = iptv_input_stop_mux; iptv_input.mi_is_free = iptv_input_is_free; iptv_input.mi_current_weight = iptv_input_current_weight; + iptv_input.mi_enabled = 1; /* Init Network */ mpegts_network_create0((mpegts_network_t*)&iptv_network, - &iptv_network_class, NULL, "IPTV Network"); + &iptv_network_class, NULL, "IPTV Network", NULL); iptv_network.mn_create_mux = iptv_network_create_mux; iptv_network.mn_create_service = iptv_network_create_service; /* Link */ - mpegts_network_add_input((mpegts_network_t*)&iptv_network, - (mpegts_input_t*)&iptv_input); - + mpegts_input_set_network((mpegts_input_t*)&iptv_input, + (mpegts_network_t*)&iptv_network); /* Set table thread */ pthread_create(&tid, NULL, mpegts_input_table_thread, &iptv_input); diff --git a/src/input/mpegts/iptv/iptv_mux.c b/src/input/mpegts/iptv/iptv_mux.c index 839b1798..d0dd2062 100644 --- a/src/input/mpegts/iptv/iptv_mux.c +++ b/src/input/mpegts/iptv/iptv_mux.c @@ -32,9 +32,9 @@ const idclass_t iptv_mux_class = .ic_class = "iptv_mux", .ic_caption = "IPTV Multiplex", .ic_properties = (const property_t[]){ +#if 0 { PROPDEF1("iptv_url", "URL", PT_STR, iptv_mux_t, mm_iptv_url) }, -#if 0 { PROPDEF1("iptv_interface", "Interface", PT_STR, iptv_mux_t, mm_iptv_interface) }, #endif @@ -51,7 +51,7 @@ iptv_mux_create ( const char *uuid, const char *url ) iptv_mux_t *im = mpegts_mux_create(iptv_mux, NULL, (mpegts_network_t*)&iptv_network, - MPEGTS_ONID_NONE, MPEGTS_TSID_NONE); + MPEGTS_ONID_NONE, MPEGTS_TSID_NONE, NULL); if (url) im->mm_iptv_url = strdup(url); @@ -71,6 +71,7 @@ iptv_mux_create ( const char *uuid, const char *url ) static void iptv_mux_load_one ( iptv_mux_t *im, htsmsg_t *c ) { +#if 0 const char *str; /* Load core */ @@ -79,6 +80,7 @@ iptv_mux_load_one ( iptv_mux_t *im, htsmsg_t *c ) /* URL */ if ((str = htsmsg_get_str(c, "iptv_url"))) tvh_str_update(&im->mm_iptv_url, str); +#endif } void diff --git a/src/input/mpegts/iptv/iptv_service.c b/src/input/mpegts/iptv/iptv_service.c index 6ea965d2..dad053bb 100644 --- a/src/input/mpegts/iptv/iptv_service.c +++ b/src/input/mpegts/iptv/iptv_service.c @@ -32,7 +32,7 @@ iptv_service_create iptv_service_t *is = (iptv_service_t*) mpegts_service_create0(calloc(1, sizeof(mpegts_service_t)), &mpegts_service_class, uuid, - (mpegts_mux_t*)im, onid, tsid); + (mpegts_mux_t*)im, onid, tsid, NULL); return is; } @@ -42,8 +42,10 @@ iptv_service_create static void iptv_service_load_one ( iptv_service_t *is, htsmsg_t *c ) { +#if 0 /* Load core */ mpegts_service_load_one((mpegts_service_t*)is, c); +#endif } void