EP0594316B1 - Digital video editor having lost video frame protection - Google Patents

Digital video editor having lost video frame protection Download PDF

Info

Publication number
EP0594316B1
EP0594316B1 EP93307807A EP93307807A EP0594316B1 EP 0594316 B1 EP0594316 B1 EP 0594316B1 EP 93307807 A EP93307807 A EP 93307807A EP 93307807 A EP93307807 A EP 93307807A EP 0594316 B1 EP0594316 B1 EP 0594316B1
Authority
EP
European Patent Office
Prior art keywords
frame
video information
digital
frames
frame number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP93307807A
Other languages
German (de)
French (fr)
Other versions
EP0594316A2 (en
EP0594316A3 (en
Inventor
Peter Schnorf
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Information Systems Inc
Original Assignee
Canon Information Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Information Systems Inc filed Critical Canon Information Systems Inc
Publication of EP0594316A2 publication Critical patent/EP0594316A2/en
Publication of EP0594316A3 publication Critical patent/EP0594316A3/en
Application granted granted Critical
Publication of EP0594316B1 publication Critical patent/EP0594316B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/022Electronic editing of analogue information signals, e.g. audio or video signals
    • G11B27/029Insert-editing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2587Laser Discs; Optical disc using analog recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/41Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/022Electronic editing of analogue information signals, e.g. audio or video signals
    • G11B27/024Electronic editing of analogue information signals, e.g. audio or video signals on tapes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/022Electronic editing of analogue information signals, e.g. audio or video signals
    • G11B27/026Electronic editing of analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/022Electronic editing of analogue information signals, e.g. audio or video signals
    • G11B27/028Electronic editing of analogue information signals, e.g. audio or video signals with computer assistance
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/36Monitoring, i.e. supervising the progress of recording or reproducing

Definitions

  • the present invention concerns a digital video editor which converts frames of analog video information into corresponding frames of digital video information in real time and which detects and fills in lost frames of video information by re-reading the original analog information in additional passes.
  • Such an arrangement is desirable for several reasons. First, it eliminates the need for customized analog video editing machinery and instead allows a general purpose programmable computer to perform editing.
  • the editing program on such a computer may be changed at will thereby permitting flexibility and facilitating change when new advances in editing technology are made.
  • digital editing offers a simpler interaction interface and permits relatively unskilled workers to produce sophisticated results.
  • skill grows a more complete set of editing effects may be generated through use of computer graphics, digital image processing and text editing techniques.
  • DE-A-2945615 discloses a digital image processing system wherein an analog video signal is converted to a series of digital images, and wherein each frame is identified by image numbers recorded on a synchronised time track running in parallel to the analog video signal track.
  • Compression techniques such as JPEG ("joint photographic expert group”), MPEG ("motion picture expert group”) and CCITT H.261 ("International Telegraph and Telephone Consultative Committee") have been proposed to reduce the bandwidth requirements to acceptable levels, but other factors can still cause video frames to be lost.
  • known compression techniques are not "loss-less". That is, known compression techniques introduce errors when the compressed data are uncompressed. If the final video is to be of the same quality as the original video, compression cannot be so great as to introduce errors that are perceived as visual degradation in image quality. This limits the amount of bandwidth reduction obtainable from compression, and a fine balance must be struck between bandwidth reduction from compression and the bandwidth capabilities of the digital computing machinery.
  • Today's high-end PCs and workstations have barely the bandwidth capabilities required to handle NTSC-type data, and HDTV processing put those capabilities into jeopardy.
  • Multitasking Another factor contributing to the loss of video frames is multitasking.
  • Current operating systems on workstations as well as next generation operating systems on personal computing equipment have multitasking capabilities which permit several tasks to run concurrently. Those several tasks compete in real-time for shared resources of the computing equipment, such as an internal computing bus, the CPU and the hard disk. Multitasking, however, places further bandwidth demands on the digital equipment, as well as raises the possibility that the CPU is busy servicing one task when a video frame is ready to be stored. If the CPU is not able to store the video frame before the next video frame becomes available, that video frame will be ignored and lost.
  • Lost frames of digital video information are not acceptable for many reasons. Lost frames can make it impossible to obtain high quality cuts, merges, compositions, special effects, etc. For example, when creating a slow motion special effect, missing frames cause large jumps and unevenness that are visually unacceptable. Further, errors caused by missing frames accumulate over longer clips. Even if only three frames are lost per minute, an entire second of material is lost in a ten minute sequence. Because sound is generally handled on a separate channel from video, such losses will quickly de-synchronize sound and video.
  • some compression techniques such as MPEG do not fully encode each video frame independently, but rather fully encode only some reference frames. Frames between the reference frames are encoded as the difference or change from the reference frames. If a reference frame is lost, it is impossible to re-create the original image for frames which depend on the lost reference frame.
  • the analog video equipment plays out the analog video signal, and the digital video equipment digitizes and stores as many frames of video information as possible. While the analog video equipment is playing out the video signal, it generates frame number information which is transmitted to the digital equipment over a frame number interface that is distinct from the video interface.
  • the digital video equipment inspects the frame number information to determine if any frames have been lost and to determine the identity of those frames. If any frames have been lost, then a second pass is performed in which the analog video equipment is repositioned using the frame number information from the frame number interface and the missing frames are played out. If frames are still missing after the second pass, then additional passes are performed until all frames have been acquired in digital form.
  • the frame number information is not part of the video signal, and is supplied on a frame number interface that is separate from the video interface, it is possible that the video information on the video interface is not synchronized with the frame number information on the frame number interface. This means that the frame on the video interface is different from the frame indicated by the frame number information. Accordingly, it is not always possible to ensure that missing frames are properly detected, or to ensure that properly detected missing frames are supplied with the needed video data.
  • an apparatus for storing frames of digital video information from corresponding frames of analog video information comprising:
  • a method of storing frames of digital video information from corresponding frames of analog video information comprising:
  • Figure 1 is a functional block diagram showing,a digital video editing apparatus according to an embodiment of the invention.
  • an original video signal 1 is provided by conventional means such as a camcorder, a VCR or a laser disc player to a frame grabber/digitizer 2.
  • the frame grabber/digitizer captures analog frames of video information, and converts the analog information into full color digital information.
  • the digital information is optionally compressed by compressor 4 prior to storage. Any compression technique, e.g., conventional JPEG, MPEG or H.261 techniques may be used.
  • compressor 4 is realized in hardware but software realizations are possible, too.
  • the compressed or uncompressed digital video information is fed for storage on hard disk 5 or on any other secondary storage medium such as a tape drive, a database system or an optical disk.
  • the digital video information can also be sent over a network for remote processing or display.
  • the compressed digital video information is decompressed by decompressor 6 for digital video editing by processor 7.
  • decompression is not necessary or can be done only partially for simple editing functions such as adding two frames together.
  • Digital video editing may take the form of a variety of video editing techniques, such as the insertion of computer graphics; image processing such as color modification, aspect ratio modification, silhouetting, etc.; text processing; frame merging; or other techniques.
  • the edited digital signal is returned to compressor 4 for optional recompression and for restorage.
  • the edited video signal Upon completion of desired video editing by processor 7, the edited video signal is fed to hard disk 5 (or the aforementioned secondary storage media). From hard disk 5, or from the secondary storage media, the edited video signal can be sent to decompressor 6 (if necessary), and then for conversion to an analog signal by D-to-A converter 9. D-to-A converter 9 feeds the edited analog video signal 10 for storage on any of a variety of analog media such as a VCR, a laser disc recorder, or the like.
  • FIG 2 is a representational view of a sequence of video frames.
  • each of video frames 10 includes a visible video portion 11, as well as a non-visible video portion such as regions 12a and 12b at the top and bottom, respectively, of each frame.
  • the non-visible video information includes frame number information such as that illustrated diagrammatically at 14. It is to be understood that the frame number information 14 is not ordinarily carried in human-readable form, but rather is encoded in machine readable form. Encoding techniques as defined by SMPTE/EBU are suitable, such as the vertical interval time code (VITC) which is encoded in the video signal itself typically between lines 10 and 20 of a frame.
  • VITC vertical interval time code
  • the frame number information is depicted as if it were already decoded by a decoder, as will be described hereinafter.
  • the frame number depicted here is in the form HH:MM:SS:FF where HH indicates the hour, MM indicates the minute, SS indicates the seconds and FF indicates the frame number (which ranges from 0 through 29), all measured from an arbitrary reference point such as the beginning of a video sequence.
  • the precise method by which the frame number is carried is unimportant so long as the frame number is carried in the video frame itself, preferably in non-visible portions of the frame.
  • FIG 3 is a detailed block diagram of a first embodiment of the invention which operates in accordance with the functional block diagram shown in Figure 1.
  • the embodiment shown in Figure 3 includes many components which are found in a typical personal computing system, such as a computer bus 21 to which is connected a CPU 22 for executing programmable instruction steps by which digital video editing is performed.
  • a network interface 23a which permits the Figure 3 digital video editor to operate in a local area network via network access 23b, a main memory 24 such as RAM in which program steps for execution by CPU 22 as well as program data are stored, a disk 25 which stores digital video information processed by the digital video editor as well as other application programs and data such as word processing programs and the like, a keyboard 26, a pointing device 28 such as a computer mouse or an electronic pen which permit operator control of the digital video editor, a buffer memory 27 which holds values for each pixel appearing on attached monitor 27a and which is constantly read out to monitor 27a to permit viewing of video information, computer graphics and text, and video decompression hardware 29 which decompresses compressed digital video information and feeds it to D-to-A converter 30 for conversion into an analog video signal.
  • main memory 24 such as RAM in which program steps for execution by CPU 22 as well as program data are stored
  • a disk 25 which stores digital video information processed by the digital video editor as well as other application programs and data such as word processing programs and the like
  • the Figure 3 digital video editor includes a frame grabber/digitizer 31 which captures frames of analog video information, digitizes them, and provides the digital video information onto computer bus 21 together with a frame number extracted from a portion of the video information.
  • the frame grabber/digitizer 31 includes a color separator and A-to-D converter 32 which separates the colors in the analog video signal into RGB components and converts each of the R, G and B components into digital pixel values.
  • the converted digital video signal is stored in a temporary video memory 34.
  • This temporary video memory 34 can have different purposes. It can serve as a buffer between the digitizer and the computer bus.
  • conventional video frame compressors process a frame in square blocks that span more than one line and thus need to access several lines of video data simultaneously.
  • the size of the memory can range between the number of lines corresponding to the height of a compression block to twice the full video frame size which will allow double buffering where one half is read by the compressor or the bus while the other half is filled with the next frame.
  • a frame number extractor 35 extracts the region of a frame that contains the encoded frame number, typically a few lines of the invisible portion of a frame.
  • the frame region is provided onto the computer bus 21 in synchronization with the digital video information which may be compressed by video compression hardware 36 if desired.
  • CPU 22 decodes the frame region provided by extractor 35 to obtain a frame number in computer readable form.
  • Figure 4 is a flow diagram showing an operational mode of the digital video editor shown in Figure 3. The process steps depicted in Figure 4 are executed by CPU 22 in accordance with a stored program which is contained most conveniently on disk 25 and executed out of RAM 24.
  • step S401 the analog video source is activated so as to provide analog video frame information to color separator and A-to-D converter 32.
  • the activation of the analog source may be manual or under automatic control of CPU 22.
  • frames of analog video information as possible are digitized by frame grabber/digitizer 31 and stored in compressed or uncompressed form, for example, on disk 25 or to network storage via network interface 23a.
  • this digitization is performed in real time, that is, at 30 frames per second in the case of NTSC standard video signals.
  • frame number extractor 35 derives the frame number region from the non-visible portion of each frame.
  • the frame number region is provided onto computer bus 21 in synchronization with the digital video frame information and is decoded and stored by CPU 22 in correspondence with that information onto disk 25.
  • Step S402 forms a list of missing frames from the frame numbers extracted by extractor 35 and decoded by CPU 22. More particularly, CPU 22 inspects each frame number decoded from frame regions provided onto computer bus 21 to ensure that the frame numbers represent a complete sequence of video frames. Thus, referring to Figure 2, CPU 22 determines that the frame number for frame 15 ("1:30:43:00") indicates that frame 15 is the next succeeding frame after frame 16 because the frame number for frame 16 ("1:30:42:29”) differs by only a single frame for the frame number from frame 15. Thus, CPU 22 is able to determine that there are no missing frames between frames 15 and 16.
  • CPU 22 determines that frame 18 has been missed since the frame number for frame 17 ("1:30:43:02") indicates that frame 17 is not the next succeeding frame from frame 15. Thus, CPU 22 determines that there is a missing frame between frames 15 and 17 and inserts the frame number of missing frame 18 (here frame number "1:30:43:01") into the missing frame list.
  • step S403 CPU 22 determines whether the missing frame list is empty, indicating that there are no missing frames. If the missing frame list is empty, then processing advances to step S404 where digital video editing is performed in accordance with the digital video editing capabilities provided by CPU 22. When digital video editing is complete, the edited digital signal is output via digital video decompression hardware 29 if necessary and D-to-A converter 30 for permanent storage on analog video equipment.
  • step S403 determines that the missing frame list is not empty, meaning that there are missing frames, then steps S406 through S414 are performed so as to supply the missing frames of digital information.
  • step S406 the analog video source is repositioned to a point which precedes the first missing frame, and playback of the analog video source is commenced.
  • Repositioning and playback can be started either manually or by computer control through CPU 22.
  • repositioning the analog video source may be facilitated by sorting the missing frame list so that the missing frames are listed in ascending order. While sorting is not absolutely necessary, it is nevertheless preferable since it permits sequential processing of each frame in the list.
  • step S407 frame grabber/digitizer 31 is activated, thereby providing video frame data, optionally compressed via compressor 36, onto computer bus 21.
  • frame regions containing frame numbers for the video frame data are provided on the bus via frame number extractor 35.
  • step S408 the current frame number is read from frame number extractor 35.
  • the extracted frame number is decoded and then compared with the entries in the missing frame list (step S409), and if a match is found (step S410) flow advances to step S411 where the corresponding video frame information is stored onto disk 25.
  • the missing frame list is updated in step S412 so as to remove the newly-found frame.
  • Step S413 determines if the missing frame list has been emptied; if so, flow returns to step S404 where digital video editing is performed.
  • step S410 determines whether the current frame number exceeds all the missing frame numbers in the missing frame list. If the current frame number exceeds the frame numbers in the missing frame list, then the analog video source has progressed too far and flow returns to step S406 where the analog video source is repositioned. On the other hand, if the current frame number does not exceed the frame numbers in the missing frame list, then there is no need to reposition the analog video source signal and flow returns only to step S408 where the frame number for the next digitized frame is read out and processed as described above.
  • the above-described embodiment and corresponding processing is effective to ensure that missing frames are detected accurately, and is effective to ensure that when read on a subsequent pass each frame is identified accurately and the proper missing frame is supplied.
  • FIG. 5 is a block diagram illustrating a second embodiment of the invention which guarantees that missing frames will be supplied. Elements similar to those shown in Figure 3 have been given similar reference numerals and detailed descriptions thereof are omitted.
  • an original analog video signal is provided to frame color separator and A-to-D converter 232 disposed inside frame grabber/digitizer 231.
  • Color separator and A-to-D converter 232 provides the digitized frame information to temporary video frame memory 234 via switch 239 which together form a freezable video frame memory.
  • Switch 239 is operated under control of controller 240 as described in more detail hereinbelow.
  • the digitized video information is optionally provided to video compression hardware 236 which in turn provides compressed digital video information onto computer bus 221.
  • Frame number extractor 237 extracts the frame region containing the encoded frame number from the temporary video frame memory 234 each time a new frame has been put there. At the same time extractor 237 increments counter 243. This means counter 243 counts the number of frames going by since it has been reset. Counter 243 is reset to 0 by frame extractor 237 when CPU 222 issues a special read and reset instruction to read the frame number region from frame extractor 237 via computer bus 221 and simultaneously to reset counter 243. The frame number region can also be read by a normal read instruction without resetting the counter 243.
  • CPU 222 decodes the frame region received after a read and reset or a read instruction from extractor 237 to obtain the current frame number.
  • Counter 242 is loaded by the CPU 222 via computer bus 221 to contain the number of frames that have to go by since the last read and reset instruction until a desired frame has been reached.
  • Comparator 241 compares the two counters 242 and 243 for equality. When coincidence is detected, comparator 241 provides a signal to controller 240, and controller 240 uses that signal to control switch 239 as follows.
  • Controller 240 operates in one of two computer controllable modes based on instructions from CPU 222.
  • controller 240 causes switch 239 to remain closed thereby permitting all digitized data from A-to-D converter 232 to be stored in temporary video frame memory 234.
  • controller 240 causes switch 239 to remain closed only so long as a signal from comparator 241 is not received.
  • controller 240 opens the switch 239 thereby freezing memory 244 and preventing additional digitized frame information from being stored on temporary video frame memory 234.
  • controller 240 operates in a trap mode.
  • controller 240 signals CPU 222 that the frame number has been trapped.
  • Figure 6 is a flow diagram illustrating a method of digital video editing using the Figure 5 apparatus. The process steps depicted in Figure 6 are executed by CPU 222 in accordance with a program stored on disk 225 and loaded into RAM 224.
  • step S601 the analog video source is activated so as to provide analog video frame information to color separator and A-to-D converter 232.
  • the activation of the analog source may be manual or under automatic control of CPU 222.
  • CPU 222 sets controller 240 into the first mode where switch 239 is closed whereby frames of digital video information are stored directly into temporary video frame memory 234.
  • As many frames of analog video information as possible are digitized by frame grabber/digitizer 231 and stored in compressed or uncompressed form on disk 225.
  • this digitization is performed in real time, that is, at 30 frames per second in the case of NTSC standard video signals.
  • frame number extractor 237 extracts the frame region containing the frame number from the temporary video frame memory 234.
  • the frame number region is provided onto computer bus 221 in synchronization with the digital video frame information and is decoded and stored by CPU 222 in correspondence with that information onto disk 225.
  • Step S602 forms a list of missing frames from the frame numbers extracted by extractor 237 and decoded by CPU 222.
  • the tabulation of the missing frame list is similar to the technique described in connection with step S402 of Figure 4.
  • step S603 CPU 222 determines whether the missing frame list is empty, indicating that there are no missing frames. If the missing frame list is empty, then processing advances to step S604 where digital video editing is performed in accordance with the digital video editing capabilities provided by CPU 222. When digital video editing is complete, the edited digital signal is output via optionally digital video decompression hardware 229 and D-to-A converter 230 for permanent storage on analog video equipment.
  • step S603 determines that the missing frame list is not empty, then flow advances to step $606 in which the variable "MISS_FRAME" is set to the first element in the missing frame list.
  • the missing frame list it is preferable for the missing frame list to be sorted in ascending order.
  • step S607 the analog video source is repositioned to a position which precedes the frame number stored in the MISS_FRAME variable. Repositioning may be performed manually or under computer control by CPU 222. At the end of step S607, the analog video source signal is replayed.
  • step S608 the current frame number region is read by a read and reset instruction from extractor 237 which resets counter 243 to 0. The region is decoded to obtain the current frame number. Then, the difference between the current frame number and the value of the MISS_FRAME variable is stored in counter 242 to indicate the number of frames that have to go by since counter 243 was reset until the desired frame is reached. Comparator 241 is activated (step S609), and CPU 222 sets controller 240 into the second mode (the "trap" mode) which in the absence of coincidence detection by comparator 241 causes switch 239 to close. This permits digitized frame information to be stored in temporary video frame memory 234.
  • step S610 CPU 222 determines whether the desired frame number has been trapped by reference to the trap signal provided from controller 240. Program flow does not advance until the desired frame number has been trapped.
  • comparator 241 determines that there is coincidence between the two counters 242 and 243 indicating that the desired video frame has been reached, it signals controller 240 which in turn opens switch 239 to freeze the contents of video frame memory 234. This prevents additional digitized frame information from being stored into video frame memory and erasing the desired frame information. Controller 240 then provides a trap signal to CPU 222.
  • step S610 CPU 222 receives the trap signal and determines that a frame has been trapped, flow advances to step S611 in which the trapped frame stored in video frame memory 234, compressed or uncompressed, is stored onto disk 225.
  • the missing frame list is updated to remove the newly trapped frame (step S612), and in step S613 the list is inspected to determine if it is empty. If the list is empty, then flow returns to step S604 where digital video editing is performed. If, on the other hand, the missing frame list is not yet empty, then flow advances to step S614 in which the MISS_FRAME variable is set to the next element in the missing frame list. Step S615 determines if the current position of the video source is far enough in advance of the MISS_FRAME variable.
  • step S608 If the current position of the video source is far enough in advance of the MISS_FRAME element, then there is no need to reposition the video source, and flow returns to step S608 in which the current frame number region is read by a read and reset instruction from extractor 237, the number is decoded, the difference to MISS_FRAME is stored in counter 242, and the trap is reset.
  • step S607 if the current position of the video source is not far enough in advance of the frame number stored in the MISS_FRAME variable, then flow returns to step S607 which repositions the analog video source so as to provide suitable frame information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Television Signal Processing For Recording (AREA)

Description

  • The present invention concerns a digital video editor which converts frames of analog video information into corresponding frames of digital video information in real time and which detects and fills in lost frames of video information by re-reading the original analog information in additional passes.
  • With recent advances in speed and storage capacity of personal computing systems, it has become possible to convert analog video information in real time into corresponding digital video information, to edit the information while in digital form, and to convert the edited digital information back into an analog form.
  • Such an arrangement is desirable for several reasons. First, it eliminates the need for customized analog video editing machinery and instead allows a general purpose programmable computer to perform editing. The editing program on such a computer may be changed at will thereby permitting flexibility and facilitating change when new advances in editing technology are made.
  • Second, digital editing offers a simpler interaction interface and permits relatively unskilled workers to produce sophisticated results. As skill grows, a more complete set of editing effects may be generated through use of computer graphics, digital image processing and text editing techniques.
  • Finally, as the cost of personal computing machinery decreases, it becomes possible for more and more people to use video editing capabilities. Those capabilities would be foreclosed to an ordinary individual who could not afford high-end and single use items such as analog editing machinery.
  • DE-A-2945615 discloses a digital image processing system wherein an analog video signal is converted to a series of digital images, and wherein each frame is identified by image numbers recorded on a synchronised time track running in parallel to the analog video signal track.
  • In Fernseh- und Kino-Technik 1991, No. 5, pages 252 to 258, a digital video editor is described wherein analog video information is converted to digital video frames, and frame identification numbers are extracted from the analog video information.
  • Funkschau 1980 No. 5 pages 61 to 63 discloses the recording of digital video information on an optically read disc, with frame identification information being recorded on the disc at areas corresponding to the image blanking intervals.
  • However, acquiring digital video information that is full frame size, full color, and full motion places unprecedented demands on the bandwidth of digital computing machinery, and these demands can cause entire frames of video information to be lost. For example, corresponding to the NTSC standard, a full frame is 640 x 480 pixels, and full motion is 30 frames per second. With full color of 24 bits per pixel, the bandwidth requirements to handle such a digital video signal in real time is 640 x 480 x 30 x 24 = 221,184,000 bits per second which far exceeds the capabilities of currently available personal computing machinery. Future standards such as HDTV (high definition television) are even more demanding. Compression techniques such as JPEG ("joint photographic expert group"), MPEG ("motion picture expert group") and CCITT H.261 ("International Telegraph and Telephone Consultative Committee") have been proposed to reduce the bandwidth requirements to acceptable levels, but other factors can still cause video frames to be lost.
  • For example, known compression techniques are not "loss-less". That is, known compression techniques introduce errors when the compressed data are uncompressed. If the final video is to be of the same quality as the original video, compression cannot be so great as to introduce errors that are perceived as visual degradation in image quality. This limits the amount of bandwidth reduction obtainable from compression, and a fine balance must be struck between bandwidth reduction from compression and the bandwidth capabilities of the digital computing machinery. Today's high-end PCs and workstations have barely the bandwidth capabilities required to handle NTSC-type data, and HDTV processing put those capabilities into jeopardy.
  • Another factor contributing to the loss of video frames is multitasking. Current operating systems on workstations as well as next generation operating systems on personal computing equipment have multitasking capabilities which permit several tasks to run concurrently. Those several tasks compete in real-time for shared resources of the computing equipment, such as an internal computing bus, the CPU and the hard disk. Multitasking, however, places further bandwidth demands on the digital equipment, as well as raises the possibility that the CPU is busy servicing one task when a video frame is ready to be stored. If the CPU is not able to store the video frame before the next video frame becomes available, that video frame will be ignored and lost.
  • Lost frames of digital video information are not acceptable for many reasons. Lost frames can make it impossible to obtain high quality cuts, merges, compositions, special effects, etc. For example, when creating a slow motion special effect, missing frames cause large jumps and unevenness that are visually unacceptable. Further, errors caused by missing frames accumulate over longer clips. Even if only three frames are lost per minute, an entire second of material is lost in a ten minute sequence. Because sound is generally handled on a separate channel from video, such losses will quickly de-synchronize sound and video.
  • Further still, some compression techniques such as MPEG do not fully encode each video frame independently, but rather fully encode only some reference frames. Frames between the reference frames are encoded as the difference or change from the reference frames. If a reference frame is lost, it is impossible to re-create the original image for frames which depend on the lost reference frame.
  • To handle lost frames of digital video information in a real time digital video environment, a two-pass procedure has been proposed. In the first pass, the analog video equipment plays out the analog video signal, and the digital video equipment digitizes and stores as many frames of video information as possible. While the analog video equipment is playing out the video signal, it generates frame number information which is transmitted to the digital equipment over a frame number interface that is distinct from the video interface. The digital video equipment inspects the frame number information to determine if any frames have been lost and to determine the identity of those frames. If any frames have been lost, then a second pass is performed in which the analog video equipment is repositioned using the frame number information from the frame number interface and the missing frames are played out. If frames are still missing after the second pass, then additional passes are performed until all frames have been acquired in digital form.
  • The foregoing procedure is not entirely satisfactory. First, because the frame number information is not part of the video signal, and is supplied on a frame number interface that is separate from the video interface, it is possible that the video information on the video interface is not synchronized with the frame number information on the frame number interface. This means that the frame on the video interface is different from the frame indicated by the frame number information. Accordingly, it is not always possible to ensure that missing frames are properly detected, or to ensure that properly detected missing frames are supplied with the needed video data.
  • Second, there is no guarantee that progress will be made in finding missing frames. More specifically, even in the case where it is known with certainty that a frame is missing, there is no guarantee that the particular frame in question can be captured and added to the collection of already-digitized video frames. In fact, the same problems that caused the frame to be missed in the first pass, such as multitasking demands on shared resources, may also exist on subsequent passes, making it difficult ever to capture the missing frame.
  • It is an object of the invention to address the foregoing difficulties.
  • In one aspect, an apparatus for storing frames of digital video information from corresponding frames of analog video information, said apparatus comprising:
  • an analog-to-digital convertor for converting successive frames of analog video information into corresponding successive frames of digital video information;
  • a digital frame memory for storing at least a portion of a frame of digital video information converted by said analog-to-digital convertor;
  • storage means for storing successive frames of digital video information converted by said analog-to-digital convertor;
    characterised by:
  • a frame number extractor for extracting a frame number from non-visible portions of a frame of digital video information stored in said digital frame memory;
  • means for comparing the extracted frame number with a prior extracted frame number to determine whether a frame of digital video information is missing; and
  • control means for controlling said analog-to-digital convertor to receive and convert analog video information, for a frame determined by said comparing means to be missing, into a corresponding frame of digital video information.
  • In another aspect, a method of storing frames of digital video information from corresponding frames of analog video information, the method comprising:
  • controlling an analogue-to-digital converter (32) to converting successive frames of analog video information into corresponding successive frames of digital video information;
  • storing at least a portion of a frame of the digital video information in a digital frame memory; and
  • storing successive frames of the converted digital video information in storage means (24);
    characterised by:
  • extracting a frame number from non-visible portions of a frame of digital video information stored in the digital frame memory;
  • comparing the extracted frame number with a prior extracted frame number to determine whether a frame of digital video information is missing; and
  • controlling said analog-to-digital convertor to receive and convert analog video information digital frame memory for a frame determined to be missing, into a corresponding frame of digital video information.
  • Embodiments of the present invention will now be described with reference to the accompanying drawings, in which:
  • Figure 1 is a functional block diagram showing functions of a digital video editing system according to an embodiment of the invention.
  • Figure 2 is a representational view showing successive frames of video data.
  • Figure 3 is a block diagram of a first embodiment of the invention, and Figure 4 is a flowchart showing a digital video editing method that can be used with the Figure 3 embodiment.
  • Figure 5 is a block diagram of a second embodiment of the invention, and Figure 6 is a flow diagram showing a digital video editing method that can be used with the Figure 5 embodiment.
  • Figure 1 is a functional block diagram showing,a digital video editing apparatus according to an embodiment of the invention.
  • In Figure 1, an original video signal 1 is provided by conventional means such as a camcorder, a VCR or a laser disc player to a frame grabber/digitizer 2. In real time, the frame grabber/digitizer captures analog frames of video information, and converts the analog information into full color digital information. The digital information is optionally compressed by compressor 4 prior to storage. Any compression technique, e.g., conventional JPEG, MPEG or H.261 techniques may be used. Preferably, compressor 4 is realized in hardware but software realizations are possible, too. The compressed or uncompressed digital video information is fed for storage on hard disk 5 or on any other secondary storage medium such as a tape drive, a database system or an optical disk. The digital video information can also be sent over a network for remote processing or display.
  • The compressed digital video information is decompressed by decompressor 6 for digital video editing by processor 7. Depending on the compression method used, decompression is not necessary or can be done only partially for simple editing functions such as adding two frames together. Digital video editing may take the form of a variety of video editing techniques, such as the insertion of computer graphics; image processing such as color modification, aspect ratio modification, silhouetting, etc.; text processing; frame merging; or other techniques. The edited digital signal is returned to compressor 4 for optional recompression and for restorage.
  • Upon completion of desired video editing by processor 7, the edited video signal is fed to hard disk 5 (or the aforementioned secondary storage media). From hard disk 5, or from the secondary storage media, the edited video signal can be sent to decompressor 6 (if necessary), and then for conversion to an analog signal by D-to-A converter 9. D-to-A converter 9 feeds the edited analog video signal 10 for storage on any of a variety of analog media such as a VCR, a laser disc recorder, or the like.
  • Figure 2 is a representational view of a sequence of video frames. As seen in Figure 2, each of video frames 10 includes a visible video portion 11, as well as a non-visible video portion such as regions 12a and 12b at the top and bottom, respectively, of each frame. The non-visible video information includes frame number information such as that illustrated diagrammatically at 14. It is to be understood that the frame number information 14 is not ordinarily carried in human-readable form, but rather is encoded in machine readable form. Encoding techniques as defined by SMPTE/EBU are suitable, such as the vertical interval time code (VITC) which is encoded in the video signal itself typically between lines 10 and 20 of a frame.
  • In Figure 2, the frame number information is depicted as if it were already decoded by a decoder, as will be described hereinafter. The frame number depicted here is in the form HH:MM:SS:FF where HH indicates the hour, MM indicates the minute, SS indicates the seconds and FF indicates the frame number (which ranges from 0 through 29), all measured from an arbitrary reference point such as the beginning of a video sequence. The precise method by which the frame number is carried is unimportant so long as the frame number is carried in the video frame itself, preferably in non-visible portions of the frame.
  • Figure 3 is a detailed block diagram of a first embodiment of the invention which operates in accordance with the functional block diagram shown in Figure 1. The embodiment shown in Figure 3 includes many components which are found in a typical personal computing system, such as a computer bus 21 to which is connected a CPU 22 for executing programmable instruction steps by which digital video editing is performed. Also connected to computer bus 21 is a network interface 23a which permits the Figure 3 digital video editor to operate in a local area network via network access 23b, a main memory 24 such as RAM in which program steps for execution by CPU 22 as well as program data are stored, a disk 25 which stores digital video information processed by the digital video editor as well as other application programs and data such as word processing programs and the like, a keyboard 26, a pointing device 28 such as a computer mouse or an electronic pen which permit operator control of the digital video editor, a buffer memory 27 which holds values for each pixel appearing on attached monitor 27a and which is constantly read out to monitor 27a to permit viewing of video information, computer graphics and text, and video decompression hardware 29 which decompresses compressed digital video information and feeds it to D-to-A converter 30 for conversion into an analog video signal.
  • The Figure 3 digital video editor includes a frame grabber/digitizer 31 which captures frames of analog video information, digitizes them, and provides the digital video information onto computer bus 21 together with a frame number extracted from a portion of the video information. The frame grabber/digitizer 31 includes a color separator and A-to-D converter 32 which separates the colors in the analog video signal into RGB components and converts each of the R, G and B components into digital pixel values. The converted digital video signal is stored in a temporary video memory 34. This temporary video memory 34 can have different purposes. It can serve as a buffer between the digitizer and the computer bus. Also, conventional video frame compressors process a frame in square blocks that span more than one line and thus need to access several lines of video data simultaneously. The size of the memory can range between the number of lines corresponding to the height of a compression block to twice the full video frame size which will allow double buffering where one half is read by the compressor or the bus while the other half is filled with the next frame.
  • A frame number extractor 35 extracts the region of a frame that contains the encoded frame number, typically a few lines of the invisible portion of a frame. The frame region is provided onto the computer bus 21 in synchronization with the digital video information which may be compressed by video compression hardware 36 if desired. CPU 22 decodes the frame region provided by extractor 35 to obtain a frame number in computer readable form.
  • Figure 4 is a flow diagram showing an operational mode of the digital video editor shown in Figure 3. The process steps depicted in Figure 4 are executed by CPU 22 in accordance with a stored program which is contained most conveniently on disk 25 and executed out of RAM 24.
  • In step S401, the analog video source is activated so as to provide analog video frame information to color separator and A-to-D converter 32. The activation of the analog source may be manual or under automatic control of CPU 22. As many frames of analog video information as possible are digitized by frame grabber/digitizer 31 and stored in compressed or uncompressed form, for example, on disk 25 or to network storage via network interface 23a. Preferably, this digitization is performed in real time, that is, at 30 frames per second in the case of NTSC standard video signals.
  • In coordination with digitization and storage of the frames of video information, frame number extractor 35 derives the frame number region from the non-visible portion of each frame. The frame number region is provided onto computer bus 21 in synchronization with the digital video frame information and is decoded and stored by CPU 22 in correspondence with that information onto disk 25.
  • Step S402 forms a list of missing frames from the frame numbers extracted by extractor 35 and decoded by CPU 22. More particularly, CPU 22 inspects each frame number decoded from frame regions provided onto computer bus 21 to ensure that the frame numbers represent a complete sequence of video frames. Thus, referring to Figure 2, CPU 22 determines that the frame number for frame 15 ("1:30:43:00") indicates that frame 15 is the next succeeding frame after frame 16 because the frame number for frame 16 ("1:30:42:29") differs by only a single frame for the frame number from frame 15. Thus, CPU 22 is able to determine that there are no missing frames between frames 15 and 16.
  • When considering the frame number for frame 17, however, CPU 22 determines that frame 18 has been missed since the frame number for frame 17 ("1:30:43:02") indicates that frame 17 is not the next succeeding frame from frame 15. Thus, CPU 22 determines that there is a missing frame between frames 15 and 17 and inserts the frame number of missing frame 18 (here frame number "1:30:43:01") into the missing frame list.
  • In step S403, CPU 22 determines whether the missing frame list is empty, indicating that there are no missing frames. If the missing frame list is empty, then processing advances to step S404 where digital video editing is performed in accordance with the digital video editing capabilities provided by CPU 22. When digital video editing is complete, the edited digital signal is output via digital video decompression hardware 29 if necessary and D-to-A converter 30 for permanent storage on analog video equipment.
  • However, in the event that step S403 determines that the missing frame list is not empty, meaning that there are missing frames, then steps S406 through S414 are performed so as to supply the missing frames of digital information.
  • First, in step S406, the analog video source is repositioned to a point which precedes the first missing frame, and playback of the analog video source is commenced. Repositioning and playback can be started either manually or by computer control through CPU 22. In this regard, repositioning the analog video source may be facilitated by sorting the missing frame list so that the missing frames are listed in ascending order. While sorting is not absolutely necessary, it is nevertheless preferable since it permits sequential processing of each frame in the list.
  • In step S407, frame grabber/digitizer 31 is activated, thereby providing video frame data, optionally compressed via compressor 36, onto computer bus 21. In synchronism therewith, frame regions containing frame numbers for the video frame data are provided on the bus via frame number extractor 35.
  • In step S408, the current frame number is read from frame number extractor 35. The extracted frame number is decoded and then compared with the entries in the missing frame list (step S409), and if a match is found (step S410) flow advances to step S411 where the corresponding video frame information is stored onto disk 25. The missing frame list is updated in step S412 so as to remove the newly-found frame. Step S413 determines if the missing frame list has been emptied; if so, flow returns to step S404 where digital video editing is performed.
  • On the other hand, if no match is found in step S410, or if the missing frame list is not empty in step S413, then nothing need be done with the current frame information stored in temporary video memory 34. Instead, flow advances to step S414 which determines whether the current frame number exceeds all the missing frame numbers in the missing frame list. If the current frame number exceeds the frame numbers in the missing frame list, then the analog video source has progressed too far and flow returns to step S406 where the analog video source is repositioned. On the other hand, if the current frame number does not exceed the frame numbers in the missing frame list, then there is no need to reposition the analog video source signal and flow returns only to step S408 where the frame number for the next digitized frame is read out and processed as described above.
  • The above-described embodiment and corresponding processing is effective to ensure that missing frames are detected accurately, and is effective to ensure that when read on a subsequent pass each frame is identified accurately and the proper missing frame is supplied. However, with the Figure 3 embodiment, it is not always possible to guarantee that progress will be made in supplying missing frames. More particularly, it is possible that the circumstances which caused the frames to be missed in first pass step S401 will also exist in subsequent attempts to read the missing frame. Accordingly, while the Figure 3 embodiment can accurately detect when a frame is missing, it may be nevertheless difficult to supply the missing frame with certainty.
  • Figure 5 is a block diagram illustrating a second embodiment of the invention which guarantees that missing frames will be supplied. Elements similar to those shown in Figure 3 have been given similar reference numerals and detailed descriptions thereof are omitted.
  • In Figure 5, an original analog video signal is provided to frame color separator and A-to-D converter 232 disposed inside frame grabber/digitizer 231. Color separator and A-to-D converter 232 provides the digitized frame information to temporary video frame memory 234 via switch 239 which together form a freezable video frame memory. Switch 239 is operated under control of controller 240 as described in more detail hereinbelow. From temporary video frame memory 234, the digitized video information is optionally provided to video compression hardware 236 which in turn provides compressed digital video information onto computer bus 221.
  • Frame number extractor 237 extracts the frame region containing the encoded frame number from the temporary video frame memory 234 each time a new frame has been put there. At the same time extractor 237 increments counter 243. This means counter 243 counts the number of frames going by since it has been reset. Counter 243 is reset to 0 by frame extractor 237 when CPU 222 issues a special read and reset instruction to read the frame number region from frame extractor 237 via computer bus 221 and simultaneously to reset counter 243. The frame number region can also be read by a normal read instruction without resetting the counter 243. CPU 222 decodes the frame region received after a read and reset or a read instruction from extractor 237 to obtain the current frame number. Counter 242 is loaded by the CPU 222 via computer bus 221 to contain the number of frames that have to go by since the last read and reset instruction until a desired frame has been reached.
  • Comparator 241 compares the two counters 242 and 243 for equality. When coincidence is detected, comparator 241 provides a signal to controller 240, and controller 240 uses that signal to control switch 239 as follows.
  • Controller 240 operates in one of two computer controllable modes based on instructions from CPU 222. In the first mode, controller 240 causes switch 239 to remain closed thereby permitting all digitized data from A-to-D converter 232 to be stored in temporary video frame memory 234. In the second mode, controller 240 causes switch 239 to remain closed only so long as a signal from comparator 241 is not received. When a signal from comparator 241 is received, indicating coincidence between the two counters 242 and 243, i.e., that a desired frame number has been reached, controller 240 opens the switch 239 thereby freezing memory 244 and preventing additional digitized frame information from being stored on temporary video frame memory 234. Thus, controller 240 operates in a trap mode. In this second mode, controller 240 signals CPU 222 that the frame number has been trapped.
  • Figure 6 is a flow diagram illustrating a method of digital video editing using the Figure 5 apparatus. The process steps depicted in Figure 6 are executed by CPU 222 in accordance with a program stored on disk 225 and loaded into RAM 224.
  • In step S601, the analog video source is activated so as to provide analog video frame information to color separator and A-to-D converter 232. The activation of the analog source may be manual or under automatic control of CPU 222. CPU 222 sets controller 240 into the first mode where switch 239 is closed whereby frames of digital video information are stored directly into temporary video frame memory 234. As many frames of analog video information as possible are digitized by frame grabber/digitizer 231 and stored in compressed or uncompressed form on disk 225. Preferably, this digitization is performed in real time, that is, at 30 frames per second in the case of NTSC standard video signals.
  • In coordination with digitization and storage of the frames of video information, frame number extractor 237 extracts the frame region containing the frame number from the temporary video frame memory 234. The frame number region is provided onto computer bus 221 in synchronization with the digital video frame information and is decoded and stored by CPU 222 in correspondence with that information onto disk 225.
  • Step S602 forms a list of missing frames from the frame numbers extracted by extractor 237 and decoded by CPU 222. The tabulation of the missing frame list is similar to the technique described in connection with step S402 of Figure 4.
  • In step S603, CPU 222 determines whether the missing frame list is empty, indicating that there are no missing frames. If the missing frame list is empty, then processing advances to step S604 where digital video editing is performed in accordance with the digital video editing capabilities provided by CPU 222. When digital video editing is complete, the edited digital signal is output via optionally digital video decompression hardware 229 and D-to-A converter 230 for permanent storage on analog video equipment.
  • If step S603 determines that the missing frame list is not empty, then flow advances to step $606 in which the variable "MISS_FRAME" is set to the first element in the missing frame list. For purposes of this step, it is preferable for the missing frame list to be sorted in ascending order.
  • In step S607, the analog video source is repositioned to a position which precedes the frame number stored in the MISS_FRAME variable. Repositioning may be performed manually or under computer control by CPU 222. At the end of step S607, the analog video source signal is replayed.
  • In step S608, the current frame number region is read by a read and reset instruction from extractor 237 which resets counter 243 to 0. The region is decoded to obtain the current frame number. Then, the difference between the current frame number and the value of the MISS_FRAME variable is stored in counter 242 to indicate the number of frames that have to go by since counter 243 was reset until the desired frame is reached. Comparator 241 is activated (step S609), and CPU 222 sets controller 240 into the second mode (the "trap" mode) which in the absence of coincidence detection by comparator 241 causes switch 239 to close. This permits digitized frame information to be stored in temporary video frame memory 234.
  • In step S610, CPU 222 determines whether the desired frame number has been trapped by reference to the trap signal provided from controller 240. Program flow does not advance until the desired frame number has been trapped.
  • When comparator 241 determines that there is coincidence between the two counters 242 and 243 indicating that the desired video frame has been reached, it signals controller 240 which in turn opens switch 239 to freeze the contents of video frame memory 234. This prevents additional digitized frame information from being stored into video frame memory and erasing the desired frame information. Controller 240 then provides a trap signal to CPU 222.
  • When in step S610 CPU 222 receives the trap signal and determines that a frame has been trapped, flow advances to step S611 in which the trapped frame stored in video frame memory 234, compressed or uncompressed, is stored onto disk 225. The missing frame list is updated to remove the newly trapped frame (step S612), and in step S613 the list is inspected to determine if it is empty. If the list is empty, then flow returns to step S604 where digital video editing is performed. If, on the other hand, the missing frame list is not yet empty, then flow advances to step S614 in which the MISS_FRAME variable is set to the next element in the missing frame list. Step S615 determines if the current position of the video source is far enough in advance of the MISS_FRAME variable. If the current position of the video source is far enough in advance of the MISS_FRAME element, then there is no need to reposition the video source, and flow returns to step S608 in which the current frame number region is read by a read and reset instruction from extractor 237, the number is decoded, the difference to MISS_FRAME is stored in counter 242, and the trap is reset. On the other hand, if the current position of the video source is not far enough in advance of the frame number stored in the MISS_FRAME variable, then flow returns to step S607 which repositions the analog video source so as to provide suitable frame information.
  • With the embodiment shown in Figure 5 and the processing techniques shown in Figure 6, it is possible to guarantee that missing frames are not only detected with accuracy but it is also possible to guarantee that needed missing frames will be supplied.

Claims (43)

  1. Apparatus for storing frames of digital video information from corresponding frames of analog video information, said apparatus comprising:
    an analog-to-digital convertor (32) for converting successive frames of analog video information into corresponding successive frames of digital video information;
    a digital frame memory (34) for storing at least a portion of a frame of digital video information converted by said analog-to-digital convertor (32);
    storage means (24) for storing successive frames of digital video information converted by said analog-to-digital convertor (32);
    characterised by:
    a frame number extractor (35) for extracting a frame number from non-visible portions of a frame of digital video information stored in said digital frame memory (34);
    means (22) for comparing the extracted frame number with a prior extracted frame number to determine whether a frame of digital video information is missing; and
    control means (22) for controlling said analog-to-digital convertor (32) to receive and convert analog video information, for a frame determined by said comparing means to be missing, into a corresponding frame of digital video information.
  2. Apparatus according to claim 1, further comprising a comparator for comparing (241) a frame number extracted by said frame number extractor (35) and a missing frame number, and wherein said control means (22) is adapted to freeze the current contents of the digital frame memory (234) when said comparator (241) detects coincidence so as to trap the missing frame.
  3. Apparatus according to claim 2, wherein said control means (22) comprises a processor operable in at least two modes, wherein in the first mode said processor tabulates a list of frame numbers corresponding to missing frames of digital video information and wherein in the second mode said processor sequentially designates frame numbers from the tabulated list for trapping.
  4. Apparatus according to claim 3, further comprising:
    input means for inputting the frames of analog video information, the analog video information including both visible and non-visible portions;
    wherein the storage means (24) stores visible and non-visible portions of a frame of digital video information converted by the analog-to-digital converter.
  5. Apparatus according to claim 4, wherein the digital frame memory (234) comprises a freezable frame memory.
  6. Apparatus according to claim 5, wherein the control means is adapted to control the freezable frame memory (234) to freeze memory contents when the frame number of the video information stored in said freezable frame memory (234) is the same as a pre-designated frame number.
  7. Apparatus according to claim 6, wherein said control means (222) is adapted to freeze said freezable frame memory (234) in the event that there is coincidence between the extracted frame number and the predesignated frame number information, whereby the current frame of digital video information stored in said freezable frame memory (234) is frozen.
  8. Apparatus according to claim 3, wherein said processor (222) is adapted to modify frames of digital video information stored in said storage means and to store the modified frames of digital video information in the storage means; and
       wherein the apparatus further comprises output means (30) for outputting frames of analog video information which correspond to the modified frames of digital video information.
  9. Apparatus according to claim 3 or claim 8, wherein said processor (222) is adapted to tabulate the list of missing frames based on a comparison of successive frame numbers extracted by said frame number extractor (35).
  10. Apparatus according to any of claims 3, 4, 8 and 9, further comprising means for decoding the extracted frame number into computer readable form.
  11. Apparatus according to any of claims 3, 4, 8, 9 and 10, further comprising compression means (36) for compressing the frames of digital video information.
  12. Apparatus according to claim 11, wherein said analog-to-digital converter (32) is adapted to convert both visible and non-visible portions of the frames of analog video information, and wherein said compression means (36) is adapted to compress only the visible portion.
  13. Apparatus according to claim 12, wherein the control means is adapted to operate based on instructions from said processor (222) for controlling said digital frame memory (234) to freeze the memory contents when the frame number of the video information stored in said digital frame memory (234) is the same as a pre-designated frame number.
  14. Apparatus according to any of claims 6, 7 and 13, wherein said compressing means comprises a first counter (243) whose contents are automatically adjusted when a new frame of video information is stored in said freezable frame memory, a second counter (242) for storing a count representative of the missing frame number, and a comparator (241) for comparing contents of the first and second counters.
  15. Apparatus according to claim 14, wherein said processor is adapted to calculate the difference between the frame number of the video information stored in said freezable memory and the missing frame number and to store the difference to said second counter.
  16. Apparatus according to claim 15, wherein said first counter (243) is adapted to be reset to zero in correspondence with the extraction of a new frame number.
  17. Apparatus according to any of claims 13 to 16, wherein in the second mode said control means (222) is adapted to freeze said freezable frame memory (234) in the event that there is coincidence between the extracted frame number and the missing frame number, whereby the current frame of digital video information stored in said freezable frame memory (234) is frozen.
  18. Apparatus according to any of claims 13 to 17, wherein in the first mode said control means (222) is adapted to control said freezable frame memory (234) so as to allow newly-converted frames of digital video information to be stored.
  19. Apparatus according to claim 8, wherein said processor is adapted to perform the frame modifications which include slow motion, color modification, text insertion and image processing.
  20. Apparatus according to claim 8 or claim 19, wherein said output means includes a D/A converter.
  21. Apparatus according to claim 20, wherein said storage means (24) stores the frames of digital video information in compressed digital form, and wherein said output means includes a decompressor (29).
  22. A method of storing frames of digital video information from corresponding frames of analog video information, the method comprising:
    controlling an analogue-to-digital converter (32) to convert successive frames of analog video information into corresponding successive frames of digital video information;
    storing at least a portion of a frame of the digital video information in a digital frame memory (34); and
    storing successive frames of the converted digital video information in storage means (24);
    characterised by:
    extracting a frame number from non-visible portions of a frame of digital video information stored in the digital frame memory (34);
    comparing the extracted frame number with a prior extracted frame number to determine whether a frame of digital video information is missing; and
    controlling said analog-to-digital convertor (32) to receive and convert analog video information for a frame determined to be missing, into a corresponding frame of digital video information.
  23. A method according to claim 22, further comprising comparing a frame number extracted in the extracting step and a missing frame number, and wherein the controlling step freezes the current contents of the digital frame memory (34) when coincidence is detected in the comparing step so as to trap the missing frame.
  24. A method according to claim 23, wherein the controlling step is performed by a processor (22) which is operable in at least two modes, wherein in the first mode the processor (22) tabulates a list of frame numbers corresponding to missing frames of digital video information and wherein in the second mode the processor (22) sequentially designates frame numbers from the tabulated list for trapping.
  25. A method according to claim 24, wherein the analog video information includes both visible and non-visible portions; and
    in the storing step visible and non-visible portions of a frame of digital video information converted by the analog-to-digital converter (32) are stored.
  26. A method according to claim 25, wherein the digital frame memory (34) comprises a freezable frame memory.
  27. A method according to claim 26, wherein the controlling step controls the freezable frame memory to freeze the memory contents when the frame number of the video information stored in the freezable frame memory is the same as a missing frame number.
  28. A method according to claim 27, wherein the controlling step freezes the freezable frame memory in the event that there is coincidence between the extracted frame number and the missing frame number information, whereby the current frame of digital video information stored in the freezable frame memory is frozen.
  29. A method according to claim 24, wherein the processor modifies frames of digital video information stored in the storing step and stores the modified frames of digital video information in the storage means; and
       wherein the method further comprises an outputting step to control a digital-to-analogue converter (30) to output frames of analog video information which correspond to the modified frames of digital video information.
  30. A method according to claim 24 or 29, wherein the processor tabulates the list of missing frames based on a comparison of successive frame numbers extracted by the frame number extractor.
  31. A method according to any of claims 24, 25, 29 and 30, further comprising a decoding step to decode the extracted frame number into computer readable form.
  32. A method according to any of claims 24, 25, 29, 30 and 31, further comprising a compressing step to compress the frames of digital video information.
  33. A method according to claim 32, wherein the converting step converts both visible and non-visible portions of the frames of analog video information, and wherein the compressing step compresses only the visible portion.
  34. A method according to claim 33, wherein the controlling step is performed based on instructions from the processor for controlling the digital frame memory to freeze the memory contents when the frame number of the video information stored in the digital frame memory is the same as a missing frame number.
  35. A method according to any of claims 27, 28 and 34, wherein the controlling step is performed using a first counter whose contents are automatically adjusted when a new frame of video information is stored in the freezable frame memory, a second counter for storing a count representative of the missing frame number, and a comparator for comparing contents of the first and second counters.
  36. A method according to claim 35, wherein the processor calculates the difference between the frame number of the video information stored in the freezable memory and the missing frame number and stores the difference to the second counter.
  37. A method according to claim 36, wherein the first counter is be reset to zero in correspondence with the extraction of a new frame number.
  38. A method according to any of claims 34 to 37, wherein in the second mode the processor freezes the freezable frame memory in the event that there is coincidence between the extracted frame number and the missing frame number, whereby the current frame of digital video information stored in the frame memory is frozen.
  39. A method according to any of claims 34 to 38, wherein in the first mode the processor controls the freezable memory so as to allow newly-converted frames of digital video information to be stored.
  40. A method according to claim 29, wherein frame modifications performable by the processor include slow motion, color modification, text insertion and image processing.
  41. A method according to claim 29 or claim 40, wherein in the storing step the frames of digital video information are stored in compressed digital form, and wherein the outputting step includes decompressing the frames of digital video information.
  42. A computer program for controlling a computer having an analogue-to-digital converter (32), a frame memory (34) and storage means (24) to carry out the method of any one of claims 22 to 41.
  43. A storage disk storing the computer program of claim 42.
EP93307807A 1992-10-20 1993-09-30 Digital video editor having lost video frame protection Expired - Lifetime EP0594316B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/963,737 US5367341A (en) 1992-10-20 1992-10-20 Digital video editor having lost video frame protection
US963737 1992-10-20

Publications (3)

Publication Number Publication Date
EP0594316A2 EP0594316A2 (en) 1994-04-27
EP0594316A3 EP0594316A3 (en) 1995-02-15
EP0594316B1 true EP0594316B1 (en) 2000-05-03

Family

ID=25507639

Family Applications (1)

Application Number Title Priority Date Filing Date
EP93307807A Expired - Lifetime EP0594316B1 (en) 1992-10-20 1993-09-30 Digital video editor having lost video frame protection

Country Status (4)

Country Link
US (1) US5367341A (en)
EP (1) EP0594316B1 (en)
JP (1) JP3495767B2 (en)
DE (1) DE69328531T2 (en)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555193A (en) * 1993-05-25 1996-09-10 Kabushiki Kaisha Toshiba Video compression system with editing flag
EP0656729B1 (en) * 1993-12-01 2000-02-09 Matsushita Electric Industrial Co., Ltd. Method and apparatus for editing or mixing compressed pictures
DE69520845T2 (en) * 1994-01-07 2001-08-23 Quantel Ltd., Newbury Video processing apparatus and method
US5535137A (en) * 1994-02-14 1996-07-09 Sony Corporation Of Japan Random access audio/video processor with compressed video resampling to allow higher bandwidth throughput
US5508940A (en) * 1994-02-14 1996-04-16 Sony Corporation Of Japan And Sony Electronics, Inc. Random access audio/video processor with multiple outputs
EP1414043B1 (en) * 1994-03-16 2008-01-02 Sony Corporation Image editing system
JPH07334969A (en) * 1994-04-11 1995-12-22 Sony Corp Method and device for editing
JP3161228B2 (en) * 1994-06-06 2001-04-25 ソニー株式会社 Data processing device
DE69515386T2 (en) * 1994-07-15 2000-08-24 Matsushita Electric Industrial Co., Ltd. Method for connecting MPEG video sequences
JP3019912B2 (en) * 1994-07-22 2000-03-15 日本ビクター株式会社 Image data editing device
US5696557A (en) * 1994-08-12 1997-12-09 Sony Corporation Video signal editing apparatus
US5828841A (en) * 1994-10-31 1998-10-27 Sony Corporation Video signal recording and reproduction apparatus
US6888998B1 (en) * 1994-11-28 2005-05-03 Sony Corporation Data recording and reproducing apparatus having a data transferring device for selectively transferring data between multiple data recording and reproducing devices
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
AU5388396A (en) * 1995-04-10 1996-10-30 Electrogig Corporation Integrated virtual set production facility with user interfa ce and central fault tolerant controller
US5838874A (en) * 1995-05-08 1998-11-17 Kabushiki Kaisha Toshiba Audiovisual encoding system with a reduced number of audio encoders
US5819004A (en) * 1995-05-08 1998-10-06 Kabushiki Kaisha Toshiba Method and system for a user to manually alter the quality of previously encoded video frames
US7453451B1 (en) 1999-03-16 2008-11-18 Maguire Francis J Jr Moveable headrest for viewing images from different directions
US6836295B1 (en) * 1995-12-07 2004-12-28 J. Carl Cooper Audio to video timing measurement for MPEG type television systems
US6038368A (en) 1996-02-05 2000-03-14 Sony Corporation System for acquiring, reviewing, and editing sports video segments
US5959690A (en) * 1996-02-20 1999-09-28 Sas Institute, Inc. Method and apparatus for transitions and other special effects in digital motion video
GB2312079B (en) * 1996-04-12 2000-11-15 Sony Uk Ltd Editing of recorded material
JPH10275417A (en) * 1997-03-31 1998-10-13 Sony Corp Device for recording and reproducing digital information signal and method therefor
JP3554177B2 (en) * 1997-04-23 2004-08-18 キヤノン株式会社 Output control device, output control method, storage medium
JP3895848B2 (en) * 1997-11-11 2007-03-22 トムソン ライセンシング Non-linear video editing system
KR100295226B1 (en) * 1998-03-16 2001-07-12 윤종용 Apparatus for interfacing between analog video camcorder and personal computer
US6542692B1 (en) * 1998-03-19 2003-04-01 Media 100 Inc. Nonlinear video editor
US6229576B1 (en) * 1998-04-03 2001-05-08 Avid Technology, Inc. Editing system with router for connection to HDTV circuitry
US6226038B1 (en) 1998-04-03 2001-05-01 Avid Technology, Inc. HDTV editing and effects previsualization using SDTV devices
JP4129657B2 (en) * 1999-02-25 2008-08-06 ソニー株式会社 Editing apparatus and editing method
AU2001231194A1 (en) * 2000-01-26 2001-08-07 Media 100 Inc. Accessing video data from mass storage
US7065288B1 (en) * 2000-06-21 2006-06-20 Sony Corporation System and method of patching missing digital video packets communicated in an IEEE 1394 compliant implementation
JP2002152681A (en) * 2000-11-14 2002-05-24 Alpine Electronics Inc Method and device for reproducing recording medium
US20030007784A1 (en) * 2001-06-20 2003-01-09 Loui Alexander C. System and method for authoring a multimedia enabled disc
US7487206B2 (en) * 2005-07-15 2009-02-03 International Business Machines Corporation Method for providing load diffusion in data stream correlations
US7548937B2 (en) * 2006-05-04 2009-06-16 International Business Machines Corporation System and method for scalable processing of multi-way data stream correlations
US10880474B1 (en) * 2015-09-24 2020-12-29 Surveying And Mapping, Llc Systems and methods for mobile imaging

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2945615A1 (en) * 1979-11-12 1981-05-21 Siemens AG, 1000 Berlin und 8000 München Image processing system for video - using microprocessor in conjunction with computer and memory to process scanning cycles
JPS57185777A (en) * 1981-05-12 1982-11-16 Fuji Photo Film Co Ltd Electronic camera with electronic memo
US4587572A (en) * 1983-04-14 1986-05-06 Cinema Products Corporation Film to tape transfer system
US4698664A (en) * 1985-03-04 1987-10-06 Apert-Herzog Corporation Audio-visual monitoring system
GB2187028B (en) * 1986-02-24 1989-11-08 Sony Corp Methods of and apparatus for processing timecode data in a recorded digital video signal
EP0282779B1 (en) * 1987-03-13 1992-12-30 Studer Revox Ag Method and device for processing sequences of sampled values which are recorded on a record carrier
JPS6468189A (en) * 1987-09-09 1989-03-14 Nippon Telegraph & Telephone Packet abort compensation system in moving image packet transmission
US5223485A (en) * 1989-01-31 1993-06-29 Abbott Laboratories Anaphylatoxin-receptor ligands
US5018027A (en) * 1989-05-10 1991-05-21 Gse, Inc. Method of and means for providing information to edit a video tape
JPH02301275A (en) * 1989-05-15 1990-12-13 Mitsubishi Electric Corp Digital video recording and reproducing device
US5267351A (en) * 1989-12-22 1993-11-30 Avid Technology, Inc. Media storage and retrieval system
GB9022761D0 (en) * 1990-10-19 1990-12-05 Eidos Plc Improvements in or relating to video editing systems
JPH04270468A (en) * 1991-01-31 1992-09-25 Nippon Telegr & Teleph Corp <Ntt> Remote video editing method
JP3136634B2 (en) * 1991-04-09 2001-02-19 ソニー株式会社 Video processing circuit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
H.P.SIEBERT: "Magnavision", FUNKSCHAU, vol. 1980, no. 5, pages 61 to 63 *

Also Published As

Publication number Publication date
DE69328531T2 (en) 2000-10-19
EP0594316A2 (en) 1994-04-27
JPH06237435A (en) 1994-08-23
JP3495767B2 (en) 2004-02-09
EP0594316A3 (en) 1995-02-15
DE69328531D1 (en) 2000-06-08
US5367341A (en) 1994-11-22

Similar Documents

Publication Publication Date Title
EP0594316B1 (en) Digital video editor having lost video frame protection
US6269215B1 (en) Information processing system
US7230641B2 (en) Combined editing system and digital moving picture recording system
US4785349A (en) Digital video decompression system
US4918523A (en) Digital video formatting and transmission system and method
US4868653A (en) Adaptive digital video compression system
US5079630A (en) Adaptive video compression system
US5225904A (en) Adaptive digital video compression system
JP4777583B2 (en) Image sequence compression featuring independent coding regions
US5899575A (en) Video capture device, video recording/playing apparatus having the video capture device attached thereto, and video input device
US6970510B1 (en) Method for downstream editing of compressed video
US7359615B2 (en) Method and device for ensuring storage time for digital broadcast
US20070242137A1 (en) Combined editing system and digital moving picture recording system
EP0731469A2 (en) Video information recording and reproduction apparatus and method as well as video tape
EP0574502A1 (en) Method and apparatus for encoding and decoding a digital motion video signal
WO1998046017A1 (en) A user interface for managing track assignment for portable digital moving picture recording and editing system
US7532807B2 (en) Combined editing system and digital moving picture recording system
EP1134974B1 (en) Image recording and playback apparatus and method
JP3144285B2 (en) Video processing equipment
AU625594B2 (en) Digital video decompression system
AU624089B2 (en) Digital video compression system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE FR GB IT

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): DE FR GB IT

17P Request for examination filed

Effective date: 19950630

17Q First examination report despatched

Effective date: 19970403

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB IT

REF Corresponds to:

Ref document number: 69328531

Country of ref document: DE

Date of ref document: 20000608

ET Fr: translation filed
ITF It: translation for a ep patent filed
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

REG Reference to a national code

Ref country code: FR

Ref legal event code: TP

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20020916

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20020920

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20020923

Year of fee payment: 10

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20030930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20040401

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20030930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20040528

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20050930