The TV-trawler project

8
The TV-Trawler Project Derek Rogers, Jane Hunter, Douglas Kosovic DSTC Pty Ltd, University of Queensland, St. Lucia, Queensland, Australia ABSTRACT: In this article, we describe a system that enables the filtering, recording and delivery of digital video broadcasts over sat- ellite, by matching incoming content descriptions to predefined sets of personal user preferences that have been specified using MPEG-7. The system enables the automatic analysis, selection, and flexible, customized delivery of relevant content extracted from potentially hundreds of concurrent video channels. © 2004 Wiley Periodicals, Inc. Int J Imaging Syst Technol, 13, 289 –296, 2003; Published online in Wiley Inter- Science (www.interscience.wiley.com). DOI 10.1002/ima.10068 Key words: digital video; filtering; MPEG-7; user preferences 1. INTRODUCTION With the advent of satellite, cable, and Internet delivery, huge volumes of multimedia content are now becoming available in digital form via broadcast data streams. Increases in bandwidth and improved wireless technologies mean that consumers are being bombarded with hundreds of audiovisual channels concurrently via interactive digital television and radio, personal computers, and web browsers built into mobile devices or cell phones. For consumers, the simple task of finding a program of interest to watch or listen to, is going to become a daunting challenge. The broadcasting environment hypothesizes that the TV experience will evolve into a highly personalized process and TV channels will no longer offer a traditional fixed schedule. This is already becoming a reality with the advent of services such as video on demand (VOD), personal video recording (PVR), and WebTV. The latest and most exciting innovation in Personal TV™ services is TiVo, a product that allows consumers to control and manipulate various aspects of their cable or satellite TV service to create a highly personalized and convenient viewing experience. The introduction of standardized multimedia content description is going to play a key role in this challenging situation. MPEG-7 (Martinez, 2001) is an ISO/IEC standard developed by the Moving Pictures Expert Group. Referred to as the Multimedia Content Description Interface, it aims to provide a rich set of standardized tools to describe multimedia. Adoption of MPEG-7 by content creators, broadcasters, publishers, and consumers will lead to value- added services for the consumer and larger audiences, improved revenue, easier content management, and greater content repurpos- ing for broadcasters. Currently most applications that exploit MPEG-7 are manual search and retrieval of audiovisual archives or pull applications. This article describes the application of MPEG-7 to a push application. The TV-Trawler project investigates the viability of MPEG-7 to enable the automatic, user/agent-driven, selection and filtering of broadcast content. The system filters and matches MPEG-7 content descriptions for incoming digital video streams against predefined MPEG-7 user preferences and also provides a flexible notification and delivery scheme for users. User preferences can be specified in terms of particular programs, times, channels, subjects, genres, directors, actors, other keywords, etc. that are of interest to them. When incoming video matches their preferences the user is notified and the content will be recorded and delivered. Users may also set up their own video jukeboxes in which they can define preferred program playback times/dates. The TV-Trawler is of particular relevance to defense and intel- ligence organizations, media monitoring and broadcasting organiza- tions, government departments, state and federal parliament, ar- chives and libraries, education and health related organizations—in essence, any organization that needs to monitor broadcast multime- dia information services. In Section 2, the project scope and objectives are described. The prototype’s system architecture is outlined and discussed in Section 3. Section 4 provides details of the project implementation. Finally, Section 5 covers conclusions and future work. 2. PROJECT OVERVIEW, SCOPE, AND OBJECTIVES The computer-assisted monitoring and recording of TV broadcasts is not a new idea. For example, the Fischlar Digital Video System developed at Dublin City University (Smeaton et al., 2002) allows users to select and record TV programs from eight terrestrial TV stations, on the basis of either program name or predefined genres. However, as far as we are aware, neither the Fischlar system nor any other existing systems uses the MPEG-7 standard to support the filtering of satellite broadcasts, which can conceivably involve hun- dreds of concurrent channels. A number of projects (van Setten et al., 2000; Icoglu et al., 2001) have investigated the application of MPEG-7 User Preferences to the search and retrieval of audiovisual archives, but not to the filtering of broadcast streams. The filtering of broadcast streams is a much more complex problem because of the real-time nature of the application, the large number of concurrent channels, and the need to record the relevant content on-the-fly. Hence the primary objective of this project was to assess the viability of MPEG-7 description tools for the filtering and retrieval of relevant audiovisual content from multiple synchronous broadcast data streams, according to users’ preferences. The aim was to achieve this through the development of a prototype or testbed Correspondence to: Jane Hunter; E-mail: [email protected] © 2004 Wiley Periodicals, Inc.

Transcript of The TV-trawler project

The TV-Trawler Project

Derek Rogers, Jane Hunter, Douglas Kosovic

DSTC Pty Ltd, University of Queensland, St. Lucia, Queensland, Australia

ABSTRACT: In this article, we describe a system that enables thefiltering, recording and delivery of digital video broadcasts over sat-ellite, by matching incoming content descriptions to predefined setsof personal user preferences that have been specified using MPEG-7.The system enables the automatic analysis, selection, and flexible,customized delivery of relevant content extracted from potentiallyhundreds of concurrent video channels. © 2004 Wiley Periodicals, Inc. IntJ Imaging Syst Technol, 13, 289–296, 2003; Published online in Wiley Inter-Science (www.interscience.wiley.com). DOI 10.1002/ima.10068

Key words: digital video; filtering; MPEG-7; user preferences

1. INTRODUCTIONWith the advent of satellite, cable, and Internet delivery, hugevolumes of multimedia content are now becoming available indigital form via broadcast data streams. Increases in bandwidth andimproved wireless technologies mean that consumers are beingbombarded with hundreds of audiovisual channels concurrently viainteractive digital television and radio, personal computers, and webbrowsers built into mobile devices or cell phones.

For consumers, the simple task of finding a program of interestto watch or listen to, is going to become a daunting challenge. Thebroadcasting environment hypothesizes that the TV experience willevolve into a highly personalized process and TV channels will nolonger offer a traditional fixed schedule. This is already becoming areality with the advent of services such as video on demand (VOD),personal video recording (PVR), and WebTV. The latest and mostexciting innovation in Personal TV™ services is TiVo, a product thatallows consumers to control and manipulate various aspects of theircable or satellite TV service to create a highly personalized andconvenient viewing experience.

The introduction of standardized multimedia content descriptionis going to play a key role in this challenging situation. MPEG-7(Martinez, 2001) is an ISO/IEC standard developed by the MovingPictures Expert Group. Referred to as the Multimedia ContentDescription Interface, it aims to provide a rich set of standardizedtools to describe multimedia. Adoption of MPEG-7 by contentcreators, broadcasters, publishers, and consumers will lead to value-added services for the consumer and larger audiences, improvedrevenue, easier content management, and greater content repurpos-ing for broadcasters.

Currently most applications that exploit MPEG-7 are manualsearch and retrieval of audiovisual archives or pull applications. Thisarticle describes the application of MPEG-7 to a push application.

The TV-Trawler project investigates the viability of MPEG-7 toenable the automatic, user/agent-driven, selection and filtering ofbroadcast content. The system filters and matches MPEG-7 contentdescriptions for incoming digital video streams against predefinedMPEG-7 user preferences and also provides a flexible notificationand delivery scheme for users. User preferences can be specified interms of particular programs, times, channels, subjects, genres,directors, actors, other keywords, etc. that are of interest to them.When incoming video matches their preferences the user is notifiedand the content will be recorded and delivered. Users may also setup their own video jukeboxes in which they can define preferredprogram playback times/dates.

The TV-Trawler is of particular relevance to defense and intel-ligence organizations, media monitoring and broadcasting organiza-tions, government departments, state and federal parliament, ar-chives and libraries, education and health related organizations—inessence, any organization that needs to monitor broadcast multime-dia information services.

In Section 2, the project scope and objectives are described. Theprototype’s system architecture is outlined and discussed in Section3. Section 4 provides details of the project implementation. Finally,Section 5 covers conclusions and future work.

2. PROJECT OVERVIEW, SCOPE, AND OBJECTIVESThe computer-assisted monitoring and recording of TV broadcasts isnot a new idea. For example, the Fischlar Digital Video Systemdeveloped at Dublin City University (Smeaton et al., 2002) allowsusers to select and record TV programs from eight terrestrial TVstations, on the basis of either program name or predefined genres.However, as far as we are aware, neither the Fischlar system nor anyother existing systems uses the MPEG-7 standard to support thefiltering of satellite broadcasts, which can conceivably involve hun-dreds of concurrent channels.

A number of projects (van Setten et al., 2000; Icoglu et al., 2001)have investigated the application of MPEG-7 User Preferences tothe search and retrieval of audiovisual archives, but not to thefiltering of broadcast streams. The filtering of broadcast streams is amuch more complex problem because of the real-time nature of theapplication, the large number of concurrent channels, and the needto record the relevant content on-the-fly.

Hence the primary objective of this project was to assess theviability of MPEG-7 description tools for the filtering and retrievalof relevant audiovisual content from multiple synchronous broadcastdata streams, according to users’ preferences. The aim was toachieve this through the development of a prototype or testbedCorrespondence to: Jane Hunter; E-mail: [email protected]

© 2004 Wiley Periodicals, Inc.

within DSTC which would support the functionality described be-low.

2.1. Capture of User Preferences. A primary requirement ofthe system was the ability to capture users’ preferences in a formatcompatible with MPEG-7’s User Preferences Description Scheme(DS) (MDS Group, 2001). The preferences also needed to be storedand indexed so that the filter engine could quickly and efficientlycheck incoming content against the user preferences for multipleusers to determine whether a match had been made or not. Thesystem was designed so that users could specify particular programs,times, channels, subjects, genres, directors, actors, keywords, etc. ofinterest to them via a simple web interface. They could also specifynotification and delivery method actions to be applied to relevantincoming content. Users would then be notified via a java tickertapeapplication or via email.

2.2. Extraction of Content Metadata. MPEG-7-conformantdescriptions of incoming video satellite content needed to be gen-erated in order to carry out the matching. Thus one of the key projectobjectives was to analyze and investigate methods of extractingvideo content metadata. This was possible through a combination ofelectronic program guides (EPGs), closed-captions (teletext), andservice information packets in the encoded digital stream. Theextracted/generated metadata were then compared with users’ pref-erences and matching content recorded and indexed to enable laterprecise and efficient searching and retrieval.

2.3. Recording and Streaming of Content. Matching contentcould either be recorded to a personal archive or streamed immedi-ately to the user’s workstation. One of the project’s objectives wasto investigate the conversion of the incoming MPEG-2 DVB formatto MPEG-4 scalable object-based-encoding format (Koenen, 2001).MPEG-4 is a more efficient codec than MPEG-2 in terms of band-

width and storage, while maintaining almost the same quality ofservice. Another advantage of MPEG-4 is that the metadata descrip-tions can not only be attached to the content itself, but can also beattached to actual elements within scenes such as auditory or visualobjects. This permits very fine-grained retrieval of specific segmentsof footage and enhanced consumer services.

2.4. Efficient Matching Algorithms. One of the most chal-lenging aspects of the project was the accurate matching of userpreferences against incoming content. Issues included the following:

1. optimizing the speed and efficiency of the matching algo-rithms;

2. closed caption matching across multiple synchronous incom-ing video streams;

3. the setting of matching thresholds. For example, if a user’spreferences specifies 20 elements and only one matches, doesthis constitute a match?

4. interpreting semantic ambiguities correctly. For example, is acomedic animated movie, an animation genre or movie genreor both? A documentary about “eagles” is also a documentaryabout “birds.” Incorporating a thesaurus would help resolvesome of these semantic issues.

2.5. User Management Tools. Users had to be able to enter,store, browse, search, and specify notification and delivery methodsthrough an effective user-friendly web interface that also enabledthem to do the following:

1. add/delete/modify their personal preferences anywhere and atany time across any type of platform. The preferences alsohad to be compliant with the MPEG-7 User Preferences DS;

2. browse their current matches and search the existing archiveof recorded video content;

Figure 1. System architecture.

290 Vol. 13, 289–296 (2003)

3. specify flexible notification (via email or “tickertape”) anddelivery, e.g., immediate or deferred delivery;

4. be assured of an acceptable quality of service (based onMPEG-4 streaming mechanisms and MPEG-4 players);

5. set up their own video jukeboxes in which they definedpreferred program playback times/dates, thereby creating a“video-on-demand” environment;

6. search the entire archive of video content trawled from theincoming satellite channels—from other users’ preferences aswell as their own.

3. SYSTEM ARCHITECTUREThe system architecture comprised three key components; as illus-trated in Figure 1:

1. client interface;2. filter engine; and3. metadata store.

3.1. Client Interface. A web interface was developed using Mi-crosoft’s Active Server Pages (ASP) (Baartse et al., 2000) scriptinglanguage to create, save, and retrieve the user’s information to andfrom the metadata store and transform it into HTML pages to bepresented to the user. The interface allowed the user to carry out thefollowing tasks:

● Enter User Preferences: The interface allows the user to view,add, delete, or modify their preferences while maintainingcompliance with the MPEG-7 standard. Classification, cre-ation, and source preferences are specified via the Filtering-AndSearchPreferences Description Scheme. The user also hasto specify TV-Trawler-specific information such as the notifi-cation and delivery preferences.

● View Current Matches: This option shows the user how theirpreferences compare to incoming content. For example, if theirpreferences are “too broad,” massive amounts of content maymatch and be recorded. This option also allows the user to see

Figure 2. User preferences interface.

Vol. 13, 289–296 (2003) 291

if any matches cannot be recorded because of conflicts withpre-existing scheduled recordings.

● View Personal User Archive: The personal user archive con-tains all the content recorded for a particular user by theTV-Trawler. This content will also be made accessible to otherusers via the complete archive search interface.

● Enter Jukebox Settings: Users have the option of setting thedelivery method for recorded content to “Playback” and spec-ifying a playback time and date via the Jukebox feature of theuser interface.

● Search the Complete Archive: The complete archive of re-corded content can be accessed and searched by all users. Thusif a program cannot be recorded because of a conflict, the usermay search the existing archive for matches later.

● View Content: The current format of the incoming content isRealMedia format which can be played using the Real Player(2004) application. Eventually, the use of automatic streamingwill enable an “Immediate Stream” option for delivery. Thiswill open a Player application on the users’ workstation andstream matching content directly to them in real time.

Figure 2 illustrates the user interface for viewing and editingpreferences. Each individual preference has a priority value and adescription for ease of reference. The creation, classification, andsource preferences and the notification and delivery methods arecolor-coded for ease of use. Users may edit these preferences byclicking on the appropriate link.

3.2. Metadata Store. The Metadata Store records three types ofinformation:

● user profiles;● complete archive metadata; and● XML schema definitions.

3.2.1. User Profiles. Each user automatically receives a defaultprofile when they register, which contains the following four meta-data files, named according to the user’s identifier.

● User Preferences file—this stores the user’s preferences.● Current Matches file—a dynamic file that lists all the incoming

programs matching the user’s preferences.● User Archive file—links to pre-recorded programs that match

the user’s preferences.● JukeBox Settings file—stores details of where and when con-

tent is to be played back to the user.

3.2.2. Complete Archive Metadata. Every program recorded bythe system will have its content description saved to the metadata forthe complete archive. This file is composed of the union of everyuser’s archive file, indexed to optimize search efficiency.

3.2.3. XML Schema Definitions. XML schema (W3C WWWConsortium, 2004) definitions are stored for the different types ofmetadata files that are required by the system.

3.3. Filter Engine. The filter engine is the autonomous user agentthat receives the incoming satellite video stream and continuallycarries out the following functions:

● content metadata extraction;● metadata matching—compares incoming content metadata

with users’ preferences;● conversion of MPEG-2 DVB to MPEG-4 if a program matches

a preference description;● video archival—matching video files are recorded and stored

on the filter engine tier and linked to the users’ personalarchives and the complete archive; and

● notification and delivery—when a match occurs and recordingtakes place, the filter engine is responsible for notifying theuser (via email or tickertape) and delivering the content to theuser (via their personal archive or their Jukebox, at a nomi-nated date/time).

4. THE SYSTEM IMPLEMENTATION4.1. The User Preferences Schema. The MPEG-7 UserPref-erences DS defines a user’s preferences with regard to consumptionof AV content, enabling effective personalization of the content.Figure 3 shows the hierarchical structure of the UserPreferences DS.

Our system only uses the UsagePreferences and FilteringA-ndSearchPreferences DS. BrowsingPreferences and Summa-ryPreferences DSs are not used. The user preferences are thuscomprised of the CreationPreferences, ClassificationPreferencesand SourcePreferences DSs and the entry process is subdividedaccordingly. Within those three DSs, more simplifications havebeen made either because not all of the descriptors are able to beextracted or because they are irrelevant. Another aspect of theMPEG-7 FilteringAndSearchPreferences DS that has not beenadopted, is the ability to specify recursive preferences withineach other. This was not adopted because it would be extremelycomplex to implement within the matching algorithms and couldlead to interpretative ambiguities.

Each user can have multiple preferences, (i.e., multiple Filter-AndSearchPreference elements) and each preference has a “prefer-ence value” or weighting attribute that indicates the priority of thepreference. In the case where two preferences conflict when match-ing, the preference with the higher priority value is used.

Figure 3. User preferences DS.

Figure 4. Content management DS.

292 Vol. 13, 289–296 (2003)

In addition to the FilterAndSearchPreferences DS, a TV-Trawler-_Information element has been provided. This stores the preferrednotification and delivery methods as well a description attribute foreach preference for ease of reference. The addition of a descriptionattribute to each FilterAndSearchPreference DS has been recom-mended to the MPEG-7 Multimedia Description Scheme (MDS)group.

4.2. The Content Description Schema. Figure 4 shows theContentManagement DS structure (MDS Group, 2001) We use theCreationInformation, Classification Information, and UsageInforma-tion DSs, because they correlate with the CreationPreferences, Clas-sification Preferences, and SourcePreferences of the User Prefer-ences descriptions respectively.

The descriptors that we adopted from these three content DSswere dictated by the descriptors in the User Preferences DS and themetadata that could feasibly be extracted. Table I below shows thecorrelation between the UserPreferences DS and the ContentMan-agement DS.

4.3. Extracting Content Metadata. There are three approachesto extracting available metadata from the incoming content streams:

● analyzing service information packets;● extracting closed captions/teletext; and● parsing available electronic program guides.

4.3.1. Analyzing Service Information Packets. The incomingDigital Video Broadcasting (DVB) streams, which are MPEG-2with extensions, contain Service Information (SI) packets that spec-ify information about each particular program in the digital stream.One of these SI packets, the Event Information Table (EIT) packet,contains data about each program’s start time, duration, genre,

parental rating, and summary descriptions as well as other miscel-laneous information. However, there are certain problems associatedwith using the EIT packets to extract content metadata:

● Only EIT packets for the current and the following broadcastprograms are streamed. Thus there is no way of building updaily or weekly content descriptions to use in the matchingalgorithms. The DVB specification is capable of providingweekly EPGs through the use of specific EIT packets; how-ever, the satellite services that we are analyzing, either do notsupport this or encode it in a proprietary OpenTV interactiveTV standard that cannot be easily extracted.

● The “content_descriptor” data that correlates to the MPEG-7genre descriptor is not broadcast. This is a problem as thegenre descriptor is heavily utilized by users as a filteringmechanism.

Hence analyzing the packets in the digital stream to accesscontent metadata is currently not a viable approach because ofunder-utilization of the DVB specification by service providers. Thismay change in the future.

4.3.2. Analysing Closed Captions/Teletext. Along with theVideo and Audio streams, a DVB TV channel may include a teletextstream for subtitled programs. Each program broadcast is identifiedby an MPEG-2 Program Identifier (PID). In order to extract contentmetadata from the teletext stream for a particular program, theappropriate PID must be filtered and the closed-caption text parsed.However, there are two problems associated with extracting meta-data from the closed caption teletext streams.

● only the free-to-air television stations in Australia tend toprovide closed captions. There is no legislation covering thecaptioning of pay TV in Australia, so it is very rare to find anyclosed captioned programming on Pay TV in Australia (TheAustralian Caption Centre, 2004).

● the process of capturing closed captions for matching consistsof the following steps:� Capturing the closed captions;� Converting the teletext to MPEG-7 metadata;� Incorporating the teletext metadata within the program’s

existing metadata;� Matching the program’s closed captions with users’ prefer-

ences in real time;� Start recording content if the teletext metadata matches any

user preferences.

This process is difficult to carry out successfully over a large numberof concurrent channels. It could be done by using multiple receivers/processors - but this would be very expensive. Alternatively, a singleprocessor could cycle between channels, analyzing a small sampleof teletext for each channel. This makes the matching step verycomplex and would expect to have a poor recall rate. For example,after capturing the closed captions for a brief slice of time, carryingout the above process, and initialising the recording, the programmay have been broadcasted for a few minutes already, with the usermissing out on the start of the desired content. Therefore, theviability of using closed-caption teletext streams for extracting con-tent metadata is limited at this stage of development.

4.3.3. Parsing Available EPGs. The third possible source ofcontent metadata is Electronic Program Guides (EPGs). A numberof EPGs are available via the Internet. However the metadata that

TABLE I. Mapping from UserPreferences to ContentManagement DS.

User Preferences DS ContentManagement DS

�UserPreferences� �ContentManagement��FilteringAndSearchPreferences� �CreationInformation�

�CreationPreferences� �Creation��Title� �Title��Creator� �Creator��Location� �CreationCoordinates�

�/CreationPreferences� �CreationLocation��ClassificationPreferences� �/CreationCoordinates�

�Language� �/Creation��Genre� �Classification��Subject� �Language��ParentalGuidance� �Genre�

�/ClassificationPreferences� �Subject��SourcePreferences� �ParentalGuidance�

�DisseminationSource� �/Classification��DisseminationDate� �/CreationInformation�

�/SourcePreferences� �UsageInformation��/FilteringAndSearchPreferences� �Availability��/UserPreferences� �Dissemination�

�DisseminationSource��/Dissemination��AvailabilityPeriod�

�/Availability��/UsageInformation�

�/ContentManagement�

Vol. 13, 289–296 (2003) 293

can be extracted from these sources varies considerably. An assess-ment of the available EPG’s, indicated that only the YourTV site(TV Guide, 2004) would provide available, robust, and accuratecontent metadata for the Austar/Foxtel (PayTV) and Optus Aurora(rural/outback) satellite television services that we are filtering.Within the EPG, each program has a number of descriptors that canbe parsed from the HTML web pages. These include the programtitle, genre, start time and duration, summary description, and mediarating. However, not all descriptors are always present and becausethe EPGs are not standardized, complex manipulation of the data isrequired to convert it into MPEG-7 format. For example, the genredescriptor can be extracted by searching for the “Category” string,and if the program EPG includes an episode title, it will always beexactly one line beneath the series title.

Because EIT packets (Section 4.3.1) are currently unreliable andclosed-caption decoding (Section 4.3.2) prohibitively complex forlarge numbers of channels, we decided to use the EPG as the mainsource of the content metadata. This involved analyzing the structureand format of the EPG provided by YourTV and generating anMPEG-7 content description. Metadata that could not be capturedbecause it was not available included the content creation details,creators, and the language. This information may be captured fromother sources using a software agent metadata retrieval tool to scourall available EPGs. However, for the initial implementation of oursystem, using the single EPG from YourTV was satisfactory.

Because the chosen EPG provides program details for the fol-lowing week, a Perl script was developed that parses the EPG forone week’s duration and creates a single large XML file that con-tains the program descriptions for every channel and ignores dupli-cates. This process is run as a scheduled nightly task which takes10–15 minutes and produces an XML file of around 5 MB.

4.4. Implementation of the Matching Algorithm. Thematching algorithm takes each user preference description (combi-nations of Creation, Classification and Source descriptor values) andcompares it to the program content descriptions extracted from theEPG. If a match occurs, then the program will be recorded.

The content description metadata file is an extremely large filethat contains descriptions of all of the programs for the next week.Parsing the entire file, which involves comparing individual descrip-tors, takes around 2–3 minutes using Apache’s Xerces XML parser(Xerces, 2004). This is because the parser first reads the entireDocument Object Model (DOM) into main memory, constructing atree representation of all the nodes before processing occurs. Thisuses a lot of the main memory resources and is somewhat inefficient.In addition, the matching algorithm that uses the DOM is proceduralbased.

Researchers on the Kirrkirr dictionary browser project (Jansz etal., 2000) have found that using a custom-designed index file tospeed up access to the data source is very efficient. The index file ismuch smaller and hence can be stored in main memory withoutexcessively consuming resources. If the index is unlikely to changeit can also be stored in binary format on disk as a persistant DOM(PDOM). Because the content metadata file is only extracted fromthe EPG once a day, the entire content file could be indexed andstored on disk as a PDOM each day. This would increase thematching algorithm processing speed substantially as the PDOM isaccessible to DOM operations without the overhead of parsing theentire file for every invocation of the matching algorithm.

Further improvements may also be possible by using XMLQuery Language (XQL) (W3C WWW Consortium, 2002) for the

querying component of the algorithm. When finalized, XQL willallow simple but powerful, complex queries on XML documents.If XQL is used to query the PDOM, looking for matches todescriptors in the user preference file, then parsing of the largecontent metadata file will not need to occur repeatedly and accesswill be much faster as the document does not have to be read ineach time. Results from the Kirrkirr dictionary browser project(Jansz et al., 2000) have found that although XQL offers manyadvantages. Hence the combination of custom indexing (i.e.,using a PDOM) with XQL is considered to be the best method toachieve optimal performance.

4.4.1. Some Illustrative Examples. User preferences that con-tain Source and Creation descriptors provide results with 100%recall and 100% precision. For example, if a user specifies thefollowing four source descriptors: Channel � “Lifestyle”; Date �“21/10/2001”; Time � “5:00 pm”, and Duration � 30 minutes, thena single matching program is retrieved. This is analogous to settinga VCR to record a certain program.

With regard to Classification descriptors, the system currentlyprovides substring matching rather than a thesaurus to improverecall. For example, if a user enters a subject description of “madcow,” then in the absence of a subject thesaurus, programs withsubject “Creutzfeldt-Jacob disease” will not be retrieved. However ifthey enter “mad cow disease” and use substring matching, then theprogram will be retrieved.

The specification of Creation and Classification descriptors pro-vides greater recall but lower precision (unwanted programs areoften retrieved). To improve the precision and achieve best results,the most effective matching technique is to specify user preferenceswhich contain descriptors of all three types: Creation, Classification,and Source.

4.4.2. The Match DS. The various processes carried out by theTV-Trawler after a match occurs, require certain additional infor-mation to be saved. This information is recorded within a Match DS.The Match DS is essentially a container housing a user preference,a content description and the match status, match location, playbacktime, and playback location. A Match element is created whenevera match occurs and it is assigned a unique identifier. Figure 5illustrates how the Match element then flows through the system’svarious metadata stores.

Users are able to inspect the “Matches” at different stages,e.g., in their user archive or jukebox. Because the metadata isstored as XML files, XSLT (W3C WWW Consortium, 2002) canbe used to provide alternative views of the Match data. Forexample, if a user wants to view their personal archive in orderof the date that content was recorded, they simply click on the“Date” table header and an XSLT file transforms the metadata ofthe archive accordingly.

5. FUTURE WORK AND CONCLUSIONS5.1. Future Work. While significant progress has been made onthe TV-Trawler prototype, there remains considerable work to becompleted and some complex problems to be solved.

XML Storage and Querying Mechanisms. Resolving the prob-lem of how best to store, index and query the XML/MPEG-7metadata files will increase the efficiency of the matching algorithmsand resolve the concurrency and versioning problems of the existingfile storage. XML databases such as Tamino (2004), indexing basedon PDOMs, and further development of XQL will greatly improvefuture system efficiency.

294 Vol. 13, 289–296 (2003)

Further Investigation and Analysis of the Matching Algorithms.The matching algorithm needs to be further refined in order toachieve a better balance between recall and precision of the results.Additionally more advanced matching techniques (AND, OR, NOT)need to be incorporated into the system. The integration of a the-saurus to allow term-related matching is essential in order to pro-duce more accurate matches.

Integration of Search and Retrieval. A search engine that per-mits searches over prerecorded content using the descriptors in theusers’ preferences, needs to be built. This functionality will becomemore important as the number of users and conflicting recordingsincreases. Because the search engine will use the same algorithm asthe matching process, incorporating this functionality should berelatively simple.

Ease of Defining User Preferences. The success of applicationssimilar to the TV-Trawler depends to a large extent on user interfaceissues and the ease of specifying preferences. This could be facili-tated by the following:

● Providing an interface that allows users to browse EPGs andautomatically select programs they want to view. Selection of

a program would automatically generate the descriptor valuesfor the source preferences.

● MPEG-7 provides a UsageHistory DS that describes the his-tory of actions performed by a consumer over a specifiedperiod. User agent tools could automatically determine users’preferences by analysing usage history descriptions and apply-ing machine learning techniques to model and automaticallylearn user preferences.

Integration of Quality of Service. Users may want to specifypersonalized preferences pertaining to how they view and navigatethe content they are receiving. For example, a user may want tospecify a low frame rate to save on bandwidth or disk storage space.The BrowsingPreferences DS provided by MPEG-7 allows users tospecify preferences relating to nonlinear navigation of content. Weaim to implement this in future versions of the system.

Enhanced Replay Functionality. The ability to invoke a videoplayer application on a user’s workstation and stream relevantcontent immediately, is not yet implemented. This option wouldprovide enhanced functionality for the user. As the content is beingstreamed to the workstation and simultaneously recorded, users

Figure 5. System metadata flow.

Vol. 13, 289–296 (2003) 295

could stop or pause the content at their discretion and resume replaylater. This type of functionality is similar to that provided byPersonal TV™ services such as TiVo.

Assessing System Scalability. To date, the prototype has onlybeen tested with three concurrent users. The following possibleeffects of increased numbers of users need to be considered:

● We can currently only record one program at a time. Whathappens when multiple users’ preferences match overlappingprograms? As the number of users increases, more conflicts arelikely to occur and this will degrade the performance of thesystem.

● Is the current approach to parsing multiple closed-captionteletext streams effective? Only one program can be trawledfor closed-captions matching user preferences at a time. Therate of sampling the teletext stream may have to be adjusted ormultiple parallel processors employed.

● The filter engine and file system storage technique may not beable to handle the increased number of concurrent updates.

● Users may find that the schema does not adequately capture allof their preferences and that they require more descriptors withfurther levels of detail.

● As more users record and stream video across LANS, theadverse effects on bandwidth and storage may become a seri-ous networking problem.

5.2. Conclusions. The work to date on this project has resultedin a prototype that enables the filtering, recording, and delivery ofdigital video broadcasts over satellite, by matching incomingMPEG-7 content descriptions to predefined sets of MPEG-7 userpreferences.

The viability of using MPEG-7 to match encoded user prefer-ences against content descriptions has been evaluated and found tobe quite effective. However, the extent to which we could applyMPEG-7 to the filtering of broadcasts was seriously limited by thecurrent lack of MPEG-7 descriptions provided by content creators,publishers, and service providers. There needs to be a concertedindustry move toward the support of metadata and in particular thesupport of MPEG-7 from content creators, content distributors, andservice providers. Without this, MPEG-7’s full potential cannot beexploited and services to consumers will be limited. There is nopoint in trying to match complex user preferences to content de-scriptions if not enough accurate and meaningful metadata can beextracted for comparison. For the purposes of the TV-Trawler, of thethree possible options for extracting metadata, only one could cur-rently be utilized. Satellite TV services currently underutilize thedigital stream packets and teletext streams are only present for oneof the television services that we monitored. If more metadata weremade available by the broadcasters and were able to be extracted,then the matching process would be much more effective.

It is expected that the release of the final MPEG-7 standard inMarch 2002 will lead to a wider availability of tools capable ofautomatically generating MPEG-7 content descriptions. This willhopefully increase the availability of high-quality MPEG-7 metadata

and lead to a realization of the potential benefits associated withfiltering systems such as the TV-Trawler.

ACKNOWLEDGMENTSThe work described in this article has been funded by the Cooper-ative Research Centre for Enterprise Distributed Systems Technol-ogy (DSTC) through the Australian Federal Government’s CRCProgramme and the Defence Science and Technology Organisation(DSTO).

REFERENCES

The Australian Caption Centre. 2004. Legislation. http://www.auscap.com.au/legislation.htm.

M. Baartse, et al. Professional ASP XML. Wrox Press, Birmingham, UnitedKingdom, 2000.

O. Icoglu, Y. Erdogan, G. Kocaeli, B. Gunsel, A. Murat Tekalp 2001. UserPreference Matching for Smart Browsing of Media Contents. MultimediaSystems Group, Information Technologies Research Institute, Turkey, SPIEProceedings, Vol. 4315, Storage and Retrieval for Media Databases, pp(2001), 30–340.

K. Jansz, W.J. Sng, N. Indurkhya, C. Manning. Using XSL and XQL forEfficient, Customised Access to Dictionary Information. Proceedings fromthe AusWeb2K, the Sixth Australian World Wide Web Converence, South-ern Cross University. http://ausweb.scu.edu.au/aw2k/papers/jansz/paper.html, 2000.

R. Koenen, 2001. Overview of the MPEG-4 Standard V.18. Singapore,March 2001. http://mpeg.telecomitalialab.com/standards/mpeg-4/mpeg-4.htm.

J. Martinez, 2001. Moving Pictures Experts Group. Overview of theMPEG-7 Standard, August 2001. http://mpeg.telecomitalialab.com/standards/mpeg-7/mpeg-7.htm.

Multimedia Description Schemes (MDS) Group. Text of 15398-5 FDISInformation Technology—Multimedia Content Description Interface, Part 5,December 2001. http://www.cselt.it.mpeg/working documents.htm.

RealPlayer, 2004. http://www.real.com.

A. Smeaton, N. Murphy, N.O’Connor, S. Marliw, H. Lee, K. McDonald, P.Browne, J. Ye. The Fischlar Digital Video System: A Digital Library ofBroadcast TV Programmes. Proceedings of JCDL, (2002), 312–313, (ACMDL).

Tamino XML Server. 2004. http://www.softwareag.com/tamino/.

your TV. 2004. TV Guide. http://www.yourtv.com.au/.

van Setten M, E. Oltmans, M. Veenstra, Personalized Video Search andRetrieval using MPEG-7 and Stylesheets. Telematica Instituut, Netherlands,2000.

W3C World Wide Web Consortium, 2004. XML Schema. http://www.w3.org/XML/Schema.

W3C World Wide Web Consortium. 2002. XQuery 1.0: An XML QueryLanugage. W3C Working Draft Nov 15, 2002. http://www.w3.org/TR/xquery/.

W3C World Wide Web Consortium. 2002. XSL Transformations (XSLT)Version 2.0., W3C Working Draft Nov 15, 2002. http://www.w3.org/TR/xslt.

Xerces Perl Parser 1.4.4. 2004. http://xml.apache.org/xerces-p/.

296 Vol. 13, 289–296 (2003)