namespace SabreTools.Models.PlayJ { /// /// PlayJ audio file / CDS entry /// public sealed class AudioFile { /// /// Header /// #if NET48 public AudioHeader Header { get; set; } #else public AudioHeader? Header { get; set; } #endif /// /// Unknown block 1 /// #if NET48 public UnknownBlock1 UnknownBlock1 { get; set; } #else public UnknownBlock1? UnknownBlock1 { get; set; } #endif #region V1 Only /// /// Value referred to by /// /// Typically 0x00000000 public uint UnknownValue2 { get; set; } /// /// Unknown block 3 (V1 only) /// #if NET48 public UnknownBlock3 UnknownBlock3 { get; set; } #else public UnknownBlock3? UnknownBlock3 { get; set; } #endif #endregion #region V2 Only /// /// Number of data files embedded /// public uint DataFilesCount { get; set; } /// /// Data files (V2 only) /// #if NET48 public DataFile[] DataFiles { get; set; } #else public DataFile?[]? DataFiles { get; set; } #endif // After the data files is a block starting with 0x00000001 // This block then contains highly repeating data, possible audio samples? #endregion } }