- Timestamp:
- 24/10/06 18:17:34 (2 years ago)
- Location:
- branches/mmpython-0-4/mmpython/audio/eyeD3
- Files:
-
- 2 modified
Legend:
- Unmodified
- Added
- Removed
-
branches/mmpython-0-4/mmpython/audio/eyeD3/mp3.py
r323 r1925 123 123 return 1; 124 124 125 def find(self, buffer): 126 idx = buffer.find("\xff") 127 while idx != -1: 128 candidate = buffer[idx:idx+4] 129 if len(candidate) < 4: 130 return None 131 132 header = bin2dec(bytes2bin(candidate)) 133 if self.isValid(header): 134 return header 135 136 idx = buffer.find("\xff", idx + 1) 137 125 138 # This may throw an Mp3Exception if the header is malformed. 126 139 def decode(self, header): -
branches/mmpython-0-4/mmpython/audio/eyeD3/tag.py
r323 r1925 1321 1321 raise InvalidAudioFormatException("Unable to find a valid mp3 "\ 1322 1322 "frame"); 1323 frameHead = bin2dec(bytes2bin(bString));1324 1323 header = eyeD3_mp3.Header(); 1324 frameHead = header.find(bString) 1325 1325 # Keep reading until we find a valid mp3 frame header. 1326 while not header.isValid(frameHead): 1327 frameHead <<= 8; 1328 bString = f.read(1); 1329 if len(bString) != 1: 1326 while not frameHead: 1327 bString = bString[-3:] + f.read(4096); 1328 if len(bString) <= 3: 1330 1329 raise InvalidAudioFormatException("Unable to find a valid mp3 "\ 1331 1330 "frame"); 1332 frameHead |= ord(bString[0]);1331 frameHead = header.find(bString) 1333 1332 TRACE_MSG("mp3 header %x found at position: %d (0x%x)" % \ 1334 1333 (frameHead, f.tell() - 4, f.tell() - 4));
