Commit a0133d3380 for ffmpeg
commit a0133d3380493481b487d5e9e55457b22c801c24
Author: Romain Beauxis <romain.beauxis@gmail.com>
Date: Thu Oct 15 15:03:01 2026 +0200
tests/fate: show where a seek lands in AAC
Seek aac-2048-priming.mov to 2.3 s with ffprobe -read_intervals and list
the first packets read. The seek lands on the frame that holds the
target, with no earlier frame to decode first, which would be the
pre-roll a decoder needs to produce reliable output at the target.
Do the same for HE-AAC with explicit SBR, where a frame is twice as many
output samples, and for AAC-LC with 960 samples frames.
The references record the current output.
diff --git a/tests/fate/aac.mak b/tests/fate/aac.mak
index 4c4756a8f8..802c00784a 100644
--- a/tests/fate/aac.mak
+++ b/tests/fate/aac.mak
@@ -399,6 +399,12 @@ fate-aac-seek-preroll-sbr-no-doubling: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -sh
fate-aac-seek-preroll-frame-length-short: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_entries stream=profile,sample_rate,seek_preroll -print_format compact $(TARGET_SAMPLES)/aac/al04sf_48.mp4
fate-aac-seek-preroll-eld: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_entries stream=profile,sample_rate,seek_preroll -print_format compact $(TARGET_SAMPLES)/aac/er_eld2000np_48_ep0.mp4
+# Where a seek lands, by the same lengths of frame.
+FATE_AAC_PREROLL-$(call DEMDEC, MOV, AAC) += fate-aac-seek-landing-sbr \
+ fate-aac-seek-landing-frame-length-short
+fate-aac-seek-landing-sbr: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -read_intervals 10.3%+\#3 -show_entries packet=pts,dts,duration -print_format compact $(TARGET_SAMPLES)/aac/al_sbr_cm_48_2.mp4
+fate-aac-seek-landing-frame-length-short: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -read_intervals 3.3%+\#3 -show_entries packet=pts,dts,duration -print_format compact $(TARGET_SAMPLES)/aac/al04sf_48.mp4
+
FATE_SAMPLES_FFPROBE += $(FATE_AAC_PREROLL-yes)
FATE_SAMPLES_FFMPEG += $(FATE_AAC_ALL) $(FATE_AAC_FRAMECRC-yes) $(FATE_AAC_ENCODE-yes) $(FATE_AAC_BSF-yes)
diff --git a/tests/fate/mov.mak b/tests/fate/mov.mak
index 91e1699a5f..e467acdafb 100644
--- a/tests/fate/mov.mak
+++ b/tests/fate/mov.mak
@@ -155,6 +155,10 @@ fate-mov-aac-2048-priming: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_packets -
FATE_MOV_FFPROBE-$(call DEMDEC, MOV, AAC) += fate-mov-aac-2048-priming-preroll
fate-mov-aac-2048-priming-preroll: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_entries stream=initial_padding,seek_preroll -print_format compact $(TARGET_SAMPLES)/mov/aac-2048-priming.mov
+# Where a seek lands.
+FATE_MOV_FFPROBE-$(call DEMDEC, MOV, AAC) += fate-mov-aac-2048-priming-seek-landing
+fate-mov-aac-2048-priming-seek-landing: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -read_intervals 2.3%+\#3 -show_entries packet=pts,dts,duration -print_format compact $(TARGET_SAMPLES)/mov/aac-2048-priming.mov
+
# Seeking into the stream must not drop samples to the container's priming.
FATE_MOV-$(call FRAMECRC, MOV, AAC, PCM_S16LE_ENCODER ARESAMPLE_FILTER VOLUME_FILTER) += fate-mov-aac-2048-priming-seek
fate-mov-aac-2048-priming-seek: CMD = framecrc -ss 2.3 -t 0.15 -i $(TARGET_SAMPLES)/mov/aac-2048-priming.mov -af volume=0,aresample -c:a pcm_s16le
diff --git a/tests/ref/fate/aac-seek-landing-frame-length-short b/tests/ref/fate/aac-seek-landing-frame-length-short
new file mode 100644
index 0000000000..fd28ed6ee4
--- /dev/null
+++ b/tests/ref/fate/aac-seek-landing-frame-length-short
@@ -0,0 +1,3 @@
+packet|pts=158400|dts=158400|duration=960
+packet|pts=159360|dts=159360|duration=960
+packet|pts=160320|dts=160320|duration=960
diff --git a/tests/ref/fate/aac-seek-landing-sbr b/tests/ref/fate/aac-seek-landing-sbr
new file mode 100644
index 0000000000..7f3e2ebc8d
--- /dev/null
+++ b/tests/ref/fate/aac-seek-landing-sbr
@@ -0,0 +1,3 @@
+packet|pts=246784|dts=246784|duration=1024
+packet|pts=247808|dts=247808|duration=1024
+packet|pts=248832|dts=248832|duration=1024
diff --git a/tests/ref/fate/mov-aac-2048-priming-seek-landing b/tests/ref/fate/mov-aac-2048-priming-seek-landing
new file mode 100644
index 0000000000..17292a119a
--- /dev/null
+++ b/tests/ref/fate/mov-aac-2048-priming-seek-landing
@@ -0,0 +1,3 @@
+packet|pts=101376|dts=101376|duration=1024
+packet|pts=102400|dts=102400|duration=1024
+packet|pts=103424|dts=103424|duration=1024