Mercurial > libavcodec.hg
comparison bitstream.h @ 7254:e100cf54e11e libavcodec
Bitstream: use AV_RB16() in LIBMPEG2_BITSTREAM_READER
This makes LIBMPEG2_BITSTREAM_READER_HACK redundant, so remove it.
| author | mru |
|---|---|
| date | Sun, 13 Jul 2008 00:07:43 +0000 |
| parents | 97798862a414 |
| children | 3ec34b551aae |
comparison
equal
deleted
inserted
replaced
| 7253:2f5b98d0aa13 | 7254:e100cf54e11e |
|---|---|
| 47 # define ALT_BITSTREAM_READER | 47 # define ALT_BITSTREAM_READER |
| 48 //#define LIBMPEG2_BITSTREAM_READER | 48 //#define LIBMPEG2_BITSTREAM_READER |
| 49 //#define A32_BITSTREAM_READER | 49 //#define A32_BITSTREAM_READER |
| 50 # endif | 50 # endif |
| 51 #endif | 51 #endif |
| 52 #define LIBMPEG2_BITSTREAM_READER_HACK //add BERO | |
| 53 | 52 |
| 54 extern const uint8_t ff_reverse[256]; | 53 extern const uint8_t ff_reverse[256]; |
| 55 | 54 |
| 56 #if defined(ARCH_X86) | 55 #if defined(ARCH_X86) |
| 57 // avoid +32 for shift optimization (gcc should do that ...) | 56 // avoid +32 for shift optimization (gcc should do that ...) |
| 482 # define CLOSE_READER(name, gb)\ | 481 # define CLOSE_READER(name, gb)\ |
| 483 (gb)->bit_count= name##_bit_count;\ | 482 (gb)->bit_count= name##_bit_count;\ |
| 484 (gb)->cache= name##_cache;\ | 483 (gb)->cache= name##_cache;\ |
| 485 (gb)->buffer_ptr= name##_buffer_ptr;\ | 484 (gb)->buffer_ptr= name##_buffer_ptr;\ |
| 486 | 485 |
| 487 #ifdef LIBMPEG2_BITSTREAM_READER_HACK | |
| 488 | |
| 489 # define UPDATE_CACHE(name, gb)\ | 486 # define UPDATE_CACHE(name, gb)\ |
| 490 if(name##_bit_count >= 0){\ | 487 if(name##_bit_count >= 0){\ |
| 491 name##_cache+= (int)be2me_16(*(uint16_t*)name##_buffer_ptr) << name##_bit_count;\ | 488 name##_cache+= AV_RB16(name##_buffer_ptr) << name##_bit_count; \ |
| 492 name##_buffer_ptr += 2;\ | |
| 493 name##_bit_count-= 16;\ | |
| 494 }\ | |
| 495 | |
| 496 #else | |
| 497 | |
| 498 # define UPDATE_CACHE(name, gb)\ | |
| 499 if(name##_bit_count >= 0){\ | |
| 500 name##_cache+= ((name##_buffer_ptr[0]<<8) + name##_buffer_ptr[1]) << name##_bit_count;\ | |
| 501 name##_buffer_ptr+=2;\ | 489 name##_buffer_ptr+=2;\ |
| 502 name##_bit_count-= 16;\ | 490 name##_bit_count-= 16;\ |
| 503 }\ | 491 }\ |
| 504 | |
| 505 #endif | |
| 506 | 492 |
| 507 # define SKIP_CACHE(name, gb, num)\ | 493 # define SKIP_CACHE(name, gb, num)\ |
| 508 name##_cache <<= (num);\ | 494 name##_cache <<= (num);\ |
| 509 | 495 |
| 510 # define SKIP_COUNTER(name, gb, num)\ | 496 # define SKIP_COUNTER(name, gb, num)\ |
