summaryrefslogtreecommitdiff
path: root/libdtv/libvdr/libvdr.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdtv/libvdr/libvdr.c')
-rw-r--r--libdtv/libvdr/libvdr.c157
1 files changed, 0 insertions, 157 deletions
diff --git a/libdtv/libvdr/libvdr.c b/libdtv/libvdr/libvdr.c
deleted file mode 100644
index 5f90125..0000000
--- a/libdtv/libvdr/libvdr.c
+++ /dev/null
@@ -1,157 +0,0 @@
-//////////////////////////////////////////////////////////////
-/// ///
-/// libvdr.c: routines to parse the DVB-SI stream ///
-/// ///
-//////////////////////////////////////////////////////////////
-
-// $Revision: 1.1 $
-// $Date: 2001/10/07 10:25:33 $
-// $Author: hakenes $
-//
-// (C) 2001 Rolf Hakenes <hakenes@hippomi.de>, under the GNU GPL.
-//
-// libvdr is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; either version 2, or (at your option)
-// any later version.
-//
-// libvdr 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 General Public License for more details.
-//
-// You may have received a copy of the GNU General Public License
-// along with libvdr; see the file COPYING. If not, write to the
-// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-// Boston, MA 02111-1307, USA.
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/ioctl.h>
-#include <fcntl.h>
-
-#include <liblx.h>
-#include <libsi.h>
-#include <si_tables.h>
-#include "libvdr.h"
-
-
-
-struct LIST *createVdrProgramInfos (unsigned char *siBuffer)
-{
- struct VdrProgramInfo *VdrProgramInfo;
- struct LIST *Result, *EventList;
- struct Event *Event;
- struct Descriptor *Descriptor;
- int GotVdrProgramInfo;
-
- if (!siBuffer) return (NULL);
-
- if (!(EventList = siParseEIT (siBuffer))) return (NULL);
-
- Result = xNewList (NULL);
-
- xForeach (EventList, Event)
- {
- VdrProgramInfo = NULL;
- GotVdrProgramInfo = 0;
-
- xForeach (Event->Descriptors, Descriptor)
- {
- if (!VdrProgramInfo)
- {
- CreateVdrProgramInfo(VdrProgramInfo,
- Event->EventID, Event->TransportStreamID,
- Event->ServiceID, Event->StartTime,
- Event->Duration, Event->Status);
- }
-
- switch (Descriptor->Tag)
- {
- case DESCR_SHORT_EVENT:
- {
- if (!xName(Descriptor) || !xName(Descriptor)[0])
- break;
-
- VdrProgramInfo->ShortName =
- xSetText (xName (Descriptor));
- VdrProgramInfo->ShortText =
- xSetText (((struct ShortEventDescriptor
- *)Descriptor)->Text);
- memcpy (VdrProgramInfo->LanguageCode, ((struct
- ShortEventDescriptor *)Descriptor)->
- LanguageCode, 4);
- GotVdrProgramInfo = 1;
- }
- break;
-
- case DESCR_TIME_SHIFTED_EVENT:
- {
- struct tm *StartTime;
-
- VdrProgramInfo->ReferenceServiceID =
- ((struct TimeShiftedEventDescriptor
- *)Descriptor)->ReferenceServiceID;
- VdrProgramInfo->ReferenceEventID =
- ((struct TimeShiftedEventDescriptor
- *)Descriptor)->ReferenceEventID;
- GotVdrProgramInfo = 1;
- }
- break;
-
- case DESCR_EXTENDED_EVENT:
- {
- struct ExtendedEventItem *Item;
-
- if (xName (Descriptor))
- AddToText (xName (Descriptor),
- VdrProgramInfo->ExtendedName);
- xForeach (((struct ExtendedEventDescriptor*)
- Descriptor)->Items, Item)
- {
- AddItemToText (xName (Item),
- VdrProgramInfo->ExtendedText);
- AddItemToText (Item->Text,
- VdrProgramInfo->ExtendedText);
- }
- }
- break;
-
- case DESCR_CONTENT:
- {
- int i, j;
-
- for (j = 0; j < ((struct ContentDescriptor*)
- Descriptor)->Amount; j++)
- {
- VdrProgramInfo->ContentNibble1 =
- GetContentContentNibble1(Descriptor, j);
- VdrProgramInfo->ContentNibble2 =
- GetContentContentNibble2(Descriptor, j);
- }
- }
- break;
-
- case DESCR_PARENTAL_RATING:
- {
- struct ParentalRating *Rating;
-
- xForeach (((struct ParentalRatingDescriptor *)
- Descriptor)->Ratings, Rating)
- if (!strncmp (VdrProgramInfo->LanguageCode,
- Rating->LanguageCode, 3))
- VdrProgramInfo->Rating = Rating->Rating;
- }
- break;
- }
- }
- if (GotVdrProgramInfo) xAddTail (Result, VdrProgramInfo);
- else xMemFree (VdrProgramInfo);
- }
-
- return (Result);
-}