diff swf.c @ 1642:8b62e4e73069 libavformat

simplify
author bcoudurier
date Sun, 14 Jan 2007 12:47:32 +0000
parents ea284c26b0f4
children 20c25a594c49
line wrap: on
line diff
--- a/swf.c	Sun Jan 14 02:21:28 2007 +0000
+++ b/swf.c	Sun Jan 14 12:47:32 2007 +0000
@@ -800,6 +800,7 @@
             }
         } else if ( ( tag == TAG_STREAMHEAD || tag == TAG_STREAMHEAD2 ) && !ast) {
             /* streaming found */
+            int sample_rate_code;
             get_byte(pb);
             v = get_byte(pb);
             swf->samples_per_frame = get_le16(pb);
@@ -811,20 +812,10 @@
             if (v & 0x20)
                 ast->codec->codec_id = CODEC_ID_MP3;
             ast->need_parsing = 1;
-            switch((v>> 2) & 0x03) {
-            case 1:
-                ast->codec->sample_rate = 11025;
-                break;
-            case 2:
-                ast->codec->sample_rate = 22050;
-                break;
-            case 3:
-                ast->codec->sample_rate = 44100;
-                break;
-            default:
+            sample_rate_code= (v>>2) & 3;
+            if (!sample_rate_code)
                 return AVERROR_IO;
-            }
-
+            ast->codec->sample_rate = 11025 << (sample_rate_code-1);
             if (len > 4)
                 url_fskip(pb,len-4);