US8311111B2 - System and method for decoding using parallel processing - Google Patents
System and method for decoding using parallel processing Download PDFInfo
- Publication number
- US8311111B2 US8311111B2 US12/329,248 US32924808A US8311111B2 US 8311111 B2 US8311111 B2 US 8311111B2 US 32924808 A US32924808 A US 32924808A US 8311111 B2 US8311111 B2 US 8311111B2
- Authority
- US
- United States
- Prior art keywords
- partition
- decoding
- partitions
- row
- blocks
- 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.)
- Active, expires
Links
- 238000005192 partition Methods 0.000 claims abstract description 107
- 230000000875 corresponding Effects 0.000 claims description 7
- 238000000034 methods Methods 0.000 abstract description 14
- 238000010586 diagrams Methods 0.000 description 9
- 238000007906 compression Methods 0.000 description 6
- 230000001419 dependent Effects 0.000 description 4
- 281000053831 Porter (beer) companies 0.000 description 3
- 230000003044 adaptive Effects 0.000 description 3
- 239000010410 layers Substances 0.000 description 3
- 230000001131 transforming Effects 0.000 description 3
- 230000000903 blocking Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006011 modification reactions Methods 0.000 description 2
- 244000247747 Coptis groenlandica Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000007787 solids Substances 0.000 description 1
- 230000002123 temporal effects Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Abstract
Description
This application claims priority to U.S. provisional patent application No. 61/096,223, filed Sep. 11, 2008, which is incorporated herein in its entirety by reference.
The present invention relates in general to video decoding using multiple processors.
An increasing number of applications today make use of digital video for various purposes including, for example, remote business meetings via video conferencing, high definition video entertainment, video advertisements, and sharing of user-generated videos. As technology is evolving, people have higher expectations for video quality and expect high resolution video with smooth playback at a high frame rate.
There can be many factors to consider when selecting a video coder for encoding, storing and transmitting digital video. Some applications may require excellent video quality where others may need to comply with various constraints including, for example, bandwidth or storage requirements. To permit higher quality transmission of video while limiting bandwidth consumption, a number of video compression schemes are noted including proprietary formats such as VPx (promulgated by On2 Technologies, Inc. of Clifton Park, N.Y.), H.264 standard promulgated by ITU-T Video Coding Experts Group (VCEG) and the ISO/IEC Moving Picture Experts Group (MPEG), including present and future versions thereof. H.264 is also known as MPEG-4 Part 10 or MPEG-4 AVC (formally, ISO/IEC 14496-10).
There are many types of video encoding schemes that allow video data to be compressed and recovered. The H.264 standard, for example, offers more efficient methods of video coding by incorporating entropy coding methods such as Context-based Adaptive Variable Length Coding (CAVLC) and Context-based Adaptive Binary Arithmetic Coding (CABAC). For video data that is encoded using CAVLC, some modern decompression systems have adopted the use of a multi-core processor or multiproccssors to increase overall video decoding speed.
An embodiment of the invention is disclosed as a method for decoding a stream of encoded video data including a plurality of partitions that have been compressed using at least a first encoding scheme. The method includes selecting at least a first one of the partitions that includes at least one row of blocks that has been encoded using at least a second encoding scheme. A second partition is selected that includes at least one row of blocks encoded using the second encoding scheme. The first partition is decoded by a first processor, and the second partition is decoded by a second processor. The decoding of the second partition is offset by a specified number of blocks so that at least a portion of the output from the decoding of the first partition is used as input in decoding the second partition. Further, the decoding of the first partition is offset by a specified number of blocks so that at least a portion of the output from the decoding of the second partition is used as input in decoding the first partition.
The description herein makes reference to the accompanying drawings wherein like reference numerals refer to like parts throughout the several views, and wherein:
Referring to
Although the description of embodiments are described in the context of the VP8 video coding format, alternative embodiments of the present invention can be implemented in the context of other video coding formats. Further, the embodiments are not limited to any specific video coding standard or format.
Referring to
When input video stream 16 is presented for encoding, each frame 17 within input video stream 16 can be processed in units of macroblocks. At intra/inter prediction stage 18, each macroblock can be encoded using either intra prediction or interprediction mode. In the case of intra-prediction, a prediction macroblock can be formed from samples in the current frame that have been previously encoded and reconstructed. In the case of inter-prediction, a prediction macroblock can be formed from one or more reference frames that have already been encoded and reconstructed.
Next, still referring to
The reconstruction path in
Referring to
When compressed bitstream 26 is presented for decoding, the data elements can be decoded by entropy decoding stage 25 to produce a set of quantized coefficients. Dequantization stage 27 dequantizes and inverse transform stage 29 inverse transforms the coefficients to produce a derivative residual that is identical to that created by the reconstruction stage in encoder 14. Using the type of prediction mode and/or motion vector information decoded from the compressed bitstream 26, at intra/inter prediction stage 23, decoder 21 creates the same prediction macroblock as was created in encoder 14. At the reconstruction stage 33, the prediction macroblock can be added to the derivative residual to create a reconstructed macroblock. The loop filter 34 can be applied to the reconstructed macroblock to reduce blocking artifacts. A deblocking filter 33 can be applied to video image frames to further reduce blocking distortion and the result can be outputted to output video stream 35.
Current context-based entropy coding methods, such as Context-based Adaptive Arithmetic Coding (CABAC), are limited by dependencies that exploit spatial locality by requiring macroblocks to reference neighboring macroblocks and that exploit temporal localities by requiring macroblocks to reference macroblocks from another frame. Because of these dependencies and the adaptivity, encoder 14 codes the bitstream in a sequential order using context data from neighboring macroblocks. Such sequential dependency created by encoder 14 causes the compressed bitstream 26 to be decoded in a sequential fashion by decoder 21. Such sequential decoding can be adequate when decoding using a single-core processor. On the other hand, if a multi-core processor or a multi-processor system is used during decoding, the computing power of the multi-core processor or the multi-processor system would not be effectively utilized.
Although the disclosure has and will continue to describe embodiments of the present invention with reference to a multi-core processor and the creation of threads on the multi-core processor, embodiments of the present invention can also be implemented with other suitable computer systems, such as a device containing multiple processors.
According to one embodiment, encoder 14 divides the compressed bitstream into partitions 36 rather than a single stream of serialized data. With reference to
Referring to
An alternative grouping mechanism may include, for example, grouping a row of blocks from a first frame and a corresponding row of blocks in a second frame. The row of blocks from the first frame can be packed in the first partition and the corresponding row of blocks in the second frame can be packed in the second partition. A first processor can decode the row of blocks from the first frame and a second processor can decode the row of blocks from the second frame. In this manner, the decoder can decode at least one block in the second partition using information from a block that is already decoded by the first processor.
Each of the partitions 36 can be compressed using two separate encoding schemes. The first encoding scheme can be lossless encoding using, for example, context-based arithmetic-coding like CABAC. Other lossless encoding techniques may also be used. Referring back to
Still referring to
Referring to
Once encoder 14 has divided frame 17 into partitions 36, encoder 14 writes data into video frame header 44 to indicate number of partitions 40 and offsets of each partition 42. Number of partitions 40 and offsets of each partition 42 can be represented in frame 17 by a bit, a byte or any other record that can relay the specific information to decoder 21. Decoder 21 reads the number of data partitions 40 from video frame header 44 in order to decode the compressed data. In one example, two bits may be used to represent the number of partitions. One or more bits can be used to indicate the number of data partitions (or partition count). Other coding schemes can also be used to code the number of partitions into the bitstream. The following list indicates how two bits can represent the number of partitions:
If the number of data partitions is greater than one, decoder 21 also needs information about the positions of the data partitions 36 within the compressed bitstream 26. The offsets of each partition 42 (also referred to as partition location offsets) enable direct access to each partition during decoding.
In one example, offset of each partition 42 can be relative to the beginning of the bitstream and can be encoded and written into the bitstream 26. In another example, the offset for each data partition can be encoded and written into the bitstream except for the first partition since the first partition implicitly begins in the bitstream 26 after the offsets of each partition 42. The foregoing is merely exemplary. Other suitable data structures flags or records such words and bytes, can be used to transmit partition count and partition location offset information.
Although the number of data partitions can be the same for each frame 17 throughout the input video sequence 16, the number of data partitions may also differ from frame to frame. Accordingly, each frame 17 would have a different number of partitions 40. The number of bits that are used to represent the number of partitions may also differ from frame to frame. Accordingly, each frame 17 could be divided into varying numbers of partitions.
Once the data has been compressed into bitstream 26 with the proper partition data information (i.e. number of partitions 40 and offsets of partitions 42), decoder 21 can decode the data partitions 36 on a multi-core processor in parallel. In this manner, each processor core may be responsible for decoding one of the data partitions 36. Since multi-core processors typically have more than one processing core and shared memory space, the workload can be allocated between each core as evenly as possible. Each core can use the shared memory space as an efficient way of sharing data between each core decoding each data partition 36.
For example, if there are two processors decoding two partitions, respectively, the first processor will begin decoding the first partition. The second processor can then decode macroblocks of the second partition and can use information received from the first processor, which has begun decoding macroblocks of the first partition. Concurrently with the second processor, the first processor can continue decoding macroblocks of the first partition and can use information received from the second processor. Accordingly, both the first and second processors can have the information necessary to properly decode macroblocks in their respective partitions.
Furthermore, as discussed in more detail below, when decoding a macroblock row of the second partition that is dependent on the first partition, a macroblock that is currently being processed in the second partition is offset by a specified number of macroblocks. In this manner, at least a portion of the output of the decoding of the first partition can be used as input in the decoding of the macroblock that is currently being processed in the second partition. Likewise, when decoding a macroblock row of the first partition that is dependent on the second partition, a macroblock that is currently being processed in the first partition is offset by a specified number of macroblocks so that at least a portion of the output of the decoding of the second partition can be used as input in the decoding of the macroblock that is currently being processed in the first partition.
When decoding the compressed bitstream, decoder 21 determines the number of threads needed to decode the data, which can be based on the number of partitions 40 in each encoded frame 39. For example, if number of partitions 40 indicates that there are four partitions in encoded frame 39, decoder 21 creates four threads with each thread decoding one of the data partitions. Referring to
As discussed previously, macroblocks 20 within each frame use context data from neighboring macroblocks when being encoded. When decoding macroblocks 20, the decoder will need the same context data in order to decode the macroblocks properly. On the decoder side, the context data can be available only after the neighboring macroblocks have already been decoded by the current thread or other threads. In order to decode properly, the decoder includes a staging and synchronization mechanism for managing the decoding of the multiple threads.
With reference to
As depicted in
Each of
Referring to
Referring to
Previous decoding mechanisms were unable to efficiently use a multi-core processor to decode a compressed bitstream because processing of a macroblock row could not be initiated until the upper adjacent macroblock row had been completely decoded. The difficulty of previous decoding mechanisms stems from the encoding phase. When data is encoded using traditional encoding techniques, spatial dependencies within macroblocks imply a specific order of processing of the macroblocks. Furthermore, once the frame has been encoded, a specific macroblock row cannot be discerned until the row has been completely decoded. Accordingly, video coding methods incorporating entropy coding methods such as CABAC created serialized dependencies which were passed to the decoder. As a result of these serialized dependencies, decoding schemes had limited efficiency because information for each computer processing system (e.g. threads 46, 48 and 50) was not available until the decoding process has been completed on that macroblock row.
Utilizing the parallel processing staging and synchronization mechanism illustrated in
Referring again to
Referring to
Referring to
In the preferred embodiment, the offset can be determined by the specific requirements of the codec. In alternative embodiments, the offset can be specified in the bitstream.
While the invention has been described in connection with certain embodiments, it is to be understood that the invention is not to be limited to the disclosed embodiments but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims, which scope is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures as is permitted under the law.
Claims (19)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9622308P true | 2008-09-11 | 2008-09-11 | |
US12/329,248 US8311111B2 (en) | 2008-09-11 | 2008-12-05 | System and method for decoding using parallel processing |
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/329,248 US8311111B2 (en) | 2008-09-11 | 2008-12-05 | System and method for decoding using parallel processing |
KR1020117006211A KR20110053243A (en) | 2008-09-11 | 2009-09-10 | System and method for decoding using parallel processing |
PCT/US2009/056473 WO2010030752A2 (en) | 2008-09-11 | 2009-09-10 | System and method for decoding using parallel processing |
CA2736888A CA2736888A1 (en) | 2008-09-11 | 2009-09-10 | System and method for decoding using parallel processing |
EP09813587.4A EP2324639B1 (en) | 2008-09-11 | 2009-09-10 | System and method for decoding using parallel processing |
CN200980135560.5A CN102150425B (en) | 2008-09-11 | 2009-09-10 | System and method for decoding using parallel processing |
JP2011526962A JP5400888B2 (en) | 2008-09-11 | 2009-09-10 | Decoding system and method using parallel processing |
US13/565,364 US9357223B2 (en) | 2008-09-11 | 2012-08-02 | System and method for decoding using parallel processing |
US15/165,577 US10230986B2 (en) | 2008-09-11 | 2016-05-26 | System and method for decoding using parallel processing |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/565,364 Division US9357223B2 (en) | 2008-09-11 | 2012-08-02 | System and method for decoding using parallel processing |
Publications (2)
Publication Number | Publication Date |
---|---|
US20100061455A1 US20100061455A1 (en) | 2010-03-11 |
US8311111B2 true US8311111B2 (en) | 2012-11-13 |
Family
ID=41799267
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/329,248 Active 2031-07-12 US8311111B2 (en) | 2008-09-11 | 2008-12-05 | System and method for decoding using parallel processing |
US13/565,364 Active 2031-07-05 US9357223B2 (en) | 2008-09-11 | 2012-08-02 | System and method for decoding using parallel processing |
US15/165,577 Active 2029-08-16 US10230986B2 (en) | 2008-09-11 | 2016-05-26 | System and method for decoding using parallel processing |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/565,364 Active 2031-07-05 US9357223B2 (en) | 2008-09-11 | 2012-08-02 | System and method for decoding using parallel processing |
US15/165,577 Active 2029-08-16 US10230986B2 (en) | 2008-09-11 | 2016-05-26 | System and method for decoding using parallel processing |
Country Status (7)
Country | Link |
---|---|
US (3) | US8311111B2 (en) |
EP (1) | EP2324639B1 (en) |
JP (1) | JP5400888B2 (en) |
KR (1) | KR20110053243A (en) |
CN (1) | CN102150425B (en) |
CA (1) | CA2736888A1 (en) |
WO (1) | WO2010030752A2 (en) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110194617A1 (en) * | 2010-02-11 | 2011-08-11 | Nokia Corporation | Method and Apparatus for Providing Multi-Threaded Video Decoding |
US20130145394A1 (en) * | 2011-12-02 | 2013-06-06 | Steve Bakke | Video providing textual content system and method |
US20140086325A1 (en) * | 2012-09-27 | 2014-03-27 | Qualcomm Incorporated | Scalable extensions to hevc and temporal motion vector prediction |
US20140269927A1 (en) * | 2013-03-15 | 2014-09-18 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data using metadata |
US20140355691A1 (en) * | 2013-06-03 | 2014-12-04 | Texas Instruments Incorporated | Multi-threading in a video hardware engine |
US9113164B1 (en) | 2012-05-15 | 2015-08-18 | Google Inc. | Constant bit rate control using implicit quantization values |
US20150237368A1 (en) * | 2008-11-11 | 2015-08-20 | Samsung Electronics Co., Ltd. | Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices |
US9185429B1 (en) | 2012-04-30 | 2015-11-10 | Google Inc. | Video encoding and decoding using un-equal error protection |
US20150334418A1 (en) * | 2012-12-27 | 2015-11-19 | Nippon Telegraph And Telephone Corporation | Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program |
US9247251B1 (en) | 2013-07-26 | 2016-01-26 | Google Inc. | Right-edge extension for quad-tree intra-prediction |
US9350988B1 (en) | 2012-11-20 | 2016-05-24 | Google Inc. | Prediction mode-based block ordering in video coding |
US20160191922A1 (en) * | 2014-04-22 | 2016-06-30 | Mediatek Inc. | Mixed-level multi-core parallel video decoding system |
US9407915B2 (en) | 2012-10-08 | 2016-08-02 | Google Inc. | Lossless video coding with sub-frame level optimal quantization values |
US9510019B2 (en) | 2012-08-09 | 2016-11-29 | Google Inc. | Two-step quantization and coding method and apparatus |
US20170142423A1 (en) * | 2002-05-28 | 2017-05-18 | Dolby Laboratories Licensing Corporation | Methods And Systems For Image Intra-Prediction Mode Management |
US9681128B1 (en) | 2013-01-31 | 2017-06-13 | Google Inc. | Adaptive pre-transform scanning patterns for video and image compression |
US9712890B2 (en) | 2013-05-30 | 2017-07-18 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9826229B2 (en) | 2012-09-29 | 2017-11-21 | Google Technology Holdings LLC | Scan pattern determination from base layer pixel information for scalable extension |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9967305B2 (en) | 2013-06-28 | 2018-05-08 | Divx, Llc | Systems, methods, and media for streaming media content |
US10158869B2 (en) | 2013-10-02 | 2018-12-18 | Renesas Electronics Corporation | Parallel video decoding processing apparatus and operating method thereof |
US10212486B2 (en) | 2009-12-04 | 2019-02-19 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
US10225588B2 (en) | 2011-09-01 | 2019-03-05 | Divx, Llc | Playback devices and methods for playing back alternative streams of content protected using a common set of cryptographic keys |
US10225299B2 (en) | 2012-12-31 | 2019-03-05 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US10368096B2 (en) | 2011-01-05 | 2019-07-30 | Divx, Llc | Adaptive streaming systems and methods for performing trick play |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US10437896B2 (en) | 2009-01-07 | 2019-10-08 | Divx, Llc | Singular, collective, and automated creation of a media guide for online content |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
US10681380B2 (en) * | 2015-06-12 | 2020-06-09 | Panasonic Intellectual Property Management Co., Ltd. | Image encoding method, image decoding method, image encoding apparatus, and image decoding apparatus |
US10687095B2 (en) | 2011-09-01 | 2020-06-16 | Divx, Llc | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US10878065B2 (en) | 2017-10-23 | 2020-12-29 | Divx, Llc | Federated digital rights management scheme including trusted systems |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8311111B2 (en) | 2008-09-11 | 2012-11-13 | Google Inc. | System and method for decoding using parallel processing |
JP5914962B2 (en) * | 2010-04-09 | 2016-05-11 | ソニー株式会社 | Image processing apparatus and method, program, and recording medium |
KR101673186B1 (en) * | 2010-06-09 | 2016-11-07 | 삼성전자주식회사 | Apparatus and method of processing in parallel of encoding and decoding of image data by using correlation of macroblock |
KR101698797B1 (en) * | 2010-07-27 | 2017-01-23 | 삼성전자주식회사 | Apparatus of processing in parallel of encoding and decoding of image data by partitioning and method of the same |
US8344917B2 (en) * | 2010-09-30 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for context initialization in video coding and decoding |
US8611415B1 (en) | 2010-11-15 | 2013-12-17 | Google Inc. | System and method for coding using improved motion estimation |
GB2486692B (en) * | 2010-12-22 | 2014-04-16 | Canon Kk | Method for encoding a video sequence and associated encoding device |
US8990435B2 (en) | 2011-01-17 | 2015-03-24 | Mediatek Inc. | Method and apparatus for accessing data of multi-tile encoded picture stored in buffering apparatus |
US9497466B2 (en) * | 2011-01-17 | 2016-11-15 | Mediatek Inc. | Buffering apparatus for buffering multi-partition video/image bitstream and related method thereof |
TWI470575B (en) * | 2011-11-24 | 2015-01-21 | Mediatek Inc | Method for read pointer maintenance of a buffering apparatus, buffer controller and buffer apparatus |
US20120314775A1 (en) * | 2011-06-08 | 2012-12-13 | Vixs Systems, Inc. | Video decoder with transposing vector processor and methods for use therewith |
US8767824B2 (en) | 2011-07-11 | 2014-07-01 | Sharp Kabushiki Kaisha | Video decoder parallelization for tiles |
US9538177B2 (en) | 2011-10-31 | 2017-01-03 | Mediatek Inc. | Apparatus and method for buffering context arrays referenced for performing entropy decoding upon multi-tile encoded picture and related entropy decoder |
US9124895B2 (en) | 2011-11-04 | 2015-09-01 | Qualcomm Incorporated | Video coding with network abstraction layer units that include multiple encoded picture partitions |
US9077998B2 (en) * | 2011-11-04 | 2015-07-07 | Qualcomm Incorporated | Padding of segments in coded slice NAL units |
US9100657B1 (en) | 2011-12-07 | 2015-08-04 | Google Inc. | Encoding time management in parallel real-time video encoding |
WO2013100694A1 (en) * | 2011-12-29 | 2013-07-04 | 엘지전자 주식회사 | Video encoding and decoding method and apparatus using same |
US9332259B2 (en) * | 2012-01-18 | 2016-05-03 | Qualcomm Incorporated | Indication of use of wavefront parallel processing in video coding |
US20130188732A1 (en) * | 2012-01-20 | 2013-07-25 | Qualcomm Incorporated | Multi-Threaded Texture Decoding |
US20130204962A1 (en) * | 2012-02-02 | 2013-08-08 | Texas Instruments Incorporated | Network and peripheral interface circuits, systems and processes |
JP6080405B2 (en) | 2012-06-29 | 2017-02-15 | キヤノン株式会社 | Image encoding device, image encoding method and program, image decoding device, image decoding method and program |
US9426498B2 (en) | 2012-07-10 | 2016-08-23 | Broadcom Corporation | Real-time encoding system of multiple spatially scaled video based on shared video coding information |
CN102769750A (en) * | 2012-07-12 | 2012-11-07 | 国家计算机网络与信息安全管理中心 | Many-core-based decoding method and decoding equipment |
CN102761487B (en) * | 2012-07-12 | 2016-04-27 | 国家计算机网络与信息安全管理中心 | data flow processing method and system |
KR101932539B1 (en) * | 2013-02-18 | 2018-12-27 | 한화테크윈 주식회사 | Method for recording moving-image data, and photographing apparatus adopting the method |
US9143161B1 (en) | 2014-04-25 | 2015-09-22 | International Business Machines Corporation | Field level compression in parallel data flows |
CN105100803B (en) * | 2014-04-29 | 2018-12-18 | 三星电子(中国)研发中心 | Video decoding optimization method |
CN105376583B (en) * | 2015-04-07 | 2017-02-22 | 佛山世寰智能科技有限公司 | Multi-core parallel video decoding method for allocating tasks and data by row in staggered manner |
CN106210728B (en) * | 2015-04-10 | 2019-08-30 | 上海澜至半导体有限公司 | For the decoded circuit of video, method and Video Decoder |
US9794574B2 (en) | 2016-01-11 | 2017-10-17 | Google Inc. | Adaptive tile data size coding for video and image compression |
US10542258B2 (en) | 2016-01-25 | 2020-01-21 | Google Llc | Tile copying for video compression |
CN108063948B (en) * | 2016-11-08 | 2020-08-04 | 联发科技股份有限公司 | Image processing device and image processing method matched with multiple processors |
JP6505142B2 (en) * | 2017-01-18 | 2019-04-24 | キヤノン株式会社 | Image encoding device, image encoding method and program, image decoding device, image decoding method and program |
Citations (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3825832A (en) | 1971-06-03 | 1974-07-23 | Ibm | Method and device for coding and decoding video signals |
US4719642A (en) | 1985-02-27 | 1988-01-12 | Scientific Atlanta, Inc. | Error detection and concealment using predicted signal values |
US4729127A (en) | 1981-10-20 | 1988-03-01 | The United States Of America As Represented By The Secretary Of The Army | Method and system for compression and reconstruction of cultural data for use in a digital moving map display |
US4736446A (en) | 1985-03-29 | 1988-04-05 | Quad-Tech Inc. | Cutoff control system |
US4868764A (en) | 1986-04-14 | 1989-09-19 | U.S. Philips Corporation | Image encoding and decoding method and apparatus |
US4891748A (en) | 1986-05-30 | 1990-01-02 | Mann Ralph V | System and method for teaching physical skills |
US5068724A (en) | 1990-06-15 | 1991-11-26 | General Instrument Corporation | Adaptive motion compensation for digital television |
US5083214A (en) | 1990-05-02 | 1992-01-21 | Eastman Kodak Company | Apparatus and methods for extracting data from a scanned bit-mapped data strip |
US5091782A (en) | 1990-04-09 | 1992-02-25 | General Instrument Corporation | Apparatus and method for adaptively compressing successive blocks of digital video |
US5136376A (en) | 1989-10-14 | 1992-08-04 | Sony Corporation | Method of coding video signals and transmission system thereof |
US5136371A (en) | 1990-03-15 | 1992-08-04 | Thomson Consumer Electronics, Inc. | Digital image coding using random scanning |
US5164819A (en) | 1991-04-03 | 1992-11-17 | Music John D | Method and system for coding and compressing color video signals |
US5270812A (en) | 1990-07-20 | 1993-12-14 | U.S. Philips Corporation | Method of encoding image pixel values for storage as compressed digital data and method of decoding the compressed digital data |
US5274442A (en) | 1991-10-22 | 1993-12-28 | Mitsubishi Denki Kabushiki Kaisha | Adaptive blocking image signal coding system |
US5313306A (en) | 1991-05-13 | 1994-05-17 | Telerobotics International, Inc. | Omniview motionless camera endoscopy system |
US5341440A (en) | 1991-07-12 | 1994-08-23 | Earl Joseph G | Method and apparatus for increasing information compressibility |
US5381145A (en) | 1993-02-10 | 1995-01-10 | Ricoh Corporation | Method and apparatus for parallel decoding and encoding of data |
US5432870A (en) | 1993-06-30 | 1995-07-11 | Ricoh Corporation | Method and apparatus for compressing and decompressing images of documents |
US5452006A (en) | 1993-10-25 | 1995-09-19 | Lsi Logic Corporation | Two-part synchronization scheme for digital video decoders |
US5561477A (en) | 1994-10-26 | 1996-10-01 | Thomson Consumer Electronics, Inc. | System for coding a video signal in the presence of an image intensity gradient |
US5576767A (en) | 1993-02-03 | 1996-11-19 | Qualcomm Incorporated | Interframe video encoding and decoding system |
US5576765A (en) | 1994-03-17 | 1996-11-19 | International Business Machines, Corporation | Video decoder |
US5589945A (en) | 1993-01-11 | 1996-12-31 | Abecassis; Max | Computer-themed playing system |
US5659539A (en) | 1995-07-14 | 1997-08-19 | Oracle Corporation | Method and apparatus for frame accurate access of digital audio-visual information |
US5696869A (en) | 1992-02-07 | 1997-12-09 | Max Abecassis | Variable-content-video provider system |
US5734744A (en) | 1995-06-07 | 1998-03-31 | Pixar | Method and apparatus for compression and decompression of color data |
US5737020A (en) | 1995-03-27 | 1998-04-07 | International Business Machines Corporation | Adaptive field/frame encoding of discrete cosine transform |
US5748247A (en) | 1996-04-08 | 1998-05-05 | Tektronix, Inc. | Refinement of block motion vectors to achieve a dense motion field |
US5774593A (en) | 1995-07-24 | 1998-06-30 | University Of Washington | Automatic scene decomposition and optimization of MPEG compressed video |
US5793647A (en) | 1995-08-15 | 1998-08-11 | Diffracto, Ltd. | System and method for graphical image data acquistion, storage, and retrieval |
US5818969A (en) | 1995-05-12 | 1998-10-06 | Intel Corporation | Intelligent start for motion estimation search |
US5828370A (en) | 1996-07-01 | 1998-10-27 | Thompson Consumer Electronics Inc. | Video delivery system and method for displaying indexing slider bar on the subscriber video screen |
US5835144A (en) | 1994-10-13 | 1998-11-10 | Oki Electric Industry Co., Ltd. | Methods of coding and decoding moving-picture signals, using self-resynchronizing variable-length codes |
US5883671A (en) | 1996-06-05 | 1999-03-16 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for partitioning compressed digital video bitstream for decoding by multiple independent parallel decoders |
US5929940A (en) | 1995-10-25 | 1999-07-27 | U.S. Philips Corporation | Method and device for estimating motion between images, system for encoding segmented images |
US5930493A (en) | 1995-06-07 | 1999-07-27 | International Business Machines Corporation | Multimedia server system and method for communicating multimedia information |
US5963203A (en) | 1997-07-03 | 1999-10-05 | Obvious Technology, Inc. | Interactive video icon with designated viewing position |
US5999641A (en) | 1993-11-18 | 1999-12-07 | The Duck Corporation | System for manipulating digitized image objects in three dimensions |
US6014706A (en) | 1997-01-30 | 2000-01-11 | Microsoft Corporation | Methods and apparatus for implementing control functions in a streamed video display system |
US6041145A (en) | 1995-11-02 | 2000-03-21 | Matsushita Electric Industrial Co., Ltd. | Device and method for smoothing picture signal, device and method for encoding picture and device and method for decoding picture |
US6061397A (en) | 1994-04-19 | 2000-05-09 | Sony Corporation | Motion vector detecting device |
US6084908A (en) | 1995-10-25 | 2000-07-04 | Sarnoff Corporation | Apparatus and method for quadtree based variable block size motion estimation |
US6108383A (en) | 1997-07-15 | 2000-08-22 | On2.Com, Inc. | Method and apparatus for compression and decompression of video images |
US6112234A (en) | 1997-07-01 | 2000-08-29 | Leiper; Thomas W. | Method for transfer of radiographic images |
US6115501A (en) | 1995-07-10 | 2000-09-05 | Hyundai Electronics Industries Co., Ltd. | Grid moving method for minimizing image information of an object |
US6119154A (en) | 1995-07-14 | 2000-09-12 | Oracle Corporation | Method and apparatus for non-sequential access to an in-progress video feed |
US6125144A (en) | 1996-03-08 | 2000-09-26 | Oki Electric Industry Co., Ltd. | Picture coding method and picture coder |
US6141381A (en) | 1997-04-25 | 2000-10-31 | Victor Company Of Japan, Ltd. | Motion compensation encoding apparatus and motion compensation encoding method for high-efficiency encoding of video information through selective use of previously derived motion vectors in place of motion vectors derived from motion estimation |
US6167164A (en) | 1997-03-10 | 2000-12-26 | Samsung Electronics Co., Ltd. | One-dimensional signal adaptive filter for reducing blocking effect and filtering method |
US6181822B1 (en) | 1993-05-12 | 2001-01-30 | The Duck Corporation | Data compression apparatus and method |
US6185363B1 (en) | 1997-06-02 | 2001-02-06 | Philips Electronics North America Corporation | Visual indexing system |
US6188799B1 (en) | 1997-02-07 | 2001-02-13 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for removing noise in still and moving pictures |
US6240135B1 (en) | 1997-09-09 | 2001-05-29 | Lg Electronics Inc | Method of removing blocking artifacts in a coding system of a moving picture |
US6292837B1 (en) | 1997-10-30 | 2001-09-18 | Daniel Miller | Apparatus and method for non-sequential image data transmission and display |
US6327304B1 (en) | 1993-05-12 | 2001-12-04 | The Duck Corporation | Apparatus and method to digitally compress video signals |
US20020031184A1 (en) | 1998-07-15 | 2002-03-14 | Eiji Iwata | Encoding apparatus and method of same and decoding apparatus and method of same |
US6400763B1 (en) | 1999-02-18 | 2002-06-04 | Hewlett-Packard Company | Compression system which re-uses prior motion vectors |
US6414995B2 (en) | 1999-07-29 | 2002-07-02 | Mitsubishi Denki Kabushiki Kaisha | Motion vector detection system |
US6418166B1 (en) | 1998-11-30 | 2002-07-09 | Microsoft Corporation | Motion estimation and block matching pattern |
US20020168114A1 (en) | 2001-02-06 | 2002-11-14 | Valente Stephane Edouard | Preprocessing method applied to textures of arbitrarily shaped objects |
US20030023982A1 (en) | 2001-05-18 | 2003-01-30 | Tsu-Chang Lee | Scalable video encoding/storage/distribution/decoding for symmetrical multiple video processors |
US6522784B1 (en) | 2000-04-11 | 2003-02-18 | International Business Machines Corporation | Enhanced compression of gray-level images |
US6529638B1 (en) | 1999-02-01 | 2003-03-04 | Sharp Laboratories Of America, Inc. | Block boundary artifact reduction for block-based image compression |
US6560366B1 (en) | 1995-12-16 | 2003-05-06 | Paul Gordon Wilkins | Method for analyzing the content of a video signal |
US20030189982A1 (en) | 2002-04-01 | 2003-10-09 | Macinnis Alexander | System and method for multi-row decoding of video with dependent rows |
US20030215018A1 (en) | 2002-05-14 | 2003-11-20 | Macinnis Alexander G. | System and method for transcoding entropy-coded bitstreams |
US6687303B1 (en) | 1999-03-17 | 2004-02-03 | Renesas Technology Corp. | Motion vector detecting device |
US6697061B1 (en) | 1999-01-21 | 2004-02-24 | Hewlett-Packard Development Company, L.P. | Image compression featuring selective re-use of prior compression data |
US6707952B1 (en) | 2000-05-30 | 2004-03-16 | Sharp Laboratories Of America, Inc. | Method for removing ringing artifacts from locations near dominant edges of an image reconstructed after compression |
US20040120400A1 (en) | 2002-12-20 | 2004-06-24 | Lsi Logic Corporation | Method and /or apparatus for motion estimation using a hierarchical search followed by a computation split for different block sizes |
US6765964B1 (en) | 2000-12-06 | 2004-07-20 | Realnetworks, Inc. | System and method for intracoding video data |
US20040228410A1 (en) | 2003-05-12 | 2004-11-18 | Eric Ameres | Video compression method |
US6826229B2 (en) | 2000-09-27 | 2004-11-30 | Kabushiki Kaisha Toshiba | Device and method for coding video information |
US20040240556A1 (en) | 2003-06-02 | 2004-12-02 | Lsi Logic Corporation | Method for improving rate-distortion performance of a video compression system through parallel coefficient cancellation in the transform |
US20040258151A1 (en) | 2003-06-05 | 2004-12-23 | Stmicroelectronics S.R.L. | Method and apparatus for decoding compressed and encoded digital images |
US20050147165A1 (en) | 2004-01-06 | 2005-07-07 | Samsung Electronics Co., Ltd. | Prediction encoding apparatus, prediction encoding method, and computer readable recording medium thereof |
US20050169374A1 (en) | 2004-01-30 | 2005-08-04 | Detlev Marpe | Video frame encoding and decoding |
US20050265447A1 (en) | 2004-05-25 | 2005-12-01 | Industry Academic Cooperation Foundation Kyunghee Univ. | Prediction encoder/decoder, prediction encoding/decoding method, and computer readable recording medium having recorded thereon program for implementing the prediction encoding/decoding method |
US20050265461A1 (en) | 2004-05-04 | 2005-12-01 | Raveendran Vijayalakshmi R | Method and apparatus to enable acquisition of media in streaming applications |
US20050276323A1 (en) | 2002-09-27 | 2005-12-15 | Vanguard Software Solutions, Inc. | Real-time video coding/decoding |
US6985526B2 (en) | 1999-12-28 | 2006-01-10 | Koninklijke Philips Electronics N.V. | SNR scalable video encoding method and corresponding decoding method |
US6987866B2 (en) | 2001-06-05 | 2006-01-17 | Micron Technology, Inc. | Multi-modal motion estimation for video sequences |
US7027654B1 (en) | 2001-08-16 | 2006-04-11 | On2 Technologies | Video compression system |
US20060098737A1 (en) | 2002-12-20 | 2006-05-11 | Koninklijke Philips Electronics N.V. | Segment-based motion estimation |
US20060215758A1 (en) | 2005-03-23 | 2006-09-28 | Kabushiki Kaisha Toshiba | Video encoder and portable radio terminal device using the video encoder |
US7116831B2 (en) | 2002-04-10 | 2006-10-03 | Microsoft Corporation | Chrominance motion vector rounding |
US20060239345A1 (en) | 2002-09-20 | 2006-10-26 | David Taubman | Method of signalling motion information for efficient scalable video compression |
US7170937B2 (en) | 2002-05-01 | 2007-01-30 | Texas Instruments Incorporated | Complexity-scalable intra-frame prediction technique |
US20070025441A1 (en) | 2005-07-28 | 2007-02-01 | Nokia Corporation | Method, module, device and system for rate control provision for video encoders capable of variable bit rate encoding |
US20070086528A1 (en) | 2005-10-18 | 2007-04-19 | Mauchly J W | Video encoder with multiple processors |
US7226150B2 (en) | 2003-07-14 | 2007-06-05 | Hitachi, Ltd. | Inkjet head and a method of manufacturing the same |
US7227589B1 (en) | 1999-12-22 | 2007-06-05 | Intel Corporation | Method and apparatus for video decoding on a multiprocessor system |
US20070140342A1 (en) | 1999-08-11 | 2007-06-21 | Nokia Corporation | Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding |
US7236524B2 (en) | 2002-05-28 | 2007-06-26 | Sharp Laboratories Of America, Inc. | Methods and systems for image intra-prediction mode communication |
US20070286288A1 (en) | 2006-06-08 | 2007-12-13 | Jayson Smith | Parallel batch decoding of video blocks |
US7330509B2 (en) | 2003-09-12 | 2008-02-12 | International Business Machines Corporation | Method for video transcoding with adaptive frame rate control |
WO2008036237A2 (en) | 2006-09-21 | 2008-03-27 | Analog Devices, Inc. | Multiprocessor decoder system and method |
US20080152014A1 (en) | 2006-12-21 | 2008-06-26 | On Demand Microelectronics | Method and apparatus for encoding and decoding of video streams |
US20080159407A1 (en) | 2006-12-28 | 2008-07-03 | Yang Nick Y | Mechanism for a parallel processing in-loop deblock filter |
US20080212678A1 (en) | 2003-12-10 | 2008-09-04 | Simon Booth | Computational reduction in motion estimation based on lower bound of cost function |
US7499492B1 (en) | 2004-06-28 | 2009-03-03 | On2 Technologies, Inc. | Video compression and encoding method |
WO2010063184A1 (en) | 2008-12-03 | 2010-06-10 | Mediatek Inc. | Method for performing parallel cabac processing with ordered entropy slices, and associated apparatus |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4797729A (en) | 1988-02-05 | 1989-01-10 | Eastman Kodak Company | System incorporating an error tolerant picture compression algorithm |
US5225832A (en) | 1992-02-13 | 1993-07-06 | Industrial Technology Research Institute | High speed variable length decoder |
US5506621A (en) | 1992-08-21 | 1996-04-09 | Canon Kabushiki Kaisha | Image processing method and apparatus |
KR0134483B1 (en) | 1994-06-14 | 1998-05-15 | 배순훈 | Address correction circuit of a decoder |
EP0756386B1 (en) | 1995-07-27 | 2003-09-17 | Victor Company Of Japan, Limited | Method and apparatus for coding a digital, acoustic signal |
US6160846A (en) | 1995-10-25 | 2000-12-12 | Sarnoff Corporation | Apparatus and method for optimizing the rate control in a coding system |
JP3510433B2 (en) | 1996-11-26 | 2004-03-29 | シャープ株式会社 | Image processing device |
US6496537B1 (en) | 1996-12-18 | 2002-12-17 | Thomson Licensing S.A. | Video decoder with interleaved data processing |
US6594315B1 (en) | 1996-12-18 | 2003-07-15 | Thomson Licensing S.A. | Formatting of recompressed data in an MPEG decoder |
DE69734968T2 (en) | 1996-12-20 | 2006-07-27 | International Business Machines Corp. | Distributed element switching system for connection to line adjusters and with multiple transmission capability |
US6366704B1 (en) | 1997-12-01 | 2002-04-02 | Sharp Laboratories Of America, Inc. | Method and apparatus for a delay-adaptive rate control scheme for the frame layer |
US6181742B1 (en) | 1998-01-26 | 2001-01-30 | International Business Machines Corporation | Single pass target allocation for video encoding |
DE19835845A1 (en) | 1998-08-07 | 2000-02-10 | Siemens Ag | Method and arrangement for motion estimation in a digitized image with pixels |
EP1152621A1 (en) | 2000-05-05 | 2001-11-07 | STMicroelectronics S.r.l. | Motion estimation process and system. |
US6876703B2 (en) | 2000-05-11 | 2005-04-05 | Ub Video Inc. | Method and apparatus for video coding |
US7079579B2 (en) | 2000-07-13 | 2006-07-18 | Samsung Electronics Co., Ltd. | Block matching processor and method for block matching motion estimation in video compression |
US20050210145A1 (en) | 2000-07-24 | 2005-09-22 | Vivcom, Inc. | Delivering and processing multimedia bookmark |
CN101448162B (en) * | 2001-12-17 | 2013-01-02 | 微软公司 | Method for processing video image |
US7003035B2 (en) * | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
US7305036B2 (en) * | 2002-05-14 | 2007-12-04 | Broadcom Corporation | System and method for entropy code preprocessing |
US7813431B2 (en) * | 2002-05-20 | 2010-10-12 | Broadcom Corporation | System, method, and apparatus for decoding flexibility ordered macroblocks |
KR100504471B1 (en) | 2002-08-08 | 2005-08-03 | 엘지전자 주식회사 | Video decoding system |
US20050050002A1 (en) | 2003-07-11 | 2005-03-03 | Benjamin Slotznick | Apparatus and method of presenting textual material to enhance readability for people who have difficulty distinguishing left from right |
US7627039B2 (en) * | 2003-09-05 | 2009-12-01 | Realnetworks, Inc. | Parallel video decoding |
TWI236278B (en) | 2003-11-13 | 2005-07-11 | Mediatek Inc | Video bit stream decoding system and method used in a video decoding apparatus |
JP4217174B2 (en) | 2004-02-13 | 2009-01-28 | パナソニック株式会社 | Moving picture coding apparatus and moving picture coding method |
EP1624704B1 (en) | 2004-07-29 | 2010-03-31 | STMicroelectronics Pvt. Ltd | Video decoder with parallel processors for decoding macro-blocks |
US7558428B2 (en) | 2004-09-13 | 2009-07-07 | Microsoft Corporation | Accelerated video encoding using a graphics processing unit |
US7830964B2 (en) | 2004-11-24 | 2010-11-09 | Lsi Corporation | Method and/or apparatus for parsing compressed video bitstreams |
US7630565B2 (en) * | 2004-11-30 | 2009-12-08 | Lsi Corporation | Parallel video encoder with whole picture deblocking and/or whole picture compressed as a single slice |
EP1839133A4 (en) | 2004-12-08 | 2010-03-24 | Encomia L P | Method and system for embedding user assistance in documents utilizing markup languages |
US20060126726A1 (en) | 2004-12-10 | 2006-06-15 | Lin Teng C | Digital signal processing structure for decoding multiple video standards |
US7430238B2 (en) | 2004-12-10 | 2008-09-30 | Micronas Usa, Inc. | Shared pipeline architecture for motion vector prediction and residual decoding |
US20060256858A1 (en) | 2005-05-16 | 2006-11-16 | Douglas Chin | Method and system for rate control in a video encoder |
EP1732329A1 (en) | 2005-06-06 | 2006-12-13 | SGS-THOMSON MICROELECTRONICS S.r.l. | Method and apparatus for coding moving images |
KR100727972B1 (en) * | 2005-09-06 | 2007-06-14 | 삼성전자주식회사 | Method and apparatus for intra prediction of video |
BRPI0611668B1 (en) | 2005-09-20 | 2019-06-18 | Mitsubishi Electric Corporation | Image decoder, and, image decoding method |
US7852940B2 (en) | 2005-10-20 | 2010-12-14 | Qualcomm Incorporated | Scalable motion estimation for video encoding |
FR2894740A1 (en) * | 2005-12-12 | 2007-06-15 | Thomson Licensing Sa | Coding device, coding method, decoding system method for decoding video data |
US7952643B2 (en) | 2006-03-30 | 2011-05-31 | Intel Corporation | Pipelining techniques for deinterlacing video information |
JP4879269B2 (en) * | 2006-08-15 | 2012-02-22 | 富士通株式会社 | Decoding method and apparatus |
US9055306B2 (en) | 2006-08-31 | 2015-06-09 | Ati Technologies Ulc | Parallel decoding method and system for highly compressed data |
US8594137B2 (en) | 2007-02-20 | 2013-11-26 | Teradici Corporation | Apparatus and methods for image decoding |
US8594180B2 (en) | 2007-02-21 | 2013-11-26 | Qualcomm Incorporated | 3D video encoding |
US8416857B2 (en) | 2007-03-29 | 2013-04-09 | James Au | Parallel or pipelined macroblock processing |
US20080267295A1 (en) * | 2007-04-26 | 2008-10-30 | Chih-Ta Star Sung | Video decompression, de-interlacing and frame rate conversion with frame buffer compression |
US8265144B2 (en) | 2007-06-30 | 2012-09-11 | Microsoft Corporation | Innovations in video decoder implementations |
US8098733B2 (en) | 2008-03-10 | 2012-01-17 | Neomagic Corp. | Multi-directional motion estimation using parallel processors and pre-computed search-strategy offset tables |
US9055301B2 (en) | 2008-03-18 | 2015-06-09 | Texas Instruments Incorporated | Changing motion estimation precision to maintain encoding within desired time |
US8542748B2 (en) * | 2008-03-28 | 2013-09-24 | Sharp Laboratories Of America, Inc. | Methods and systems for parallel video encoding and decoding |
US20090249178A1 (en) | 2008-04-01 | 2009-10-01 | Ambrosino Timothy J | Document linking |
US8311111B2 (en) | 2008-09-11 | 2012-11-13 | Google Inc. | System and method for decoding using parallel processing |
US8767817B1 (en) * | 2011-04-07 | 2014-07-01 | Google Inc. | Apparatus and method for coding using parameterized equation |
US9100657B1 (en) | 2011-12-07 | 2015-08-04 | Google Inc. | Encoding time management in parallel real-time video encoding |
US9100509B1 (en) | 2012-02-07 | 2015-08-04 | Google Inc. | Dynamic bit allocation in parallel video encoding |
US20150043645A1 (en) | 2012-06-20 | 2015-02-12 | Google Inc. | Video stream partitioning to allow efficient concurrent hardware decoding |
-
2008
- 2008-12-05 US US12/329,248 patent/US8311111B2/en active Active
-
2009
- 2009-09-10 CN CN200980135560.5A patent/CN102150425B/en active IP Right Grant
- 2009-09-10 CA CA2736888A patent/CA2736888A1/en not_active Abandoned
- 2009-09-10 KR KR1020117006211A patent/KR20110053243A/en not_active Application Discontinuation
- 2009-09-10 JP JP2011526962A patent/JP5400888B2/en active Active
- 2009-09-10 WO PCT/US2009/056473 patent/WO2010030752A2/en active Application Filing
- 2009-09-10 EP EP09813587.4A patent/EP2324639B1/en active Active
-
2012
- 2012-08-02 US US13/565,364 patent/US9357223B2/en active Active
-
2016
- 2016-05-26 US US15/165,577 patent/US10230986B2/en active Active
Patent Citations (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3825832A (en) | 1971-06-03 | 1974-07-23 | Ibm | Method and device for coding and decoding video signals |
US4729127A (en) | 1981-10-20 | 1988-03-01 | The United States Of America As Represented By The Secretary Of The Army | Method and system for compression and reconstruction of cultural data for use in a digital moving map display |
US4719642A (en) | 1985-02-27 | 1988-01-12 | Scientific Atlanta, Inc. | Error detection and concealment using predicted signal values |
US4736446A (en) | 1985-03-29 | 1988-04-05 | Quad-Tech Inc. | Cutoff control system |
US4868764A (en) | 1986-04-14 | 1989-09-19 | U.S. Philips Corporation | Image encoding and decoding method and apparatus |
US4891748A (en) | 1986-05-30 | 1990-01-02 | Mann Ralph V | System and method for teaching physical skills |
US5136376A (en) | 1989-10-14 | 1992-08-04 | Sony Corporation | Method of coding video signals and transmission system thereof |
US5136371A (en) | 1990-03-15 | 1992-08-04 | Thomson Consumer Electronics, Inc. | Digital image coding using random scanning |
US5091782A (en) | 1990-04-09 | 1992-02-25 | General Instrument Corporation | Apparatus and method for adaptively compressing successive blocks of digital video |
US5083214A (en) | 1990-05-02 | 1992-01-21 | Eastman Kodak Company | Apparatus and methods for extracting data from a scanned bit-mapped data strip |
US5068724A (en) | 1990-06-15 | 1991-11-26 | General Instrument Corporation | Adaptive motion compensation for digital television |
US5270812A (en) | 1990-07-20 | 1993-12-14 | U.S. Philips Corporation | Method of encoding image pixel values for storage as compressed digital data and method of decoding the compressed digital data |
US5164819A (en) | 1991-04-03 | 1992-11-17 | Music John D | Method and system for coding and compressing color video signals |
US5313306A (en) | 1991-05-13 | 1994-05-17 | Telerobotics International, Inc. | Omniview motionless camera endoscopy system |
US5341440A (en) | 1991-07-12 | 1994-08-23 | Earl Joseph G | Method and apparatus for increasing information compressibility |
US5274442A (en) | 1991-10-22 | 1993-12-28 | Mitsubishi Denki Kabushiki Kaisha | Adaptive blocking image signal coding system |
US5696869A (en) | 1992-02-07 | 1997-12-09 | Max Abecassis | Variable-content-video provider system |
US5589945A (en) | 1993-01-11 | 1996-12-31 | Abecassis; Max | Computer-themed playing system |
US5576767A (en) | 1993-02-03 | 1996-11-19 | Qualcomm Incorporated | Interframe video encoding and decoding system |
US5381145A (en) | 1993-02-10 | 1995-01-10 | Ricoh Corporation | Method and apparatus for parallel decoding and encoding of data |
US6181822B1 (en) | 1993-05-12 | 2001-01-30 | The Duck Corporation | Data compression apparatus and method |
US6327304B1 (en) | 1993-05-12 | 2001-12-04 | The Duck Corporation | Apparatus and method to digitally compress video signals |
US5432870A (en) | 1993-06-30 | 1995-07-11 | Ricoh Corporation | Method and apparatus for compressing and decompressing images of documents |
US5452006A (en) | 1993-10-25 | 1995-09-19 | Lsi Logic Corporation | Two-part synchronization scheme for digital video decoders |
US5999641A (en) | 1993-11-18 | 1999-12-07 | The Duck Corporation | System for manipulating digitized image objects in three dimensions |
US6370267B1 (en) | 1993-11-18 | 2002-04-09 | The Duck Corporation | System for manipulating digitized image objects in three dimensions |
US5576765A (en) | 1994-03-17 | 1996-11-19 | International Business Machines, Corporation | Video decoder |
US6061397A (en) | 1994-04-19 | 2000-05-09 | Sony Corporation | Motion vector detecting device |
US5835144A (en) | 1994-10-13 | 1998-11-10 | Oki Electric Industry Co., Ltd. | Methods of coding and decoding moving-picture signals, using self-resynchronizing variable-length codes |
US5561477A (en) | 1994-10-26 | 1996-10-01 | Thomson Consumer Electronics, Inc. | System for coding a video signal in the presence of an image intensity gradient |
US5737020A (en) | 1995-03-27 | 1998-04-07 | International Business Machines Corporation | Adaptive field/frame encoding of discrete cosine transform |
US5818969A (en) | 1995-05-12 | 1998-10-06 | Intel Corporation | Intelligent start for motion estimation search |
US5930493A (en) | 1995-06-07 | 1999-07-27 | International Business Machines Corporation | Multimedia server system and method for communicating multimedia information |
US5734744A (en) | 1995-06-07 | 1998-03-31 | Pixar | Method and apparatus for compression and decompression of color data |
US6115501A (en) | 1995-07-10 | 2000-09-05 | Hyundai Electronics Industries Co., Ltd. | Grid moving method for minimizing image information of an object |
US6119154A (en) | 1995-07-14 | 2000-09-12 | Oracle Corporation | Method and apparatus for non-sequential access to an in-progress video feed |
US5659539A (en) | 1995-07-14 | 1997-08-19 | Oracle Corporation | Method and apparatus for frame accurate access of digital audio-visual information |
US5774593A (en) | 1995-07-24 | 1998-06-30 | University Of Washington | Automatic scene decomposition and optimization of MPEG compressed video |
US5793647A (en) | 1995-08-15 | 1998-08-11 | Diffracto, Ltd. | System and method for graphical image data acquistion, storage, and retrieval |
US5929940A (en) | 1995-10-25 | 1999-07-27 | U.S. Philips Corporation | Method and device for estimating motion between images, system for encoding segmented images |
US6084908A (en) | 1995-10-25 | 2000-07-04 | Sarnoff Corporation | Apparatus and method for quadtree based variable block size motion estimation |
US6041145A (en) | 1995-11-02 | 2000-03-21 | Matsushita Electric Industrial Co., Ltd. | Device and method for smoothing picture signal, device and method for encoding picture and device and method for decoding picture |
US6560366B1 (en) | 1995-12-16 | 2003-05-06 | Paul Gordon Wilkins | Method for analyzing the content of a video signal |
US6125144A (en) | 1996-03-08 | 2000-09-26 | Oki Electric Industry Co., Ltd. | Picture coding method and picture coder |
US5748247A (en) | 1996-04-08 | 1998-05-05 | Tektronix, Inc. | Refinement of block motion vectors to achieve a dense motion field |
US5883671A (en) | 1996-06-05 | 1999-03-16 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for partitioning compressed digital video bitstream for decoding by multiple independent parallel decoders |
US5828370A (en) | 1996-07-01 | 1998-10-27 | Thompson Consumer Electronics Inc. | Video delivery system and method for displaying indexing slider bar on the subscriber video screen |
US5903264A (en) | 1996-07-01 | 1999-05-11 | Sun Microsystems, Inc. | Video delivery system and method for displaying an indexing slider bar |
US6014706A (en) | 1997-01-30 | 2000-01-11 | Microsoft Corporation | Methods and apparatus for implementing control functions in a streamed video display system |
US6188799B1 (en) | 1997-02-07 | 2001-02-13 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for removing noise in still and moving pictures |
US6167164A (en) | 1997-03-10 | 2000-12-26 | Samsung Electronics Co., Ltd. | One-dimensional signal adaptive filter for reducing blocking effect and filtering method |
US6141381A (en) | 1997-04-25 | 2000-10-31 | Victor Company Of Japan, Ltd. | Motion compensation encoding apparatus and motion compensation encoding method for high-efficiency encoding of video information through selective use of previously derived motion vectors in place of motion vectors derived from motion estimation |
US6185363B1 (en) | 1997-06-02 | 2001-02-06 | Philips Electronics North America Corporation | Visual indexing system |
US6112234A (en) | 1997-07-01 | 2000-08-29 | Leiper; Thomas W. | Method for transfer of radiographic images |
US5963203A (en) | 1997-07-03 | 1999-10-05 | Obvious Technology, Inc. | Interactive video icon with designated viewing position |
US6108383A (en) | 1997-07-15 | 2000-08-22 | On2.Com, Inc. | Method and apparatus for compression and decompression of video images |
US6240135B1 (en) | 1997-09-09 | 2001-05-29 | Lg Electronics Inc | Method of removing blocking artifacts in a coding system of a moving picture |
US6292837B1 (en) | 1997-10-30 | 2001-09-18 | Daniel Miller | Apparatus and method for non-sequential image data transmission and display |
US20020031184A1 (en) | 1998-07-15 | 2002-03-14 | Eiji Iwata | Encoding apparatus and method of same and decoding apparatus and method of same |
US6418166B1 (en) | 1998-11-30 | 2002-07-09 | Microsoft Corporation | Motion estimation and block matching pattern |
US6697061B1 (en) | 1999-01-21 | 2004-02-24 | Hewlett-Packard Development Company, L.P. | Image compression featuring selective re-use of prior compression data |
US6529638B1 (en) | 1999-02-01 | 2003-03-04 | Sharp Laboratories Of America, Inc. | Block boundary artifact reduction for block-based image compression |
US6400763B1 (en) | 1999-02-18 | 2002-06-04 | Hewlett-Packard Company | Compression system which re-uses prior motion vectors |
US6687303B1 (en) | 1999-03-17 | 2004-02-03 | Renesas Technology Corp. | Motion vector detecting device |
US6414995B2 (en) | 1999-07-29 | 2002-07-02 | Mitsubishi Denki Kabushiki Kaisha | Motion vector detection system |
US20070140342A1 (en) | 1999-08-11 | 2007-06-21 | Nokia Corporation | Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding |
US7227589B1 (en) | 1999-12-22 | 2007-06-05 | Intel Corporation | Method and apparatus for video decoding on a multiprocessor system |
US6985526B2 (en) | 1999-12-28 | 2006-01-10 | Koninklijke Philips Electronics N.V. | SNR scalable video encoding method and corresponding decoding method |
US6522784B1 (en) | 2000-04-11 | 2003-02-18 | International Business Machines Corporation | Enhanced compression of gray-level images |
US6934419B2 (en) | 2000-04-11 | 2005-08-23 | International Business Machines Corporation | Enhanced compression of gray-level images |
US6707952B1 (en) | 2000-05-30 | 2004-03-16 | Sharp Laboratories Of America, Inc. | Method for removing ringing artifacts from locations near dominant edges of an image reconstructed after compression |
US6826229B2 (en) | 2000-09-27 | 2004-11-30 | Kabushiki Kaisha Toshiba | Device and method for coding video information |
US6765964B1 (en) | 2000-12-06 | 2004-07-20 | Realnetworks, Inc. | System and method for intracoding video data |
US20020168114A1 (en) | 2001-02-06 | 2002-11-14 | Valente Stephane Edouard | Preprocessing method applied to textures of arbitrarily shaped objects |
US20030023982A1 (en) | 2001-05-18 | 2003-01-30 | Tsu-Chang Lee | Scalable video encoding/storage/distribution/decoding for symmetrical multiple video processors |
US6987866B2 (en) | 2001-06-05 | 2006-01-17 | Micron Technology, Inc. | Multi-modal motion estimation for video sequences |
US7027654B1 (en) | 2001-08-16 | 2006-04-11 | On2 Technologies | Video compression system |
US20030189982A1 (en) | 2002-04-01 | 2003-10-09 | Macinnis Alexander | System and method for multi-row decoding of video with dependent rows |
US7116831B2 (en) | 2002-04-10 | 2006-10-03 | Microsoft Corporation | Chrominance motion vector rounding |
US7170937B2 (en) | 2002-05-01 | 2007-01-30 | Texas Instruments Incorporated | Complexity-scalable intra-frame prediction technique |
US20030215018A1 (en) | 2002-05-14 | 2003-11-20 | Macinnis Alexander G. | System and method for transcoding entropy-coded bitstreams |
US7236524B2 (en) | 2002-05-28 | 2007-06-26 | Sharp Laboratories Of America, Inc. | Methods and systems for image intra-prediction mode communication |
US20060239345A1 (en) | 2002-09-20 | 2006-10-26 | David Taubman | Method of signalling motion information for efficient scalable video compression |
US20050276323A1 (en) | 2002-09-27 | 2005-12-15 | Vanguard Software Solutions, Inc. | Real-time video coding/decoding |
US20040120400A1 (en) | 2002-12-20 | 2004-06-24 | Lsi Logic Corporation | Method and /or apparatus for motion estimation using a hierarchical search followed by a computation split for different block sizes |
US20060098737A1 (en) | 2002-12-20 | 2006-05-11 | Koninklijke Philips Electronics N.V. | Segment-based motion estimation |
US20040228410A1 (en) | 2003-05-12 | 2004-11-18 | Eric Ameres | Video compression method |
US20040240556A1 (en) | 2003-06-02 | 2004-12-02 | Lsi Logic Corporation | Method for improving rate-distortion performance of a video compression system through parallel coefficient cancellation in the transform |
US20040258151A1 (en) | 2003-06-05 | 2004-12-23 | Stmicroelectronics S.R.L. | Method and apparatus for decoding compressed and encoded digital images |
US7226150B2 (en) | 2003-07-14 | 2007-06-05 | Hitachi, Ltd. | Inkjet head and a method of manufacturing the same |
US7330509B2 (en) | 2003-09-12 | 2008-02-12 | International Business Machines Corporation | Method for video transcoding with adaptive frame rate control |
US20080212678A1 (en) | 2003-12-10 | 2008-09-04 | Simon Booth | Computational reduction in motion estimation based on lower bound of cost function |
US20050147165A1 (en) | 2004-01-06 | 2005-07-07 | Samsung Electronics Co., Ltd. | Prediction encoding apparatus, prediction encoding method, and computer readable recording medium thereof |
US20050169374A1 (en) | 2004-01-30 | 2005-08-04 | Detlev Marpe | Video frame encoding and decoding |
US20050265461A1 (en) | 2004-05-04 | 2005-12-01 | Raveendran Vijayalakshmi R | Method and apparatus to enable acquisition of media in streaming applications |
US20050265447A1 (en) | 2004-05-25 | 2005-12-01 | Industry Academic Cooperation Foundation Kyunghee Univ. | Prediction encoder/decoder, prediction encoding/decoding method, and computer readable recording medium having recorded thereon program for implementing the prediction encoding/decoding method |
US7499492B1 (en) | 2004-06-28 | 2009-03-03 | On2 Technologies, Inc. | Video compression and encoding method |
US20060215758A1 (en) | 2005-03-23 | 2006-09-28 | Kabushiki Kaisha Toshiba | Video encoder and portable radio terminal device using the video encoder |
US20070025441A1 (en) | 2005-07-28 | 2007-02-01 | Nokia Corporation | Method, module, device and system for rate control provision for video encoders capable of variable bit rate encoding |
US20070086528A1 (en) | 2005-10-18 | 2007-04-19 | Mauchly J W | Video encoder with multiple processors |
US20070286288A1 (en) | 2006-06-08 | 2007-12-13 | Jayson Smith | Parallel batch decoding of video blocks |
WO2008036237A2 (en) | 2006-09-21 | 2008-03-27 | Analog Devices, Inc. | Multiprocessor decoder system and method |
US20080152014A1 (en) | 2006-12-21 | 2008-06-26 | On Demand Microelectronics | Method and apparatus for encoding and decoding of video streams |
US20080159407A1 (en) | 2006-12-28 | 2008-07-03 | Yang Nick Y | Mechanism for a parallel processing in-loop deblock filter |
WO2010063184A1 (en) | 2008-12-03 | 2010-06-10 | Mediatek Inc. | Method for performing parallel cabac processing with ordered entropy slices, and associated apparatus |
Non-Patent Citations (29)
Title |
---|
"Overview; VP7 Data Format and Decoder". Version 1.5. On2 Technologies, Inc. Dated Mar. 28, 2005. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services-Coding of moving video". H.264. Advanced video coding for generic audiovisual services. Version 8. International Telecommunication Union. Dated Nov. 2007. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video". H.264. Advanced video coding for generic audiovisual services. Version 8. International Telecommunication Union. Dated Nov. 2007. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services-Coding of moving video". H.264. Amendment 2: New profiles for professional applications. International Telecommunication Union. Dated Apr. 2007. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video". H.264. Amendment 2: New profiles for professional applications. International Telecommunication Union. Dated Apr. 2007. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services-Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Amendment 1: Support of additional colour spaces and removal of the High 4:4:4 Profile. International Telecommunication Union. Dated Jun. 2006. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Amendment 1: Support of additional colour spaces and removal of the High 4:4:4 Profile. International Telecommunication Union. Dated Jun. 2006. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services-Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Version 1. International Telecommunication Union. Dated May 2003. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Version 1. International Telecommunication Union. Dated May 2003. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services-Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Version 3. International Telecommunication Union. Dated Mar. 2005. |
"Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; Advanced video coding for generic audiovisual services". H.264. Version 3. International Telecommunication Union. Dated Mar. 2005. |
"VP6 Bitstream & Decoder Specification". Version 1.02. On2 Technologies, Inc. Dated Aug. 17, 2006. |
"VP6 Bitstream & Decoder Specification". Version 1.03. On2 Technologies, Inc. Dated Oct. 29, 2007. |
Armando J. Pinho; Encoding of Image Partitions, Using a Standard Technique for Lossless Image Compression; Dep. Electronica e Telecomunicacoes/ INESC Universidade de Aveiro, Portugal. |
Li E Q et al., "Implementation of H.264 encoder on general-purpose processors with hyper-threading technology", Proceedings of SPIE, pp. 384-395, vol. 5308, No. 1, Jan. 20, 2004. |
Method for the encoding of a compressed video sequence derived from the same video sequence compressed at a different bit rate without loss of data. |
ON2 Technologies, Inc., White Paper On2's TrueMotion VP7 Video Codec, Jul. 11, 2008, pp. 7 pages, Document Version:1.0, Clifton Park, New York. |
ON2 Technologies, Inc., White Paper TrueMotion VP7 Video Codec, Jan. 10, 2005, 13 pages, Document Version: 1.0, Clifton Park, New York. |
PCT International Search Report and Written Opinion (Date of Mailing: Mar. 26, 2010); PCT/US2009/056473, filed Sep. 10, 2009. |
Rajan L. Josh, Thomas R. Fischer, Roberto H. Bamberger; Lossy Encoding of Motion Vectors Using Entropy-Constrained Vector Quantization; School of Electrical Engineering and Computer Science Washington State University, Pullman WA. |
Rajasvaran Logeswaran; A Prediction-Based Neural Network Scheme for Lossless Data Compression; Multimedia University, Malaysia. |
Sharp, "Entropy slices for parallel entropy decoding", ITU-T SG16 Meeting, Apr. 22, 2008-Feb. 5, 2008, Geneva. |
Sikora, T. et al., Shape-adaptive DCT for generic coding of video, Circuits and Systems for Video Technology, IEEE Transactions on vol. 5, Issue 1, p. 59-62, Feb. 1, 1995. |
Supplemental European Search Report for corresponding European Application No. 09813587.4 mailed Jul. 24, 2012 in 10 pages. |
Sze, "Massively Parallel CABAC", VCEG meeting, Jan. 7, 2009, London and MPEG meeting, Aug. 7, 2009, Geneva. |
T. Chen, Y.H. Ng; Lossless Color Image Compression Technique for Multimedia Applications; IBM Technical Disclosure Bulletin; vol. 37 No. 10, Oct. 1994. |
U.S. Appl. No. 11/932,870, Video Compression and Encoding Method, filed Oct. 31, 2007. |
U.S. Appl. No. 12/102,694, Video Compression and Encoding Method, filed Apr. 14, 2008. |
Wiegand et al., "Overview of the H 264/AVC Video Coding Standard," IEEE Transactions on Circuits and Systems for Video Technology, vol. 13, No. 7, pp. 568, 569, Jul. 1, 2003. |
Cited By (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9774868B2 (en) * | 2002-05-28 | 2017-09-26 | Dolby Laboratories Licensing Corporation | Methods and systems for image intra-prediction mode management |
US10715799B2 (en) | 2002-05-28 | 2020-07-14 | Dolby Laboratories Licensing Corporation | Methods and systems for image intra-prediction mode management |
US20170142423A1 (en) * | 2002-05-28 | 2017-05-18 | Dolby Laboratories Licensing Corporation | Methods And Systems For Image Intra-Prediction Mode Management |
US10368066B2 (en) | 2002-05-28 | 2019-07-30 | Dolby Laboratories Licensing Corporation | Methods and systems for image intra-prediction mode management |
US20150237368A1 (en) * | 2008-11-11 | 2015-08-20 | Samsung Electronics Co., Ltd. | Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices |
US9432687B2 (en) | 2008-11-11 | 2016-08-30 | Samsung Electronics Co., Ltd. | Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices |
US20150237367A1 (en) * | 2008-11-11 | 2015-08-20 | Samsung Electronics Co., Ltd. | Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices |
US20150237369A1 (en) * | 2008-11-11 | 2015-08-20 | Samsung Electronics Co., Ltd. | Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices |
US10437896B2 (en) | 2009-01-07 | 2019-10-08 | Divx, Llc | Singular, collective, and automated creation of a media guide for online content |
US10484749B2 (en) | 2009-12-04 | 2019-11-19 | Divx, Llc | Systems and methods for secure playback of encrypted elementary bitstreams |
US10212486B2 (en) | 2009-12-04 | 2019-02-19 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
US20110194617A1 (en) * | 2010-02-11 | 2011-08-11 | Nokia Corporation | Method and Apparatus for Providing Multi-Threaded Video Decoding |
US8873638B2 (en) * | 2010-02-11 | 2014-10-28 | Nokia Corporation | Method and apparatus for providing multi-threaded video decoding |
US10368096B2 (en) | 2011-01-05 | 2019-07-30 | Divx, Llc | Adaptive streaming systems and methods for performing trick play |
US10382785B2 (en) | 2011-01-05 | 2019-08-13 | Divx, Llc | Systems and methods of encoding trick play streams for use in adaptive streaming |
US10856020B2 (en) | 2011-09-01 | 2020-12-01 | Divx, Llc | Systems and methods for distributing content using a common set of encryption keys |
US10687095B2 (en) | 2011-09-01 | 2020-06-16 | Divx, Llc | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US10225588B2 (en) | 2011-09-01 | 2019-03-05 | Divx, Llc | Playback devices and methods for playing back alternative streams of content protected using a common set of cryptographic keys |
US10244272B2 (en) | 2011-09-01 | 2019-03-26 | Divx, Llc | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US10341698B2 (en) | 2011-09-01 | 2019-07-02 | Divx, Llc | Systems and methods for distributing content using a common set of encryption keys |
US20130145394A1 (en) * | 2011-12-02 | 2013-06-06 | Steve Bakke | Video providing textual content system and method |
US9565476B2 (en) * | 2011-12-02 | 2017-02-07 | Netzyn, Inc. | Video providing textual content system and method |
US9185429B1 (en) | 2012-04-30 | 2015-11-10 | Google Inc. | Video encoding and decoding using un-equal error protection |
US9113164B1 (en) | 2012-05-15 | 2015-08-18 | Google Inc. | Constant bit rate control using implicit quantization values |
US9510019B2 (en) | 2012-08-09 | 2016-11-29 | Google Inc. | Two-step quantization and coding method and apparatus |
US20140086325A1 (en) * | 2012-09-27 | 2014-03-27 | Qualcomm Incorporated | Scalable extensions to hevc and temporal motion vector prediction |
US9491461B2 (en) * | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Scalable extensions to HEVC and temporal motion vector prediction |
US9826229B2 (en) | 2012-09-29 | 2017-11-21 | Google Technology Holdings LLC | Scan pattern determination from base layer pixel information for scalable extension |
US9407915B2 (en) | 2012-10-08 | 2016-08-02 | Google Inc. | Lossless video coding with sub-frame level optimal quantization values |
US9350988B1 (en) | 2012-11-20 | 2016-05-24 | Google Inc. | Prediction mode-based block ordering in video coding |
US9924197B2 (en) * | 2012-12-27 | 2018-03-20 | Nippon Telegraph And Telephone Corporation | Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program |
US20150334418A1 (en) * | 2012-12-27 | 2015-11-19 | Nippon Telegraph And Telephone Corporation | Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program |
US10805368B2 (en) | 2012-12-31 | 2020-10-13 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US10225299B2 (en) | 2012-12-31 | 2019-03-05 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US9681128B1 (en) | 2013-01-31 | 2017-06-13 | Google Inc. | Adaptive pre-transform scanning patterns for video and image compression |
US10264255B2 (en) * | 2013-03-15 | 2019-04-16 | Divx, Llc | Systems, methods, and media for transcoding video data |
US20140269927A1 (en) * | 2013-03-15 | 2014-09-18 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data using metadata |
US9906785B2 (en) * | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US10715806B2 (en) * | 2013-03-15 | 2020-07-14 | Divx, Llc | Systems, methods, and media for transcoding video data |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US20190268596A1 (en) * | 2013-03-15 | 2019-08-29 | Divx, Llc | Systems, Methods, and Media for Transcoding Video Data |
US9712890B2 (en) | 2013-05-30 | 2017-07-18 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US10462537B2 (en) | 2013-05-30 | 2019-10-29 | Divx, Llc | Network video streaming with trick play based on separate trick play files |
US20140355691A1 (en) * | 2013-06-03 | 2014-12-04 | Texas Instruments Incorporated | Multi-threading in a video hardware engine |
US9967305B2 (en) | 2013-06-28 | 2018-05-08 | Divx, Llc | Systems, methods, and media for streaming media content |
US9247251B1 (en) | 2013-07-26 | 2016-01-26 | Google Inc. | Right-edge extension for quad-tree intra-prediction |
US10158869B2 (en) | 2013-10-02 | 2018-12-18 | Renesas Electronics Corporation | Parallel video decoding processing apparatus and operating method thereof |
US10321168B2 (en) | 2014-04-05 | 2019-06-11 | Divx, Llc | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US20160191922A1 (en) * | 2014-04-22 | 2016-06-30 | Mediatek Inc. | Mixed-level multi-core parallel video decoding system |
US10681380B2 (en) * | 2015-06-12 | 2020-06-09 | Panasonic Intellectual Property Management Co., Ltd. | Image encoding method, image decoding method, image encoding apparatus, and image decoding apparatus |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
US10878065B2 (en) | 2017-10-23 | 2020-12-29 | Divx, Llc | Federated digital rights management scheme including trusted systems |
Also Published As
Publication number | Publication date |
---|---|
US10230986B2 (en) | 2019-03-12 |
US20160277766A1 (en) | 2016-09-22 |
JP2012502592A (en) | 2012-01-26 |
US20100061455A1 (en) | 2010-03-11 |
EP2324639A2 (en) | 2011-05-25 |
EP2324639A4 (en) | 2012-08-29 |
KR20110053243A (en) | 2011-05-19 |
WO2010030752A2 (en) | 2010-03-18 |
CN102150425A (en) | 2011-08-10 |
WO2010030752A3 (en) | 2010-05-14 |
EP2324639B1 (en) | 2019-04-24 |
CN102150425B (en) | 2014-12-10 |
US9357223B2 (en) | 2016-05-31 |
CA2736888A1 (en) | 2010-03-18 |
JP5400888B2 (en) | 2014-01-29 |
US20120307892A1 (en) | 2012-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200029094A1 (en) | Constraints and unit types to simplify video random access | |
CN107409209B (en) | Downsampling process for linear model prediction mode | |
US10687056B2 (en) | Deriving reference mode values and encoding and decoding information representing prediction modes | |
JP6556818B2 (en) | apparatus | |
US10205948B2 (en) | Context initialization based on slice header flag and slice type | |
JP6471787B2 (en) | Image processing apparatus and image processing method | |
US20190058865A1 (en) | System and method for encoding 3d stereoscopic digital video | |
JP6182649B2 (en) | Context initialization based on decoder picture buffer | |
TWI527466B (en) | Low delay picture coding | |
US9621905B2 (en) | Tiles and wavefront parallel processing | |
KR101718488B1 (en) | Coding concept allowing parallel processing, transport demultiplexer and video bitstream | |
US10225549B1 (en) | System and method for video coding | |
US10212445B2 (en) | Intra block copy prediction restrictions for parallel processing | |
JP6708716B2 (en) | Method for decoding video, method for encoding video, decoder, encoder, computer-readable recording medium recording decoding program, and computer-readable recording medium recording encoding program | |
US9277228B2 (en) | Adaptation parameter sets for video coding | |
JP5777080B2 (en) | Lossless coding and related signaling methods for composite video | |
KR101775936B1 (en) | Video coding methods and apparatus | |
US9503742B2 (en) | System and method for decoding 3D stereoscopic digital video | |
CA2726480C (en) | Fragmented reference in temporal compression for video coding | |
KR20160102071A (en) | Color index coding for palette-based video coding | |
AU2016200416B2 (en) | Method for decoding video | |
JP6377603B2 (en) | Low latency video buffering in video coding | |
US7277587B2 (en) | System and method for lossless video coding | |
US8897591B2 (en) | Method and apparatus for video coding using adaptive loop filter | |
JP2019083545A (en) | Image processing apparatus and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ON2 TECHNOLOGIES, INC.,NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:XU, YAOWU;WILKINS, PAUL;BANKOSKI, JAMES;REEL/FRAME:022205/0145 Effective date: 20081204 Owner name: ON2 TECHNOLOGIES, INC., NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:XU, YAOWU;WILKINS, PAUL;BANKOSKI, JAMES;REEL/FRAME:022205/0145 Effective date: 20081204 |
|
AS | Assignment |
Owner name: ON2 TECHNOLOGIES, LLC, CALIFORNIA Free format text: MERGER;ASSIGNOR:ON2 TECHNOLOGIES, INC.;REEL/FRAME:025407/0060 Effective date: 20100219 Owner name: GOOGLE INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ON2 TECHNOLOGIES, LLC;REEL/FRAME:025407/0168 Effective date: 20101028 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: GOOGLE LLC, CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044129/0001 Effective date: 20170929 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |