[Redbutton-devel] SF.net SVN: redbutton: [164] redbutton-download/trunk
Brought to you by:
skilvington
|
From: <ski...@us...> - 2006-12-30 19:43:37
|
Revision: 164
http://svn.sourceforge.net/redbutton/?rev=164&view=rev
Author: skilvington
Date: 2006-12-30 11:43:31 -0800 (Sat, 30 Dec 2006)
Log Message:
-----------
make sure we download the DSI from the boot PID
Modified Paths:
--------------
redbutton-download/trunk/carousel.c
redbutton-download/trunk/findmheg.c
redbutton-download/trunk/module.h
Modified: redbutton-download/trunk/carousel.c
===================================================================
--- redbutton-download/trunk/carousel.c 2006-12-22 15:08:40 UTC (rev 163)
+++ redbutton-download/trunk/carousel.c 2006-12-30 19:43:31 UTC (rev 164)
@@ -102,17 +102,12 @@
verbose("DownloadServerInitiate");
- /*
- * BBC1 (for example) just broadcasts a DSI
- * the DSI points to a carousel on the BBCi elementary_pid
- * so, to access the carousel for BBC1 we have to read from the BBCi PID
- * but, when we read the BBCi PID we will download the BBCi DSI
- * we don't want the BBCi DSI to overwrite our original BBC1 DSI
- * so only download the first DSI we find (ie before we read from to BBCi)
- */
- if(car->got_dsi)
+ /* only download the DSI from the boot PID */
+ if(car->current_pid != car->boot_pid
+ || car->got_dsi)
return;
+ /* TODO: check for updated version */
car->got_dsi = true;
elementary_pid = process_biop_service_gateway_info(car->service_id, &car->assoc, DSI_privateDataByte(dsi), ntohs(dsi->privateDataLength));
Modified: redbutton-download/trunk/findmheg.c
===================================================================
--- redbutton-download/trunk/findmheg.c 2006-12-22 15:08:40 UTC (rev 163)
+++ redbutton-download/trunk/findmheg.c 2006-12-30 19:43:31 UTC (rev 164)
@@ -195,6 +195,7 @@
if(carousel_id == -1 || carousel_id == (ntohl(desc->carousel_id)))
{
_car.carousel_id = ntohl(desc->carousel_id);
+ _car.boot_pid = elementary_pid;
add_dsmcc_pid(&_car, elementary_pid);
vverbose("PID=%u carousel_id=%u", elementary_pid, _car.carousel_id);
}
Modified: redbutton-download/trunk/module.h
===================================================================
--- redbutton-download/trunk/module.h 2006-12-22 15:08:40 UTC (rev 163)
+++ redbutton-download/trunk/module.h 2006-12-30 19:43:31 UTC (rev 164)
@@ -60,6 +60,7 @@
unsigned int timeout; /* timeout for the DVB devices */
uint16_t service_id;
uint32_t carousel_id;
+ uint16_t boot_pid; /* PID containing DSI */
uint16_t audio_pid; /* PID of default audio stream for this service_id */
uint8_t audio_type; /* type ID of default audio stream */
uint16_t video_pid; /* PID of default video stream for this service_id */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|