Commit 4a12252044 for ffmpeg

commit 4a122520444dc78ed5bc3ee4d35bbd15f220c67f
Author: James Almer <jamrial@gmail.com>
Date:   Sat Oct 10 17:00:21 2026 -0300

    tests/fate/mov: add a test for HEIF with Gain Map derived image

    Signed-off-by: James Almer <jamrial@gmail.com>

diff --git a/tests/fate/mov.mak b/tests/fate/mov.mak
index 3827f65ead..e36ddff7ed 100644
--- a/tests/fate/mov.mak
+++ b/tests/fate/mov.mak
@@ -283,6 +283,12 @@ FATE_MOV_FFMPEG_FFPROBE_SAMPLES-$(call FRAMECRC, MOV, HEVC, HEVC_PARSER) \
 fate-mov-heic-demux-still-image-iovl-2: CMD = stream_demux mov $(TARGET_SAMPLES)/heif-conformance/C021.heic "" "-c:v copy -map 0:g:0" \
   "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_disposition:stream_group_tags:stream_group_stream=index,id:stream_group_stream_disposition"

+# heic demuxing - still image with a Gain Map stream group signaled with a tmap derived image
+FATE_MOV_FFMPEG_FFPROBE_SAMPLES-$(call FRAMECRC, MOV, HEVC, HEVC_PARSER) \
+                           += fate-mov-heic-demux-still-image-gainmap-tmap
+fate-mov-heic-demux-still-image-gainmap-tmap: CMD = stream_demux mov $(TARGET_SAMPLES)/heif/gain_map_tmap.heic "" "-c:v copy -map 0:g:0 -map 0:4" \
+  "-of compact -show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_disposition:stream_group_tags:stream_group_side_data:stream_group_stream=index,id:stream_group_stream_disposition:stream_group_stream_side_data_list"
+
 # Resulting remux should have:
 # 1. first audio stream with AV_DISPOSITION_HEARING_IMPAIRED
 # 2. second audio stream with AV_DISPOSITION_VISUAL_IMPAIRED | DESCRIPTIONS
diff --git a/tests/ref/fate/mov-heic-demux-still-image-gainmap-tmap b/tests/ref/fate/mov-heic-demux-still-image-gainmap-tmap
new file mode 100644
index 0000000000..4f748404fe
--- /dev/null
+++ b/tests/ref/fate/mov-heic-demux-still-image-gainmap-tmap
@@ -0,0 +1,43 @@
+#extradata 0:      105, 0x607d1563
+#extradata 1:      105, 0x607d1563
+#extradata 2:      105, 0x607d1563
+#extradata 3:      105, 0x607d1563
+#extradata 4:      106, 0xc3c117ca
+#tb 0: 1/1
+#media_type 0: video
+#codec_id 0: hevc
+#dimensions 0: 512x512
+#sar 0: 0/1
+#tb 1: 1/1
+#media_type 1: video
+#codec_id 1: hevc
+#dimensions 1: 512x512
+#sar 1: 0/1
+#tb 2: 1/1
+#media_type 2: video
+#codec_id 2: hevc
+#dimensions 2: 512x512
+#sar 2: 0/1
+#tb 3: 1/1
+#media_type 3: video
+#codec_id 3: hevc
+#dimensions 3: 512x512
+#sar 3: 0/1
+#tb 4: 1/1
+#media_type 4: video
+#codec_id 4: hevc
+#dimensions 4: 150x200
+#sar 4: 0/1
+0,          0,          0,        1,     1900, 0xdc4fa164
+1,          0,          0,        1,      716, 0x9eb062d8
+2,          0,          0,        1,     1344, 0x60ee8d67
+3,          0,          0,        1,      730, 0x7dfa6c3d
+4,          0,          0,        1,       48, 0x1b7c177a
+stream_group|index=0|id=0x5|nb_streams=4|type=Tile Grid|component_entry/tile_grid:nb_tiles=4|component_entry/tile_grid:coded_width=1024|component_entry/tile_grid:coded_height=1024|component_entry/tile_grid:horizontal_offset=0|component_entry/tile_grid:vertical_offset=0|component_entry/tile_grid:width=600|component_entry/tile_grid:height=800|subcomponent_entry/tile_offset:stream_index=0|subcomponent_entry/tile_offset:tile_horizontal_offset=0|subcomponent_entry/tile_offset:tile_vertical_offset=0|subcomponent_entry/tile_offset:stream_index=1|subcomponent_entry/tile_offset:tile_horizontal_offset=512|subcomponent_entry/tile_offset:tile_vertical_offset=0|subcomponent_entry/tile_offset:stream_index=2|subcomponent_entry/tile_offset:tile_horizontal_offset=0|subcomponent_entry/tile_offset:tile_vertical_offset=512|subcomponent_entry/tile_offset:stream_index=3|subcomponent_entry/tile_offset:tile_horizontal_offset=512|subcomponent_entry/tile_offset:tile_vertical_offset=512|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|disposition:multilayer=0|side_datum/exif_metadata:side_data_type=EXIF metadata|side_datum/exif_metadata:size=796|side_datum/icc_profile:side_data_type=ICC Profile
+stream|index=0|id=0x1|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0|side_datum/icc_profile:side_data_type=ICC Profile
+stream|index=1|id=0x2|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0|side_datum/icc_profile:side_data_type=ICC Profile
+stream|index=2|id=0x3|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0|side_datum/icc_profile:side_data_type=ICC Profile
+stream|index=3|id=0x4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0|side_datum/icc_profile:side_data_type=ICC Profile
+stream_group|index=1|id=0x7|nb_streams=2|type=Gain Map (Split base rendition and gain map)|component_entry/gain_map__split_base_rendition_and_gain_map_:el_index=1|component_entry/gain_map__split_base_rendition_and_gain_map_:width=600|component_entry/gain_map__split_base_rendition_and_gain_map_:height=800|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|disposition:multilayer=0|side_datum/icc_profile:side_data_type=ICC Profile
+stream_group|index=0|id=0x5|nb_streams=4|type=Tile Grid
+stream|index=4|id=0x6|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0|side_datum/gain_map_parameters:side_data_type=Gain Map Parameters|side_datum/gain_map_parameters:version=0|side_datum/gain_map_parameters:use_base_color_space=1|side_datum/gain_map_parameters:base_hdr_headroom=0/1|side_datum/gain_map_parameters:alternate_hdr_headroom=9646899/4194304|side_datum/gain_map_parameters:nb_channels=1|component_entry/gain_map_channel:gain_map_min=0/1|component_entry/gain_map_channel:gain_map_max=0/1|component_entry/gain_map_channel:gamma=1/1|component_entry/gain_map_channel:base_offset=0/1|component_entry/gain_map_channel:alternate_offset=0/1