mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-22 09:41:07 +00:00
gst-editing-services: add input channels reorder
- whitelist corresponding properties from audioconvert - add input channels reorder validation test in gst-integration-testsuites/ges/scenarios Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5923>
This commit is contained in:
parent
8fb96253be
commit
9fd0f44492
5 changed files with 113 additions and 2 deletions
|
@ -128,7 +128,10 @@ ges_audio_source_create_element (GESTrackElement * trksrc)
|
||||||
GPtrArray *elements;
|
GPtrArray *elements;
|
||||||
GESSourceClass *source_class = GES_SOURCE_GET_CLASS (trksrc);
|
GESSourceClass *source_class = GES_SOURCE_GET_CLASS (trksrc);
|
||||||
const gchar *volume_props[] = { "volume", "mute", NULL };
|
const gchar *volume_props[] = { "volume", "mute", NULL };
|
||||||
const gchar *audioconvert_props[] = { "mix-matrix", NULL };
|
const gchar *audioconvert_props[] = {
|
||||||
|
"mix-matrix", "input-channels-reorder",
|
||||||
|
"input-channels-reorder-mode", NULL
|
||||||
|
};
|
||||||
GESAudioSource *self = GES_AUDIO_SOURCE (trksrc);
|
GESAudioSource *self = GES_AUDIO_SOURCE (trksrc);
|
||||||
|
|
||||||
g_assert (source_class->create_source);
|
g_assert (source_class->create_source);
|
||||||
|
|
|
@ -0,0 +1,58 @@
|
||||||
|
set-globals, media_file="$(test_dir)/../../medias/defaults/ogg/audio_5.1_separated_frequencies.ogg"
|
||||||
|
meta,
|
||||||
|
tool = "ges-launch-$(gst_api_version)",
|
||||||
|
handles-states=true,
|
||||||
|
seek=true,
|
||||||
|
needs_preroll=true,
|
||||||
|
args = {
|
||||||
|
--track-types, audio,
|
||||||
|
--audio-caps, "audio/x-raw, channels=2",
|
||||||
|
--audiosink, "$(audiosink) name=audiosink",
|
||||||
|
},
|
||||||
|
configs = {
|
||||||
|
"$(validateflow), pad=audiosink:sink, buffers-checksum=true, ignored-fields=\"stream-start={stream-id,group-id,stream}\"",
|
||||||
|
}
|
||||||
|
|
||||||
|
# Add a 5.1 audio clip with forced default order (gst)
|
||||||
|
add-clip, name=clip, asset-id="file://$(media_file)", layer-priority=0, type=GESUriClip
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder-mode=force
|
||||||
|
checkpoint, text="Checking default GST order."
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to smpte
|
||||||
|
checkpoint, text="Checking SMPTE order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=smpte
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to cine
|
||||||
|
checkpoint, text="Checking CINE order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=cine
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to ac3
|
||||||
|
checkpoint, text="Checking AC3 order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=ac3
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to aac
|
||||||
|
checkpoint, text="Checking AAC order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=aac
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to mono
|
||||||
|
checkpoint, text="Checking MONO order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=mono
|
||||||
|
pause
|
||||||
|
|
||||||
|
# Change order to alternate
|
||||||
|
checkpoint, text="Checking ALTERNATE order."
|
||||||
|
set-state, state=null
|
||||||
|
set-child-properties, element-name=clip, input-channels-reorder=alternate
|
||||||
|
pause
|
||||||
|
|
||||||
|
stop
|
|
@ -0,0 +1,49 @@
|
||||||
|
|
||||||
|
CHECKPOINT: Checking default GST order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=a8466458c3dc435159d9df2f7ca37345017013fb, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking SMPTE order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=a8466458c3dc435159d9df2f7ca37345017013fb, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking CINE order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=203fce4efef89b9526b608b0d4f5f5c0097be3a3, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking AC3 order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=18ea51cc5086625305ea18e4d0abbabc66616136, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking AAC order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=70620194e45b76eb1469b7221f8dec05a5505c93, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking MONO order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=3cffd73a8ddcafa0d0cd17151af4d2bd6c26f620, pts=0:00:00.000000000, dur=0:00:00.010000000
|
||||||
|
|
||||||
|
CHECKPOINT: Checking ALTERNATE order.
|
||||||
|
|
||||||
|
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||||
|
event caps: audio/x-raw, channel-mask=(bitmask)0x0000000000000003, channels=(int)2, format=(string)F32LE, layout=(string)interleaved, rate=(int)48000;
|
||||||
|
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:30.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
|
||||||
|
buffer: checksum=e1472a1300859dea1e3ecf4ac6a16298d6fb4e63, pts=0:00:00.000000000, dur=0:00:00.010000000
|
|
@ -1 +1 @@
|
||||||
Subproject commit cba2a17a35049f76b5a1501da877b550dd795bef
|
Subproject commit fa0b7ec4a3e48371ff25d608ff5278e6fac1060c
|
|
@ -764,3 +764,4 @@ ges.test.videoscale_effect
|
||||||
ges.test.backward_playback_with_start
|
ges.test.backward_playback_with_start
|
||||||
ges.test.check_reverse_source
|
ges.test.check_reverse_source
|
||||||
ges.test.timelineelement.set_child_prop_on_all_instances
|
ges.test.timelineelement.set_child_prop_on_all_instances
|
||||||
|
ges.test.input_audio_channels_reorder
|
||||||
|
|
Loading…
Reference in a new issue