diff --git a/src/opus_decoder.c b/src/opus_decoder.c
index 99ae48d63f840ec67b7448cf7376b456fcee9bf8..55be0a76bd1c274aeb1eb4c8025e374f23c37248 100644
--- a/src/opus_decoder.c
+++ b/src/opus_decoder.c
@@ -548,7 +548,7 @@ static int opus_packet_parse_impl(const unsigned char *data, int len,
          return OPUS_INVALID_PACKET;
       /* VBR flag is bit 7 */
       cbr = !(ch&0x80);
-      if (cbr)
+      if (!cbr)
       {
          /* VBR case */
          last_size = len;