Пример #1
0
        /**
         * Methods
         */
        public ID3Tag GetID3Tag(string fileName)
        {
            // Create ID3 tag var
            var tag = new ID3Tag();

            // Check ID3 identifier
            tag.Bytes = data.GetID3TagBytes(fileName, 3);
            if(!tag.HasID3Identifier())
            {
                return new ID3Tag();
            }

            // Load Header bytes into Tag (10 bytes)
            tag.Bytes = data.GetID3TagBytes(fileName, HEADER_LENGTH);
            tag.Header = new ID3Header(tag.Bytes);

            // Load Header + All frames
            tag.Bytes = data.GetID3TagBytes(fileName, HEADER_LENGTH + tag.Header.TagSize);

            if(tag.Header.ExtendedHeaderFlag)
            {
                Console.WriteLine($"DEBUG Extended Header detected. Not implemented.");
            }

            // Load frames
            tag.Frames = GetID3Frames(tag.Bytes);

            // Return the created tag
            return tag; 
        }