In predictive video and audio encoding/decoding, a stimulus change at the encoder is smoothly accommodated by causing a video codec to exchange image data with a cache memory, and by homing an audio codec.
|
15. An audio decoding method, comprising:
determining whether an input sound stimulus received by an audio transmitter apparatus has changed from a first sound stimulus to a second sound stimulus; setting a current state of a digital filter to a predetermined state in response to detection of a change in the sound stimulus input received by the audio transmitter; and using the digital filter in said predetermined state to perform audio decoding.
19. A video encoding method, comprising:
receiving first image data corresponding to a first image in a sequence of images, thereafter receiving second image data corresponding to a second image in the sequence of images, and thereafter receiving third image data corresponding to a third image in the sequence of images; in response to the first and second image data, providing first difference information indicative of a difference between the first and second images; deciding whether to provide second difference information indicative of a difference between the second and third images, or instead to provide third difference information indicative of a difference between the third image and a further image other than the second image; and providing one of the second difference information and the third difference information as decided in said deciding step.
38. An audio decoding apparatus, comprising:
a change detector for determining whether an input sound stimulus received by an audio transmitter apparatus has changed from a first sound stimulus to a second sound stimulus, said change detector including an output for indicating whether the input sound stimulus has changed; a decode unit having an audio input for receiving audio data from the audio transmitter apparatus, a control input coupled to said change detector output, and a digital filter coupled to said audio input and said control input; and said decode unit responsive to an indication at said control input that the input sound stimulus has changed for setting a current state of said digital filter to a predetermined state, and said decode unit operable for using said digital filter in said predetermined state to perform audio decoding based on said audio data.
8. A video decoding method, comprising:
providing difference information indicative of a difference between images captured by a video transmitter apparatus; providing output image data as a function of the difference information and input image data; deciding whether to update the input image data in response to the output image data, or independently of the output image data, wherein said deciding step includes determining whether an input video stimulus seen by the video transmitter apparatus has been changed from a first video stimulus to a second video stimulus, deciding to update the input image data in response to the output image data if the input video stimulus has not been changed, and deciding to update the input image data independently of the output image data if the input video stimulus has been changed; and updating the input image data as decided in said deciding step.
1. A video decoding method, comprising;
providing input image data; providing difference information indicative of a difference between images captured by a video transmitter apparatus; deciding whether to output predicted image data produced as a function of the input image data and the difference information, or to output other image data produced independently of the difference information and the input image data, wherein said deciding step includes determining whether an input video stimulus seen by the video transmitter apparatus has been changed from a first video stimulus to a second video stimulus, deciding to output the predicted image data if the input video stimulus has not been changed, and deciding to output the other image data if the input video stimulus has been changed; and outputting one of the predicted image data and the other image data as decided in said deciding step.
24. A video decoding apparatus, comprising:
an output for providing output image data, a decode unit having an input for receiving input image data and difference information indicative of a difference between images captured by a video transmitter apparatus, said decode unit operable for producing predicted image data as a function of said input image data and said difference information; a scene change detector for detecting whether an input video stimulus seen by the video transmitter apparatus has been changed from a first video stimulus to a second video stimulus, wherein the scene change detector also provides an indication of whether the input video stimulus has so changed, said selector responsive to said indication to select said predicted image data if the input video stimulus has not been changed, and to select said other image data if the input video stimulus has been changed; and a selector coupled to said scene change detector and coupled between said decode unit and said output for selectively providing to said output one of said predicted image data and other image data produced independently of said input image data and said difference information.
42. A video encoding apparatus, comprising:
a first input for sequentially receiving first image data corresponding to a first image in a sequence of images, second image data corresponding to a second image in the sequence of images, and third image data corresponding to a third image in the sequence of images; a second input coupled to said first input for sequentially receiving therefrom said first, second and third image data; an encode unit coupled to said first and second inputs and operable in response to image data received at said first and second inputs for providing difference information indicative of a difference between images respectively corresponding to said image data received at said first and second inputs, said encode unit operable when said first and second image data are respectively present at said second and first data inputs for providing first difference information indicative of a difference between said first and second images; and a selector coupled between said first and second inputs and operable when said second image data is present at said first input for selecting one of said second image data and further image data other than said second image data, and for providing the selected image data to said second input.
31. A video decoding apparatus, comprising:
an output for providing output image data; a decode unit having an input for receiving input image data and for receiving difference information indicative of a difference between images captured by a video transmitter apparatus, said decode unit responsive to said input image data and said difference information for providing said output image data as a function of said difference information and said input image data; a scene change detector for detecting whether an input video stimulus seen by the video transmitter apparatus has been changed from a first video stimulus to a second video stimulus, wherein the scene change detector also provides an indication of whether the input video stimulus has so changed, said selector responsive to said indication to select said output image data if the input video stimulus has not been changed, and to select said other image data if the input video stimulus has been changed; and a selector coupled to said scene change detector and coupled between said output and said decode unit input for selecting one of said output image data and other image data produced independently of said output image data, and providing the selected image data to said decode input to update said input image data.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
16. The method of
17. The method of
18. The method of
20. The method of
21. The method of
22. The method of
23. The method of
25. The apparatus of
26. The apparatus of
27. The apparatus of
28. The apparatus of
29. The apparatus of
30. The apparatus of
32. The apparatus of
33. The apparatus of
34. The apparatus of
35. The apparatus of
36. The apparatus of
37. The apparatus of
39. The apparatus of
40. The apparatus of
41. The apparatus of
43. The apparatus of
44. The apparatus of
45. The apparatus of
46. The apparatus of
|
The invention relates generally to audio and video encoding and, more particularly, to scene switching in predictive audio and video encoding.
Audio encoding in
The input signal to such a predictive audio codec is divided into frames, typically less than 40 milliseconds of audio data per frame. For each frame, a set of filter parameters and the excitation vectors describing that particular frame are derived using digital signal processing. The calculation of filter parameters depends not only on the current audio frame, but also on the state of the digital filters when they begin processing the current frame. For example, if an input signal suddenly becomes completely silent, the memory of the digital filters would generate a signal that would extend into the silent frame. This is conventionally called ringing. When calculating the parameters for the short-term filter and the long-term filter, conventional codecs compensate for the aforementioned ringing phenomenon.
It is well known that, when starting an audio decoder, audible artifacts could result if the filter states of the decoder are initialized with nonrepresentative values, such as random values or even zeros. Therefore, pre-determined filter states are often preloaded into the filters to initialize the audio decoder. This procedure is conventionally known as audio decoder homing.
In conventional video encoding, the video encoder receives a video input from a camera, and takes a snapshot of (captures) the incoming video for encoding. There are several well-known conventional video encoding/decoding techniques, for example MPEG1 and MPEG2. MPEG1 is well suited to video coding for CD-based video. The MPEG1 standard specifies the syntax of the coded bit stream and also describes a model decoder. Frames of video are coded as pictures, with each frame being encoded in a progressive order. There are three main types of coded pictures in MPEG1, namely I-pictures (intrapictures) which are intraframe encoded and do not use prediction, P-pictures (forward predicted pictures) which are interframe encoded using motion prediction from a previous I or P picture in the sequence, and B-pictures (bidirectional predicted pictures) which are interframe encoded using interpolated motion prediction between a previous I or P picture and the next I or P picture in the sequence.
MPEG2 extends the functionality provided by MPEG1 to enable efficient coding of video and associated audio at a wide range of resolutions and bit rates. MPEG2 describes a range of profiles and levels which provide encoding parameters for a range of applications. Each profile specifies a particular set of coding features.
In the above-described predictive video encoding techniques such as MPEG1 and MPEG2, the current output of the video decoder depends on the previous output of the video decoder, for example in P pictures and B pictures. Similarly, in the above-described predictive audio encoding techniques, such as CELP coding, the current output of the audio decoder depends on the state that the audio decoder's digital filters were left in after calculating the previous audio decoder output. This reliance on a previous video encoder output or a previous digital filter state of an audio decoder can dramatically degrade the audio and video quality when the audio and video inputs of
Referring now to the conventional audio/video transmitter arrangement shown in
When switching between scene A and scene B, the difference in the corresponding images may be quite large. If the picture produced directly after the switching operation is to be predicted based on the previous picture (such as a P or B picture in MPEG1 or MPEG2), the large difference between the two pictures will typically cause a very noticeable effect in the video stream, and several subsequent frames will typically be required to "catch up" after the switch. This effect is quite noticeable when using conventional video conferencing tools such as VIC, especially if the scene is switched back and forth several times.
The arrangement of
It is desirable in view of the foregoing to provide predictive audio and video encoding which accommodates switching among multiple scenes/sounds without the aforementioned disadvantages of the prior art.
The present invention provides for smooth switching among multiple scenes/sounds in a predictive audio/video encoding environment.
The scene change detector 71 analyzes the received video frames to determine whether the video stimulus has changed, for example, from scene A to scene B. When a scene change is detected by the scene change detector 71, this detection is signaled to a control input 73 of a cache memory 75. In response to the scene change detection signal at 73, the cache memory 75 stores therein the contents of a next image register 77 whose output 702 is coupled to cache memory data input 76. Also in response to the scene change detection signal received at 73, the cache memory outputs a control signal at 70 causing a selector 78 to route a data output 72 from the cache 75 to an input of 14 the next image register 77.
The output 702 of next image register 77 provides the output image data of the decoder of
As indicated above, in a normal (conventional) decode cycle, the decode section 74 produces a predicted image at 701 in response to the current image and the current snapshot difference frame. This predicted image is loaded into the next image register 77 at the end of the decode cycle. Prior to the next decode cycle, the next image information at 77 is loaded into the current image register 79 for use in the next decode cycle. This use of successive predictive decoding cycles is well known in the art, for example in the MPEG1 and MPEG2 standards. As discussed in detail below, by loading the next image register 77 from the cache 75 when a scene change is detected at 71, the video decoder of
If a scene change is detected at 83, then at 87, the next image data is stored in the cache memory. Thereafter, it is determined at 88 whether the cache has stored therein image data corresponding to the new scene that has been switched to. If not, then the next image data is forwarded to the current image register at 85, and the next decode cycle is performed at 81. If image data for the new scene is available at 88, then at 89, the next image register is loaded from the cache memory and, after a delay at 84 of approximately one decode cycle, the next image is loaded into the current image register at 85, and the next decode cycle is performed at 81. In this manner, provided there is an appropriate image in the cache memory, the decode cycle corresponding to the large snapshot difference associated with the scene change can be avoided by inserting the image from the cache as the next image produced in that particular decode cycle. After the one decode cycle delay at 84, the next image data (which was loaded into register 77 from the cache 75) is transferred to the current image register at 85, and the first decode cycle associated with the new scene is executed at 81.
When the scene change detector 71 of
Using the example of
The detector 93 of
In other embodiments, the detector 93 can be eliminated, and the control input 70 of selector 78 can be driven directly from the output 73 of scene change detector 71, as shown in broken line in
A traffic analyzer 157 is coupled to each of the IP applications 153, and is operable to detect, for each IP application 153, when that application either begins to handle traffic or ceases to handle traffic. When an IP application begins to handle traffic, this indicates that the transmitter has switched to the scene corresponding to that IP application, and when the traffic in a particular IP application ceases, this indicates that the transmitter has switched from the corresponding scene to another scene. Scene change information output at 159 from the traffic analyzer 157 is applied to a control input of a selector 152. In response to the control input, the selector 152 selects the application which is currently receiving traffic. The output of the selector 152 is then provided to the decode section (in
In the scene change detector embodiment of
In the video encoder of
The broken lines in
Upon a change from scene A to scene B, the decoder of
The broken lines in
It will be evident from the foregoing detailed description that the inventive embodiments described above with respect to
Although exemplary embodiments of the present invention have been described above in detail, this does not limit the scope of the invention, which can be practiced in a variety of embodiments.
Sundqvist, Jim, Bergquist, Henrik
Patent | Priority | Assignee | Title |
6819353, | Dec 23 1999 | Wespot Technologies AB; SECUMANAGEMENT B V | Multiple backgrounds |
6968396, | Jul 26 2001 | UNWIRED PLANET IP MANAGER, LLC; Unwired Planet, LLC | Reloading of hypermedia pages by sending only changes |
7586541, | Aug 26 2003 | ADVOCADO, INC | Method and system for enhanced modulation of video signals |
7664175, | Jun 16 2004 | ADVOCADO, INC | Mark-based content modulation and detection |
7675541, | Dec 28 2001 | Sony Corporation | Display apparatus and control method |
7692723, | Aug 26 2003 | ADVOCADO, INC | Method and system for enhanced modulation of video signals |
8405772, | Aug 26 2003 | ADVOCADO, INC | Method and system for enhanced modulation of video signals |
8457155, | Sep 11 2009 | WSOU Investments, LLC | Encoding and decoding a multi-view video signal |
8595764, | Jun 25 1998 | JLB Ventures LLC | Image-oriented electronic programming guide |
8798133, | Nov 29 2007 | ADVOCADO, INC | Dual channel encoding and detection |
8842725, | Jun 16 2004 | ADVOCADO, INC | Mark-based content modulation and detection |
Patent | Priority | Assignee | Title |
4716453, | Jun 20 1985 | AT&T Bell Laboratories | Digital video transmission system |
5416520, | Nov 30 1993 | Intel Corporation | Multiple encoder output buffer apparatus for differential coding of video information |
5446491, | Dec 21 1993 | Hitachi, Ltd. | Multi-point video conference system wherein each terminal comprises a shared frame memory to store information from other terminals |
5602592, | Jan 18 1994 | Matsushita Electric Industrial Co., Ltd. | Moving picture compressed signal changeover apparatus |
5684954, | Mar 20 1993 | International Business Machine Corp. | Method and apparatus for providing connection identifier by concatenating CAM's addresses at which containing matched protocol information extracted from multiple protocol header |
5790179, | Dec 21 1993 | Hitachi, Ltd. | Multi-point motion picture encoding and decoding apparatus |
5841475, | Oct 28 1994 | Kabushiki Kaisha Toshiba | Image decoding with dedicated bidirectional picture storage and reduced memory requirements |
5850207, | Nov 22 1995 | Nvidia Corporation | Method and apparatus for minimizing effects of slope overload condition when using differential pulse code modulation scheme |
5859932, | Apr 20 1994 | Matsushita Electric Industrial Co. Ltd. | Vector quantization coding apparatus and decoding apparatus |
5923783, | Aug 07 1996 | Fuji Xerox Co., Ltd. | Image encoding apparatus and image decoding apparatus |
5933536, | Jun 28 1996 | Sony Corporation | Variable length code processor and image processor having an integrated coding/decoding circuit |
EP590974, | |||
EP606675, | |||
WO9728652, | |||
WO9832281, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Apr 27 1999 | Telefonaktiebolaget L M Ericsson (publ) | (assignment on the face of the patent) | / | |||
May 25 1999 | BERGQUIST, HENRIK | TELEFONAKTIEBOLAGET L M ERICSSON PUBL | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 010089 | /0582 | |
May 29 1999 | SUNDQVIST, JIM | TELEFONAKTIEBOLAGET L M ERICSSON PUBL | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 010089 | /0582 |
Date | Maintenance Fee Events |
Oct 16 2006 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Oct 15 2010 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Oct 15 2014 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Apr 15 2006 | 4 years fee payment window open |
Oct 15 2006 | 6 months grace period start (w surcharge) |
Apr 15 2007 | patent expiry (for year 4) |
Apr 15 2009 | 2 years to revive unintentionally abandoned end. (for year 4) |
Apr 15 2010 | 8 years fee payment window open |
Oct 15 2010 | 6 months grace period start (w surcharge) |
Apr 15 2011 | patent expiry (for year 8) |
Apr 15 2013 | 2 years to revive unintentionally abandoned end. (for year 8) |
Apr 15 2014 | 12 years fee payment window open |
Oct 15 2014 | 6 months grace period start (w surcharge) |
Apr 15 2015 | patent expiry (for year 12) |
Apr 15 2017 | 2 years to revive unintentionally abandoned end. (for year 12) |