From f6f8becb2d4d8bdea982b923662cea255b13f3ae Mon Sep 17 00:00:00 2001 From: Adam Sutton Date: Fri, 8 Jun 2012 19:52:17 +0100 Subject: [PATCH] Added genre updates to eit code. --- src/dvb/dvb_tables.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/dvb/dvb_tables.c b/src/dvb/dvb_tables.c index 56cfcbd5..af039315 100644 --- a/src/dvb/dvb_tables.c +++ b/src/dvb/dvb_tables.c @@ -467,6 +467,8 @@ dvb_eit_callback(th_dvb_mux_instance_t *tdmi, uint8_t *ptr, int len, char extdesc[5000]; char extitem[5000]; char exttext[5000]; + uint8_t genre[10]; // max 10 genres + int genre_idx = 0; lock_assert(&global_lock); @@ -504,10 +506,8 @@ dvb_eit_callback(th_dvb_mux_instance_t *tdmi, uint8_t *ptr, int len, if(t == NULL || !t->s_enabled || (ch = t->s_ch) == NULL) return 0; -#ifdef TODO_REENABLE_THIS if(!t->s_dvb_eit_enable) return 0; -#endif while(len >= 12) { ok = 1; @@ -543,11 +543,10 @@ dvb_eit_callback(th_dvb_mux_instance_t *tdmi, uint8_t *ptr, int len, break; case DVB_DESC_CONTENT: -#ifdef TODO_GENRE_SUPPORT if(dlen >= 2) { - genre = (*ptr) >> 4; + if (genre_idx < 10) + genre[genre_idx++] = (*ptr) >> 4; } -#endif break; case DVB_DESC_EXT_EVENT: if(dvb_desc_extended_event(ptr, dlen, @@ -566,7 +565,8 @@ dvb_eit_callback(th_dvb_mux_instance_t *tdmi, uint8_t *ptr, int len, /* Pass to EIT handler */ if (ok) eit_callback(ch, event_id, start_time, stop_time, - title, desc, extitem, extdesc, exttext); + title, desc, extitem, extdesc, exttext, + genre, genre_idx); } return 0; }