public override void GetReportDetail(IList <string> report) { if (report.Count > 0) { report.Add(String.Empty); } report.Add("Meta header:"); report.Add($" Minimum block size = {MinBlockSize}"); report.Add($" Maximum block size = {MaxBlockSize}"); report.Add($" Minimum frame size = {MinFrameSize}"); report.Add($" Maximum frame size = {MaxFrameSize}"); report.Add($" Sample rate = {MetaSampleRate} Hz"); report.Add($" Number of channels = {ChannelCount}"); report.Add($" Bits per sample = {BitsPerSample}"); report.Add(" Total samples = " + (TotalSamples != 0? TotalSamples.ToString() : " (unknown)")); report.Add(String.Empty); report.Add("Raw audio header: " + ConvertTo.ToBitString(aHdr, 1)); report.Add(String.Empty); report.Add("Cooked audio header:"); report.Add($" Blocking strategy = {BlockingStrategyText}"); report.Add($" Block size = {BlockSize} samples"); report.Add($" Sample rate = {SampleRateText}"); report.Add($" Channel assignment = {ChannelAssignmentText}"); report.Add($" Sample size = {SampleSizeText}"); report.Add($" Sample/frame number = {SampleOrFrameNumber}"); report.Add(String.Empty); report.Add("Checks:"); report.Add($" Stored audio header CRC-8 = {StoredAudioHeaderCRC8ToHex}"); if (ActualAudioHeaderCRC8 != null) { report.Add($" Actual audio header CRC-8 = {ActualAudioHeaderCRC8ToHex}"); } report.Add($" Stored audio block CRC-16 = {StoredAudioBlockCRC16ToHex}"); if (ActualAudioBlockCRC16 != null) { report.Add($" Actual audio block CRC-16 = {ActualAudioBlockCRC16ToHex}"); } report.Add($" Stored PCM MD5 = {StoredAudioDataMD5ToHex}"); if (actualAudioDataMD5 != null) { report.Add($" Actual PCM MD5 = {ActualAudioDataMD5ToHex}"); } if (ActualPcmCRC32 != null) { report.Add($" Actual PCM CRC-32 = {ActualPcmCRC32ToHex}"); } report.Add(String.Empty); report.Add($"Layout = {Layout}"); if (Blocks.Tags != null) { report.Add(String.Empty); report.Add("Tags:"); report.Add($" Vendor: {Blocks.Tags.Vendor}"); foreach (var item in Blocks.Tags.Lines) { report.Add($" {item}"); } } }
public override void GetReportDetail(IList <string> report) { if (Issues.HasFatal) { return; } report.Add($"MPEG size = {MediaCount}"); if (Xing != null) { report.Add($"XING size = {Xing.XingSize}"); } if (Lame != null) { report.Add($"LAME size = {Lame.LameSize}"); } report.Add(String.Empty); report.Add($"Raw audio header: {ConvertTo.ToBitString (Header.Bits, 32)}"); report.Add(String.Empty); report.Add("Cooked audio header:"); report.Add($" Codec = {Header.Codec}"); report.Add($" Bit rate = {Header.BitRateText}"); report.Add($" Frequency = {Header.SampleRateText}"); report.Add($" Mode = {Header.ModeText}"); report.Add($" CRC protection bit = {Header.CrcProtectedBit}"); report.Add($" Padding bit = {Header.PaddingBit}"); report.Add($" Private bit = {Header.PrivateBit}"); report.Add($" Copyright bit = {Header.CopyrightBit}"); report.Add($" Original bit = {Header.OriginalBit}"); report.Add($" Emphasis = {Header.EmphasisText}"); if (Xing != null) { report.Add(String.Empty); report.Add("XING:"); report.Add($" String = {Xing.XingString}"); report.Add($" Layout = {Xing.Layout}"); } if (Lame != null) { report.Add(String.Empty); report.Add("LAME:"); report.Add($" Version string = {Lame.LameVersion}"); report.Add($" Profile string = {Lame.Profile}"); report.Add($" Profile detail = {Lame.Method}"); report.Add($" Tag revision = {Lame.TagRevision}"); report.Add($" Lowpass filter = {Lame.LowpassFilter}"); report.Add($" Replay Gain: Peak = {Lame.ReplayGainPeak}, Radio = {Lame.RadioReplayGain:X4}, Audiophile = {Lame.AudiophileReplayGain:X4}"); report.Add($" Lame encoding flags = {ConvertTo.ToBitString (Lame.LameFlags, 8)}"); report.Add($" Encoder delay: Start = {Lame.EncoderDelayStart}, End = {Lame.EncoderDelayEnd}"); report.Add($" LAME surround = {Lame.Surround}, LAME preset = {Lame.Preset}"); report.Add($" MP3 gain = {Lame.Mp3Gain}"); report.Add($" Minimum bit rate = {Lame.MinBitRateText}"); report.Add(" Checks:"); report.Add($" Stored: audio header CRC-16 = {Lame.StoredHeaderCrcText}, audio data CRC-16 = {Lame.StoredDataCrcText}"); if (Lame.ActualHeaderCrc != null) { report.Add($" Actual: audio header CRC-16 = {Lame.ActualHeaderCrcText}, audio data CRC-16 = {Lame.ActualDataCrcText}"); } } report.Add(String.Empty); report.Add($"Layout = {Layout}"); }