summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoman Shaposhnik <roman@shaposhnik.org>2007-07-08 03:16:59 +0000
committerRoman Shaposhnik <roman@shaposhnik.org>2007-07-08 03:16:59 +0000
commitc21f308e77ee1ab9dd280f40f2008122d1fc53d7 (patch)
tree0e342208596205cef7da848dc394c931a1f0e2fd
parentb3633dee5820cdaa45bf46ebe955b1af59f878a2 (diff)
* Getting rid of the use of GCC language extensions
Originally committed as revision 9531 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/rv10.c34
-rw-r--r--libavformat/mp3.c3
-rw-r--r--libavformat/raw.c20
3 files changed, 21 insertions, 36 deletions
diff --git a/libavcodec/rv10.c b/libavcodec/rv10.c
index e1e8287d57..ece6f90ba5 100644
--- a/libavcodec/rv10.c
+++ b/libavcodec/rv10.c
@@ -539,43 +539,29 @@ static int rv10_decode_init(AVCodecContext *avctx)
s->h263_long_vectors= ((uint8_t*)avctx->extradata)[3] & 1;
avctx->sub_id= AV_RB32((uint8_t*)avctx->extradata + 4);
- switch(avctx->sub_id){
- case 0x10000000:
+ if (avctx->sub_id == 0x10000000) {
s->rv10_version= 0;
s->low_delay=1;
- break;
- case 0x10002000:
+ } else if (avctx->sub_id == 0x10002000) {
s->rv10_version= 3;
s->low_delay=1;
s->obmc=1;
- break;
- case 0x10003000:
+ } else if (avctx->sub_id == 0x10003000) {
s->rv10_version= 3;
s->low_delay=1;
- break;
- case 0x10003001:
+ } else if (avctx->sub_id == 0x10003001) {
s->rv10_version= 3;
s->low_delay=1;
- break;
- case 0x20001000: /* real rv20 decoder fail on this id */
- /*case 0x20100001:
- case 0x20101001:
- case 0x20103001:*/
- case 0x20100000 ... 0x2019ffff:
+ } else if ( avctx->sub_id == 0x20001000
+ || (avctx->sub_id >= 0x20100000 && avctx->sub_id < 0x201a0000)) {
s->low_delay=1;
- break;
- /*case 0x20200002:
- case 0x20201002:
- case 0x20203002:*/
- case 0x20200002 ... 0x202fffff:
- case 0x30202002:
- case 0x30203002:
+ } else if ( avctx->sub_id == 0x30202002
+ || avctx->sub_id == 0x30203002
+ || (avctx->sub_id >= 0x20200002 && avctx->sub_id < 0x20300000)) {
s->low_delay=0;
s->avctx->has_b_frames=1;
- break;
- default:
+ } else
av_log(s->avctx, AV_LOG_ERROR, "unknown header %X\n", avctx->sub_id);
- }
if(avctx->debug & FF_DEBUG_PICT_INFO){
av_log(avctx, AV_LOG_DEBUG, "ver:%X ver0:%X\n", avctx->sub_id, avctx->extradata_size >= 4 ? ((uint32_t*)avctx->extradata)[0] : -1);
diff --git a/libavformat/mp3.c b/libavformat/mp3.c
index 04e8bcf420..8d63f925ff 100644
--- a/libavformat/mp3.c
+++ b/libavformat/mp3.c
@@ -234,7 +234,8 @@ static void id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t fl
taghdrlen = 6;
break;
- case 3 ... 4:
+ case 3:
+ case 4:
isv34 = 1;
taghdrlen = 10;
break;
diff --git a/libavformat/raw.c b/libavformat/raw.c
index 1057aacf89..7d1fafda81 100644
--- a/libavformat/raw.c
+++ b/libavformat/raw.c
@@ -366,17 +366,15 @@ static int mpeg4video_probe(AVProbeData *probe_packet)
for(i=0; i<probe_packet->buf_size; i++){
temp_buffer = (temp_buffer<<8) + probe_packet->buf[i];
- if ((temp_buffer & 0xffffff00) == 0x100) {
- switch(temp_buffer){
- case VOP_START_CODE: VOP++; break;
- case VISUAL_OBJECT_START_CODE: VISO++; break;
- case 0x100 ... 0x11F: VO++; break;
- case 0x120 ... 0x12F: VOL++; break;
- case 0x130 ... 0x1AF:
- case 0x1B7 ... 0x1B9:
- case 0x1C4 ... 0x1FF: res++; break;
- }
- }
+ if ((temp_buffer & 0xffffff00) != 0x100)
+ continue;
+
+ if (temp_buffer == VOP_START_CODE) VOP++;
+ else if (temp_buffer == VISUAL_OBJECT_START_CODE) VISO++;
+ else if (temp_buffer < 0x120) VO++;
+ else if (temp_buffer < 0x130) VOL++;
+ else if ( !(0x1AF < temp_buffer && temp_buffer < 0x1B7)
+ && !(0x1B9 < temp_buffer && temp_buffer < 0x1C4)) res++;
}
if ( VOP >= VISO && VOP >= VOL && VO >= VOL && VOL > 0 && res==0)