Method and apparatus for arithmetic coding and termination

US10070127B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10070127-B2
Application numberUS-201213989338-A
CountryUS
Kind codeB2
Filing dateJan 13, 2012
Priority dateJan 14, 2011
Publication dateSep 4, 2018
Grant dateSep 4, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present invention provides arithmetic encoder and decoder, and methods implemented therein for termination of arithmetic coding. The arithmetic encoder first determines whether a bin value indicates termination of arithmetic encoding. If the bin value is determined not indicating termination of arithmetic encoding, no bit is written in a bitstream indicative of the bin value so determined. If the bin value is determined indicating termination of arithmetic encoding, a stop bit is written in the bitstream. The arithmetic decoder determines whether or not the end of a coded slice has been reached, based on a number of bits in the bitstream. More specifically, the arithmetic decoder makes a determination, based on a number of bits preceding a stop bit located in a last byte in the bitstream.

First claim

Opening claim text (preview).

The invention claimed is: 1. An arithmetic encoder comprising a processor of a computer system and a memory that stores programs executable by the processor to: binarize a slice of moving picture data, the slice including a plurality of macroblocks each attached with a terminating syntax indicative of whether or not to terminate arithmetic encoding; determine whether a bin value representing the terminating syntax included in the binarized slice indicates termination of arithmetic encoding; if the bin value is determined not indicating termination of arithmetic encoding, write no bit in a bitstream so that the bin value will not be sent to a decoder; and if the bin value is determined indicating termination of arithmetic encoding, write a stop bit in the bitstream. 2. The arithmetic encoder according to claim 1 , wherein the processor further sets an offset value to a sum of the offset value and a range value decremented by a predetermined number if the bin value is determined indicating termination of arithmetic encoding, wherein the predetermined number is a number other than two and smaller than or equal to a smallest interval assignable to a least probable symbol. 3. The arithmetic encoder according to claim 2 , wherein the predetermined number is equal to a power of 2. 4. An arithmetic encoding method comprising computer executable steps executed by a processor of a video encoder to implement: binarize a slice of moving picture data, the slice including a plurality of macroblocks each attached with a terminating syntax indicative of whether or not to terminate arithmetic encoding; determining whether a bin value representing the terminating syntax included in the binarized slice indicates termination of arithmetic encoding; if the bin value is determined not indicating termination of arithmetic encoding, writing no bit in a bitstream so that the bin value will not be sent to a decoder; and if the bin value is determined indicating termination of arithmetic encoding, writing a stop bit in the bitstream. 5. The method according to claim 4 , further comprising setting an offset value to a sum of the offset value and a range value decremented by a predetermined number if the bin value is determined indicating termination of arithmetic encoding, wherein the predetermined number is a number other than two and smaller than or equal to a smallest interval assignable to a least probable symbol. 6. The method according to claim 5 , wherein the predetermined number is equal to a power of 2. 7. An arithmetic decoder comprising a processor of a computer system and a memory which stores programs executable by the processor to: based on a number of bits in a bitstream, determine whether or not an decoding process has reached an end of a coded slice, the coded slice including a plurality of coded macroblocks each stripped off a terminating syntax indicative of whether or not to terminate arithmetic decoding; if it is determined that the decoding process has not reached the end of the coded slice, set a bin value to a first value of the terminating syntax not indicative of termination of arithmetic decoding; and debinarize the first value so that the stripped off terminating syntax will be reconstructed and attached to a macroblock in a decoded slice. 8. The arithmetic decoder according to claim 7 , wherein if it is determined that the decoding process has reached the end of the coded slice, the processor further: determines whether an offset value is greater than or equal to a range value decremented by a predetermined number; if the offset value is determined greater than or equal to a range value decremented by a predetermined number, sets the bin value to a second value indicating that the decoding process has reached the end of the coded slice; and if the offset value is determined otherwise, sets the bin value to the first value. 9. The arithmetic decoder according to claim 8 , wherein the predetermined number is a number other than two and smaller than or equal to a smallest interval assignable to a least probable symbol. 10. The arithmetic decoder according to claim 9 , wherein the predetermined number is equal to a power of 2. 11. The arithmetic decoder according to claim 7 , wherein the processor determines whether the decoding process has reached an end of a coded slice, based on a number of bits preceding a stop bit located in a last byte in the bitstream. 12. An arithmetic decoding method comprising computer executable steps executed by a processor of a video decoder to implement: based on a number of bits in a bitstream, determining whether an decoding process has reached an end of a coded slice, the coded slice including a plurality of coded macroblocks each stripped off a terminating syntax indicative of whether or not to terminate arithmetic decoding; if it is determined that the decoding process has not reached the end of the coded slice, setting a bin value to a first value of the terminating syntax not indicative of termination of arithmetic decoding; and debinarizing the first value so that the stripped off terminating syntax will be reconstructed and attached to a macroblock in a decoded slice. 13. The method according to claim 12 , further comprising: if it is determined that the decoding process has reached the end of the coded slice, determining whether an offset value is greater than or equal to a range value decremented by a predetermined number; if the offset value is determined greater than or equal to a range value decremented by a predetermined number, setting the bin value to a second value indicating that the decoding process has reached the end of the coded slice; and if the offset value is determined otherwise, setting the bin value to the first value. 14. The method according to claim 13 , wherein the predetermined number is a number other than two and smaller than or equal to a smallest interval assignable to a least probable symbol. 15. The method according to claim 14 , wherein the predetermined number is equal to a power of 2. 16. The method according to claim 12 , wherein determining whether an decoding process has reached an end of a coded slice comprises determining whether the decoding process has reached an end of a coded slice, based on a number of bits preceding a stop bit located in a last byte in the bitstream.

Assignees

Inventors

Classifications

  • H04N19/90Primary

    using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals · CPC title

  • Decoder aspects · CPC title

  • H03M7/4006Primary

    Conversion to or from arithmetic code · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10070127B2 cover?
The present invention provides arithmetic encoder and decoder, and methods implemented therein for termination of arithmetic coding. The arithmetic encoder first determines whether a bin value indicates termination of arithmetic encoding. If the bin value is determined not indicating termination of arithmetic encoding, no bit is written in a bitstream indicative of the bin value so determined. …
Who is the assignee on this patent?
Bossen Frank Jan, Ntt Docomo Inc
What technology area does this patent fall under?
Primary CPC classification H04N19/90. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 04 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).