mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
h261dec, ituh263dec: Move condition.
Stops compiler from doing incredibly stupid things. With vsynth1-flv inner loop goes from 3501 to 3275 decicycles. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
This commit is contained in:
parent
36c0043344
commit
e8d0b84e8a
@ -309,13 +309,13 @@ static int h261_decode_block(H261Context *h, int16_t *block, int n, int coded)
|
||||
for (;;) {
|
||||
UPDATE_CACHE(re, &s->gb);
|
||||
GET_RL_VLC(level, run, re, &s->gb, rl->rl_vlc[0], TCOEFF_VLC_BITS, 2, 0);
|
||||
if (run == 66 && level) {
|
||||
CLOSE_READER(re, &s->gb);
|
||||
av_log(s->avctx, AV_LOG_ERROR, "illegal ac vlc code at %dx%d\n",
|
||||
s->mb_x, s->mb_y);
|
||||
return -1;
|
||||
}
|
||||
if (run == 66) {
|
||||
if (level) {
|
||||
CLOSE_READER(re, &s->gb);
|
||||
av_log(s->avctx, AV_LOG_ERROR, "illegal ac vlc code at %dx%d\n",
|
||||
s->mb_x, s->mb_y);
|
||||
return -1;
|
||||
}
|
||||
/* escape */
|
||||
/* The remaining combinations of (run, level) are encoded with a
|
||||
* 20-bit word consisting of 6 bits escape, 6 bits run and 8 bits
|
||||
|
@ -485,12 +485,12 @@ retry:
|
||||
for(;;) {
|
||||
UPDATE_CACHE(re, &s->gb);
|
||||
GET_RL_VLC(level, run, re, &s->gb, rl->rl_vlc[0], TEX_VLC_BITS, 2, 0);
|
||||
if (run == 66 && level){
|
||||
CLOSE_READER(re, &s->gb);
|
||||
av_log(s->avctx, AV_LOG_ERROR, "illegal ac vlc code at %dx%d\n", s->mb_x, s->mb_y);
|
||||
return -1;
|
||||
}
|
||||
if (run == 66) {
|
||||
if (level){
|
||||
CLOSE_READER(re, &s->gb);
|
||||
av_log(s->avctx, AV_LOG_ERROR, "illegal ac vlc code at %dx%d\n", s->mb_x, s->mb_y);
|
||||
return -1;
|
||||
}
|
||||
/* escape */
|
||||
if (CONFIG_FLV_DECODER && s->h263_flv > 1) {
|
||||
int is11 = SHOW_UBITS(re, &s->gb, 1);
|
||||
|
Loading…
Reference in New Issue
Block a user