The video was recorded for too long for the test timeouts. Also the verification
suite did not had custom timouts at all. Also split the verification for images
and video to get better reporting.
Use playbin2 for validation. Use tmp_dir for capturing. Wait with g_cond for
burst capture finish. Cleanup some g_object_set. Add some logging to ease
tracing.
Original commit message from CVS:
* tests/check/Makefile.am:
Dist test headers for amr and aac parsers.
Remove leftover lines mentioned speexresample tests.
Original commit message from CVS:
* gst/mxf/mxfaes-bwf.c: (mxf_bwf_handle_essence_element),
(mxf_aes3_handle_essence_element):
* gst/mxf/mxfalaw.c: (mxf_alaw_handle_essence_element):
* gst/mxf/mxfd10.c: (mxf_d10_picture_handle_essence_element),
(mxf_d10_sound_handle_essence_element):
* gst/mxf/mxfdemux.c: (gst_mxf_demux_pad_init),
(gst_mxf_demux_choose_package),
(gst_mxf_demux_handle_header_metadata_update_streams),
(gst_mxf_demux_pad_next_component),
(gst_mxf_demux_handle_generic_container_essence_element),
(gst_mxf_demux_parse_footer_metadata),
(gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_src_query):
* gst/mxf/mxfdv-dif.c: (mxf_dv_dif_handle_essence_element):
* gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_handle_essence_element):
* gst/mxf/mxfmetadata.c: (mxf_metadata_sequence_init),
(mxf_metadata_structural_component_init),
(mxf_metadata_generic_picture_essence_descriptor_init):
* gst/mxf/mxfmpeg.c: (mxf_mpeg_video_handle_essence_element),
(mxf_mpeg_audio_handle_essence_element):
* gst/mxf/mxfparse.h:
* gst/mxf/mxfup.c: (mxf_up_handle_essence_element):
* gst/mxf/mxfvc3.c: (mxf_vc3_handle_essence_element):
* tests/check/elements/mxfdemux.c: (_sink_chain):
Implement support for OP2a/b/c and OP3a/b/c, i.e. tracks with
more than a single component. This currently only works for
the case where the components are stored in playback order
in the file.
Set some more default/distinguished values for the structural
metadata.
Make some types more strict by choosing the correct subclasses.
Set DISCONT flag on buffers after a component switch.
Take the last partition from the random index pack for the footer
partition of the header partition doesn't reference the footer
partition. This gives us the final structural metadata for
some more files in the beginning.
Original commit message from CVS:
* tests/check/elements/mxfdemux.c: (_sink_event):
* tests/check/elements/mxfdemux.h:
Make sure the main loop is already running when handling the EOS
event in pull mode. This works around a race condition that can
happen if the element goes into PLAYING, handles everything and
sends EOS before the main loop is started.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/mxfdemux.c: (_pad_added), (_sink_chain),
(_sink_event), (_create_sink_pad), (_create_src_pad_push),
(_src_getrange), (_src_query), (_create_src_pad_pull),
(GST_START_TEST), (mxfdemux_suite):
* tests/check/elements/mxfdemux.h:
Add push and pull mode unit test for mxfdemux.
Original commit message from CVS:
* tests/check/elements/speexresample.c: (test_pipeline):
Make unit test again faster to prevent timeouts with valgrind.
Original commit message from CVS:
* tests/check/elements/speexresample.c: (GST_START_TEST):
Make the unit test a bit faster to prevent timeouts, especially
with valgrind.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/aacparse.c:
* tests/check/elements/amrparse.c:
Add unit tests for new parsers.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/qtmux.c: (setup_src_pad),
(teardown_src_pad), (setup_qtmux), (cleanup_qtmux),
(check_qtmux_pad), (GST_START_TEST), (qtmux_suite), (main):
Add unit test for qtmux.
Original commit message from CVS:
* tests/check/elements/speexresample.c: (element_message_cb),
(eos_message_cb), (test_pipeline), (GST_START_TEST),
(speexresample_suite):
Add pipeline unit tests for testing all supported formats with
up/downsampling and different in/outrates.
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_push_drain), (gst_speex_resample_process):
* gst/speexresample/speex_resampler_wrapper.h:
Fix bugs identified by the testsuite.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c: (gst_speex_resample_start),
(gst_speex_resample_get_unit_size),
(gst_speex_resample_push_drain), (gst_speex_resample_event),
(gst_speex_resample_check_discont), (gst_speex_resample_process),
(gst_speex_resample_transform):
* gst/speexresample/gstspeexresample.h:
Rewrite timestamp tracking to make it more robust and guarantee
a continous stream.
* tests/check/Makefile.am:
* tests/check/elements/speexresample.c: (setup_speexresample),
(cleanup_speexresample), (fail_unless_perfect_stream),
(test_perfect_stream_instance), (GST_START_TEST),
(test_discont_stream_instance), (live_switch_alloc_only_48000),
(live_switch_get_sink_caps), (live_switch_push),
(speexresample_suite):
Add unit tests for speexresample based on the audioresample unit tests.
Original commit message from CVS:
* tests/check/pipelines/metadata.c:
Make the metadata test not fail when jpegenc isn't available....
as it isn't here, because it's not in this module, and
therefore not in the plugin path when the check runs.
Original commit message from CVS:
* configure.ac
* ext/metadata/README:
* ext/metadata/metadataexif.c:
* ext/metadata/metadatatags.c:
* ext/metadata/metadatatags.h:
Start using core geo tags (bump req). Fix handling of location
references.
* tests/check/Makefile.am:
Sort blacklisted elements and remove moved ones. Add new test.
* tests/check/pipelines/metadata.c:
Add first tests for metadata element.
* tests/icles/metadata_editor.c:
Move free to correct place.
Original commit message from CVS:
* tests/check/generic/states.c:
Stop test on state-change error. Should be applied on other modules if
we agree that it makes sense.
Original commit message from CVS:
* tests/check/elements/audioresample.c: (setup_audioresample),
(fail_unless_perfect_stream), (test_perfect_stream_instance),
(test_discont_stream_instance):
Now that GstBaseTransform is 'fixed' ... remove cruft from tests.
Add debugging for coherence.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* ext/x264/gstx264enc.c:
* tests/check/Makefile.am:
* tests/check/elements/x264enc.c: (setup_x264enc),
(cleanup_x264enc), (GST_START_TEST), (x264enc_suite), (main):
Add documentation and unit test for x264enc.
Original commit message from CVS:
* gst/selector/gstoutputselector.c:
* tests/icles/output-selector-test.c:
Use BOILERPLATE macro and update test to the latest api changes.
Original commit message from CVS:
* gst/interleave/interleave.c: (gst_interleave_pad_get_type),
(gst_interleave_finalize), (gst_audio_check_channel_positions),
(gst_interleave_set_channel_positions),
(gst_interleave_class_init), (gst_interleave_init),
(gst_interleave_set_property), (gst_interleave_get_property),
(gst_interleave_request_new_pad), (gst_interleave_release_pad),
(gst_interleave_sink_setcaps), (gst_interleave_src_query_duration),
(gst_interleave_src_query_latency), (gst_interleave_collected):
* gst/interleave/interleave.h:
Allow setting channel positions via a property and allow using the
channel positions on the input as the channel positions of the output.
Fix some broken logic and memory leaks.
* tests/check/Makefile.am:
* tests/check/elements/interleave.c: (src_handoff_float32),
(sink_handoff_float32), (GST_START_TEST), (interleave_suite):
Add unit tests for checking correct handling of channel positions.
Original commit message from CVS:
* gst/interleave/deinterleave.c:
Add another example launch line.
* gst/interleave/interleave.c: (interleave_24),
(gst_interleave_finalize), (gst_interleave_base_init),
(gst_interleave_class_init), (gst_interleave_init),
(gst_interleave_request_new_pad), (gst_interleave_release_pad),
(gst_interleave_change_state), (__remove_channels),
(__set_channels), (gst_interleave_sink_getcaps),
(gst_interleave_set_process_function),
(gst_interleave_sink_setcaps), (gst_interleave_sink_event),
(gst_interleave_src_query_duration), (gst_interleave_src_query),
(forward_event_func), (forward_event), (gst_interleave_src_event),
(gst_interleave_collected):
* gst/interleave/interleave.h:
Major rewrite of interleave using GstCollectpads. This new version
also supports almost all raw audio formats and has better caps
negotiation. Fixes bug #506594.
Also update docs and add some more examples.
* tests/check/elements/interleave.c: (interleave_chain_func),
(GST_START_TEST), (src_handoff_float32), (sink_handoff_float32),
(interleave_suite):
Add some more extensive unit tests for interleave.
Original commit message from CVS:
* tests/icles/.cvsignore:
* tests/icles/Makefile.am:
* tests/icles/test-oss4.c: (opt_show_mixer_messages), (WAIT_TIME),
(show_mixer_messages), (probe_mixer_tracks), (probe_pad),
(probe_details), (probe_element), (main):
Small oss4 test that probes for available devices and retrieves
their caps and mixer tracks and all that. Also allows testing of
mixer change messages on the bus.
Original commit message from CVS:
* tests/check/elements/deinterleave.c: (GST_START_TEST):
Set keep-positions property to TRUE for the 8 channel test to ensure
that the original channel position is set on the output.
Original commit message from CVS:
* gst/interleave/Makefile.am:
* gst/interleave/deinterleave.c: (deinterleave_24),
(gst_deinterleave_finalize), (gst_deinterleave_base_init),
(gst_deinterleave_class_init), (gst_deinterleave_init),
(gst_deinterleave_add_new_pads), (gst_deinterleave_set_pads_caps),
(gst_deinterleave_set_process_function),
(gst_deinterleave_sink_setcaps), (__remove_channels),
(__set_channels), (gst_deinterleave_getcaps),
(gst_deinterleave_process), (gst_deinterleave_chain),
(gst_deinterleave_sink_activate_push):
* gst/interleave/deinterleave.h:
Add support for all raw audio formats and provide better negotiation
if the caps are changing.
Don't allow changes of the channel positions and set the position of
the corresponding channel on the src pad caps.
General cleanup and smaller bugfixes.
* tests/check/elements/deinterleave.c: (float_buffer_check_probe):
Check the channel positions on the output buffer caps.
Original commit message from CVS:
* tests/check/Makefile.am:
Remove deinterleave test from VALGRIND_TO_FIX again now that
there are suppressions in gst.supp which make this work for me.
Original commit message from CVS:
* tests/check/Makefile.am:
Add deinterleave unit test to VALGRIND_TO_FIX, since it causes
weird invalid free errors in valgrind/libc after _exit for some
reason.
* tests/check/elements/deinterleave.c: (pads_created),
(set_channel_positions), (src_handoff_float32_8ch),
(float_buffer_check_probe),
(pad_added_setup_data_check_float32_8ch_cb),
(make_fake_src_8chans_float32), (GST_START_TEST),
(deinterleave_suite):
Add some more deinterleave unit test bits I had locally.
Original commit message from CVS:
* gst/interleave/Makefile.am:
* gst/interleave/deinterleave.h:
* gst/interleave/interleave.h:
* gst/interleave/plugin.h:
Split definitions into separate header files for better documentation
generation.
* gst/interleave/deinterleave.c: (gst_deinterleave_base_init),
(gst_deinterleave_class_init), (gst_deinterleave_sink_setcaps),
(gst_deinterleave_process):
Don't use alloca, allow caps changes as long as the number of channels
does not change, don't use g_warning, return NOT_NEGOTIATED as early
as possible and some other cleanup.
* gst/interleave/interleave.c: (gst_interleave_base_init),
(gst_interleave_class_init):
Do some random cleanup.
* tests/check/Makefile.am:
* tests/check/elements/deinterleave.c: (GST_START_TEST),
(deinterleave_chain_func), (deinterleave_pad_added),
(deinterleave_suite):
Add unit tests for the deinterleave element.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* tests/check/elements/audioresample.c:
(live_switch_alloc_only_48000), (live_switch_get_sink_caps),
(live_switch_push), (GST_START_TEST):
Add unit test for the latest basetransform negotiation changes.
See bug #526768.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/audioresample/gstaudioresample.c: (gst_audioresample_init):
Let audioresample use the buffer allocation of basetransform instead
of it's own stuff.
* tests/check/elements/audioresample.c: (alloc_only_48000),
(GST_START_TEST), (audioresample_suite):
Add unit test for the recent basetransform bugfix, where upstream
changes caps to something that can't be passed through anymore.