G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements

G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer

G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

G—PHYSICS

G06—COMPUTING; CALCULATING; COUNTING

G06F—ELECTRIC DIGITAL DATA PROCESSING

G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements

G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer

G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons

G—PHYSICS

G11—INFORMATION STORAGE

G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER

G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier

G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording

G11B27/32—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier

H04N21/440236—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by media transcoding, e.g. video is transformed into a slideshow of still pictures, audio is converted into text

H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk

H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched

H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts

H04N21/632—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices

H04N5/765—Interface circuits between an apparatus for recording and another apparatus

H04N5/775—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N5/00—Details of television systems

H04N5/76—Television signal recording

H04N5/765—Interface circuits between an apparatus for recording and another apparatus

H04N5/775—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver

H04N5/7755—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver the recorder being connected to, or coupled with, the antenna of the television receiver

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N5/00—Details of television systems

H04N5/76—Television signal recording

H04N5/78—Television signal recording using magnetic recording

H04N5/781—Television signal recording using magnetic recording on disks or drums

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N5/00—Details of television systems

H04N5/76—Television signal recording

H04N5/91—Television signal processing therefor

H04N5/93—Regeneration of the television signal or of selected parts thereof

H04N5/95—Time-base error compensation

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N7/00—Television systems

H04N7/08—Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division

H04N7/087—Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only

H04N7/088—Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N9/00—Details of colour television systems

H04N9/79—Processing of colour television signals in connection with recording

H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback

H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only

H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal

H—ELECTRICITY

H04—ELECTRIC COMMUNICATION TECHNIQUE

H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION

H04N9/00—Details of colour television systems

H04N9/79—Processing of colour television signals in connection with recording

H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback

H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only

H04N9/83—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only the recorded chrominance signal occupying a frequency band under the frequency band of the recorded brightness signal

Abstract

A method and apparatus for a digital video recorder (DVR) video editing system provides a user interface and video editing environment for content stored on a DVR's storage device. A visual progress indicator is displayed over the program content that the user has selected to edit. The user moves a position indicator within a cache bar in the visual progress indicator that indicates how much of the program content has been stored on the storage device. The user can delete sections of the program content. The user can also add other recorded program content into the program content. The deleted sections and added content are highlighted in the cache bar by colors that are different from the normal color used for the cache bar.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS; PRIORITY CLAIM

This application claims the benefit of Provisional Appln. 60/630,398, filed Nov. 19, 2004, the entire contents of which is hereby incorporated by reference as if fully set forth herein, under 35 U.S.C. § 119(e).

FIELD OF THE INVENTION

The present invention generally relates to the editing of digital video content stored on a digital video recorder.

BACKGROUND

The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.

With the advent of digital video recorders (DVR) users have had more flexibility on how they record television programs. Before DVRs, users had to record television programs using a VCR. VCRs required that the user replenish the video tape in the VCR whenever the user wanted to save the programs recorded on the previous video tape.

DVRs on the other hand, do not require any changing of media by the user to operate. A DVR records television programs on a large capacity hard drive, allowing the user to record many hours of television programs. Whenever the hard drive gets full, the DVR deletes older programs to make room for newer programs.

One drawback to both VCRs and DVRs is that the entire television program is recorded. The fast-forward feature has been the user's favorite tool to skip over portions of the programs that the user is not interested in viewing. For example, users typically fast-forward through commercials because they prefer to have continuity for the program that they are watching and commercials are an interruption.

As DVR users archive programs on the DVR's hard drive, efficiently storing the programs becomes important as well as allowing users to customize their saved programs. DVRs do not have any editing capabilities to allow users to do these types of operations.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:

FIG. 1A is a block diagram illustrating a system including a service provider, digital video recorder (DVR), and a broadcaster according to an embodiment of the invention;

FIG. 1B is a block diagram illustrating a general overview of the components of a DVR according to an embodiment of the invention;

FIG. 2 illustrates a remote control used to communicate user commands according to an embodiment of the invention;

FIG. 3 is a screenshot of a menu is displayed to the user listing recorded program content stored on a storage device according to an embodiment of the invention;

FIG. 4 is a screenshot of a menu that lists information for a selected program content according to an embodiment of the invention;

FIG. 5 is a screenshot of a menu that lists information for a selected program content and an editing option according to an embodiment of the invention;

FIG. 6 is a screenshot of a video editing menu for a selected recording according to an embodiment of the invention;

FIG. 7 is a screenshot of an informational menu appearing over recorded content to inform the user that he is in a delete scenes mode and how to perform deletions according to an embodiment of the invention;

FIG. 8 is a screenshot of an editing mode with a visual progress indicator according to an embodiment of the invention;

FIG. 9 is a screenshot of an editing mode with a visual progress indicator showing a selected section according to an embodiment of the invention;

FIG. 10 is a screenshot of an editing mode with a visual progress indicator showing a deleted sections according to an embodiment of the invention;

FIG. 11 is a screenshot of a menu that asks a user to save any edits or to discard any edits according to an embodiment of the invention; and

FIG. 12 is a block diagram that illustrates a computer system upon which an embodiment may be implemented.

DETAILED DESCRIPTION

A digital video recorder (DVR) video editing system is described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.

Embodiments are described herein according to the following outline:

1.0 General Overview

2.0 Structural and Functional Description

2.1 DVR Video Storage

2.2 Video Editing User Interface and Operation

3.0 Implementation Mechanisms—Hardware Overview

4.0 Extensions and Alternatives
1.0 General Overview

There is a clear need for a system that provides the user with the ability to combine and edit the content of programs to create custom multimedia content. Additionally, the system would give the user a user interface that allows the user to easily accomplish editing tasks and saving of edited content.

An embodiment of the invention provides a user interface and video editing environment that allows a user to edit program content stored on a DVR. A visual progress indicator is displayed over the program content that the user has selected to edit.

The user moves a position indicator within a cache bar in the visual progress indicator. The cache bar indicates how much of the program content has been stored on the DVR's storage device.

The user can delete sections of the program content by marking a beginning and ending point for the section within the cache bar. The user positions the position indicator to the desired beginning point and marks the point. The user then moves the position indicator to the desired ending point and selects the delete section option. Deleted sections are highlighted in the cache bar by a color that is different from the normal color used for the cache bar.

The user can also add other recorded program content into the program content by positioning the position indicator to the point where the user wants the other program content inserted. The user then selects the other recorded program content from a list of program content stored on the storage device. The added content is highlighted in the cache bar by a color that is different from the normal color used for the cache bar.

In other aspects, the invention encompasses a computer apparatus and a computer-readable medium configured to carry out the foregoing steps.

2.0 Structural and Functional Description

2.1 DVR Video Storage

An embodiment of the invention provides a user interface and video editing system for a digital video recorder (DVR). Referring to FIG. 1A, typically, the DVR's main purpose is to record and display television program content. A user specifies television program content to record through an interface on the DVR 101. The functionality of a DVR is typified in U.S. Pat. No. 6,233,389 which is owned by the Applicant and is hereby incorporated by reference.

The DVR 101 schedules the recording of the program content using an electronic program guide (EPG) downloaded from a service provider 103. The service provider 103 assembles an EPG specifically for the user's cable, satellite, or terrestrial television service area and periodically transfers the EPG to the DVR 101.

At the appropriate time, the DVR 101 tunes to the channel that the broadcaster 102 of the desired program content is transmitting the program content on. The DVR 101 stores the recorded program content on a local storage device such as a hard drive, RAM, or other static memory device. In an alternative embodiment the DVR 101 displays content stored on an attached storage device, video device, PC, portable device, or remote storage system to the user.

An embodiment of the invention allows the user to edit program content stored on the storage device. The user has the ability to delete portions of the program content combine portions of program content and store the content on the local storage device. The DVR 101 may also have an integrated or attached recordable media device such as a DVD recorder. The user may copy the resulting edited program content to a recordable medium. A DVR with an integrated DVD recording device is described in U.S. patent application Ser. No. 10/418,646 which is owned by the Applicant and is hereby incorporated by reference.

Referring to FIG. 1B, in an embodiment, DVR 101 generally comprises a plurality of components, signified by Signal Converter 154, that are necessary to digitize an analog television signal and convert it into a digital data stream or to accept a digital data stream. DVR 101 receives broadcast signals from an antenna, from a cable TV system, satellite receiver, etc., via Input 152A. Input 152A may comprise a plurality of tuning modules that allow a plurality of signals to be received and recorded simultaneously.

Recording Module 160 records the incoming data stream by storing the digital data stream on at least one storage facility, signified by Storage 164 that is designed to retain segments of the digital data stream. A Signal Converter 154 retrieves segments of the data stream, convert the data stream into an analog signal, and then modulate the signal onto a RF carrier, via Output 152B, through which the signal is delivered to a standard TV set. Output 152B may alternatively deliver a digital signal to a TV set or video monitor. For example, DVR 101 may utilize a Digital Visual Interface port (DVI) for sending digital signals to a TV via a DVI cable.

DVR 101 also includes a Communication Interface 162, through which the DVR 101 communicates with Network 104 via Ethernet, wireless network, modem, or other communications standard. Further, DVR 101 may be integrated into a TV system such that the components described above are housed in a TV set capable of performing the functions of each component of DVR 101.

In another embodiment, DVR 101 generally comprises a plurality of components necessary to receive, record, store, transfer and playback digital data signals from a plurality of sources, such as a PC, a DVR, a service provider, or content server. DVR 101 can transfer digital data signals to another DVR or PC. DVR 101 may encode or decode digital signals via Encoder 156A and Decoder 156B into a plurality of formats for playback, storage or transfer. DVR 101 can also encrypt or decrypt digital data signals using Encryptor/Decryptor 158 for storage, transfer or playback of the digital data signals.

In one embodiment, DVR 101 communicates with Service Provider 103, which provides program guide data, graphical resources such as brand icons and pictures, service information, software programs, advertisements, and other forms of data that enable DVR 101 to operate independently of the Service Provider 103 to perform autonomous recording functions. Communication between DVR 101 and Service Provider 103 utilizes a secure distribution architecture to transfer data between the DVR 101 and the Service Provider 103 such that both the service data and the user's privacy are protected.

DVR 101 provides a user interface (UI) that allows the user to browse through the recorded program content stored on the DVR's storage device. The user can also browse through content stored on attached devices such as a camcorder, PC, VCR; camera phone, PDA, or any other portable device. Referring to FIGS. 2 and 3 a menu 301 is displayed to the user listing recorded program content 302. The user selects a particular program content by highlighting the program name 303 and pressing a button on a remote control such as remote control 201. In this example, the user presses the select button 204 to have the program content information displayed.

FIGS. 4 and 5 show a screen shot of a menu 401 that lists information 402 for the selected program content. The user moves the highlight bar 403 down the menu to select options in the menu. The user scrolls down to the edit recording option 501.

FIG. 6 shows a video editing menu 601 for the selected recording. A list of editing options 602 is displayed to the user. For example, the user has the option to delete scenes from the recorded content 603, split the recording into multiple recordings 604, and combine with other recordings 605. In an embodiment, the user can also rename a recording via the video editing menu 601.

Referring to FIGS. 7-11, when the user selects the delete scenes from recording option 603, the program content appears 701. An informational menu 702 can appear to inform the user that he is in the delete scenes mode and how to perform deletions.

The user continues on to the editing mode. In the editing mode a visual progress indicator appears 801. The visual progress indicator tells the user where he is within the program content. A visual progress indicator is described in U.S. Pat. No. 6,850,691 which is owned by the Applicant and hereby incorporated by reference.

A cache bar 804 indicates how much of a recording has been stored. If a recording has been completely recorded, then the cache bar will be filled with a single color. If any portions of the recorded content are missing, then a clear section where the portion is missing appears. A position indicator 802 graphically informs the user where he is currently viewing from within the content. The position indicator moves forward or backward along the cache bar 804 as the user navigates within the content. The user can fast forward, reverse, or frame step through the content using the remote control 201. In an alternative embodiment, the user has the ability to drag the position indicator to any position within the cache bar and drop the position indicator where he wants it to be via the remote control. This allows the user to move within the cache bar much faster than fast forward or reverse modes.

A slider 803 follows along with the position indicator 802 as the position indicator 802 progresses through the content. The slider 803 can display the playback mode that the user is in, e.g., pause, play, fast forward, reverse, the speed of fast forward or reverse, or frame stepping. An editing pop up menu 805 can prompt the user when he presses a certain key on the remote control 201. The editing menu 805 allows the user to perform operations on the content for example, setting a delete point, deleting before the current position, or deleting after the current position. The editing menu 805 displays the current time position within the content of the position indicator 802.

If the user selects a starting delete point, then the user moves the slider 803 along the visual progress indicator 801 to the point where he wants to mark off the end of the selected portion. The selected section 901 appears as a different color from the normal color of the cache bar 804. The menu 805 then shows options that the user can perform on the selected section 901, for example, undo the selection or delete the selection.

When the user selects deleting before the current position or deleting after the current position, all of the content before or after the current point is highlighted in the cache bar 804 in a color different from the normal color of the cache bar 804.

Deleted sections 1001 appear in clear, for example, to create a contrast with the normal cache bar 804 color so the user comprehends visually what sections have been deleted. The user can always undo his last edit by selecting the undo edit option in the pop-up menu 1002. When the user has completed his edits, a menu 1101 is displayed that allows the user to save his edits or discard his edits.

The deleting sections option 603 allows a user to edit commercials from his content, remove any overlap from other program content, delete the sections around a clip that he wants to retain, or to remove scenes that he may feel are offensive or inappropriate for children, for example. It further provides the user the ability to make use of the memory on the storage device more efficient by deleting portions of the content that he has already watched. This releases memory back to the DVR so the DVR can use the free memory for other recordings.

When the user deletes sections from content, the DVR removes the sections from the content which compresses the content. The overall length of the content shortens as stored on the storage device. The DVR displays the new length of time for the content in the visual progress indicator when the user plays the content.

The interaction for the other editing options of splitting the recording into multiple recordings 604, and combining with other recordings 605 is similar to what has been described above.

The split the recording into multiple recordings option 604 allows the user to split a particular content into different content streams stored on the storage device. The user marks which sections are to be saved as another recording on the storage device. The section to be split is highlighted in a color that is different form the normal cache bar color. The DVR then saves the marked sections as new recordings on the storage device. The user can have the option of naming each of the new recordings or to let the DVR name each recording. The new recordings are listed on the recordings list when the user enters the recording listing menu 301. What remains of the original content is stored on the storage device under the original recording. Alternatively, the user can have the option of deleting the original recording when he is finished splitting desired sections out of the original recording.

When the user selects the combine with other recordings option 605, the DVR can allow the user to append the recording to the beginning, end, or other position within another recording. The user can also have the option to insert other recordings into the current recording. The user moves the position indicator to where he wants to insert the new section and selects from the pop-up menu 805 the insert recording option. The DVR displays a listing of recordings stored on the storage device and the user can scroll through the listing and select a recording. The selected recording is inserted into the recording at the point where the position indicator is placed. The new section is highlighted in a color that is different from the normal cache color and also different from the color used for deleted sections.

The combination of the split the recording into multiple recordings 604 and the combine with other recordings 605 options allows the user to combine sections of recordings to create his own custom recording. The user could split a section of a recording out of a number of recordings using the split the recording into multiple recordings option 604 and piece the sections together in any combination that he wants using the combine with other recordings option 605. The DVR places the sections into the designated recording at the position where the user has indicated. The user can then save the resultant recording after he reviews the combination using the visual progress indicator 801.

3.0 Implementation Mechanisms—Hardware Overview

FIG. 12 is a block diagram that illustrates a computer system 1200 upon which an embodiment of the invention may be implemented. Computer system 1200 includes a bus 1202 or other communication mechanism for communicating information, and a processor 1204 coupled with bus 1202 for processing information. Computer system 1200 also includes a main memory 1206, such as a random access memory (“RAM”) or other dynamic storage device, coupled to bus 1202 for storing information and instructions to be executed by processor 1204. Main memory 1206 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 1204. Computer system 1200 further includes a read only memory (“ROM”) 1208 or other static storage device coupled to bus 1202 for storing static information and instructions for processor 1204. A storage device 1210, such as a magnetic disk or optical disk, is provided and coupled to bus 1202 for storing information and instructions.

Computer system 1200 may be coupled via bus 1202 to a display 1212, such as a cathode ray tube (“CRT”), for displaying information to a computer user. An input device 1214, including alphanumeric and other keys, is coupled to bus 1202 for communicating information and command selections to processor 1204. Another type of user input device is cursor control 1216, such as a mouse, trackball, stylus, or cursor direction keys for communicating direction information and command selections to processor 1204 and for controlling cursor movement on display 1212. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.

The invention is related to the use of computer system 1200 for DVR video editing. According to one embodiment of the invention, a DVR video editing system is provided by computer system 1200 in response to processor 1204 executing one or more sequences of one or more instructions contained in main memory 1206. Such instructions may be read into main memory 1206 from another computer-readable medium, such as storage device 1210. Execution of the sequences of instructions contained in main memory 1206 causes processor 1204 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.

The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor 1204 for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 1210. Volatile media includes dynamic memory, such as main memory 1206. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 1202. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.

Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.

Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to processor 1204 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 1200 can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector can receive the data carried in the infrared signal and appropriate circuitry can place the data on bus 1202. Bus 1202 carries the data to main memory 1206, from which processor 1204 retrieves and executes the instructions. The instructions received by main memory 1206 may optionally be stored on storage device 1210 either before or after execution by processor 1204.

Computer system 1200 also includes a communication interface 1218 coupled to bus 1202. Communication interface 1218 provides a two-way data communication coupling to a network link 1220 that is connected to a local network 1222. For example, communication interface 1218 may be an integrated services digital network (“ISDN”) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 1218 may be a local area network (“LAN”) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface 1218 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.

Network link 1220 typically provides data communication through one or more networks to other data devices. For example, network link 1220 may provide a connection through local network 1222 to a host computer 1224 or to data equipment operated by an Internet Service Provider (“ISP”) 1226. ISP 1226 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 1228. Local network 1222 and Internet 1228 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 1220 and through communication interface 1218, which carry the digital data to and from computer system 1200, are exemplary forms of carrier waves transporting the information.

Computer system 1200 can send messages and receive data, including program code, through the network(s), network link 1220 and communication interface 1218. In the Internet example, a server 1230 might transmit a requested code for an application program through Internet 1228, ISP 1226, local network 1222 and communication interface 1218. In accordance with the invention, one such downloaded application provides for controlling document access using centrally managed rules as described herein.

The received code may be executed by processor 1204 as it is received, and/or stored in storage device 1210, or other non-volatile storage for later execution. In this manner, computer system 1200 may obtain application code in the form of a carrier wave.

4.0 Extensions and Alternatives

In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.

displaying a cache bar to the user, the cache bar indicates the length of the video content, the cache bar is filled with a first color;

displaying a position indicator that moves within the cache bar and graphically indicates a current position within the length of the video content indicated by the cache bar;

in response to a first user command, moving the position indicator to a position along the cache bar;

displaying a time corresponding to the position of the position indicator in relation to the cache bar;

in response to a second user command, displaying a pop up menu in a vicinity of the cache bar, the menu comprising a list of selectable menu items;

in response to a third user command that indicates selecting selection of an item from the list of selectable menu items and prior to an end of playback of the video content:

marking a section of the video content which is less than an entirety of the video content, and

saving the section of the video content as a new recording; and

in response to a fourth user command selecting an item from the list of selectable menu items prior to the end of the playback of the video content, saving the section of the video content on the storage device, the section of the video content is then removed from the video content.

2. A method as recited in claim 1, wherein displaying the cache bar to the user further comprises highlighting deleted content sections on the cache bar with a second color.

3. A method as recited in claim 1, wherein displaying the cache bar to the user further comprises highlighting inserted content sections with a third color.

4. A method as recited in claim 1, wherein upon the user committing to saving any editing changes, any memory used on the storage device by any deleted content sections is released and used by the DVR.

5. A method as recited in claim 1, wherein the video content is shortened by an amount equal to any saved user-defined video content sections.

6. A method as recited in claim 1, wherein the user deletes a section of content from the video content by positioning the position indicator and designating a beginning and end of the section of content to be deleted.

7. A method as recited in claim 1, wherein, in response to the fourth user command, only the section of the video content that has been marked is removed from the video content.

a first subsystem that receives a request from a user to edit a video content;

a second subsystem that retrieves the video content from a storage device;

a third subsystem that plays back the video content to the user;

a cache bar display subsystem that displays a cache bar to the user, the cache bar indicates the length of the video content, wherein the cache bar is filled with a first color;

a fourth subsystem that displays a position indicator that moves within the cache bar and graphically indicates a current position within the length of the video content indicated by the cache bar;

a fifth subsystem that, in response to a first user command, moves the position indicator to a position along the cache bar;

a sixth subsystem that displays a time corresponding to the position of the position indicator in relation to the cache bar;

a seventh subsystem that, in response to a second user command, displays a pop up menu in a vicinity of the cache bar, the menu comprising a list of selectable menu items;

an eighth subsystem that, in response to a third user command that indicates selection of an item from the list of selectable menu items and prior to an end of playback of the video content:

marks a section of the video content which is less than an entirety of the video content, and

saving the section of the video content as a new recording; and

a ninth subsystem that, in response to a fourth user command selecting an item from the list of selectable menu items prior to the end of the playback of the video content, saves the section of the video content on the storage device, the section of the video content is then removed from the video content.

9. An apparatus as recited in claim 8, wherein the cache bar display subsystem highlights deleted content sections on the cache bar with a second color.

10. An apparatus as recited in claim 8, wherein the cache bar display subsystem highlights inserted content sections with a third color.

11. An apparatus as recited in claim 8, wherein upon the user committing to saving any editing changes, any memory used on the storage device by any deleted content sections is released and used by the DVR.

12. An apparatus as recited in claim 8, wherein the video content is shortened by an amount equal to any saved user-defined video content sections.

13. An apparatus as recited in claim 8, wherein the user deletes a section of content from the video content by positioning the position indicator and designating a beginning and end of the section of content to be deleted.

14. An apparatus as recited in claim 8, wherein, in response to the fourth user command, only the section of the video content that has been marked is removed from the video content.

15. A non-transitory computer-readable medium carrying one or more sequences of instructions for editing video content on a digital video recorder (DVR), which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:

receiving a request from a user to edit a video content;

retrieving the video content from a storage device;

playing back the video content to the user;

displaying a cache bar to the user, the cache bar indicates the length of the video content, the cache bar is filled with a first color;

displaying a position indicator that moves within the cache bar and graphically indicates a current position within the length of the video content indicated by the cache bar;

in response to a first user command, moving the position indicator to a position along the cache bar;

displaying a time corresponding to the position of the position indicator in relation to the cache bar;

in response to a second user command, displaying a pop up menu in a vicinity of the cache bar, the menu comprising a list of selectable menu items;

in response to a third user command that indicates selection of an item from the list of selectable menu items and prior to an end of playback of the video content:

marking a section of the video content which is less than an entirety of the video content, and

saving the section of the video content as a new recording; and

in response to a fourth user command selecting an item from the list of selectable menu items prior to the end of the playback of the video content, saving the section of the video content on the storage device, the section of the video content is then removed from the video content.

16. A non-transitory computer-readable medium as recited in claim 15, wherein displaying the cache bar to the user further comprises highlighting deleted content sections on the cache bar with a second color.

17. A non-transitory computer-readable medium as recited in claim 15, wherein displaying the cache bar to the user further comprises highlighting inserted content sections with a third color.

18. A non-transitory computer-readable medium as recited in claim 15, wherein upon the user committing to saving any editing changes, any memory used on the storage device by any deleted content sections is released and used by the DVR.

19. A non-transitory computer-readable medium as recited in claim 15, wherein the video content is shortened by an amount equal to any saved user-defined video content sections.

20. A non-transitory computer-readable medium as recited in claim 15, wherein the user deletes a section of content from the video content by positioning the position indicator and designating a beginning and end of the section of content to be deleted.

21. A non-transitory computer-readable medium as recited in claim 15, wherein, in response to the fourth user command, only the section of the video content that has been marked is removed from the video content.

Multimedia optical disc storing both video titles provided with AV functions and video titles with no such functions which can instantly distinguish between such kinds of titles, and a reproduction apparatus and reproduction method for such disc

Method and apparatus for recording programs formed of picture and audio data, data recording medium having programs formed of picture and audio data recorded thereon, and method and apparatus for reproducing programs having picture and audio data

Information processing apparatus, information processing method, information processing system and recording medium using an apparatus id and provided license key for authentication of each information to be processed

Method and apparatus for controlling a videotape recorder in real-time to automatically identify and selectively skip segments of a television broadcast signal during recording of the television signal

Programmable, interactive task oriented hotspot, image map, or layer hyperlinks within a multimedia program and interactive product, purchase or information page within a media player, with capabilities to purchase products right out of media programs and/ or media players

Method and apparatus for recording programs formed of picture and audio data, data recording medium having programs formed of picture and audio data recorded thereon, and method and apparatus for reproducing programs having picture and audio data