![]() ![]() Given this trend, RAD's heyday was definitely in the days before consoles had NVMe disks (Bink in particular let games punch far above their weight) so this might be a nice forever-home.īlame Intel for not making faster CPUs, and consumers for tolerating massive install sizes, i guess. Current-gen consoles also all have NVMe SSDs. But recently I guess developers think disks are fast enough now, because PC games have been using more uncompressed assets to free up CPU time, massively bloating install size. So low-overhead (fast) decompression is essential for AAA titles. Note that this is the BIK value in machine order (therefore it appears backwards for x86 binaries).The history of RAD is a history of media read speeds - playing back full-motion video from a CD on a PS2 with its near-zero available CPU resources was a superhuman effort. To find where to start decoding search for one of 4 id's in the file: The layout of each frame is as follows:įour bytes length of audio packet (bytes) plus four bytes.Ī value of zero indicates no audio is present for this track.īink data can be contained in exe files. Bytes 12-15 (largest frame size) probably exist to provide the playback application with the largest single buffer it will have to allocate. ![]() The final frame offset is equal to the size of the entire file (likely included to simplify calculation of the length of the final frame).Įach frame contains (optional) audio and video data. If bit 0 of an entry is set, that frame is a keyframe this bit should be masked off to find the actual offset of the frame data in the file. There is no length information provided in the table, so the length of a sample is implicitly the difference between frame offsets, and the size of the file (for the very last frame). Each entry consists of a 32-bit absolute offset for that frame. The number of entries in the table is equal to the number of frames specified in the header plus one. The audio track flags are similar to those defined for the Smacker AudioRate flags.įollowing the header is a frame index table. Neither are currently supported by the tools published by RAD Game Tools. Revision d is found in WWE `13 (Xbox 360). Revision b is found in Heroes of Might and Magic 3, but is not supported by any of the tools published by RAD Game Tools.īink Video 2 revision a is found in Gears of War 3 (Xbox 360). Not authoritative, see flags below.īit 15: unknown (observed in some samples)īit 14: unknown (observed in some samples)īink Video revisions f and g contain video planes in YVU order, while the planes are ordered YUV in other (later) revisions. ![]() If there are zero audio tracks, then the headers are omitted.īytes 0-2 file signature ('BIK', or 'KB2' for Bink Video 2)īyte 3 Bink Video codec revision (0圆2, 0圆4, 0圆6, 0圆7, 0圆8, 0圆9 b,d,f,g,h,i respectively)īink Video 2 codec revision ('a', 'd', 'f', 'g', 'h', 'i')īytes 4-7 file size not including the first 8 bytesīytes 20-23 video width (less than or equal to 32767)īytes 24-27 video height (less than or equal to 32767)īytes 28-31 video frames per second dividendīytes 32-35 video frames per second dividerīytes 40-43 number of audio tracks (less than or equal to 256) Audio information follows the main header. This description is known to be incomplete.Īll multi-byte numbers are stored in little endian format.īink files commence with a 44-byte header which is laid out as follows. Bink multimedia files are known to bear the. The files act as containers for data compressed with the proprietary Bink video, Bink video 2 and audio codecs. īink files are multimedia files used in a variety of video games, both on personal computers platforms and video game consoles. This page is based on the document 'Description of the Bink File Format' by Mike Melanson at. ![]()
0 Comments
Leave a Reply. |