[CLI] Add debugging info for video

This commit is contained in:
VaDiM 2023-03-08 19:59:19 +03:00
parent 16a7107d4e
commit 0425423ca9
2 changed files with 19 additions and 5 deletions

View File

@ -21,22 +21,27 @@ namespace AssetStudio
public ResourceReader m_VideoData; public ResourceReader m_VideoData;
public string m_OriginalPath; public string m_OriginalPath;
public StreamedResource m_ExternalResources; public StreamedResource m_ExternalResources;
public uint Width;
public uint Height;
public double m_FrameRate;
public int m_Format;
public bool m_HasSplitAlpha;
public VideoClip(ObjectReader reader) : base(reader) public VideoClip(ObjectReader reader) : base(reader)
{ {
m_OriginalPath = reader.ReadAlignedString(); m_OriginalPath = reader.ReadAlignedString();
var m_ProxyWidth = reader.ReadUInt32(); var m_ProxyWidth = reader.ReadUInt32();
var m_ProxyHeight = reader.ReadUInt32(); var m_ProxyHeight = reader.ReadUInt32();
var Width = reader.ReadUInt32(); Width = reader.ReadUInt32();
var Height = reader.ReadUInt32(); Height = reader.ReadUInt32();
if (version[0] > 2017 || (version[0] == 2017 && version[1] >= 2)) //2017.2 and up if (version[0] > 2017 || (version[0] == 2017 && version[1] >= 2)) //2017.2 and up
{ {
var m_PixelAspecRatioNum = reader.ReadUInt32(); var m_PixelAspecRatioNum = reader.ReadUInt32();
var m_PixelAspecRatioDen = reader.ReadUInt32(); var m_PixelAspecRatioDen = reader.ReadUInt32();
} }
var m_FrameRate = reader.ReadDouble(); m_FrameRate = reader.ReadDouble();
var m_FrameCount = reader.ReadUInt64(); var m_FrameCount = reader.ReadUInt64();
var m_Format = reader.ReadInt32(); m_Format = reader.ReadInt32();
var m_AudioChannelCount = reader.ReadUInt16Array(); var m_AudioChannelCount = reader.ReadUInt16Array();
reader.AlignStream(); reader.AlignStream();
var m_AudioSampleRate = reader.ReadUInt32Array(); var m_AudioSampleRate = reader.ReadUInt32Array();
@ -51,7 +56,7 @@ namespace AssetStudio
} }
} }
m_ExternalResources = new StreamedResource(reader); m_ExternalResources = new StreamedResource(reader);
var m_HasSplitAlpha = reader.ReadBoolean(); m_HasSplitAlpha = reader.ReadBoolean();
if (version[0] >= 2020) //2020.1 and up if (version[0] >= 2020) //2020.1 and up
{ {
var m_sRGB = reader.ReadBoolean(); var m_sRGB = reader.ReadBoolean();

View File

@ -95,6 +95,15 @@ namespace AssetStudioCLI
{ {
if (!TryExportFile(exportPath, item, Path.GetExtension(m_VideoClip.m_OriginalPath), out var exportFullPath)) if (!TryExportFile(exportPath, item, Path.GetExtension(m_VideoClip.m_OriginalPath), out var exportFullPath))
return false; return false;
var sb = new StringBuilder();
sb.AppendLine($"VideoClip format: {m_VideoClip.m_Format}");
sb.AppendLine($"VideoClip width: {m_VideoClip.Width}");
sb.AppendLine($"VideoClip height: {m_VideoClip.Height}");
sb.AppendLine($"VideoClip frame rate: {m_VideoClip.m_FrameRate}");
sb.AppendLine($"VideoClip split alpha: {m_VideoClip.m_HasSplitAlpha}");
Logger.Debug(sb.ToString());
m_VideoClip.m_VideoData.WriteData(exportFullPath); m_VideoClip.m_VideoData.WriteData(exportFullPath);
Logger.Debug($"{item.TypeString}: \"{item.Text}\" exported to \"{exportFullPath}\""); Logger.Debug($"{item.TypeString}: \"{item.Text}\" exported to \"{exportFullPath}\"");
return true; return true;