README.md
HEVC conformance fixtures
These fixtures come from the electronic attachment to ITU-T H.265.1 (10/2018), the conformance specification aligned with ISO/IEC 23008-8. Table 4 identifies the Sony GENERAL_*_RExt streams and their required profiles.
The .bit files are the original Annex B conformance streams. The Samsung archives name their payloads .bin; the repository stores those unchanged bytes with the common .bit extension. Each GENERAL_*_frame0.yuv file contains the first decoded picture extracted byte-for-byte from the corresponding published planar reference output; it was not generated by ImageSharp.
HevcPictureDecoderTests.DecodeOfficialRangeExtensionsPictureMatchesPublishedDigest limits each stream to its first independently coded picture, adapts that picture to the bounded hvc1 item contract, compares every reconstructed sample with _frame0.yuv, and verifies the published decoded-picture MD5 value for every present plane.
The retained matrix covers the ImageSharp 8, 10, and 12-bit still-image precision boundary across monochrome, 4:2:0, 4:2:2, and 4:4:4. Tool-specific H.265.1 streams remain necessary before every exposed Range Extensions tool can be marked complete.
The Main-profile traversal matrix comes from the official RQT_A_HHI_4 through RQT_E_HHI_4, STRUCT_A_Samsung_7, STRUCT_B_Samsung_7, and TUSIZE_A_Samsung_1 archives. Their published descriptions target residual-quadtree intra hierarchy depths zero through four, coding-tree and minimum-coding-unit structure, and a 64x64 coding-tree block with 32x32 minimum coding units and 16x16 minimum luma transforms, respectively.
HevcPictureDecoderTests.DecodeOfficialTraversalPictureMatchesPinnedHmDigest decodes each first independently coded picture through the production still-item path and compares all three native planes with fixed MD5 digests. The RQT values are the streams' decoded-picture-hash SEI values. For STRUCT and TUSIZE, the plane values were calculated from the first picture written by the HM reference decoder at commit 9c1f298659ab0cee9dc13d23d0304221575410b9; the complete HM output also matched each archive's published file MD5:
STRUCT_A_Samsung_7:02f02cc9a67222004ae18ee6bebd475aSTRUCT_B_Samsung_7:1f472e014aff120681e8482c8a04ef93TUSIZE_A_Samsung_1:5e6c198c852e92cdcca0e137fc2610c4
The intra-prediction fixtures come from the same official HEVC v1 attachment:
IPRED_B_Nokia_3is the one-picture Main Still Picture stream identified by H.265.1 Table 1. Its published description states that it uses all 35 modes at each of the luma 32x32, 16x16, 8x8, and 4x4 sizes and the chroma 16x16, 8x8, and 4x4 sizes, for 245 mode-and-size combinations. The archive SHA-256 is738E35AF4CED173E8CCB558464DC6A1B8B791FB1BB957C073633AA6037288CD0; the published bitstream MD5 is1be12a94d9da6b84af78cd6cfd5e4407; and the retained published YUV has MD5ec3bcad4f9174404e52d132206b6617b.CIP_A_Panasonic_3signals constrained intra prediction and contains one I picture followed by one B picture. The bounded still decoder test extracts only the independently coded I picture. The archive SHA-256 is5C55B3594E5C951C9F5312913961750283EB2DADD15844FE35F9BEB94A9A548C, and the published bitstream MD5 ise1e00592fc8a158da9109b4dc05d03be.
HM at commit 9c1f298659ab0cee9dc13d23d0304221575410b9 reproduces the published IPRED_B_Nokia_3 YUV MD5 exactly and reports decoded-picture hashes 200ef9f7d2efde44ab872a78a40ece42, bfe9de3bef5ce5596a71bbfdbfb823fc, and 5b14acdd5c5bf8c6887160817ee1ad11. The same pinned decoder reproduces CIP_A_Panasonic_3's published complete two-picture YUV MD5 4cbf601ba98d63f642defab5eaa12c8d; its independently coded first picture reports plane hashes 69a20189e6bbb9c088e3adc967244ca1, 26502d354bb123f54c20413f14360ddb, and baafaef47a55ae2e876862b30b3bc720.
The residual-reconstruction fixtures come from the official HEVC v1 and Range Extensions attachments. Pinned HM commit 9c1f298659ab0cee9dc13d23d0304221575410b9 decodes every retained independently coded picture and produces the plane hashes asserted by the tests.
DELTAQP_A_BRCM_4_frame0.bitis the exact first independently coded picture extracted fromDELTAQP_A_BRCM_4.bit. The official archive has SHA-25663ABBBAF43D334D7952EAB7BBC5B3E34B4AD0259EDDCD63CDB164DBCF9A36CA6, the original bitstream has SHA-2561274E3E308DFE684B38A88F8B3A2845B84F57492B0B02AAECBE5DC29CA8ED532, and the retained picture has SHA-2564DC49A2AAE1CCE20D5CD190A1342FAF4C3B2BD06D1A59824542B9B22F53C581B. The official description randomizesdiff_cu_qp_delta_depthfrom zero through three and delta QP from -26 through 25; the retained picture contains 384 delta-QP CABAC decisions.QMATRIX_A_RExt_Sony_1.bithas SHA-25674847E07F3298923DA0E9B68B1F861930D227BD5AD83A834A8280CF042A7E78F. Its official description covers scaling-list data with and without transform skip at every transform size over different QPs; the retained first picture signals scaling lists, coding-unit QP deltas, transform skip, transform-skip contexts and rotation, and implicit residual DPCM.EXTPREC_MAIN_444_16_INTRA_12BIT_RExt_Sony_1.bitis the second of the official stream's two concatenated one-picture sequences, retained with its own VPS, SPS, and PPS. The official archive has SHA-25666C8E24866210B94A63A29C93F8C1490046CC17B26484C5BD81F805D7BFD18D1, the original bitstream has SHA-2565F0164DCCC333296FB2753068CAFE4985B758DDB7E282358DBB8FAF74986817D, and the retained sequence has SHA-2564107D5BB5DF4F95185E7A8A5EEF8F35970A4769C76901FF590F38F7BC36B268B. This 12-bit GBR sequence is the one that signals extended-precision processing and transform skip. Its reference plane hashes were produced by the pinned HM commit built with itsHIGH_BITDEPTHoption, which is required by HM for this sequence.GENERAL_12b_444_RExt_Sony_2_idr7.bitis the seventh independently coded picture extracted with its active VPS, SPS, and PPS from the already retained official GENERAL stream. It has SHA-256981D97F0ADC228F2E3A739D7A68161F84CD60309745397D5CF24D2F81C009DBCand contains 39 coding-unit chroma-QP adjustment decisions across 8-, 16-, and 32-sample chroma transforms.LS_A_Orange_2.bithas SHA-25614251238F005A4576437429A327B34D216B346AAAC2A7A05C132A3430174B11Band published MD59118d01cf6b3671038d6f99342c0895e. The official lossless description states that every coding unit uses transform, quantization, and filtering bypass; the retained first picture exercises the bypass-flag path and its decoded-picture hash reports OK.