LARGE CAPACITY, RANDOM ACCESS, MULTI-SOURCE RECORDER PLAYER Background of the Present Invention
The present invention relates generally to a large capacity, random access, multi-source audio and video re¬ corder player which is capable of receiving a plurality of simultaneous input signals and which allows a user to view and/or to record selected ones of the plurality of input signals.
Currently, television viewers for the most part have little flexibility with regard to when broadcast program¬ ming may be viewed. The broadcaster's schedule is the user's schedule. The video cassette recorder (VCR) is the only device which allows a user to control the recording of programs and the time of viewing programs, by replaying recorded programs. The VCR allows the user to pre-set re¬ cording for a specific program by selecting the specific date, time, and channel that the program is broadcast. Such features allow the user to record without being present and to replay the recorded material at another time.
However, current VCRs have limited storage capacity and only single source capability and therefore do not pro¬ vide the user with a great degree of flexibility and con¬ trol over program recording. Moreover, conventional VCRs require constant attention for selection and recording of each program. Furthermore, a conventional VCR can only record one program at a time, while a typical household can receive many programs from multiple sources simulta¬ neously. It is therefore an object of the present invention to provide large capacity multiple source recording with ran¬ dom access, thus affording the user greater flexibility and control over the recording and replaying of programs.
It is a further object of the present invention to provide a large capacity recorder player which allows con¬ tinuous recording of a program with automatic erasure, such that the material recorded first is automatically erased first when the multi-source recorder player storage reaches capacity. This feature greatly reduces the need for con¬ stant user attention and provides multiple viewing options.
Another object of the present invention is to allow the user to record from multiple channels individually, serially, or simultaneously.
Another object of the present invention is to allow the user to view programs while simultaneously recording one or more other programs.
Yet another object of the present invention is to pro¬ vide a multi-source recorder player whereby the user can modify stored programs.
Another object of the present invention is to allow the user to record from multiple channels and from multiple distribution sources simultaneously.
Still another object of the present invention is to allow the recorder to adapt to the viewing habits of the user by analyzing selected criteria.
A further object of the present invention is to record material continuously to allow random retention of chosen program segments.
Yet another object of the present invention is to per¬ mit the user to mix multiple stored programs into a compos¬ ite form. Additional objects and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objects and ad¬ vantages of the invention may be realized and obtained by means of the instrumentalities and combinations particu¬ larly pointed out in the appended claims.
Summary of the Invention
To achieve the objects in accordance with the purposes of the present invention, as embodied and described herein, the audio/video recorder system of the present invention comprises input port means for receiving a plurality of transmission signals each containing program information, and storage means, coupled to the input port means, for simultaneously storing the plurality of received transmis¬ sion signals.
The present invention further comprises an audio/video recorder system comprising input port means for receiving a plurality of transmission signals each containing program information; storage processing means, coupled to the input port means, for storing the program information in the plu¬ rality of received transmission signals; and playback means, coupled to the storage means, for retrieving and playing desired program information from the stored re¬ ceived transmission signals, for playing program informa¬ tion simultaneously with the storing of program information by the storage processing means, and for playing different program information simultaneously.
The present invention further comprises an audio/video recording device for simultaneously storing information from a plurality of sources, the recorder comprising input port means for receiving a plurality of transmission sig¬ nals, and storage means, coupled to the input port means, for simultaneously storing the received transmission sig¬ nals.
The present invention additionally comprises an audio/ video routing device comprising input port means for re¬ ceiving a plurality of transmission signals; demodulator and a/d conversion means, coupled to the input port means, for transforming the received transmission signals into digital signals each corresponding to a different one of the received transmission signals; and routing means for controlling the forwarding of the digital signals. Brief Description of the Drawings The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate the presently preferred apparatus and method of the invention and, together with the general description given above and the detailed description of the preferred embodiment given below, serve to explain the principles of the invention. In the drawings:
Fig. 1 is a block diagram of a preferred embodiment of the multi-source recorder player of the present invention;
Fig. 2 is a diagram of the main menu control screen of the user control section of the multi-source recorder player;
Fig. 3 is a diagram of the setup page screen option selected from the main menu control screen;
Figs. 4A-4C are diagrams illustrating the calendar screen option selected from the main menu control screen;
Figs. 5A-5E are diagrams illustrating the program se¬ lection option screen selected from the main menu control screen; Fig. 6 is a diagram of the stored program list option screen selected from the main menu control screen;
Fig. 7 is a diagram of the routing controller option selected from the main menu control screen;
Fig. 8 is a diagram of the special effects screen op¬ tion selected from the main menu control screen;
Fig. 9 is a diagram of the mix control screen selected from the special effects screen;
Fig. 10 is a diagram of the wipe control screen se¬ lected from the special effects screen;
Fig. 11 is a diagram of the database access option se¬ lected from the main menu control screen;
Fig. 12 is a block diagram of a preferred voice con¬ trol system of the present invention;
Fig. 13 is a flowchart of a preferred method of re¬ cording of the present invention; and
Fig. 14 is a drawing of the remote control panel of the present invention.
Detailed Description of the Preferred Embodiments
Reference will now be made in detail to the construc¬ tion and operation of preferred embodiments of the present invention which are illustrated in the accompanying draw¬ ings. In those drawings, like elements and operations are designated with the same reference characters.
In the following description, the preferred embodi¬ ments described are examples of the present invention. The present invention, however, is not limited to these ex¬ amples, but may be realized in other embodiments.
Fig. 1 is a block diagram of a preferred embodiment of the multi-source recorder player 100 of the present inven¬ tion. With the multi-source recorder player 100, a plural¬ ity of programs, consisting of audio and/or video signals, may be received simultaneously from a plurality of sources. The multi-source recorder player 100 preferably has mul¬ tiple input connections, each of which may receive an input signal lOla-lOlf from air and ground based broadcast sources, cable feeds, or digital distribution sources. Further, the multi-source recorder player 100 can prefer¬ ably receive and process compressed digital signals lOlg and lOlh. Receiving compressed signals expands the signal handling and storage capacity of the multi-source recorder player 100. Once signals are input, the multi-source re¬ corder player 100 can simultaneously record, process, route, and display the plurality of input video and/or au¬ dio signals.
The multi-source recorder player 100 preferably in¬ cludes enough storage such that twenty or more hours of video with audio programming may be stored in a storage section 104. If audio only or video only programming is being retained, the storage times will increase correspond¬ ingly. The storage of audio and video only programming will utilize less storage than combined video and audio programming. The number of hours of recording which may be recorded, however, is not critical to this invention. To output the recorded programs, the multi-source recorder player 100 preferably includes a plurality of output con¬ nections including multiple rf, and digital and analog video and audio for outputting output signals 112a-112h to receiving devices, such as televisions and video recorders. Additionally, some of the output signals 112a-112h may in¬ clude control signals for recording and viewing control of external devices. These devices will be controlled by con¬ troller 105 via the corresponding output connection. Setup for the control output is achieved from the output setup section 302 of the setup page control screen 300. The multi-source recorder player 100 also preferably includes routing and compositing abilities affording a user control over the form and the destinations of the input signals lOla-lOlh. The multi-source recorder player 100 may optionally include signal analysis circuitry, prefer¬ ably in the form of a neural network analysis circuit 114, for assisting the viewer in storing and retrieving desired programs and portions of desired programs.
Users of the multi-source recorder player 100 option¬ ally have selectively filtered programming because a plu¬ rality of programs are received simultaneously, buffered in a temporary program FIFO buffer 104c, and scanned and se¬ lectively stored by the neural network analysis circuit 114. The system preferably filters the incoming program¬ ming by scanning the input programs on bus 109, overwriting undesired programs, and retaining only desired programs. Such a feature is particularly useful in this era of in¬ creased channel capacity from cable, satellite, and digital distribution channels.
Additionally, a portion of the storage section 104 of the multi-source recorder player 100 can be cycled. Memory is cycled when the multi-source recorder player 100 is set to operate a FIFO buffer for auto recording storage alloca¬ tion 104c in the storage section 104. The auto recording storage allocation FIFO buffer 104c temporarily caches pro¬ grams from a selection of channels on a FIFO basis and preferably retains certain of those programs as selected by the user, or as selected by the user's viewing patterns recognized by neural network analysis circuit 114. After user or neural network selection, the program is retained by being added to the stored program list 600. In this way data is retained by multi-source recorder-player into stor¬ age section 104. The memory is cycled because the FIFO buffer 104c causes only selected desired programming to be stored in storage section 104 and listed in the stored pro¬ gram list 600. Preferably, all unchosen programs are over¬ written by the next auto recording storage allocation FIFO pass.
Programs are not actually moved from the FIFO buffer 104c to storage section 104 but rather the reference to them is added to the stored program list 600. The user or neural network decision determines the program starting point. When the first program buffered in the storage sec¬ tion 104 has been either stored or discarded, the next pro¬ gram becomes the first program. Additionally, programs may be erased from storage section 104 and new programs added from the FIFO buffer 104c.
With auto-recording storage allocation enabled , the selection of a program for storage listing and retention can be performed some time after the programs or portions of the programs are received. For example, a user can se¬ lect a program for storage listing and retention after viewing the program, or the choice can be made while the program is being viewed. Alternatively, selection can be made automatically by the neural network analysis circuit 114.
The multi-source recorder player 100 can also prefer¬ ably access databases of compressed and non-compressed au¬ dio and video data. The multi-source recorder player 100 can access databases through one or more of the input ports. For example, controller 105 can operate a com¬ munication session with a remote computer via signal path lOlg of the multi-source recorder player 100. The remote computer can be connected via an ISDN network connection, for example. The selected remote program data can be input to the multi-source recorder player 100 and stored in the storage section 104. This transfer process can preferably occur concurrently with other activities in the multi- source recorder player 100.
In a preferred embodiment of the present invention, the multi-source recorder player 100 preferably includes input demodulator section 113. In the preferred embodi¬ ment, input demodulator section 113 includes a plurality of input demodulators 113a-113g. The number of input demodu¬ lators 113a-113g corresponds directly to the number of modulated input signals lOla-lOlg which are received by the multi-source recorder player 100 and which may be simulta¬ neously demodulated. The number of input demodulators 113a-113g may vary but there should be at least two. The input demodulators 113a-113g are preferably chosen to re¬ ceive signals from one or more of the following: a VHF an¬ tenna input, an FM antenna input, an AM antenna input, a cable television input, a Direct Broadcast Satellite input, a digital signal input, and an audio and video direct in¬ put.
The input demodulators 113a-113g demodulate signals from the following sources: VHF TV broadcasting, UHF TV broadcasting, FM radio broadcasting, AM radio broadcasting, cable television, satellite broadcasting, ISDN or other digital distribution sources and a VCR or audio recorder. Moreover, of the plurality of input demodulators 113a-113g, more than one may preferably receive the same type of sig¬ nal. Thus, for example, a plurality of cable television input signals may be received simultaneously by the multi- source recorder player 100.
Each of the plurality of input demodulators 113a-113g respectively receives an input signal lOla-lOlg comprising audio and/or video information. The signals are received via an input connector located on the rear of the multi- source recorder player 100. Input signals lOla-lOlg are demodulated separately by each of the plurality of demodu¬ lators 113a-113g. After demodulation by input demodulators 113a-113g, the audio and video signals are separately con¬ verted to digital signals by analog to digital (a/d) con¬ version section 102. Conversion section 102 preferably comprises a plurality of a/d converters 102a-102f. In the preferred embodiment shown in Fig. 1, input signals 101a- lOlf are analog signals. Therefore, there is one a/d con¬ verter 102a-102f for each simultaneously viewable and re¬ cordable analog input signal lOla-lOlf.
Once the signals are a/d converted, they are passed to digital compression section 103 for data reduction. Digi¬ tal compression section 103 preferably includes a plurality of compressors 103a-103f. There is one compressor 103a-103f for each non-compressed input signal lOla-lOlf which may be input to the multi-source recorder player 100. Compression may be performed simultaneously in each of the compressors 103a-103f. The data quantities iii the con¬ verted signals are preferably reduced by a factor of ap¬ proximately 200 for video signals, and a by factor of ap¬ proximately 8 for audio signals. Compression performed by compressors 103a-103f increases the storage capacity and the signal handling capacity of the multi-source recorder player 100. By routing and storing signals in their com¬ pressed form, the multi-source recorder player 100 can store and distribute large quantities of programming simul¬ taneously.
Once compressed in compression section 103, the data is preferably input to storage section 104 via bus 109. The storage section 104 preferably employs high speed. large capacity random access devices which may include op¬ tical and magnetic disks, RAM memory, and very high density floppy disks. The storage section 104 may also be config¬ ured to include a primary storage section 104a, and an op¬ tional storage section 104b, which may be connected to the multi-source recorder player 100 via a high speed digital connection using interface 105a. The optional storage sec¬ tion 104b may include removable media for long term storage of compressed data. With optional storage section 104b, users have control over the total amount of "on-line" stor¬ age capacity of the multi-source recorder player 100.
Alternatively, certain input signals, such as signals lOlg and lOlh, may be pre-compressed. For example, the multi-source recorder player 100 may receive digital ISDN data as input signal lOlg, which is digitally modulated and distributed in a compressed format. The input signal lOlg is passed directly to the demodulator section 113 and by¬ passes the converter section 102 and compression section 103. Multi-source recorder player 100 may also receive demodulated compressed data as input signal lOlh, which is passed directly to storage section 104.
It is desirable to permit direct storage of pre- compressed data because compressed program distribution is becoming more common. Compression is especially desired when distributing high information content signals such as high definition television (HDTV) signals and improved definition television (IDTV).
Once an input signal reaches bus 109, certain prede¬ termined criteria of the input signal may be assessed, if this option is chosen. Analysis is controlled by the user and will be discussed in greater detail below with respect to the user control section, shown and described with re¬ spect to Figs. 2-11. Such analysis is preferably performed by a neural network analysis circuit 114. The neural network analysis circuit 114 is connected by the bus 109 and the controller 105. The controller 105 selects which of the input signals lOla-lOlh are input to the neural net¬ work analysis circuit 114. With this configuration the neural network analysis circuit 114 may scan one or more of the input signals lOla-lOlh.
The neural network analysis circuit 114 is designed to "learn" the user's preferences for programs by analyzing the user's viewing patterns. Neural network analysis cir¬ cuit 114 operates recognition processing operations on the compressed data output from compressors 103a-103f and is configured to recognize program segments of interest to users of the multi-source recorder player 100. To do so, a user, by viewing program segments, automatically "teaches" the neural network analysis circuit 114 program elements which are of interest to that user.
Additionally, a user may manually assist the neural network "learning" by selecting the "interesting" button 1411 or "uninteresting" button 1412 on the remote control panel 1400, shown in Fig. 14. The "interesting" button 1411 and "uninteresting" button 1412 aid the neural network analysis circuit 114 in quickly learning the viewing inter¬ ests of a user. If the neural network analysis circuit 114 finds programing with patterns of interest to the user, the programing will be stored in storage section 104 for future playback. Thus, with the neural network analysis circuit 114, the user can maximize the storage capacity of storage section 104 by teaching the multi-source recorder player 100 which programs are of interest and which are not of interest so that only programs of interest are automati¬ cally retained for future viewing and scanning. Further, with automated recording, described below with respect to the user control section in Figs. 2-11, the neural network analysis circuit 114 can use the learned criteria to scan any number of channels and to retain any program which meets the learned criteria. This capability, combined with continuous FIFO buffering of incoming pro¬ graming in FIFO buffer 104c, allows for retention of pro¬ grams analyzed to be of interest after analysis is per¬ formed. The analysis preformed by the neural network analysis circuit is optional.
Program viewing typically involves retrieving a pro¬ gram stored in the storage section 104 and/or viewing an incoming program from sources lOla-lOlh. The user of the multi-source recorder player 100 communicates with control¬ ler 105 in order to control the multi-source recorder player 100 and to retrieve data, stored as programs, in storage section 104.
Controller 105 is a microprocessor which preferably runs a user control program and allows a user to access and control the multi-source recorder player 100. The user control section, which is described in greater detail with respect to Figs. 2-11, preferably acts similarly to the graphical interface provided by the Windows product sold by Microsoft, Inc. Selections are made via a remote control with a cursor positioning device such as a mouse or trackball.
The controller 105 generates a virtual control screen which may be placed on any screen to control of any one or more playback or recording processes. If a user wishes to view programs on several monitors simultaneously, the con¬ troller 105 can either operate multiple virtual control screens, one or more for each output monitor, or for each program window. Alternatively, the user may control all screens from one controller, portions of which may be dragged between screens, such as in an Apple Macintosh com¬ puter with multiple screens. The user control program preferably includes a stored program list, shown in Fig. 6. The stored program list contains a index of programs stored in storage section 104, and held in the memory of the con¬ troller 105. The controller 105 can thereby address a de¬ sired program and output it to decompression section 106.
Decompression section 106 preferably comprises a plu¬ rality of decompressors 106a-106d wherein one of the decompressors 106a-106d decompresses a selected stored pro¬ gram. Storage section 104 can output a plurality of pro¬ grams stored therein simultaneously, each to a respective one of decompressors 106a-106d. The number of decompressors corresponds to the number of simultaneously viewable programs. With four decompressors 106a-106d, it is possible to view four simultaneous programs at one or more of the outputs 112a-112h.
The decompressed data from decompressors 106a-106d is input to the digital crosspoint 107. The digital cross- point 107 comprises a high speed data bus with decoding logic allowing any source to be connected to any destina¬ tion. The digital crosspoint 107 routes the decompressed digital data to the mixing and effects processing section 108.
Mixing and effects processing section 108 preferably contains high speed video and audio processors which per¬ form digital signal processing. Fig. 1 shows three sepa¬ rate processors 108a-108c corresponding to three possible separate output signals simultaneously available. Proces¬ sors 108a-108c may preferably operate on one or more sig¬ nals. The mixing and effects processing section 108 allows a plurality of input signals to be added, subtracted, dis¬ solved, faded, zoomed, windowed, panned, tilted, and swept, for example. The mixing and effects processing performed in the mixing and effects processing section 108 is con¬ trolled by the user and will be discussed in greater detail below with respect to the user control section.
After data is processed in the mixing and effects pro¬ cessing section 108, the data is output to d/a converter section 110. The d/a converter section 110 preferably com¬ prises d/a converters llOa-llOc. The d/a converters 110a- 110c preferably include audio and video converters and buffering amplifiers which follow the converters and are used for driving the modulators.
After d/a converting, the data is sent to modulation section 111. The modulation section 111 preferably in¬ cludes modulators llla-lld. Although Fig. 1 shows four modulators, there is preferably one modulator for each modulated output signal.
After modulation in the modulation section 111, sig¬ nals may be output to various receivers. The multi-source recorder player 100 preferably has a plurality of outputs, shown as 112a-112h in Fig. 1. With multiple outputs 112a- 112h, different users can be playing the same program from the multi-source recorder player 100 at different receiv¬ ers. Multiple outputs also make it possible to off-load one program to a VCR, while other programs stored in stor¬ age section 104 are being scanned.
Each of outputs 112a-112h preferably includes a sepa¬ rate audio and video output. In Fig. 1, the multi-source recorder player 100 may have eight video and eight stereo audio outputs. In the preferred embodiment of the inven¬ tion shown in Fig. 1, outputs 112a-112h preferably include analog baseband modulated and rf modulated outputs. Output 112a is a rf modulated version of the same signal available at output 112d as a baseband signal, and baseband outputs 112b and 112c correspond to rf modulated outputs 112e and 112f, respectively, as shown in Fig. 1. There are two digital outputs 112g and 112h. Output 112g may be used for sending decompressed digital data, for example, to a digi¬ tal television receiver. Output 112h may be used to output modulated or non-modulated compressed program data, for example, to a remote location via common carrier channels, such as the telephone or ISDN networks, or to any receiver with decompression circuitry. The three primary outputs include external device control connectors and signals, thus allowing controller 105 to control external devices such as VCRs.
Of the three analog outputs, output 112a may be set by default in the setup page 300, shown in Fig. 3, to receive the control screens which are described below with respect to the user control section shown in Figs. 2-11. Control screens are used to set the desired functions of the multi- source recorder player 100. The remaining analog outputs, output 112b and output 112c, may be set in the setup page 300 to receive programs from storage section 104 without overlapping control screens. Output 112a may preferably be sent to a primary monitor device, and outputs 112b and 112c are preferably connected to one or more audio/video record¬ ers or secondary monitors. The control screen output may be changed by the user to output 112b or 112c.
Each video output from outputs 112a-112h is capable of outputting multiple programs simultaneously. In order to output multiple programs simultaneously, the user selects the format of the output. The output format is controlled by controller 105 and is performed in the mixing and ef¬ fects processing section 108. For example, a plurality of programs may be output on output 112a in tiled or over¬ lapping windows. Alternatively, multiple programs may be mixed into a composite image in the mixing and effects pro¬ cessing section 108 and output on a single output. The format of the output data is selected in the setup page 300, described with respect to Fig. 3.
Audio program data is handled in much the same way as video program data, except that effects, such as wipe and zoom, cannot be performed on audio data. However, the user can control the output of audio data via controller 105 in the mixing and effects processing section 108. Such con¬ trol allows the user to perform audio fades, mixing, and routing. Voice control signals, also described below with respect to the user control section, may also be mixed with the audio data and output by default to output 112a.
In another embodiment of the present invention, the plurality of outputs 112a-112c of the multi-source recorder player 100 can each be connected to multiple televisions. With multiple televisions connected, it is possible to view several input programs at one or more locations simulta¬ neously. The outputs 112a-112c of the multi-source re- corder player 100 may also be used to send incoming pro¬ grams to one or more destinations. The multi-source re¬ corder player 100 can then be used for multi-user program distribution applications. In a multi-user application, multiple controllers 105 preferably respond to and interact with several users simultaneously via multiple control screens. Moreover, in an embodiment of the present inven¬ tion which does not include storage section 104, the multi- source recorder play 100 can be used as a router and con¬ troller of the input signals and external recorders. As indicated above, the multi-source recorder player 100 is controlled by controller 105. Preferably, control¬ ler 105 is accessed by the user from the control screen output on output 112a and the remote control panel 1400 shown in Fig. 14. Figs. 2-11 are sample control screens used to control the multi-source recorder player 100. The user control section is available to the user as an option and makes it possible for a user of the multi-source re¬ corder player 100 to select program source, channel, re¬ cording time, erasure, and output settings. If the user control screens shown in Figs. 2-11 are not desired, the user can operate the multi-source recorder player 100 with buttons, not shown, as in a conventional VCR.
Fig. 2 is a diagram illustrating a main menu control screen 200. Control screen 200 will preferably appear on at least a portion of the output monitor screen of the user, which may be attached to output 112a, when the user wants to implement a function of the multi-source recorder player 100. The user can preferably choose from a plural¬ ity of options appearing on the main menu control screen 200 including program recording option 202, stored program list option 203, database access option 206, routing con¬ trol option 204, special effects option 205, and setup page option 201. User choice of the available options may be performed by an on-screen display with auditory prompts, a wired or wireless controller with a cursor positioning de¬ vice, track ball, a voice sampler, or a plurality of front panel switches.
When the user selects the setup page option 201 from the main menu control screen 200, setup page screen 300, shown in Fig. 3, appears. The setup page screen 300 allows the user a plurality of control options including selection of program erasure section 301. Program erasure section 301 allows a user to set how stored programs will be saved in the storage section 104. Preferably, programs are handled as continuous blocks of sequentially received data, for example, a one hour block of time or a ten second block of time.
Programs may be stored in storage section 104 and erased when storage capacity is reached in a first-in/ first-out (FIFO) mode, if selection of FIFO option 301a is made from.program erasure section 301. In the FIFO mode, if additional storage is required, then the oldest avail¬ able program in storage section 104 is erased and a new program is stored in this storage space. If the locking option described below is selected, and if the oldest stored program is locked, the next oldest unlocked program is preferably overwritten when recording occurs. Thus, the FIFO mode causes the oldest stored program, or oldest stored unlocked program, to be automatically erased when the storage capacity of storage section 104 is reached.
Alternatively, program erasure may be selected by choosing erasure section 301. By selecting previously viewed option 301b, only programs which have been viewed will be automatically erased. The erasure of the stored viewed programs will preferably be performed on a FIFO ba¬ sis. Thus, having selected this option, unviewed programs are automatically saved. And, alternatively, program era¬ sure may be set in program erasure section 301 to be ex¬ ecuted only at the command of the user by selecting the command erasure option 310c. In this mode, automatic era¬ sure will not occur at all, and programs will only be erased at the command of the user.
Setup page screen 300 also preferably includes output setup section 302. Output setup section 302 allows the user to connect selected outputs, for example, outputs 112a-112c shown in Fig. 1, to a desired receiving device. For example, as shown in Fig. 3, output 112a may be con¬ nected to a television 312, output 112b may be connected to a VCR 322, and output 112c may be connected to a third con¬ trol device 332. The setting determines the control proto¬ col. The user can thus send control signals for devices along with the programs to the receiving devices. This allows controller 104 to control the connected receiving device. Control signals are useful, for example, when choosing to download programs to remote video recorders. With control signals as well as video and audio signals available at each output, it is possible to automate the offloading of programs to an external VCR or other record¬ ing device. Output setup section 302 makes it possible to connect and control many different video and audio record¬ ers.
Setup page screen 300 also preferably includes set re¬ cording criteria section 303. This allows the user to con¬ trol the neural network analysis circuit 114. With selec¬ tion of monitor viewer option 303a, the neural network analysis circuit 114 will learn desired programs from the viewing patterns of the user. With watch selection of but¬ tons option 303b, the neural network analysis circuit 114 will be trained from "interesting" button 1411 and "unin¬ teresting" button 1412 on the control panel 1400. With off selection option 303c, the neural network analysis network 114 will be disabled.
The auto recording storage allocation section 305 of setup page 300 allows the user to allocate a fixed portion of storage 104 for continuous FIFO buffering, as described above. The portion of storage allocated is designated as a percentage of all storage available in storage section 104, and as shown in bar 305a. The storage allocation section 305 also preferably displays the allocation numerically at 305b.
Setup page screen 300 also preferably includes display mode section 304. The display mode section 304 allows out¬ puts 112a-112c to display multiple programs on one screen and also to display identical programs in different ways. If window option 304a is selected, the user can cause the output of selected ones of the outputs 112a-112c to be win¬ dowed. That is, the user can send a signal from one of the outputs 112a-112h to a receiver such that it appears as a window in another signal output to that receiver. Alterna¬ tively, the user can choose tiled windows, where the output appears as a series of equally sized windows, by selection of the tile window option 304b. Finally, the user can simply choose the full screen mode with the full screen option 304c.
As an example, after making a selection, output 112a can preferably output a single program on a full screen in a non-windowed mode. Output 112b could output the same program in a window located at the top left of the screen of the connected output device with selection of the window option 304a for output 112b. Output 112c could output four programs in four tiled, adjoining windows if the tile win¬ dow option 304b is selected for this output.
The overlapping windows selected by window option 304a and the tiled windows selected by tile window option 304b can preferably be dynamically moved with the aid of a menu bar. Location of such a menu bar and control of the tiled or overlapping windows is preferably accomplished by the mixer and effects processing section 108. If the user ac¬ tivates the display mode option 304, the mixer and effects processing section 108 causes an overlap of a control win¬ dow on top of the displayed program screen.
After the user selects the setup criteria from the setup page screen 300, the multi-source recorder player 100 can be set to record. To record desired programs, the user selects the program recording option 202 from the main menu control screen 200 shown in Fig. 2. After selection of program recording option 202, a Gregorian calendar screen 400, illustrated in Figs. 4A-4C, appears on the screen. The calendar screen 400 is used to set the record-time of a desired program.
The Gregorian calendar screen 400 includes a month screen 401 shown in Fig. 4A. The month screen 401 includes each month of the year. After the user selects the desired month, such as June, as shown in Fig. 4A, the date screen
402, shown in Fig. 4B, appears. The user then selects the desired date, shown in Fig. 4B as June 5. The time screen
403, shown in Fig. 4C, then appears and the user selects the time when the multi-source recorder player 100 should be set to record.
The series of calendar screens shown in Figs. 4A-4C, like the other control screens, is generated on screen by controller 105 and is mixed at the crosspoint 107 and mixer and effects processing section 108. The calendar is dis¬ played on the control screen which preferably appears as a floating window on the selected output. Controller 105 retains data entered into the calendar program, from screens 4A-4C, in RAM memory for future control of the multi-source recorder player 100. After the user sets the time of recording, he or she preferably next selects what is to be recorded. Figs. 5A- 5E show the control screens which appear on the output screen for selection of the program to be recorded.
Fig. 5A shows the enter channel screen 501 which prompts the user to enter the channel of the program to be recorded. Upon entering the channel, the user is prompted from source screen 502, shown in Fig. 5B, to enter the source from which the multi-source recorder player 100 should record the desired program. The user can select from, for example, cable, VHF antenna, UHF antenna, FM ra¬ dio, AM radio, satellite, DBS, or ISDN digital from source screen 502. Next, frequency and title screen 507 appears as shown in Fig. 5C. From this screen, the user can op¬ tionally enter the program title into the title section 503. Although the source and channel comprise sufficient data for specifying a specific program to be recorded, the user may optionally enter the program title at this time.
Following the optional entry of the program name, the user can preferably enter the recording frequency from the recording frequency section 504, shown in Fig. 5D. The user can select from, for example, hourly, daily, weekly, bi-weekly, monthly, or other recording frequencies from frequency section 504. For example, if the user selects daily recording, the multi-source recorder player 100 will record the program which airs at the time and date selected in Figs. 4A-4C every day from the selected channel until it is programmed to stop recording. The "other" recording option will allow for recording special events on specific dates, for example. Alternatively, if program codes representing the pro¬ gram, the source, or the recording time are available, then these codes could be entered instead of entering the pro¬ gram name, data, time, etc. Program codes are numbers which are associated with a particular program. If program codes are available, for example, in the local newspaper and TV guide, the user can set the multi-source recorder player 100 for recording by entering only these codes in the program recording option 202. This makes programming much easier. If program codes are available, then a dif¬ ferent version of the user interface will be available to the user.
After all required selections are made from screens 5A-5D, start screen 507 appears as shown in Fig. 5E. The multi-source recorder player 100 is set to record by selec¬ tion of the OK option 505. Alternatively, the record op¬ eration can be aborted by pressing cancel option 506.
Recorded programs are stored in storage section 104. A list of the programs stored and set for storing in stor¬ age section 104 may be viewed by choosing the stored pro¬ gram list option 203 from the main user control menu 200 shown in Fig. 2. When this option is selected, a stored program list screen 600 is output by controller 105 to out¬ put 112a.
The stored program list screen 600, shown in Fig. 6, may preferably include a list of all stored programs. This list may also include information such as title, source, channel, time of recording, the length of the program, and the date the program was recorded or is set to be recorded. The user may optionally enter any notes to be associated with the program when the stored program list 600 is out¬ put. The stored program list 600 may also preferably indi¬ cate whether the listed program has been recorded or has previously been viewed, and may indicate how much, if any, storage space remains in storage section 104.
The stored program list 600 is linked to the program data in storage section 104. If data is removed from the storage section, then the stored program list 600 is up¬ dated to reflect this removal. If compressed data is rein¬ stalled, for example when a removable media device is rein¬ stalled, then the stored program list 600 will be updated by controller 105. The user may preferably update the stored program list 600. The user has a keypad on the con¬ trol panel for text entry into the multi-source recorder player 100.
Alternatively, if titles or other information for pro¬ grams are broadcast with the program or from a different source, then the controller 105 of the multi-source recorder-player 100 will automatically update the stored program list 600 from the broadcast information if this information is stored in storage section 104. The user thus only needs to input a minimum of information to setup a recording sequence. If more detailed notes and title information are desired, then they can be input by the user at any time, from the keypad when selecting the appropriate entry in the stored program list 600.
When the stored program list 600 is displayed, the user may lock certain of the listed stored programs. Lock¬ ing a program involves selecting a program from the list and marking it as locked. A locked program will not be erased regardless of the program storage mode selected in the program storage option 301 selected in setup page 300, shown in Fig. 3. When inadequate unlocked storage in stor¬ age section 104 is reached, the multi-source recorder player 100 preferably alerts the user and presents a list of locked stored programs, preferably in a format similar to stored program list 600, which are causing the storage capacity condition. The user must unlock the necessary amount of storage in storage section 104 before further recording requests may be accommodated.
The user can also set a filter on the stored program list, for example, to restrict the list of programs output on the stored program list 600 to those of interest to a single viewer. If there are two users of the multi-source recorder player 100, it is possible for each to view only his or her own listings and not those of the other person. This can be performed by incorporating a user password. Users of the multi-source recorder player 100 who do not know available passwords will be unable to access programs which are password-protected. The multi-source recorder player 100 can preferably handle a plurality of passwords and support multiple stored program lists for multiple us¬ ers.
The multi-source recorder player 100, when operated as a multi-user device, will ask the user his or her password before making any menus or screens available. Once the password is received the multi-source recorder player 100 will interface with the user in the same way as described above, the only difference being that the listings of pro¬ grams retained for this user will not include any listings for other users unless they are considered "shared" pro¬ grams. Secondly, the neural network analysis circuit 114 will perform analysis for each user individually. The re¬ sulting analysis determining desired programs will thus be appropriate for each user.
In addition to viewing a list of stored programs, the user may also preferably select the routing controller op¬ tion 204 shown on the main menu control screen 200 shown in Fig. 2. If the user chooses the routing controller option 204, the routing controller screen 700, shown in Fig. 7, is output from controller 105. When the routing controller screen 700 appears, the user first selects the output to which the signals are to be sent. The user selects, for example, one of outputs 112a-112c from the output selection 701. Output selection is not limited to outputs 112a-112c, but may be any of the outputs 112a-112h of the multi-source recorder player 100. The user then selects from the signal selection section 702 the types of signals which will be output by the output selected from output selection 701.
The routing controller option may be used to display signals without prior storage. With this option, the user sends incoming video and/or audio signals to the outputs, thus setting up connections between compression section 103 and decompression section 106, thereby bypassing the stor¬ age section 104.
In addition to routing the signals in the multi-source recorder player 100, the user can form composite images to be sent to the outputs. Composite images may be formed when the special effects option 205 is selected from the main menu control screen 200, shown in Fig. 2. With spe¬ cial effects screen 800, shown in Fig. 8, the user can se¬ lect special video and audio effects. In a preferred em¬ bodiment of the present invention, composite images and programs can be formed since the multi-source recorder player 100 can output a plurality of programs on each of the outputs 112a-112h. This is useful, for example, for making original material from a collection of audio and video sources.
Special effects screen 800 includes effects section 801. With the effects section 801, the user can wipe or mix input signals. Particularly, mix option 802 may be selected which causes mix control screen to appear. Mix control screen 900 allows a user to set the levels for video and/or audio signals. To operate the mix control screen 900 the user selects the program of choice by posi¬ tioning the cursor and clicking on its picture. Once se¬ lected the user moves the slider 901a. This controls the mixing and effects processing section 108 causing a cor¬ responding change at output section 112. This in turn al¬ lows the user to combine images and sounds dynamically. Thus, production of original material from the material stored in storage section 104 is possible with the multi- source recorder player 100. By selecting one channel from channel selectors 902, the mixing and effects processing section 108 can be separately set for each channel, thus allowing mixing and panning of audio and video.
From special effects screen 800, the user can also preferably select wipe option 803, which will cause wipe control screen 1000, shown in Fig. 10, to appear. The wipe control screen 1000 displays a list of available effects in wipe effect section 1010. The individual wipe effects lOlOa-lOlOf allow the user to perform transitions between individual programs and between programs and backgrounds. The user preferably selects a desired wipe effect by choos¬ ing one of the wipe effect options lOlOa-lOlOf.
The wipe control section 1011 allows the user to choose which programs and the portions of selected programs that will be wiped. First, the user selects which program or programs will be wiped from program selection option 1014. The user selects the desired program by moving the cursor over the program window and pressing select to set the controller 105 for effecting that program. Mix control screen 900 represents a virtual mix controller. Slider 901a and 901b allow for setting levels of audio or video signals thus controlling the mixing and effects process. The user selects which program is being controlled by clicking on its picture, and then which of its channels are being effected by selecting one or more of the buttons for audio left or right 902a and 902b and video 902c.
If a particular wiping effect requires two programs, the user selects the first by selecting select program 1 option 1014a and then selects the second program by select¬ ing select program 2 option 1014b. Program selections can be revised at any time simply by clicking on another pro¬ gram window.
The user can preferably choose to wipe between the two selected programs by selecting "wipe between programs" op¬ tion 1013b from the wiping mix section 1013. Alterna¬ tively, the user can preferably choose to wipe between the program selected from select program 1 option 1014a and a background color by selecting "wipe to color" option 1013a. Selection of the "wipe to color" option will cause a screen with a list of colors to appear from which the user can preferably choose the background color.
The user preferably selects the portion of the se¬ lected program or programs to be wiped from frame section 1012. Program times are typically displayed in groups of frames each with a frame number. The beginning of the wipe is selected by entering the appropriate wipe start in the wipe start section 1012a. The end of the wipe may be indi¬ cated by entering the frame number where the wipe is to terminate in wipe end section 1012b.
Alternatively, if frame numbers are not known, the user can preferably mark the starting and ending times of wiping by using graphical display section 1015. The begin¬ ning point of the wipe is displayed as a graphical image in the graphical display section 1015a. The point where the wipe is to end is displayed as a graphical image in the graphical display section 1015b. This is very much like selecting points on a visual based editor such as from the Video F/X video editing system which runs on Macintosh com¬ puters sold by Apple Computers, Inc.
In addition to special effects, the user may also se¬ lect database access from the main menu control screen 200 by choosing database option 206, shown in Fig. 2. Database access screen 1100, shown in Fig. 11, is displayed by con¬ troller 105 as a result of the user selecting this option. The user can employ screen 1100 to search for desired programming by entering a search query. The user enters textual information via a keyboard which is preferably part of the controller 105. Searching is controlled by a data¬ base server working in conjunction with the multi-source recorder player 100. If the database server has a larger number of fields then the lookup screen may differ from that shown in Fig. 11. For example, the screen may contain more fields with labels or it may contain a series of ques¬ tions to be answered for assisting the search.
The results of the search are output in output section 1120 as a series of pictures. The picture displayed for each result will be provided by the database server. Once downloaded from the database server to the multi-source recorder player 100, the programs found as a result of the search will be handled in the same way as other programs which are available from the stored program list 600 shown in Fig. 6.
User interaction, as described above with respect to Figs. 2-11, may preferably be accomplished by keys, or by vocalizing a command to a voice interactive control system. Key commands involve using a mouse and associated software. The user directs a pointer to a graphic display and clicks on desired options in the programming process. The voice interactive control system senses voiced commands and pro¬ duces corresponding resulting control signals and re¬ sponses. Both mouse and voice control can operate the user options shown on main menu control screen 200, shown in Fig. 2.
Fig. 12 is a block diagram of the voice control system 1200 of the present invention. The voice control system 1200 includes vocal interface 1201. Vocal interface 1201 may preferably be a microphone which receives and amplifies voice commands from the user. The voice signals amplified by vocal interface 1201 are input to analog to digital con¬ verter 1202. The converted signal is output to waveform monitor and pattern comparator 1203.
Voice recognition and control circuitry is currently commercially available and is preferably interfaced to con¬ trol the multi-source recorder player 100. Voice recogni¬ tion controllers allow a user to voice requests rather than pressing keystrokes and selecting menu options with a cur¬ sor controller. The combination of vocal interface 1201, a/d converter 1202, and waveform monitor and pattern com¬ parator 1203 convert sound pressure into signals which con¬ trol the recording and other processing performed by the multi-source recorder player 100.
In addition, a voice response output may be mixed with program data stored in program storage 104 in mixing and effects section 108, and output to the audio output of one of outputs 112a-112h of the multi-source recorder player 100. When using the voice control system, the user may preferably voice desired selections, hear previously stored voice segments, and hear synthesized voice messages.
By using the user controls described with respect to Figs. 2-11, a program or plurality of programs may be for¬ matted and recorded. In order to perform recording, the user preferably follows the steps shown in the flowchart of Fig. 13.
The user first selects the record program mode (step 1310) to specify what to record and how often to record it. Once the decision is made, a Gregorian calendar is dis¬ played and the user chooses the month (step 1320), day (step 1330) and then the time (step 1340) to record. The selection from the calendars corresponds with the calendar screens shown in Figs. 4A-4C.
The user next selects the program channel to be re¬ corded (step 1350) and the source connection for the pro¬ gram (step 1360). In the source connection step 1360, the user selects the type of input signal which is to be re¬ corded so that it is input correctly to the demodulator section 101 of the multi-source recorder player 100.
Next, the user provides the name of the program to be recorded (step 1370) in either textual or voiced format. The user then enters the frequency with which the program is to be recorded (step 1380). The program which was pro¬ grammed to be recorded is recorded until the user indicates otherwise (step 1390).
Fig. 14 shows a remote control panel 1400 which can be for multi-source recorder player 100. While viewing live video, the user can press the record button on a control panel 1400 and immediate recording will take place. If the auto recording storage allocation section 305, shown in Fig. 3, is set, the material recorded can precede the record request of the user. In this way, an entire program can be retained when the choice to record the program is made after viewing it. The chosen program is then retained from the cycling FIFO. The user then selects the specific signals to be out¬ put to the selected output from select output section 703. After this selection, VHF Channel 2, VHF Channel 4, and Cable Channel 21 may be simultaneously output to output 112a, for example. Once selected, sliding the controllers 901a or 901b will set a level or balance for the chosen channels of audio and or video. If two programs are being effected then the user selects twice, once for each program before making the adjustments.
If a program is not currently on screen the user can select it for the program list. Once selecting the program the user may start the program by pressing the play button 1405c on the remote control panel 1400.
Remote control panel 1400 allows the user to position the cursor with section 1408. Once the cursor is posi¬ tioned over a chosen program and select button 1408a is pressed, the user may use playback control section 1405 or routing section 1401-1403 to control the program.
When names and textual input are required, panel 1407 is used. The "interesting" and "uninteresting" buttons 1411 and 1412 are used to help teach the neural network analysis circuit 114 the user's preferences. The program list button 1403b is used to display the program list on the control monitor. The source and output buttons 1401 and 1402 are used in conjunction with the connect button 1403a to arrange program routing.
Accordingly, the multi-source recorder player of the present invention can receive a plurality of different types of input signals. The user has a great deal of con¬ trol over the signals that are input and can output the signals to one or more receivers. Input signals may be stored in a storage section for later playback or manipula¬ tion. Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specifi¬ cation and practice of the invention disclosed herein. It is intended that the specification and examples be consid¬ ered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.