public BattleVideoRecord4(int pid, ulong serial_number, BattleVideoHeader4 header, byte[] data_main)
        {
            if (data_main.Length != 7272) throw new ArgumentException("Battle video main data must be 7272 bytes.");

            PID = pid;
            SerialNumber = serial_number;
            Header = header;
            Data = data_main;
        }
        public BattleVideoRecord4(int pid, ulong serial_number, BattleVideoHeader4 header, byte[] data_main)
        {
            if (data_main.Length != 7272)
            {
                throw new ArgumentException("Battle video main data must be 7272 bytes.");
            }

            PID          = pid;
            SerialNumber = serial_number;
            Header       = header;
            Data         = data_main;
        }
        public BattleVideoRecord4(int pid, ulong serial_number, byte[] data)
        {
            if (data.Length != 7500) throw new ArgumentException("Battle video data must be 7500 bytes.");

            byte[] data_head = new byte[228];
            byte[] data_main = new byte[7272];

            Array.Copy(data, 0, data_head, 0, 228);
            Array.Copy(data, 228, data_main, 0, 7272);

            PID = pid;
            SerialNumber = serial_number;
            Header = new BattleVideoHeader4(pid, serial_number, data_head);
            Data = data_main;
        }
        public BattleVideoRecord4(int pid, ulong serial_number, byte[] data)
        {
            if (data.Length != 7500)
            {
                throw new ArgumentException("Battle video data must be 7500 bytes.");
            }

            byte[] data_head = new byte[228];
            byte[] data_main = new byte[7272];

            Array.Copy(data, 0, data_head, 0, 228);
            Array.Copy(data, 228, data_main, 0, 7272);

            PID          = pid;
            SerialNumber = serial_number;
            Header       = new BattleVideoHeader4(pid, serial_number, data_head);
            Data         = data_main;
        }