2023-03-07 16:59:14 -05:00
|
|
|
namespace BinaryObjectScanner.Models.PlayJ
|
2023-01-14 21:43:59 -08:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// PlayJ audio file / CDS entry
|
|
|
|
|
/// <summary>
|
|
|
|
|
public sealed class AudioFile
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Header
|
|
|
|
|
/// </summary>
|
2023-01-15 16:26:05 -08:00
|
|
|
public AudioHeader Header { get; set; }
|
2023-01-14 21:43:59 -08:00
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Unknown block 1
|
|
|
|
|
/// </summary>
|
|
|
|
|
public UnknownBlock1 UnknownBlock1 { get; set; }
|
|
|
|
|
|
2023-01-15 02:07:56 -08:00
|
|
|
#region V1 Only
|
|
|
|
|
|
2023-01-14 21:43:59 -08:00
|
|
|
/// <summary>
|
2023-01-15 16:26:05 -08:00
|
|
|
/// Value referred to by <see cref="AudioHeaderV1.UnknownOffset2"/>
|
2023-01-14 21:43:59 -08:00
|
|
|
/// </summary>
|
|
|
|
|
/// <remarks>Typically 0x00000000</remarks>
|
|
|
|
|
public uint UnknownValue2 { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2023-01-15 02:07:56 -08:00
|
|
|
/// Unknown block 3 (V1 only)
|
2023-01-14 21:43:59 -08:00
|
|
|
/// </summary>
|
|
|
|
|
public UnknownBlock3 UnknownBlock3 { get; set; }
|
2023-01-15 02:07:56 -08:00
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region V2 Only
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Number of data files embedded
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint DataFilesCount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Data files (V2 only)
|
|
|
|
|
/// </summary>
|
|
|
|
|
public DataFile[] DataFiles { get; set; }
|
|
|
|
|
|
|
|
|
|
// After the data files is a block starting with 0x00000001
|
|
|
|
|
// This block then contains highly repeating data, possible audio samples?
|
|
|
|
|
|
|
|
|
|
#endregion
|
2023-01-14 21:43:59 -08:00
|
|
|
}
|
|
|
|
|
}
|