A DIGITAL VIDEO PROCESSING AND INTERFACE SYSTEM FOR VIDEO, AUDIO AND ANCILLARY DATA

Abstract: A video processing system adaptively generates and processes volume/file structure and navigation data of different data format in distinct modes including (a) pre-processing, (b) contemporaneous and (c) post-processing modes for decoding, recording and other applications. The system processes a video program comprising encoded digital packetized data representative of a sequence of individual images and ancillary file structure and navigation data supporting navigation through image sequences. The system parses (303) the packetized data to determine characteristics of individual images prior to storage and uses the characteristics for generating (305) navigation information (310). The generated navigation information includes a predetermined element constrained to a selected sub-set of elements to reduce subsequent processing. The system also generates a menu including an item enabling User selection and initiation of a function associated with the video program using the generated navigation information.

Description: A Digital Video Processing and Interface System for Video, Audio and Ancillary Data This invention is related to the field of digital signal processing, recording and retrieval of video and audio data for storage or display applications, for example. In digital video processing and storage applications, packetized video data is typically encoded with ancillary information for use in locating, decoding and navigating through encoded image data. In a Digital Video Disk (DVD) type application, ancillary data in the form of volume/file structure data and navigation data contains information for use in locating data and navigating through different image sequences. Volume/file structure information uses one or more file directories in defining file structures for use in locating and recovering data from a storage medium, for example. Navigation data additionally locates and links sections of video/audio program data for use in navigating through image sequence in different modes of operation, for example. In normal program play mode a first sequence of images is located, linked and processed for play by a DVD player and in another mode a different sequence of images is processed to provide a different scene or camera angle, for example. However, such ancillary file structure and navigation information may be encoded in different data formats in accordance with different encoding standards and applications. A program encoded with file structure and navigation data according to one standard for read-only DVD applications may be incompatible with the navigation data structure and content requirements of a different standard such as a recordable DVD format, for example. As a result a recordable format DVD disk may not be playable by a read-only DVD player or a program encoded for readonly DVD format may not be directly stored by a recordable DVD player, and vice versa. In addition, the content and format of existing file structure and navigation data structures for DVD and other applications are limited and do not adequately support advanced decoder navigation features for multimedia and other applications. Advanced decoder navigation features include, for example, trick play operation (such as reverse, fast forward, freeze-frame etc.), image manipulation (involving linking images out of sequence and from different programs), and navigation in a multi-windowed composite image display containing different video programs or other multimedia application images. Such multimedia picture-in-picture (PIP) type images may comprise, for example, Internet web pages, electronic program guides, Email, telephone, fax, videophone, home appliance control images as well as video program images. These deficiencies and derivative deficiencies are addressed by a system according to the present invention. Specifically, a system according to the invention addresses the problems involved in generating, processing and formatting ancillary volume/file structure and navigation data to be compatible with different data encoding standards and to support advanced multimedia navigation features. A video system adaptively generates and processes volume/file structure and navigation data of different data format for recording and other applications. The system processes a video program comprising encoded digital packetized data representative of a sequence of individual images and ancillary file structure and navigation data supporting navigation through image sequences. The system parses the packetized data to determine characteristics of individual images prior to storage and uses the characteristics for generating navigation information. The generated navigation information includes a predetermined element constrained to a selected sub-set of elements to reduce subsequent processing. The system also generates a menu including an item enabling User selection and initiation of a function associated with the video program using the generated navigation information. Brief Description of the Drawings In the drawing: Figure 1 shows an exemplary top level generic DVD data format compatible with recordable and read-only DVD players, according to the invention. Figure 2 shows a read-only DVD data format indicating volume/file structure and video program navigation information. Figures 3A and 3B show a table listing read-only DVD format data structure items (indicated in Figure 2) that are processed in pre-processing, contemporaneous and post-processing modes for incorporation in the generic DVD data format of Figure 1 , according to the invention. Figure 4 shows an exemplary Title Search Pointer Data element of a generic DVD data format for inclusion of data type alteration information, according to the invention. Figure 5 depicts an exemplary recorded Video Object Unit (VOBU) including navigation, video, audio and sub-picture data. Figure 6 depicts an Error Correction Coded (ECC) block within a Video Object Unit (VOBU). Figure 7 shows a flowchart for a method for providing volume/file structure and navigation data compatible with different data formats, according to the invention. Figure 8 shows a flowchart for a method for converting image representative digital video data in a read only data format to a different generic data format compatible with read-only and recordable formats, according to the invention. Figure 9 shows a video decoder and recorder system, according to the invention, for adaptively generating and processing volume/file structure and navigation data for different data formats and for converting data between the formats. Figure 10 shows an example of activation of buttons in a preformed menu, according to the invention. A video processing system advantageously adaptively generates and processes volume/file structure and navigation data of different data format and converts data between different formats for decoding, recording and other applications. The principles of the invention may be applied to processing and storage of terrestrial, cable, satellite, Internet or computer network broadcast data. Further, although the disclosed system is described as processing video programs, this is exemplary only. The term 'program' is used to represent any form of packetized data such as audio data, telephone messages, computer programs, Internet web pages or other communications, for example. The processing system is discussed in the context of processing and converting data of different data format, specifically in processing and converting between recordable and read-only formats for a DVD type application and vice versa. However, this is exemplary only, the principles of the invention may also be applied to the processing and conversion of other data formats. Other formats may include, for example, proprietary and custom formats, MPEG format (including data encoded to the MPEG-4 or MPEG-7 standards) and non- MPEG compatible formats. Note, the read-only DVD data format employs a subset of the MPEG2 format and is defined by a proprietary standard adopted by a consortium of consumer electronics companies and described in available literature such as "DVD Demystified-The Guidebook of DVD-Video and DVD- ROM", 1 997, by Jim Taylor published by McGraw Hill. Further, MPEG2 compatible data is encoded in accordance with the "MPEG standard" comprised of a system encoding section (ISO/IEC 1 381 8-1 , 1 0th June 1 994) and a video encoding section (ISO/IEC 1 381 8-2, 20th January 1 995) . A program encoded with file structure and navigation data according to a recordable DVD standard may be incompatible with the file structure and navigation data requirements of a program encoded to a different standard such as a read-only DVD format, for example. As a result a recordable DVD disk may not be playable by a read-only DVD player or a program encoded for read-only DVD format may not be directly stored by a recordable DVD player, and vice versa. Such data format incompatibility may arise between other different data formats. Data format incompatibility may also arise between data encoded in different versions of a single format such as between different versions of a recordable DVD format. The resulting lack of backward compatibility means a recorded disk may not be playable on different generations of player, for example. A processing system, according to the invention, adaptively generates and processes file structure and navigation data of different data format. The processing system also converts file structure and navigation data between different formats for decoding, recording and other applications. In a specific embodiment, a processing system encodes a video program into a generic data format (as exemplified in Figure 1 ) that is compatible with recordable and read-only video processing devices. A number of difficulties are involved in processing a program in a recordable data format for play by a read-only format player. Specifically, a program encoded in a read-only format (as exemplified by Figure 2) contains file structure and navigation data to support several navigation features. Such features include, the location of individual programs in a set of programs, the navigation through different image sequences to provide different scenes or camera angles, and trick play operation (such as reverse, fast forward, freeze- frame etc.) for example. The read-only format file structure and navigation data supporting such navigation features is derived and stored in a disk-mastering operation as part of a manufacturing process where there are no real time processing constraints. In contrast, deriving such file structure and navigation data for home recording imposes a significant burden on a recording device. A processing system, according to the invention, minimizes the burden of generating such file structure and navigation data by advantageously adaptively generating and processing data in distinct modes. These modes comprise, (a) pre-processing, (b) contemporaneous and (c) post-processing modes. The pre-processing mode precedes a program recording or format conversion operation. The contemporaneous mode occurs during a program recording or format conversion operation. Further, the pre-processing and contemporaneous modes may each involve creating pre-formed data fields for subsequent insertion of file structure and navigation parameters. The postprocessing mode occurs after program recording or format conversion and involves inserting file structure or navigation parameters in the pre-formed data fields. A processing system encodes a video program into a generic data format (as exemplified in Figure 1 ) that is compatible with read-only format (as exemplified in Figure 2) and recordable format video processing devices. The following discussion describes the generic data format of Figure 1 and read-only format of Figure 2. The subsequent discussion in connection with Figures 3A and 3B describes the processing of read-only DVD format data items of Figure 2 in pre-processing, contemporaneous and post-processing modes for incorporation in the generic DVD data format of Figure 1 . Figure 1 shows an exemplary top level generic DVD data format compatible with recordable and read-only DVD players. The highest level of the hierarchical generic data format comprises volume and file structure section 400 defining file locations and paths and section 403 for insertion of other volume or file structure information. The highest level also includes video zone 405 including program video content and program guide/menu content and other zone 407 for ancillary and other data. Video zone 405 comprises video manager 409 and video zone 41 1 . Further video manager 409 is hierarchically comprised of navigation information 414 and data section 41 8 for insertion of navigation information and other data in section 420. Video Zone 41 1 is comprised of navigation information 422 and data section 424 for insertion of navigation information generated in post-processing mode and other data in section 427. The file structure and navigation parameters incorporated within the generic format of Figure 1 support navigation through images in an MPEG compatible group of pictures (GOP) or within a DVD video object unit (VOBU). The parameters also support navigation within a single program or between different programs including audio programs, Internet web page data, text data, and program guides and between images of different MPEG elementary streams. Specifically, navigation parameters may include, for example, parameters identifying individual GOPs, or the number of GOPs in a video object unit (VOBU), or image data location information. Further, such location information may include data, identifying the size of image representative data, or identifying MPEG reference frames in a VOBU or GOP, or identifying image representative data start or end addresses. In addition, the navigation parameters may also include trick play mode selection information. Figure 2 shows a read-only DVD hierarchical data format indicating location and structure of navigation information used in decoding and navigating through video program image sequences for different modes of operation. The highest level of the hierarchical read-only data format comprises, volume and file structure data 1 91 , a video manager section (VMG) 200 and video title (program) sets (VTS) 203-205 including video program content. Each VTS is hierarchically associated with: video title set information VTSI 213 for one or more video programs (titles); program menu information 217; program content information 223 and back-up VTSI data 225. Further, program menu information 217 and program content information 223 are comprised of video objects (VOB) 260-262 and an individual VOB (e.g. VOB 260) is comprised of cells 264-266. An individual cell, e.g. cell 264, represents program data of duration that is variable from 1 second to the length an entire movie, for example. Cell 264 is comprised of video object units (VOBU) 268-270 and each video object unit represents 0.4- 1 .2 seconds of video program play. Each individual video object unit (exemplified by units 272, 274-276) may include navigation pack information together with video, audio and sub-picture data (comprising captions, and ancillary text, for example). An individual navigation pack includes headers, sub-streamjds, presentation control information (PCI) data, and data search information (DSI) as shown in units 280-294. The main menu of a DVD disc in video manager section (VMG) 200 is optional. This main menu represents the first image a User sees on accessing a DVD disk. VMG 200 is hierarchically associated with video manager control data 207, disc menu 209 and video manager back-up information 210. Further, control data 207 comprises: information management table 230; title search pointer table 233; menu program chain information unit table 235; parental management information table 237; video title set attribute table 239; text data manager 242; menu cell address table 244; and menu video object unit address map 246. Specifically, items 230-246 define size and start addresses of VMG information, attributes of video objects of the video manager menu, video program search information, menu language information, parental rating control information, duplicate video program attribute information, and program identification names (e.g. volume, album or producer names). Further, title search pointer table 233 includes search information items 253, 255, 257 and 259 each specifying program type, program number, number of camera angles, parental rating identifier and program start address, for example) for each program on a disk. Title search pointer table 233 also includes in item 248 parameters defining size and location of search pointer table 233 itself. Figures 3A and 3B show a table listing read-only DVD format data structure items 650-71 6 (incorporated in the data structure of Figure 2) that are processed in pre-processing, contemporaneous and post-processing modes for incorporation in the generic DVD data format of Figure 1 . Columns 633, 637 and 639 of Figures 3A and 3B indicate the nature of the processing action taken in conditioning data items 650-71 6 for inclusion in the generic data format of Figure 1 . Column 640 of Figures 3A and 3B identifies the individual data elements of Figure 2 containing data items 650-71 6 and column 645 identifies the corresponding data elements of the generic format of Figure 1 designated to incorporate the processed data items 650-71 6. The pre-processing, contemporaneous and post-processing actions listed in Figures 3A and 3B are described as follows. 1 . Pre-processing Mode Pre-processing mode involves processing information that is obtainable prior to program recording. As part of pre-processing, a disk may be checked for usability, a file structure may be created and an audio track (either newly created or pre-existing) may be incorporated into pre-processed data. Specifically, in preprocessing mode, Video manager main menu 650 is created, a menu language 652 (e.g. English, French, German etc. as used in menus, text, etc.) is selected and program chain menu information 655 (i.e. information linking menu segments) is generated. Further, the number of video objects 657 in a video object set for a video manager menu is limited to 1 and both the size of the video object and its associated address are pre-defined. Content rating 659 (used for Parental management) is optional but may similarly be determined before recording. Further, in order to create a new video program (title) set menu (i.e. a menu of programs available on the disc), a standard pre-formed menu is used including title set menu cell address table 71 1 and video title set menu video object unit address map 71 3. In addition, other items may be optionally created during pre-processing mode including, information management table 679, text management information 689, menu cell address table 691 and video object unit address table 697. The pre-processing of data in the manner described herein advantageously simplifies and expedites the generation and processing of file structure and navigation data of different data format. The pre-processing and pre-forming of data elements prior to program recording or format conversion reduces the processing burden otherwise involved in performing these operations during recording or in post-processing. Such pre-processing may involve counting the number of individual I, P and B frames in an MPEG compatible GOP or in a VOBU, for example. Further, some pre-formed data elements are advantageously updated with new data during recording or post-processing mode. Other preformed data elements may be advantageously subsequently modified to accommodate newly available functions or features. For example, a menu may be generated before recording in the form of a stored bit map or may be embedded within software (e.g. in HTML). In one version, such a menu may be pre-formed to contain visible and invisible buttons. The invisible buttons are associated with inactive commands (e.g. no-operation NOP commands). A preformed menu containing invisible buttons is retrieved from memory and incorporated into video program data during program recording or to expand decoder features. The invisible menu buttons are subsequently activated by rendering the buttons visible and by replacing the dummy commands with active commands in response to a request to add a feature, for example. Figure 10 shows an example of activation of buttons in a pre-formed menu. Figure 10(a) shows the standard menu with no visible buttons and Figures 10(b) and 10(c) show the progressive activation of a single button and six buttons respectively. This capability supports the addition of a program (and an associated access pointer) that needs to be selectable by a User through a menu and supports other added User functions. In another version, a menu may be pre-formed to contain visible buttons associated with inactive commands and the menu may be subsequently activated by replacing the inactive commands with active commands. Similarly, the pre-processing described herein may advantageously be used to create whole new menus or an individual command item within an existing menu to flexibly accommodate data format conversion or new feature addition. 2. Contemporaneous mode (occurring during program recording). Contemporaneous mode comprises processing that occurs during a program recording or format conversion operation. In contemporaneous mode, control indicators are updated upon addition of a new program (title) to a disk containing recorded program data. Specifically, the update of control indicators involves setting data type indicator 667 to zero and incrementing both the number of the video program set 663 and the number of title search pointers 665. Navigation information 669, 672 of unknown destination (e.g. involving commands such as link, jump, call instructions etc.) are recorded as dummy commands and updated in post-processing. Also, for a new video program set, a search pointer 693 and video attributes 695 are recorded with dummy data for update in postprocessing. In recording a new video program set, information items 701 -716 are recorded and dummy data is incorporated for subsequent update in postprocessing. In recording a new program, a program start address is added to management table 701 and a pointer is incorporated in pointer table 703. Further, program chain table 705 and unit table 707 are updated to include linking data for segments of the added program. Similarly, in time map table 709 containing program address links permitting random access for trick play and other navigation modes, time map link addresses may be updated, an associated index number is incremented and a search pointer is added. Unknown data is recorded as dummy data for update in post-processing. A new menu button permitting User selection of the added program is added in the video program set menu 650. In addition, associated navigation items are updated including menu program chain information 655 and navigation command data 669. The number of menu video objects 657 may also be updated to accommodate the new menu button if necessary. In recording a new video object, new video title set cell information 71 1 is added, and the number of video objects and unknown data are recorded as dummy data. Program chain information 705 and menu program chain information unit table 707 are updated to reflect the new changed number of programs and cells. Note, items 705 and 707 contain data related to program control for a video tile set and its associated menu. Navigation commands (NextPGC, PreviousPGC, GoUp PGC, PG playback mode, and Still Time Value) are recorded as dummy commands (NOP) if the navigation destination is unknown at this stage. For a new cell, a cell number entry is added in the video title cell address table 71 6. In addition, video object units are stored in memory as complete units and are parsed prior to recording to determine video object unit level navigation information. Forward address links of sequentially linked video object units are unknown and are recorded as dummy data for update during post-processing. 3. Post-processing mode. The post-processing mode occurs after program recording and involves updating dummy data in the file structure and navigation parameter data fields formed in the pre-processing and contemporaneous modes. Specifically, upon data format conversion, data type indicator 667 is changed from zero to one and existing video manager menu 650 may be replaced with a new version. Further, additional languages 652 are added if desired, and menu program chain information 655 and the number of video objects in the video manager menu 657 are updated with correct values. Similarly, content rating (Parental management) information 659 and text management information 689 are added or updated in this mode. The dummy data included for attribute search pointer 693 and for video program attributes 695 is replaced with correct information including a valid video program set attribute end address. Other data items 669- 716 may similarly be updated or corrected in this mode if required. Figure 4 shows an exemplary Title Search Pointer Data element of the generic DVD data format (Figure 1 ) for inclusion of data type alteration information or information defining format type. The search pointer item 440 (Title playback type) is used to indicate a data format change from read-only to generic data format. However other definable parameters may also be used for indicating data format alteration or for defining a format type. Data items 442- 452 provide camera angle, title, parental-id, and title set identifier parameters for use in decoding. Figures 5 and 6 show a time based data structure of recorded data in read-only format. Figure 5 depicts an exemplary recorded read-only format Video Object Unit (VOBU) including navigation, video, audio and sub-picture data and sector addresses. Figure 6 depicts an Error Correction Coded (ECC) block 460 within a Video Object Unit (VOBU). Figure 7 shows a flowchart for a method for providing volume/file structure and navigation data compatible with different data formats. In step 303 following the start at step 300, encoded packetized video data representing a video program is parsed to determine volume/file structure and navigation parameters for use in navigating through a sequence of video images. The parameters may support navigation through images in normal or trick play (e.g. fast forward, reverse, freeze frame etc.). However, the file structure and navigation parameters may also be derived and processed as part of a data format conversion process. The parameters determined in step 303 are formed into a predetermined structure in step 305 and the parameters, as structured, are incorporated into preformed file structure and navigation data fields in packetized video program representative data in step 310. In step 31 5, an indicator is incorporated into the packetized data to indicate that the file structure and navigation parameters have been inserted and the packetized data, as formed, is output in step 320. The process terminates at step 325. Figure 8 shows a flowchart for a method for converting image representative digital video data in a read only data format to a different generic format compatible with read-only and recordable format players. In step 359 following the start at step 350, a user conversion selection input 357 is processed to determine whether an individual program or an entire disk containing one or more programs is to be converted from read-only to generic data format. If conversion of an individual program or an entire disk has been selected, steps 361 and 363 determine respectively whether a conversion indicator has already been set. If the indicator is set, the conversion has already been performed and the process terminates at either step 355 or step 365. If the indicator shows the conversion has not been previously performed, the process for program or disk conversion continues in step 367. Step 367 performs the pre-processing, contemporaneous and post-processing functions for the conversion of read-only file structure, navigation and other data (of Figure 2) to the generic DVD data format (of Figure 1 ) as previously described in connection with Figures 3A and 3B. In the case of conversion of a single program or an entire disk, data is advantageously processed in Error Correction Coded (ECC) block units to simplify processing. In other embodiments, processing may be performed on the basis of different sized data involving correspondingly different memory capacities for the conversion processing. In step 367, ECC blocks in a video object unit (VOBU) are individually processed and this is repeated for each of the VOBUs in the program. Individual ECC blocks of a program are retrieved from storage and parsed to generate generic format volume, file structure and navigation parameters for incorporation in generic format data fields. Further, in step 367, the pre-processed generic format data is re-stored back to the original disk, either to overwrite the original stored program, or to occupy a different storage area (on the original disk or on a different disk). During the re-storage of the generic format program, selected file structure and navigation parameters are generated or updated as described previously in connection with the contemporaneous mode processing of Figures 3A and 3B. In the post-processing function of step 367, the re-stored generic format data produced during the contemporaneous mode is read and parsed to generate consistent file structure and navigation parameters (including addresses, data sizes, location and pointer information as described in connection with Figures 3A and 3B) . The resultant consistent file structure and navigation parameters are inserted (e.g. by overwriting existing parameters) into their respective generic format data fields in the re-stored generic format program. The data format conversion process of step 367 is completed by updating the data type indicator (e.g. indicator 667 of Figures 3A and 3B) to reflect a format change and the process of Figure 8 terminates at step 373. In converting an entire disk of programs or a plurality of selected programs on a disk, the process described in step 367 is repeated for each of the requisite selected programs. Figure 9 shows a video decoder and recorder system for adaptively generating and processing volume/file structure and navigation data for different data formats and for converting data between the formats. In block 10 a deck is shown for accommodating disk 1 4 for rotation by motor 1 2. A digital signal representing a program is recorded on (and subsequently read from) disk 14 as a spiral track containing pits with respective pit lengths determined by modulation coding responsive to respective signal data bits. In read mode, the program on disk 1 4 is read by pick up 1 5 which gathers reflected illumination from a laser. The reflected laser light is collected by a photo detector or opto pick-up device. An imaging device, for example a lens or mirror, which form part of transducer 1 5, is servo controlled and driven by motor 1 1 to follow the recorded track. Different parts of the recording may be accessed by rapidly repositioning the imaging device. Servo controlled motors 1 1 and 1 2 are driven by integrated circuit drive amplifier 20. Integrated circuit 50 provides drive and control signals for amplifier 20 and servo motors 1 1 and 1 2 under direction of controller 510. Transducer 1 5 is coupled to an opto preamplifier, block 30, which includes drive circuitry for the laser illuminator and a preamplifier which provides amplification and equalization for the reflected signal output from opto transducer device 1 5. The amplified and equalized replay signal from opto preamplifier 30 is connected to a channel processor block 40 where the replay signal is demodulated following synchronization with a phase locked loop. In record mode, unit 40 encodes, modulates and processes an input digital signal from multiplexer 53 for storage on disk 1 4 as laser etched pits formed using laser control unit 30 and transducer 1 5 with respective pit lengths determined by modulation coding representing signal data bits. In read mode, the digital video disk player is controlled by a central processing unit (CPU) 51 0 of block 500 in conjunction with memory 80. Unit 51 0 processes the reproduced bitstream and error flags from channel IC 40 to provide separate video, audio, sub-picture and system control data for output to other units and for internal use. Controller 51 0 provides MPEG encoded video and audio data to decoder 530 and audio decoder 1 1 0 respectively. In addition CPU 510 receives user control commands from user interface 90, and MPEG decoder control functions from the MPEG decoder element 530 of block 500. MPEG decoder 530 uses memory 60 in decoding MPEG encoded video data from unit 51 0 using variable length coding, discrete cosine transform and quantization functions. Following MPEG or AC3 audio decoding by unit 1 1 0, a digitized audio signal results which is coupled to an audio post processor 1 30 for digital to analog conversion and generation of various base band audio signal outputs. Also, following MPEG video decoding, a digital video output signal from unit 530 is transformed into raster scan format and processed by encoder 590 which provides digital to analog signal conversion and generates baseband video components and encoded video signals for output to a reproduction device. In record mode, input video and audio datastreams are digitized by analog to digital converters 551 and 541 respectively. The resultant digital video and audio datastreams are MPEG encoded by video encoder 533 and either MPEG or AC3 encoded by audio encoder 1 1 3 under direction of controller 51 3. The functions of controller 51 3 may, in other embodiments, be encompassed within the functions performed by unit 51 0. Unit 33 generates sub-picture data (e.g. text, captions, menus etc.) and unit 43 generates file structure and navigation data compatible with the generic format of Figure 1 under direction of controller 51 3. The generated sub-picture, file structure and navigation data is incorporated with video and audio encoded data from units 533 and 1 1 3 respectively via multiplexers 53 and 63. For this purpose, multiplexer 53 and 63 are controlled by unit 51 3 in coordination with re-synchronized input timing data provided by unit 73. The encoded multiplexed data from multiplexer 53 is modulated and channel coded and stored on disk 1 4 via units 40, 30 and 1 0. Controllers 51 0 and 51 3 control the elements of the record/replay system of Figure 9 to convert a program stored on disc 14 in read-only format (exemplified in Figure 2) to generic format (exemplified in Figure 1 ). For this purpose, controllers 51 0 and 51 3 acquire, parse and collate read-only data from disk 14 and re-format this data into the generic data format (of Figure 1 ) for re- storage back to disk 1 4. Units 51 0 and 51 3 achieve this by controlling the elements of the Figure 9 system in executing the processes of Figures 7 and 8 using the pre-processing, contemporaneous and post-processing functions described in connection with Figures 3A and 3B. The architecture of Figure 9 is not exclusive. Other architectures may be derived in accordance with the principles of the invention to accomplish the same objectives. Further, the functions of the elements of the system of Figure 9 and the process steps of Figures 7 and 8 may be implemented in whole or in part within the programmed instructions of a microprocessor. The pre- processing, contemporaneous and post-processing mode and data conversion principles disclosed herein are applicable to modify the file/navigation data structure or convert the data format of a wide variety of digital data transport structures. Such transport structures, for example, may include MPEG-PSI, JPEG, Internet TCP/IP (Transport Control Protocol/Internet Protocol), DSS (Digital Satellite System), ATM (Asynchronous Transfer Mode) etc. Further, the file/navigation data structure processing principles disclosed here may be applied in other systems, such as in PCs, servers, set-top boxes, other video and audio decoders, HDTV devices and in other data processing devices.

Claims: CLAIMS 1 . A system for processing a video program for storage, said video program including encoded digital packetized data representative of a sequence of individual images and ancillary file structure and navigation data supporting navigation through image sequences, comprising: a pre-processor (51 0,51 3) for parsing said packetized data to determine characteristics of said individual images prior to storing said encoded digital packetized data; a processor (51 0,51 3,43) for using said characteristics for generating navigation information including a predetermined element constrained to a selected sub-set of elements to reduce subsequent processing; and a menu generator (33) for generating a menu including an item enabling User selection of a function associated with said video program, said function being initiated using said generated navigation information. 2. A system according to claim 1 , wherein said menu comprises a pre-formed menu with a pre-mapped user selectable button as a predetermined element. 3. A system according to claim 2, wherein said pre-mapped user selectable button is associated with an inactive command. 4. A system according to claim 1 , wherein said pre-processor counts the number of each I frame, P frame and B frame in a GOP or VOBU to determine said characteristics. 5. A system according to claim 1 , wherein said processor subsequently updates said navigation information with information unavailable during parsing of said packetized data by said preprocessor. 6. A system according to claim 5, wherein said processor updates said navigation information during one of, (a) recording of said packetized data, and (b) post-processing following recording of said packetized data. 7. A method for processing a video program for storage, said video program including encoded digital packetized data representative of a sequence of individual images and ancillary file structure and navigation data supporting navigation through image sequences, comprising the steps of: parsing said packetized data to determine characteristics of said individual images prior to storing said encoded digital packetized data; using said characteristics for generating navigation information including a predetermined element constrained to a selected sub-set of elements to reduce subsequent processing; and generating a menu including an item enabling User selection of a function associated with said video program, said function being initiated using said generated navigation information. 8. A method according to claim 7, including the step of subsequently updating said navigation information with information unavailable during parsing of said packetized data by said pre-processor. 9. A method according to claim 8, wherein in said updating step said navigation information is updated during one of, (a) recording of said packetized data, and (b) post-processing following recording of said packetized data. 10. A method for processing a video program for storage, said video program including encoded digital packetized data representative of a sequence of individual images and ancillary data comprising file structure and navigation data supporting navigation through image sequences, comprising the steps of: deriving image data characteristics in different modes for storage with said video program, said modes involving, pre-processing said packetized data prior to storage of said packetized data; contemporaneously processing said pre-processed packetized data during storage of said pre-processed packetized data; and post-processing said contemporaneously processed packetized data following storage of said contemporaneously processed packetized data. 1 1 . A method according to claim 1 0, including the step of subsequently updating said navigation information with image data characteristics derived during at least one of, (a) said contemporaneously processing step, and (b) said post-processing step. 1 2. A method according to claim 1 0, including the step of generating navigation information using said derived characteristics, said generated navigation information including a predetermined element constrained to a selected sub-set of elements to reduce subsequent processing. 1 3. A system according to claim 1 or 1 2, wherein said predetermined element constrained to a selected sub-set of elements comprises at least one of, (a) a start address of a segment of video program representative data, (b) an end address of a segment of video program representative data, (c) a parameter identifying size of a segment of video program representative and (d) a pre-formed menu. 1 4. A system according to claim 1 or 1 0, wherein said determined characteristics comprise at least one of, (a) data identifying a group of pictures (GOP) format, (b) a number of GOPs in a video object unit (VOBU), (c) data identifying reference frames in a VOBU or GOP, (d) a start address of image representative data, (e) an end address of image representative data, (f) a parameter identifying size of image representative data, (g) trick play mode selection information and (h) file structure information.

Inventors: LIN SHU, SCHULTZ MARK ALAN, WILLIS DONALD HENRY, LIN, SHU, SCHULTZ, MARK, ALAN, WILLIS, DONALD, HENRY
Applicants: LIN SHU, SCHULTZ MARK ALAN, THOMSON LICENSING SA, WILLIS DONALD HENRY, LIN, SHU, SCHULTZ, MARK, ALAN, THOMSON LICENSING S.A., WILLIS, DONALD, HENRY
Application year: 2000
Main classification: G11B27
IPC codes: G11B20, G11B27, H04N5, H04N9