FlacFile constructor
FlacFile(
- AudioFile _audioFile
Implementation
FlacFile(this._audioFile) {
var isLast = false;
var index = 4;
while (!isLast) {
var metaBlockHeader = _audioFile._rawData.sublist(index, index + 1);
index += 1;
var header = metaBlockHeader[0];
isLast = ((header & 0x80) >> 7) == 1;
var type = header & 0x7F;
var sizes = _audioFile._rawData.sublist(index, index + 3);
index += 3;
var dataLength = (sizes[0] << 16) + (sizes[1] << 8) + sizes[2];
var metadataBytes = _audioFile._rawData.sublist(
index,
index + dataLength,
);
index += dataLength;
_flacMetaBlocks.add(FlacMetaBlock(type, metadataBytes));
if (type == 4) {
_vorbisCommentBlock = VorbisCommentBlock(_flacMetaBlocks.last);
}
if (type == 6) {
_pictureBlock = PictureBlock(_flacMetaBlocks.last);
}
}
}