An overview of the basic principles of the Q-Coder adaptive binary arithmetic coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
Probability estimation for the Q-Coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
Software implementation of the Q-Coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
A multi-purpose VLSI chip for adaptive data compression of bilevel images
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
Practical dictionary management for hardware data compression
Communications of the ACM
An overview of the basic principles of the Q-Coder adaptive binary arithmetic coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
Probability estimation for the Q-Coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
Software implementation of the Q-Coder
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
A multi-purpose VLSI chip for adaptive data compression of bilevel images
IBM Journal of Research and Development - Q-Coder adaptive binary arithmetic coder
A JBIG-ABIC compression engine for digital document processing
IBM Journal of Research and Development
IBM Journal of Research and Development
Variable-bin-rate CABAC engine for H.264/AVC high definition real-time decoding
IEEE Transactions on Very Large Scale Integration (VLSI) Systems
Speeding up Dirac's entropy coder
MIV'05 Proceedings of the 5th WSEAS international conference on Multimedia, internet & video technologies
Hi-index | 0.02 |
The Q-Coder is an important new development in arithmetic coding. It combines a simple but efficient arithmetic approximation for the multiply operation, a new formalism which yields optimally efficient hardware and software implementations, and a new form of probability estimation. This paper describes the concepts which allow different, yet compatible, optimal software and hardware implementations. In prior binary arithmetic coding algorithms, efficient hardware implementations favored ordering the more probable symbol (MPS) above the less probable symbol (LPS) in the current probability interval. Efficient software implementation required the inverse ordering convention. In this paper it is shown that optimal hardware and software encoders and decoders can be achieved with either symbol ordering. Although optimal implementation for a given symbol ordering requires the hardware and software code strings to point to opposite ends of the probability interval, either code string can be converted to match the other exactly. In addition, a code string generated using one symbol-ordering convention can be inverted so that it exactly matches the code string generated with the inverse convention. Even where bit stuffing is used to block carry propagation, the code strings can be kept identical.