Skip to content

Commit 8857035

Browse files
authored
Fix calculation of final-layer in MP3 header matching
According to ISO/IEC 11172-3 2.4.2.3 the valid values for layer are: layer I: '11': 3 layer II: '10' : 2 layer III: '01' : 1 So 4-value is we want to get after mask operand and bit shifting. Fixes #208.
1 parent 8a3b918 commit 8857035

1 file changed

Lines changed: 2 additions & 4 deletions

File tree

mimesniff.bs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1368,10 +1368,8 @@ execute these steps:
13681368
<li>If <var>sample-rate</var> is 3, return false.
13691369
<li>Let <var>freq</var> be the value given by <var>sample-rate</var>
13701370
in the table sample-rate.
1371-
<li>Let <var>final-layer</var> be the result of 4 -
1372-
(<var>sequence</var>[<var>s</var> + 1]).
1373-
<li>If <var>final-layer</var> &amp; 0x06 >> 1 is not 3, return
1374-
false.
1371+
<li>Let <var>final-layer</var> be the result of 4 - ((<var>sequence</var>[<var>s</var> + 1] &amp; 0x06) >> 1).
1372+
<li>If <var>final-layer</var> is not 3, return false.
13751373
<li>Return true.
13761374
</ol>
13771375

0 commit comments

Comments
 (0)