gstreamer/subprojects/gst-plugins-bad/tests/validate/pitch/change_pitch_properties.validatetest
Loïc Le Page 9d703439f1 pitch: add validate tests
Add pitch tests with different forward and backward playback rates.
Those tests depend on the libSoundTouch version to validate the buffers
checksums. The actual version uses libSoundTouch 2.3.2, use the
`--force-fallback-for=soundtouch` meson option to build using the same
version.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6247>
2024-05-02 13:26:09 +02:00

41 lines
1.7 KiB
Text

include, location="pitch-test.meta"
pause
checkpoint, text="Play normally"
seek, start=2.0, stop=4.0, flags=accurate+flush, rate=1.0
play
wait, message-type=eos
checkpoint, text="Play one octave higher"
set-property, playback-time=position, target-element-name=pitch, property-name=pitch, property-value=2.0
seek, start=2.0, stop=4.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
checkpoint, text="Play one octave lower"
set-property, playback-time=position, target-element-name=pitch, property-name=pitch, property-value=0.5
seek, start=2.0, stop=4.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
checkpoint, text="Play twice faster same pitch"
set-property, playback-time=position, target-element-name=pitch, property-name=pitch, property-value=1.0
set-property, playback-time=position, target-element-name=pitch, property-name=tempo, property-value=2.0
seek, start=1.0, stop=2.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
checkpoint, text="Play twice slower same pitch"
set-property, playback-time=position, target-element-name=pitch, property-name=tempo, property-value=0.5
seek, start=4.0, stop=8.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
checkpoint, text="Play twice faster one octave higher"
set-property, playback-time=position, target-element-name=pitch, property-name=tempo, property-value=1.0
set-property, playback-time=position, target-element-name=pitch, property-name=rate, property-value=2.0
seek, start=1.0, stop=2.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
checkpoint, text="Play twice slower one octave lower"
set-property, playback-time=position, target-element-name=pitch, property-name=rate, property-value=0.5
seek, start=4.0, stop=8.0, flags=accurate+flush, rate=1.0
wait, message-type=eos
stop