Commit graph

1166 commits

Author SHA1 Message Date
Jan Schmidt
fd2a14144a subparse: WebVTT parsing support
WebVTT is a new subtitle format for HTML5 video. In this first
version of the parser the cue settings are parsed but only stored in
the internal parser state structure. Later on these settings could be
part of the GstBuffer metadata.

https://bugzilla.gnome.org/show_bug.cgi?id=629764
2016-03-25 00:58:42 +11:00
Vineeth TM
44b70ca3a1 base: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763075
2016-03-24 14:25:41 +02:00
Stian Selnes
93196092d1 rtcpbuffer: Add API for APP packets
https://bugzilla.gnome.org/show_bug.cgi?id=761944
2016-03-24 14:24:11 +02:00
Haakon Sporsheim
d8e9a711a0 rtcpbuffer: Add profile-specific extension API.
https://bugzilla.gnome.org/show_bug.cgi?id=761950
2016-03-24 14:22:54 +02:00
Sebastian Dröge
65390b5129 multihandlesink: Remove useless streamheader storage
We don't do anything with it but always get them from the caps anyway, so
stop storing them and having complicated logic around that.

https://bugzilla.gnome.org/show_bug.cgi?id=763278
2016-03-14 12:45:33 +02:00
Tim-Philipp Müller
f331412a37 opus: move Opus audio decoder and encoder from -bad to -base
Hook into build system after moving history.

https://bugzilla.gnome.org/show_bug.cgi?id=756282
2016-02-26 00:20:10 +00:00
Tim-Philipp Müller
a2eb430010 Merge branch 'plugin-move-opus'
Move Opus decoder and encoder from -bad to -base.

https://bugzilla.gnome.org/show_bug.cgi?id=756282
2016-02-25 23:51:42 +00:00
Sebastian Dröge
16e53defe5 audiovisualizer: Use the library instead of including the source file
Fixes build now that the shader enum GType has moved to a different file.
2016-02-26 00:02:49 +02:00
Stian Selnes
85f297d648 videoencoder: Fix leak when pre_push does not return OK
https://bugzilla.gnome.org/show_bug.cgi?id=761951
2016-02-13 10:09:45 -03:00
Thiago Santos
681b2b8d81 tests: extend the AM_TESTS_ENVIRONMENT from check.mak
To get the CK_DEFAULT_TIMEOUT defined for all tests.

Also replaces a 120 timeout that was set.

https://bugzilla.gnome.org/show_bug.cgi?id=761472
2016-02-05 19:15:16 -03:00
Tim-Philipp Müller
1e4f67472e tests: libvisual: make run faster
Reduce resolution, which shouldn't make any difference
to what's tested here. Makes test finish in less than
half the time it took before (8s vs. 21s).
2016-01-25 16:22:17 +00:00
Vineeth TM
2aabbc2163 tests:audioconvert: Fix integer overflow build error
value of 32768L << 16 and 1L << 31 is 2147483648
but it exceeds the positive range of int which is 2147483647
resulting in integer overflow error. Use G_GINT64_CONSTANT instead of L.

https://bugzilla.gnome.org/show_bug.cgi?id=760769
2016-01-19 09:56:25 +02:00
Koop Mast
17b16e7a83 tests: audioconvert: fix test compilation with clang
With clang 3.7.1 on FreeBSD:
elements/audioconvert.c:650:12: error: shifting a negative signed value is
      undefined [-Werror,-Wshift-negative-value]
      (-32 << 16) + (1 << 15), (-32 << 16) - (1 << 15),
       ~~~ ^

https://bugzilla.gnome.org/show_bug.cgi?id=760134
2016-01-06 01:13:32 +00:00
Tim-Philipp Müller
e5fb7275c2 tests: fix indentation of various unit tests 2016-01-06 01:12:13 +00:00
Hyunjun Ko
682b523652 sdp: add helper fuctions from/to sdp from/to caps
<gstsdpmessage.h>
GstCaps*       gst_sdp_media_get_caps_from_media   (const GstSDPMedia *media, gint pt);
GstSDPResult   gst_sdp_media_set_media_from_caps   (const GstCaps* caps, GstSDPMedia *media);
gchar *        gst_sdp_make_keymgmt                (const gchar *uri, const gchar *base64);
GstSDPResult   gst_sdp_message_attributes_to_caps  (GstSDPMessage *msg, GstCaps *caps);
GstSDPResult   gst_sdp_media_attributes_to_caps    (GstSDPMedia *media, GstCaps *caps);

<gstmikey.h>
GstMIKEYMessage * gst_mikey_message_new_from_caps  (GstCaps *caps);
gchar *           gst_mikey_message_base64_encode  (GstMIKEYMessage* msg);

https://bugzilla.gnome.org/show_bug.cgi?id=745880
2015-12-31 17:11:57 +02:00
Stefan Sauer
898940a37f audioconvert: add a test for gap handling 2015-12-29 14:40:32 +01:00
Stefan Sauer
7bbfa39ada audioconvert: fix passthrough operation
We did not take the sample size into account. Rearrange the tests to have more
conversion test and an extra test case for passthrough operations.

Fixes #759890
2015-12-29 14:40:32 +01:00
Stefan Sauer
267e7ba1d9 tests: remove commented code from audioconvert test
This is just what we have in gst_check_buffer_data().
2015-12-27 19:41:43 +01:00
Tim-Philipp Müller
29cd7966b7 tests: rtpbasedepayload: add test for seqnum gap discont setting
The problem was triggered only when the input buffers were not
writable, so add extra ref to test this code path.
2015-12-11 10:40:49 +00:00
Tim-Philipp Müller
e8a403d181 tests: tags: add unit test for ID3v2 PRIVATE_DATA tag extraction
https://bugzilla.gnome.org/show_bug.cgi?id=730926
2015-11-20 20:20:25 +00:00
Ognyan Tonchev
7a702df863 rtspconnection: Add support for parsing custom headers
https://bugzilla.gnome.org/show_bug.cgi?id=758235
2015-11-18 00:15:32 +00:00
Vineeth TM
b0b0536f91 tests:video: Fix overlay rectangle and buffer leak
Created overlay rectangle is not being freed in video tests
pix2 buffer is being created and not freed

https://bugzilla.gnome.org/show_bug.cgi?id=757927
2015-11-11 15:47:24 +01:00
Wim Taymans
e3f0f3b91e audio-converter: move audio converter to audio libs
Move the audio-converter helper to the audio library.
2015-11-06 17:53:22 +01:00
Andreas Frisch
4a85438e5b tests: Add a test for video blending over transparent frames
And fix the test_overlay_blend test where we blend over a
transparent frame and where expecting wrong results

https://bugzilla.gnome.org/show_bug.cgi?id=681447
2015-11-04 22:17:35 +01:00
Sebastian Dröge
387839c57e opus: Remove invalid unit test
Opus headers should never be in-band, so don't test for correct
handling of that.
2015-11-04 00:14:13 +02:00
Wim Taymans
9e15c89564 audioconvert: change multiplier for int<->float conversion
Use (1 << 31) as the multiplier for int<->float conversions. This makes
sure that int->float conversions always end up with floats between
[-1.0, 1.0].
For the conversion from float to int, this multiplier will give the complete
int range after we perform clipping.
Change the unit test to take this into consideration.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755301
2015-11-03 12:12:08 +01:00
Eunhae Choi
04eeaef7a4 tests: typefindfunctions: fix error leaks
https://bugzilla.gnome.org/show_bug.cgi?id=757008
2015-10-23 11:48:47 +03:00
Stian Selnes
0a668c1866 rtpbuffer: Add map flag to skip padding
Encrypted RTP buffers may contain encrypted padding, hence it's
necessary to have an option to relax the validation in order to
successfully map the buffer.

When the flag GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING is set
gst_rtp_buffer_map() will map the buffer like if padding is not
present.

https://bugzilla.gnome.org/show_bug.cgi?id=752705
2015-10-15 22:42:37 +03:00
Sebastian Dröge
b60ab758e4 Revert "audioencoder: timestamp headers same as first buffer and use duration 0"
This reverts commit dd4d6d9ed5.

It breaks ogg muxing and the vorbisenc unit test.
2015-10-12 14:02:58 +03:00
Havard Graff
dd4d6d9ed5 audioencoder: timestamp headers same as first buffer and use duration 0
https://bugzilla.gnome.org/show_bug.cgi?id=754224
2015-10-11 11:04:53 +01:00
Havard Graff
001ca740a7 audioencoder-tests: port to use GstHarness
https://bugzilla.gnome.org/show_bug.cgi?id=754223
2015-10-11 11:03:14 +01:00
Havard Graff
6d211eb58b audiodecoder-test: port to using GstHarness
https://bugzilla.gnome.org/show_bug.cgi?id=754196
2015-10-11 11:01:11 +01:00
Sebastian Rasmussen
042e71a117 rtpbasepayload: Implement video SDP attributes
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726472
2015-10-02 17:44:14 +03:00
Jan Schmidt
610ac2f55e tests: Add baseaudiovisualizer test, moved from -bad 2015-10-02 15:05:33 +10:00
Tim-Philipp Müller
0c992c5065 tests: subparse: add unit test for closing tag detection
</ i> should be handled like </i>

https://bugzilla.gnome.org/show_bug.cgi?id=755875
2015-09-30 18:18:15 +01:00
Vikram Fugro
bbe967a278 appsrc: retain the latest caps in queue when flushing
- Retain the latest caps in the internal queue, when
  flushing.
- Add a unit test case for the same.

https://bugzilla.gnome.org/show_bug.cgi?id=754597
2015-09-09 12:27:40 +03:00
Tim-Philipp Müller
917ea30aaf tests: audiodecoder: add unit test for tag handling
https://bugzilla.gnome.org/show_bug.cgi?id=679768
2015-08-16 16:34:31 +01:00
George Kiagiadakis
41cb26b0e9 tests/appsink: add test to ensure that the segment returned by pull-preroll/sample is correct
https://bugzilla.gnome.org/show_bug.cgi?id=751147
2015-08-14 19:27:06 +02:00
Edward Hervey
862c85ce4a check: Rename states unit test
Makes it easier to differentiate from other modules states unit test
2015-08-14 11:12:30 +02:00
Thiago Santos
30e9c26b72 tests: audiodecoder: add test to make sure gap is pushed before segment
https://bugzilla.gnome.org/show_bug.cgi?id=753360
2015-08-10 00:21:42 -03:00
Thiago Santos
e59d1308cc videodecoder: push pending events before gap
Push all pending events before pushing the gap. This ensures the
segment is pushed before the gap so it can be properly translated
to the running time

Includes unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=753360
2015-08-10 00:21:37 -03:00
Stian Selnes
1586981b1b rtcpbuffer: Fix validation of packets with padding
The padding (if any) is included in the length of the last packet, see
RFC 3550.

Section 6.4.1:
   padding (P): 1 bit
      If the padding bit is set, this individual RTCP packet contains
      some additional padding octets at the end which are not part of
      the control information but are included in the length field. The
      last octet of the padding is a count of how many padding octets
      should be ignored, including itself (it will be a multiple of
      four).

Section A.2:
   *  The padding bit (P) should be zero for the first packet of a
      compound RTCP packet because padding should only be applied, if it
      is needed, to the last packet.

   *  The length fields of the individual RTCP packets must add up to
      the overall length of the compound RTCP packet as received.

https://bugzilla.gnome.org/show_bug.cgi?id=751883
2015-07-06 12:06:47 +03:00
Wim Taymans
d807515973 tests: fix cpp directives 2015-06-22 16:53:06 +02:00
Wim Taymans
0d811c73e2 tests: add PPC64 abi struct sizes 2015-06-22 16:00:15 +02:00
Jan Schmidt
e57754be9b tests: Fix video libs test for multiview GstVideoInfo change
The GstVideoInfo struct was changed late in integrating the
multiview changes, and I forgot to run and fix the unit test.
2015-06-11 12:21:08 +10:00
Jan Schmidt
7c1da700c4 video: Add multiview/stereo support
Add flags and enums to support multiview signalling in
GstVideoInfo and GstVideoFrame, and the caps serialisation and
deserialisation.

videoencoder: Copy multiview settings from reference input state

Add gst_video_multiview_* support API and GstVideoMultiviewMeta meta

https://bugzilla.gnome.org/show_bug.cgi?id=611157
2015-06-11 12:05:00 +10:00
Jose Antonio Santos Cadenas
9931bef8ca rtcpbuffer: Update package validation to support reduced size rtcp packets
According to this section of the rfc.
https://tools.ietf.org/html/rfc5506#section-3.4.2
The validation should be updated to accept more types of RTCP
packages, with this mask change feedback packages will be also
accepted.

Change-Id: If5ead59e03c7c60bbe45a9b09f3ff680e7fa4868
2015-06-05 10:18:21 +02:00
Edward Hervey
ce16635f46 check: Use GST_CHECK_MAIN () macro everywhere
Makes source code smaller, and ensures we go through common initialization
path (like the one that sets up XML unit test output ...)
2015-06-02 16:14:39 +02:00
Edward Hervey
ee3135c4a6 check: Use GST_CHECK_MAIN () macro everywhere
Makes source code smaller, and ensures we go through common initialization
path (like the one that sets up XML unit test output ...)
2015-06-02 16:04:40 +02:00
George Kiagiadakis
a998d380bd tests: add test for videorate caps renegotiation after a framerate has been calculated and added to caps
The original 0/1 framerate must still be allowed to be configured
on the upstream side of videorate, otherwise future caps renegotiation
is going to fail.

https://bugzilla.gnome.org/show_bug.cgi?id=750032
2015-05-29 15:03:38 +02:00
Tim-Philipp Müller
8fc0e4f55c tests: add back videoscale unit test
Has been removed in 835422b2 as part of porting
things over to the new videoscale API.
2015-05-23 12:04:15 +01:00
Mathieu Duponchelle
2e423dd129 discoverer: Add serialization methods.
[API] gst_discoverer_info_to_variant
[API] gst_discoverer_info_from_variant
[API] GstDiscovererSerializeFlags

+ Serializes as a GVariant
+ Adds a test
+ Does not serialize potential GstToc (s)

https://bugzilla.gnome.org/show_bug.cgi?id=748814
2015-05-19 18:48:07 +02:00
Tim-Philipp Müller
8304893d06 appsrc: optimise caps changing when previously-set caps have not taken effect yet
Only negotiate/change caps once when setting caps twice and
the first-set caps have not been used yet.

Based on patch by Eunhae Choi.

https://bugzilla.gnome.org/show_bug.cgi?id=747517
2015-05-18 13:37:54 +01:00
Tim-Philipp Müller
508ae9c2fc tests: tcp: remove SOCK_CLOEXEC which causes build problems on OS/X
It's not needed here.

https://bugzilla.gnome.org/show_bug.cgi?id=747692
2015-04-26 20:14:53 +01:00
Tim-Philipp Müller
0bedfc51a4 tests: typefindfunctions: add test for UTF-16 MSS manifest typefinding 2015-04-26 14:45:44 +01:00
Tim-Philipp Müller
2891509ec4 tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON
Make sure the test environment is set up.

https://bugzilla.gnome.org//show_bug.cgi?id=747624
2015-04-23 15:57:37 +01:00
Tim-Philipp Müller
0cb6a439da Update .gitignore 2015-04-23 15:42:29 +01:00
Hyunjun Ko
5d90a28d5f tests: rtpbasedepayload: fix crash in test when passing varargs
Need to pass 64 bits where 64 bits are expected.

https://bugzilla.gnome.org/show_bug.cgi?id=748027
2015-04-17 19:47:09 +01:00
Edward Hervey
fe0a9ec618 tests: Use AM_TESTS_ENVIRONMENT
Needed by the new automake test runner
2015-04-08 16:15:43 +02:00
Tim-Philipp Müller
0aa0b89aaf tests: appsrc: clean up block_deadlock test and make it work in valgrind
Remove all the bus watch and main loop code from the block_deadlock
test, it's not needed: neither pipeline will ever post an EOS or ERROR
message on the bus, and we're the only ones posting an error, from a
timeout. Might just as well just sleep for a bit and then do whatever
we want to do.

Don't gratuitiously set tcase timeout, just use whatever is the
default (or set via the environment).

Make individual pipeline runs shorter.

Check for valgrind and only do a handful iterations when running
in valgrind, not 100 (each iteration takes about 4s on a core i7).

Make videotestsrc output smaller buffers than the default resolution,
we don't care about the buffer contents here anyway.

Fixes test timeouts when run in valgrind.
2015-04-05 13:53:38 +01:00
Tim-Philipp Müller
46aa47440f tests: multisocketsink: fix flaky unit test
On slower systems, or under high system load (e.g. check-valgrind),
the sending_buffers_with_9_gstmemories test would sometimes fail,
because the read call only returns 32 bytes instead of the full
36 bytes expected. This is because multisocketsink might end up
doing a partial write of 32 bytes first, and then write the
missing 4 bytes later, but since we don't wait for all of data
to be written, there's a short window where our read call in the
unit test might then only receive the 32 bytes written so far,
which makes it deeply unhappy.

Instead, make sure we loop to read all bytes.
2015-04-05 12:59:11 +01:00
Tim-Philipp Müller
73278948a3 tests: basetime: fix timeouts when running under valgrind
This test sets a rather short timeout, increase this when
we run under valgrind. Also add a short sleep to the
fakesrc ! fakesink pipeline to avoid thrashing the CPU,
which would often not stop the main loop when it should.

Also fix wrong (0.10) return value from pad probe callback.
2015-04-04 01:26:17 +01:00
Tim-Philipp Müller
413fc30235 videorate: fix a couple of memory leaks
tests: videorate: fix leak in unit test
2015-04-04 00:49:21 +01:00
Thibault Saunier
ae86dec9ca videorate: Detect framerate if not forced to variable downstream
In case upstream does not provide videorate with framerate information,
it will detect the current framerate from the buffer it received,
but if downstream forces the use of variable framerate (most probably
through the use of a caps filter with framerate = 0 / 1), videorate will
respect that.

And add some unit tests

https://bugzilla.gnome.org/show_bug.cgi?id=734424
2015-04-02 17:13:24 -04:00
Nicolas Dufresne
b7facbaf22 basedepay: Handle initial gaps and no clock-base
When generating segment, we can't assume the first buffer is actually
the first expected one. If it's not, we need to adjust the segment to
start a bit before.

Additionally, we if don't know when the stream is suppose to have
started (no clock-base in caps), it means we need to keep everything in
running time and only rely on jitterbuffer to synchronize.

https://bugzilla.gnome.org/show_bug.cgi?id=635701
2015-03-27 19:03:41 -04:00
Nicolas Dufresne
802ad73103 basedepayload: Fix generated segment
This fixes playback position in RTSP.

https://bugzilla.gnome.org/show_bug.cgi?id=635701
2015-03-26 17:43:47 -04:00
Sebastian Dröge
15cc12b0b9 multisocketsink: Allocate enough memory on the stack in the test
Otherwise we just overwrite other things on the stack and cause crashes.
2015-03-16 20:41:19 +01:00
Wim Taymans
fabf4890b8 allocators: add allocators test 2015-03-15 16:41:21 +01:00
William Manley
ccd4472e2a Add test_that_multisocketsink_and_socketsrc_preserve_meta
This test is in a seperate commit to the previous two because it depends
on and tests the functionality in both.
2015-03-14 13:23:40 +01:00
William Manley
a297b0545f socketsrc: Add connection-closed-by-peer signal
This provides notification that the socket in use was closed by the peer
and gives an opportunity to replace it with a new one which is not
closed, allowing reading from many sockets in order.

I use this in pulsevideo to implement reconnection logic to handle the
pulsevideo service dieing, such that is can be restarted without
disrupting downstream.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=739546
2015-03-13 20:05:00 +01:00
William Manley
7c10499ecd tcp: Add element socketsrc
`socketsrc` can be considered a source counterpart to `multisocketsink`.
It can be considered a generalization of `tcpclientsrc` and
`tcpserversrc`:  it contains all the logic required to communicate over
the socket but none of the logic for creating the sockets/establishing
the connection in the first place, allowing the user to accomplish this
externally in whatever manner they wish making it applicable to other
types of sockets besides TCP.

This commit essentially copies the implementation directly from
tcpserversrc.  Later patches will tidy the implementation up and
re-implement `tcpclientsrc` and `tcpserversrc` in terms of `socketsrc`.

See https://bugzilla.gnome.org/show_bug.cgi?id=739546
2015-03-13 20:05:00 +01:00
William Manley
b8232a7467 multisocketsink: Map GstMemorys individually when sending
If a buffer is made up of non-contiguous `GstMemory`s `gst_buffer_map`
has to copy all the data into a new `GstMemory` which is contiguous.  By
mapping all the `GstMemory`s individually and then using scatter-gather
IO we avoid this situation.

This is a preparatory step for adding support to multisocketsink for
sending file descriptors, where a GstBuffer may be made up of several
`GstMemory`s, some of which are backed by a memfd or file, but I think this
patch is valid and useful on its own.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=746150
2015-03-13 16:20:50 +01:00
Song Bing
1942870257 streamsynchronizer: Should wait state change complete before start another state change
Should wait state change complete before start another state change.
Can't ensure can received async-done message when state change from PLAYING to PAUSED.

https://bugzilla.gnome.org/show_bug.cgi?id=736655
2015-03-11 15:51:02 +00:00
Tim-Philipp Müller
c53ba4beeb Fix double semicolons 2015-03-10 09:27:08 +00:00
Wim Taymans
72fd1345ad check: add another generic converter test
Run conversion and scaling with borders.
2015-03-04 12:29:45 +01:00
Wim Taymans
e0a192d3dd video-converter: don't reuse the input line when adding borders
When we need to add borders, we need a writable input line, so
don't reuse the source memory directly.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745207
2015-03-04 12:29:45 +01:00
Tim-Philipp Müller
35bd289be3 tests: fix crashes in {audio,video}{decoder,encoder} tests on 32-bit
Don't feed 64-bit integer variable into vararg function that expects
an unsigned integer to go with GST_TAG_TRACK_NUMBER. This would
cause crashes on 32-bit platforms, and if not that then test
failures if the comparisons fail later (at least on big endian
platforms).
2015-02-27 20:26:43 +00:00
Tim-Philipp Müller
980f5e17e9 tests: pbutils: more checking of returned description strings
https://bugzilla.gnome.org/show_bug.cgi?id=673976
2015-02-27 14:30:01 +00:00
Song Bing
eeea911c2e streamsynchronizer: Unit test for streamsynchronizer's EOS handling
Test that a pipeline can change from PLAYING to PAUSED and back in
the following scenarios:
1. One track reach EOS after pushed some buffers while another track
still pushes buffers
2. One track reach EOS without buffers while another track still pushes
buffers

https://bugzilla.gnome.org/show_bug.cgi?id=736655
2015-02-16 14:34:35 +02:00
Tim-Philipp Müller
4e1a43d4ea pbutils: descriptions: add H.265 profile to description if available
https://bugzilla.gnome.org/show_bug.cgi?id=673976
2015-02-15 20:05:28 +00:00
Tim-Philipp Müller
58d19cb7ca pbutils: descriptions: add MPEG-4 video profile to description if available
https://bugzilla.gnome.org/show_bug.cgi?id=673976
2015-02-15 19:03:58 +00:00
Tim-Philipp Müller
001bd78957 pbutils: descriptions: add Dirac/VC-2 profile to description if available
https://bugzilla.gnome.org/show_bug.cgi?id=673976
2015-02-15 18:50:48 +00:00
Tim-Philipp Müller
1d528459be pbutils: descriptions: add H.264 profile to description if available
https://bugzilla.gnome.org/show_bug.cgi?id=673976
2015-02-15 18:50:43 +00:00
Tim-Philipp Müller
1b4bd6e451 rtspmessage: map headers we know that are added by string to their enum
That way we can look them up by their field enum later as well.
2015-02-09 18:03:43 +00:00
Tim-Philipp Müller
ef7f537a80 tests: rtsp: add some unit tests for new GstRTSPMessage API 2015-02-09 17:50:32 +00:00
Thiago Santos
dfc82f3466 tests: audiodecoder: tests for caps query implementation
Copied from videodecoder tests and updated to audio features
2014-12-17 19:15:24 -03:00
Thiago Santos
8085352fb3 videodecoder: expose getcaps virtual function
Allows subclasses to do custom caps query replies.

Also exposes the standard caps query handler so subclasses can just
extend on top of it instead of reimplementing the caps query proxying.

https://bugzilla.gnome.org/show_bug.cgi?id=741263
2014-12-17 19:15:23 -03:00
Thiago Santos
f24075887f videodecoder: implement caps query
Refactor the encoder's caps query proxying function to a common place
and use it in the videodecoder to proxy downstream restrictions.

The new function is private to the gstvideo lib.

https://bugzilla.gnome.org/show_bug.cgi?id=741263
2014-12-17 19:15:23 -03:00
Edward Hervey
ff57f69134 video: Fix non-default usage of gst_video_sink_center_rect
Make sure we take into account non-0 x/y destination rectangles
2014-12-15 14:11:07 +01:00
Tim-Philipp Müller
2f7af2d41b tests: rtpbasepayload: fix indentation 2014-12-12 15:09:55 +00:00
Tim-Philipp Müller
091e124950 tests: audiodecoder: fix indentation 2014-12-12 15:09:55 +00:00
Tim-Philipp Müller
c57bb51c03 tests: audiodecoder: fix broken refcounting in unit test
The set_format vfunc does not pass ownership of the caps
to the decoder, so we mustn't unref the caps there.

gst_event_new_caps() does not take ownership of the caps
passed, so we must unref the caps afterwards.

Fixes leaks when running test in valgrind in 1.4 branch.
2014-12-12 15:09:55 +00:00
Mathieu Duponchelle
b2413d46ed audiodecoder: Push pending events before sending EOS.
Segments are added to the pending events, and pushing a segment
is mandatory before sending EOS.

+ Adds a test.

https://bugzilla.gnome.org/show_bug.cgi?id=740853
2014-12-05 12:04:04 +01:00
Tim-Philipp Müller
b03cfdffb1 tests: remove libs/video and videoconvert test from valgrind blacklist
Seem to work fine.
2014-11-28 13:31:39 +00:00
Tim-Philipp Müller
4bddc9276b tests: don't run orc/* tests under valgrind
They just seem to blow up for some reason that needs investigating.
2014-11-28 13:29:37 +00:00
Tim-Philipp Müller
c61604fd9b tests: fix leak in video unit test 2014-11-16 13:56:16 +00:00
Vineeth T M
7f5aa9af04 tests: video: add video blend test
Add test to check rendering of overlays of different sizes
that are completely or partially outside the video surface.
Once the overlay is blended to the video, verify if the
position of the blended overlay is as expected, by comparing
the pixels of the blended video with the expected values.

https://bugzilla.gnome.org/show_bug.cgi?id=739281
2014-11-16 13:51:34 +00:00
Wim Taymans
b73096ce8c video-color: add gamma encode/decode functions
Add functions to encode and decode gamma.
Add unit test to check that encode and decode are eachothers inverse
and that the limits are respected.
2014-11-11 16:11:15 +01:00
Wim Taymans
6711c50495 test: add scaling test
Sort pack and unpack performance measurements
2014-11-10 14:53:13 +01:00
Wim Taymans
835422b2ea videoscale: port to new API 2014-11-10 11:45:52 +01:00