Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
gst-plugins-good
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Marc-André Lureau
gst-plugins-good
Commits
8e39d52b
Commit
8e39d52b
authored
Jan 03, 2012
by
Wim Taymans
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tests: make more tests compile
parent
06b3c265
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
255 additions
and
278 deletions
+255
-278
tests/check/Makefile.am
tests/check/Makefile.am
+10
-4
tests/check/elements/jpegenc.c
tests/check/elements/jpegenc.c
+15
-10
tests/check/elements/multifile.c
tests/check/elements/multifile.c
+4
-4
tests/check/elements/qtmux.c
tests/check/elements/qtmux.c
+4
-5
tests/check/elements/rtp-payloading.c
tests/check/elements/rtp-payloading.c
+7
-13
tests/check/elements/rtpbin.c
tests/check/elements/rtpbin.c
+15
-18
tests/check/elements/rtpbin_buffer_list.c
tests/check/elements/rtpbin_buffer_list.c
+4
-0
tests/check/elements/rtpjitterbuffer.c
tests/check/elements/rtpjitterbuffer.c
+8
-11
tests/check/elements/shapewipe.c
tests/check/elements/shapewipe.c
+22
-16
tests/check/elements/souphttpsrc.c
tests/check/elements/souphttpsrc.c
+5
-2
tests/check/elements/udpsink.c
tests/check/elements/udpsink.c
+4
-0
tests/check/elements/videocrop.c
tests/check/elements/videocrop.c
+64
-110
tests/check/elements/videofilter.c
tests/check/elements/videofilter.c
+9
-13
tests/check/elements/y4menc.c
tests/check/elements/y4menc.c
+13
-12
tests/check/pipelines/flacdec.c
tests/check/pipelines/flacdec.c
+57
-49
tests/check/pipelines/tagschecking.c
tests/check/pipelines/tagschecking.c
+14
-11
No files found.
tests/check/Makefile.am
View file @
8e39d52b
...
...
@@ -243,6 +243,9 @@ elements_rglimiter_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstaudio-$(GST_MAJORMINOR)
elements_rgvolume_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_rgvolume_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstaudio-
$(GST_MAJORMINOR)
$(LDADD)
elements_spectrum_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_spectrum_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstaudio-
$(GST_MAJORMINOR)
$(LDADD)
elements_cmmldec_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_cmmlenc_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
...
...
@@ -263,7 +266,7 @@ elements_imagefreeze_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM
elements_imagefreeze_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstvideo-
$(GST_MAJORMINOR)
$(GST_BASE_LIBS)
$(LDADD)
elements_jpegenc_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(GST_BASE_CFLAGS)
$(AM_CFLAGS)
elements_jpegenc_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstapp-
0
.10
$(GST_BASE_LIBS)
$(LDADD)
elements_jpegenc_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstapp-
$(GST_MAJORMINOR)
$(GST_BASE_LIBS)
$(LDADD)
elements_level_LDADD
=
$(LDADD)
$(LIBM)
...
...
@@ -279,7 +282,7 @@ elements_qtmux_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstpbutils-@GST_MAJORMINOR@ \
elements_rtpbin_buffer_list_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(GST_CFLAGS)
\
$(WARNING_CFLAGS)
$(ERROR_CFLAGS)
$(GST_CHECK_CFLAGS)
$(AM_CFLAGS)
elements_rtpbin_buffer_list_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
\
-lgst
netbuffer-
@GST_MAJORMINOR@
-lgst
rtp-
@GST_MAJORMINOR@
\
-lgstrtp-
@GST_MAJORMINOR@
\
$(GST_BASE_LIBS)
$(GST_LIBS)
$(GST_CHECK_LIBS)
elements_rtpbin_buffer_list_SOURCES
=
elements/rtpbin_buffer_list.c
...
...
@@ -293,8 +296,8 @@ elements_sunaudio_LDADD = \
$(GST_PLUGINS_BASE_LIBS)
-lgstinterfaces-
@GST_MAJORMINOR@
\
$(LDADD)
elements_videocrop_LDADD
=
$(GST_
BASE_LIBS
)
$(LDADD)
elements_videocrop_CFLAGS
=
$(GST_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_videocrop_LDADD
=
$(GST_
PLUGINS_BASE_LIBS)
$(GST_BASE_LIBS)
-lgstvideo-
$(GST_MAJORMINOR
)
$(LDADD)
elements_videocrop_CFLAGS
=
$(GST_
PLUGINS_BASE_CFLAGS)
$(GST_
BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_videofilter_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
elements_videofilter_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstvideo-
$(GST_MAJORMINOR)
$(LDADD)
...
...
@@ -307,6 +310,9 @@ elements_gdkpixbufsink_LDADD = \
$(LDADD)
$(GDK_PIXBUF_LIBS)
pipelines_flacdec_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
pipelines_flacdec_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstaudio-
$(GST_MAJORMINOR)
$(LDADD)
pipelines_wavenc_CFLAGS
=
$(GST_PLUGINS_BASE_CFLAGS)
$(CFLAGS)
$(AM_CFLAGS)
pipelines_wavenc_LDADD
=
$(GST_PLUGINS_BASE_LIBS)
-lgstaudio-
$(GST_MAJORMINOR)
$(LDADD)
...
...
tests/check/elements/jpegenc.c
View file @
8e39d52b
...
...
@@ -94,6 +94,7 @@ create_video_buffer (GstCaps * caps)
GstElement
*
pipeline
;
GstElement
*
cf
;
GstElement
*
sink
;
GstSample
*
sample
;
GstBuffer
*
buffer
;
pipeline
=
...
...
@@ -109,12 +110,18 @@ create_video_buffer (GstCaps * caps)
gst_element_set_state
(
pipeline
,
GST_STATE_PLAYING
);
buffer
=
gst_app_sink_pull_buffer
(
GST_APP_SINK
(
sink
));
sample
=
gst_app_sink_pull_sample
(
GST_APP_SINK
(
sink
));
gst_element_set_state
(
pipeline
,
GST_STATE_NULL
);
gst_object_unref
(
pipeline
);
gst_object_unref
(
sink
);
gst_object_unref
(
cf
);
buffer
=
gst_sample_get_buffer
(
sample
);
gst_buffer_ref
(
buffer
);
gst_sample_unref
(
sample
);
return
buffer
;
}
...
...
@@ -135,7 +142,7 @@ GST_START_TEST (test_jpegenc_getcaps)
jpegenc
=
setup_jpegenc
(
&
any_sinktemplate
);
sinkpad
=
gst_element_get_static_pad
(
jpegenc
,
"sink"
);
/* this should assert if non-subset */
caps
=
gst_pad_
get_caps
(
sinkpad
);
caps
=
gst_pad_
query_caps
(
sinkpad
,
NULL
);
gst_caps_unref
(
caps
);
gst_object_unref
(
sinkpad
);
cleanup_jpegenc
(
jpegenc
);
...
...
@@ -143,7 +150,7 @@ GST_START_TEST (test_jpegenc_getcaps)
jpegenc
=
setup_jpegenc
(
&
jpeg_sinktemplate
);
sinkpad
=
gst_element_get_static_pad
(
jpegenc
,
"sink"
);
/* this should assert if non-subset */
caps
=
gst_pad_
get_caps
(
sinkpad
);
caps
=
gst_pad_
query_caps
(
sinkpad
,
NULL
);
gst_caps_unref
(
caps
);
gst_object_unref
(
sinkpad
);
cleanup_jpegenc
(
jpegenc
);
...
...
@@ -152,7 +159,7 @@ GST_START_TEST (test_jpegenc_getcaps)
jpegenc
=
setup_jpegenc
(
&
jpeg_restrictive_sinktemplate
);
sinkpad
=
gst_element_get_static_pad
(
jpegenc
,
"sink"
);
/* this should assert if non-subset */
caps
=
gst_pad_
get_caps
(
sinkpad
);
caps
=
gst_pad_
query_caps
(
sinkpad
,
NULL
);
structure
=
gst_caps_get_structure
(
caps
,
0
);
/* check the width */
...
...
@@ -185,10 +192,9 @@ GST_START_TEST (test_jpegenc_different_caps)
gst_element_set_state
(
jpegenc
,
GST_STATE_PLAYING
);
/* push first buffer with 800x600 resolution */
caps
=
gst_caps_new_simple
(
"video/x-raw
-yuv
"
,
"width"
,
G_TYPE_INT
,
caps
=
gst_caps_new_simple
(
"video/x-raw"
,
"width"
,
G_TYPE_INT
,
800
,
"height"
,
G_TYPE_INT
,
600
,
"framerate"
,
GST_TYPE_FRACTION
,
1
,
1
,
"format"
,
GST_TYPE_FOURCC
,
GST_MAKE_FOURCC
(
'I'
,
'4'
,
'2'
,
'0'
),
NULL
);
GST_TYPE_FRACTION
,
1
,
1
,
"format"
,
G_TYPE_STRING
,
"I420"
,
NULL
);
buffer
=
create_video_buffer
(
caps
);
gst_caps_unref
(
caps
);
fail_unless
(
gst_pad_push
(
mysrcpad
,
buffer
)
==
GST_FLOW_OK
);
...
...
@@ -198,10 +204,9 @@ GST_START_TEST (test_jpegenc_different_caps)
allowed_caps
=
gst_pad_get_allowed_caps
(
mysrcpad
);
/* the caps we want to negotiate to */
caps
=
gst_caps_new_simple
(
"video/x-raw
-yuv
"
,
"width"
,
G_TYPE_INT
,
caps
=
gst_caps_new_simple
(
"video/x-raw"
,
"width"
,
G_TYPE_INT
,
640
,
"height"
,
G_TYPE_INT
,
480
,
"framerate"
,
GST_TYPE_FRACTION
,
1
,
1
,
"format"
,
GST_TYPE_FOURCC
,
GST_MAKE_FOURCC
(
'I'
,
'4'
,
'2'
,
'0'
),
NULL
);
GST_TYPE_FRACTION
,
1
,
1
,
"format"
,
G_TYPE_STRING
,
"I420"
,
NULL
);
fail_unless
(
gst_caps_can_intersect
(
allowed_caps
,
caps
));
/* push second buffer with 640x480 resolution */
...
...
tests/check/elements/multifile.c
View file @
8e39d52b
...
...
@@ -72,7 +72,7 @@ GST_START_TEST (test_multifilesink_key_frame)
pipeline
=
gst_parse_launch
(
"videotestsrc num-buffers=10 ! video/x-raw
-yuv,format=(fourcc
)I420,width=320,height=240 ! multifilesink name=mfs"
,
(
"videotestsrc num-buffers=10 ! video/x-raw
,format=(string
)I420,width=320,height=240 ! multifilesink name=mfs"
,
NULL
);
fail_if
(
pipeline
==
NULL
);
mfs
=
gst_bin_get_by_name
(
GST_BIN
(
pipeline
),
"mfs"
);
...
...
@@ -115,7 +115,7 @@ GST_START_TEST (test_multifilesink_max_files)
pipeline
=
gst_parse_launch
(
"videotestsrc num-buffers=10 ! video/x-raw
-yuv,format=(fourcc
)I420,width=320,height=240 ! multifilesink name=mfs"
,
(
"videotestsrc num-buffers=10 ! video/x-raw
,format=(string
)I420,width=320,height=240 ! multifilesink name=mfs"
,
NULL
);
fail_if
(
pipeline
==
NULL
);
mfs
=
gst_bin_get_by_name
(
GST_BIN
(
pipeline
),
"mfs"
);
...
...
@@ -224,7 +224,7 @@ GST_START_TEST (test_multifilesrc)
pipeline
=
gst_parse_launch
(
"videotestsrc num-buffers=10 ! video/x-raw
-yuv,format=(fourcc
)I420,width=320,height=240 ! multifilesink name=mfs"
,
(
"videotestsrc num-buffers=10 ! video/x-raw
,format=(string
)I420,width=320,height=240 ! multifilesink name=mfs"
,
NULL
);
fail_if
(
pipeline
==
NULL
);
mfs
=
gst_bin_get_by_name
(
GST_BIN
(
pipeline
),
"mfs"
);
...
...
@@ -238,7 +238,7 @@ GST_START_TEST (test_multifilesrc)
pipeline
=
gst_parse_launch
(
"multifilesrc ! video/x-raw
-yuv,format=(fourcc
)I420,width=320,height=240,framerate=10/1 ! fakesink"
,
(
"multifilesrc ! video/x-raw
,format=(string
)I420,width=320,height=240,framerate=10/1 ! fakesink"
,
NULL
);
fail_if
(
pipeline
==
NULL
);
mfs
=
gst_bin_get_by_name
(
GST_BIN
(
pipeline
),
"multifilesrc0"
);
...
...
tests/check/elements/qtmux.c
View file @
8e39d52b
...
...
@@ -539,10 +539,9 @@ create_qtmux_profile (const gchar * variant)
cprof
=
gst_encoding_container_profile_new
(
"Name"
,
"blah"
,
caps
,
NULL
);
gst_caps_unref
(
caps
);
caps
=
gst_caps_new_simple
(
"audio/x-raw-int"
,
"width"
,
G_TYPE_INT
,
16
,
"depth"
,
G_TYPE_INT
,
16
,
"endianness"
,
G_TYPE_INT
,
4321
,
"channels"
,
G_TYPE_INT
,
2
,
"rate"
,
G_TYPE_INT
,
44100
,
"signed"
,
G_TYPE_BOOLEAN
,
TRUE
,
NULL
);
caps
=
gst_caps_new_simple
(
"audio/x-raw"
,
"format"
,
G_TYPE_STRING
,
"S16BE"
,
"channels"
,
G_TYPE_INT
,
2
,
"rate"
,
G_TYPE_INT
,
44100
,
NULL
);
gst_encoding_container_profile_add_profile
(
cprof
,
GST_ENCODING_PROFILE
(
gst_encoding_audio_profile_new
(
caps
,
NULL
,
NULL
,
1
)));
...
...
@@ -600,7 +599,7 @@ static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
static
GstStaticPadTemplate
sink_template
=
GST_STATIC_PAD_TEMPLATE
(
"sink"
,
GST_PAD_SINK
,
GST_PAD_ALWAYS
,
GST_STATIC_CAPS
(
"audio/x-raw
-int
"
)
GST_STATIC_CAPS
(
"audio/x-raw"
)
);
static
GType
test_mp3_enc_get_type
(
void
);
...
...
tests/check/elements/rtp-payloading.c
View file @
8e39d52b
...
...
@@ -51,31 +51,25 @@ static guint chain_list_bytes_received;
* Chain list function for testing buffer lists
*/
static
GstFlowReturn
rtp_pipeline_chain_list
(
GstPad
*
pad
,
GstBufferList
*
list
)
rtp_pipeline_chain_list
(
GstPad
*
pad
,
Gst
Object
*
parent
,
Gst
BufferList
*
list
)
{
GstBufferListIterator
*
it
;
guint
i
,
len
;
fail_if
(
!
list
);
it
=
gst_buffer_list_iterate
(
list
);
/*
* Count the size of the payload in the buffer list.
*/
len
=
gst_buffer_list_length
(
list
);
/* Loop through all groups */
while
(
gst_buffer_list_iterator_next_group
(
it
)
)
{
for
(
i
=
0
;
i
<
len
;
i
++
)
{
GstBuffer
*
paybuf
;
/* Skip the first buffer in the group, its the RTP header */
fail_if
(
!
gst_buffer_list_iterator_next
(
it
));
/* FIXME need to discard RTP header */
paybuf
=
gst_buffer_list_get
(
list
,
i
);
/* Loop through all payload buffers in the current group */
while
((
paybuf
=
gst_buffer_list_iterator_next
(
it
)))
{
chain_list_bytes_received
+=
GST_BUFFER_SIZE
(
paybuf
);
}
chain_list_bytes_received
+=
gst_buffer_get_size
(
paybuf
);
}
gst_buffer_list_iterator_free
(
it
);
gst_buffer_list_unref
(
list
);
return
GST_FLOW_OK
;
...
...
tests/check/elements/rtpbin.c
View file @
8e39d52b
...
...
@@ -124,11 +124,12 @@ static guint8 rtp_packet[] = { 0x80, 0x60, 0x94, 0xbc, 0x8f, 0x37, 0x4e, 0xb8,
0x2b
,
0x82
,
0x31
,
0x3b
,
0x36
,
0xc1
,
0x3c
,
0x13
};
static
Gst
Buffer
*
make_rtp_packet
(
CleanupData
*
data
)
static
Gst
FlowReturn
chain_rtp_packet
(
GstPad
*
pad
,
CleanupData
*
data
)
{
GstFlowReturn
res
;
static
GstCaps
*
caps
=
NULL
;
GstBuffer
*
result
;
GstBuffer
*
buffer
;
guint8
*
datap
;
if
(
caps
==
NULL
)
{
...
...
@@ -136,24 +137,26 @@ make_rtp_packet (CleanupData * data)
"media=(string)audio, clock-rate=(int)44100, "
"encoding-name=(string)L16, encoding-params=(string)1, channels=(int)1"
);
data
->
seqnum
=
0
;
gst_pad_set_caps
(
pad
,
caps
);
}
result
=
gst_buffer_new_and_alloc
(
sizeof
(
rtp_packet
));
datap
=
GST_BUFFER_DATA
(
result
);
buffer
=
gst_buffer_new_and_alloc
(
sizeof
(
rtp_packet
));
datap
=
gst_buffer_map
(
buffer
,
NULL
,
NULL
,
GST_MAP_WRITE
);
memcpy
(
datap
,
rtp_packet
,
sizeof
(
rtp_packet
));
datap
[
2
]
=
(
data
->
seqnum
>>
8
)
&
0xff
;
datap
[
3
]
=
data
->
seqnum
&
0xff
;
data
->
seqnum
++
;
gst_buffer_unmap
(
buffer
,
datap
,
-
1
);
gst_buffer_set_caps
(
result
,
caps
);
res
=
gst_pad_chain
(
pad
,
buffer
);
return
res
ult
;
return
res
;
}
static
GstFlowReturn
dummy_chain
(
GstPad
*
pad
,
GstBuffer
*
buffer
)
dummy_chain
(
GstPad
*
pad
,
Gst
Object
*
parent
,
Gst
Buffer
*
buffer
)
{
gst_buffer_unref
(
buffer
);
...
...
@@ -226,7 +229,6 @@ GST_START_TEST (test_cleanup_recv)
CleanupData
data
;
GstStateChangeReturn
ret
;
GstFlowReturn
res
;
GstBuffer
*
buffer
;
gint
count
=
2
;
init_data
(
&
data
);
...
...
@@ -249,13 +251,11 @@ GST_START_TEST (test_cleanup_recv)
fail_unless
(
rtpbin
->
numsinkpads
==
1
);
fail_unless
(
rtpbin
->
numsrcpads
==
0
);
buffer
=
make_rtp_packet
(
&
data
);
res
=
gst_pad_chain
(
rtp_sink
,
buffer
);
res
=
chain_rtp_packet
(
rtp_sink
,
&
data
);
GST_DEBUG
(
"res %d, %s
\n
"
,
res
,
gst_flow_get_name
(
res
));
fail_unless
(
res
==
GST_FLOW_OK
);
buffer
=
make_rtp_packet
(
&
data
);
res
=
gst_pad_chain
(
rtp_sink
,
buffer
);
res
=
chain_rtp_packet
(
rtp_sink
,
&
data
);
GST_DEBUG
(
"res %d, %s
\n
"
,
res
,
gst_flow_get_name
(
res
));
fail_unless
(
res
==
GST_FLOW_OK
);
...
...
@@ -301,7 +301,6 @@ GST_START_TEST (test_cleanup_recv2)
CleanupData
data
;
GstStateChangeReturn
ret
;
GstFlowReturn
res
;
GstBuffer
*
buffer
;
gint
count
=
2
;
init_data
(
&
data
);
...
...
@@ -324,13 +323,11 @@ GST_START_TEST (test_cleanup_recv2)
fail_unless
(
rtpbin
->
numsinkpads
==
1
);
fail_unless
(
rtpbin
->
numsrcpads
==
0
);
buffer
=
make_rtp_packet
(
&
data
);
res
=
gst_pad_chain
(
rtp_sink
,
buffer
);
res
=
chain_rtp_packet
(
rtp_sink
,
&
data
);
GST_DEBUG
(
"res %d, %s
\n
"
,
res
,
gst_flow_get_name
(
res
));
fail_unless
(
res
==
GST_FLOW_OK
);
buffer
=
make_rtp_packet
(
&
data
);
res
=
gst_pad_chain
(
rtp_sink
,
buffer
);
res
=
chain_rtp_packet
(
rtp_sink
,
&
data
);
GST_DEBUG
(
"res %d, %s
\n
"
,
res
,
gst_flow_get_name
(
res
));
fail_unless
(
res
==
GST_FLOW_OK
);
...
...
tests/check/elements/rtpbin_buffer_list.c
View file @
8e39d52b
...
...
@@ -24,6 +24,7 @@
#include <gst/rtp/gstrtpbuffer.h>
#if 0
/* This test makes sure that RTP packets sent as buffer lists are sent through
* the rtpbin as they are supposed to, and not corrupted in any way.
...
...
@@ -310,6 +311,7 @@ GST_START_TEST (test_bufferlist)
GST_END_TEST;
#endif
static
Suite
*
...
...
@@ -323,7 +325,9 @@ bufferlist_suite (void)
tcase_set_timeout
(
tc_chain
,
10
);
suite_add_tcase
(
s
,
tc_chain
);
#if 0
tcase_add_test (tc_chain, test_bufferlist);
#endif
return
s
;
}
...
...
tests/check/elements/rtpjitterbuffer.c
View file @
8e39d52b
...
...
@@ -51,13 +51,10 @@ static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
);
static
void
buffer_dropped
(
gpointer
mem
)
buffer_dropped
(
gpointer
data
,
GstMiniObject
*
obj
)
{
if
(
mem
)
{
GST_DEBUG
(
"dropping buffer: data=%p"
,
mem
);
g_free
(
mem
);
num_dropped
++
;
}
GST_DEBUG
(
"dropping buffer %p"
,
obj
);
num_dropped
++
;
}
static
GstElement
*
...
...
@@ -103,12 +100,11 @@ setup_jitterbuffer (gint num_buffers)
caps
=
gst_caps_from_string
(
RTP_CAPS_STRING
);
for
(
i
=
0
;
i
<
num_buffers
;
i
++
)
{
buffer
=
gst_buffer_new_and_alloc
(
sizeof
(
in
));
memcpy
(
GST_BUFFER_DATA
(
buffer
),
in
,
sizeof
(
in
));
gst_buffer_set_caps
(
buffer
,
caps
);
gst_buffer_fill
(
buffer
,
0
,
in
,
sizeof
(
in
));
GST_BUFFER_TIMESTAMP
(
buffer
)
=
ts
;
GST_BUFFER_DURATION
(
buffer
)
=
tso
;
GST_BUFFER_FREE_FUNC
(
buffer
)
=
buffer_dropped
;
GST_DEBUG
(
"created buffer: %p
, data=%p"
,
buffer
,
GST_BUFFER_DATA
(
buffer
)
);
gst_mini_object_weak_ref
(
GST_MINI_OBJECT
(
buffer
),
buffer_dropped
,
NULL
)
;
GST_DEBUG
(
"created buffer: %p
"
,
buffer
);
if
(
!
i
)
GST_BUFFER_FLAG_SET
(
buffer
,
GST_BUFFER_FLAG_DISCONT
);
...
...
@@ -187,10 +183,11 @@ check_jitterbuffer_results (GstElement * jitterbuffer, gint num_buffers)
for
(
node
=
buffers
;
node
;
node
=
g_list_next
(
node
))
{
fail_if
((
buffer
=
(
GstBuffer
*
)
node
->
data
)
==
NULL
);
fail_if
(
GST_BUFFER_TIMESTAMP
(
buffer
)
!=
ts
);
data
=
GST_BUFFER_DATA
(
buffer
);
data
=
gst_buffer_map
(
buffer
,
NULL
,
NULL
,
GST_MAP_READ
);
cur_sn
=
((
guint16
)
data
[
2
]
<<
8
)
|
data
[
3
];
cur_ts
=
((
guint32
)
data
[
4
]
<<
24
)
|
((
guint32
)
data
[
5
]
<<
16
)
|
((
guint32
)
data
[
6
]
<<
8
)
|
data
[
7
];
gst_buffer_unmap
(
buffer
,
data
,
-
1
);
if
(
node
!=
buffers
)
{
fail_unless
(
cur_sn
>
prev_sn
);
...
...
tests/check/elements/shapewipe.c
View file @
8e39d52b
...
...
@@ -31,16 +31,15 @@ GstPad *myvideosrcpad, *mymasksrcpad, *mysinkpad;
#define SHAPEWIPE_VIDEO_CAPS_STRING \
"video/x-raw
-yuv
, " \
"format = (
GstFourcc
)AYUV, " \
"video/x-raw, " \
"format = (
string
)AYUV, " \
"width = 400, " \
"height = 400, " \
"framerate = 0/1"
#define SHAPEWIPE_MASK_CAPS_STRING \
"video/x-raw-gray, " \
"bpp = 8, " \
"depth = 8, " \
"video/x-raw, " \
"format = (string)GRAY8, " \
"width = 400, " \
"height = 400, " \
"framerate = 0/1"
...
...
@@ -67,7 +66,7 @@ GST_STATIC_PAD_TEMPLATE ("masksrc",
static
GstBuffer
*
output
=
NULL
;
static
GstFlowReturn
on_chain
(
GstPad
*
pad
,
GstBuffer
*
buffer
)
on_chain
(
GstPad
*
pad
,
Gst
Object
*
parent
,
Gst
Buffer
*
buffer
)
{
g_return_val_if_fail
(
output
==
NULL
,
GST_FLOW_ERROR
);
...
...
@@ -82,7 +81,7 @@ GST_START_TEST (test_general)
GstCaps
*
caps
;
GstBuffer
*
mask
,
*
input
;
guint
i
,
j
;
guint8
*
data
;
guint8
*
data
,
*
orig
;
myvideosrcpad
=
gst_pad_new_from_static_template
(
&
videosrctemplate
,
"videosrc"
);
...
...
@@ -122,9 +121,9 @@ GST_START_TEST (test_general)
mask
=
gst_buffer_new_and_alloc
(
400
*
400
);
caps
=
gst_caps_from_string
(
SHAPEWIPE_MASK_CAPS_STRING
);
gst_
buffer_set_caps
(
mask
,
caps
);
gst_
pad_set_caps
(
mymasksrcpad
,
caps
);
gst_caps_unref
(
caps
);
data
=
GST_BUFFER_DATA
(
mask
);
data
=
orig
=
gst_buffer_map
(
mask
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
if
(
i
<
100
&&
j
<
100
)
...
...
@@ -138,14 +137,15 @@ GST_START_TEST (test_general)
data
++
;
}
}
gst_buffer_unmap
(
mask
,
orig
,
-
1
);
fail_unless
(
gst_pad_push
(
mymasksrcpad
,
mask
)
==
GST_FLOW_OK
);
input
=
gst_buffer_new_and_alloc
(
400
*
400
*
4
);
caps
=
gst_caps_from_string
(
SHAPEWIPE_VIDEO_CAPS_STRING
);
gst_
buffer_set_caps
(
input
,
caps
);
gst_
pad_set_caps
(
myvideosrcpad
,
caps
);
gst_caps_unref
(
caps
);
data
=
GST_BUFFER_DATA
(
input
);
data
=
orig
=
gst_buffer_map
(
input
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
/* This is green */
...
...
@@ -156,13 +156,14 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
input
,
orig
,
-
1
);
g_object_set
(
G_OBJECT
(
shapewipe
),
"position"
,
0
.
0
,
NULL
);
output
=
NULL
;
fail_unless
(
gst_pad_push
(
myvideosrcpad
,
gst_buffer_ref
(
input
))
==
GST_FLOW_OK
);
fail_unless
(
output
!=
NULL
);
data
=
GST_BUFFER_DATA
(
output
);
data
=
orig
=
gst_buffer_map
(
output
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
fail_unless_equals_int
(
data
[
0
],
255
);
/* A */
...
...
@@ -172,6 +173,7 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
output
,
orig
,
-
1
);
gst_buffer_unref
(
output
);
output
=
NULL
;
...
...
@@ -180,7 +182,7 @@ GST_START_TEST (test_general)
fail_unless
(
gst_pad_push
(
myvideosrcpad
,
gst_buffer_ref
(
input
))
==
GST_FLOW_OK
);
fail_unless
(
output
!=
NULL
);
data
=
GST_BUFFER_DATA
(
output
);
data
=
orig
=
gst_buffer_map
(
output
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
if
(
i
<
100
&&
j
<
100
)
{
...
...
@@ -197,6 +199,7 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
output
,
orig
,
-
1
);
gst_buffer_unref
(
output
);
output
=
NULL
;
...
...
@@ -205,7 +208,7 @@ GST_START_TEST (test_general)
fail_unless
(
gst_pad_push
(
myvideosrcpad
,
gst_buffer_ref
(
input
))
==
GST_FLOW_OK
);
fail_unless
(
output
!=
NULL
);
data
=
GST_BUFFER_DATA
(
output
);
data
=
orig
=
gst_buffer_map
(
output
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
if
(
i
<
200
&&
j
<
200
)
{
...
...
@@ -222,6 +225,7 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
output
,
orig
,
-
1
);
gst_buffer_unref
(
output
);
output
=
NULL
;
...
...
@@ -230,7 +234,7 @@ GST_START_TEST (test_general)
fail_unless
(
gst_pad_push
(
myvideosrcpad
,
gst_buffer_ref
(
input
))
==
GST_FLOW_OK
);
fail_unless
(
output
!=
NULL
);
data
=
GST_BUFFER_DATA
(
output
);
data
=
orig
=
gst_buffer_map
(
output
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
if
(
i
<
300
&&
j
<
300
)
{
...
...
@@ -247,6 +251,7 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
output
,
orig
,
-
1
);
gst_buffer_unref
(
output
);
output
=
NULL
;
...
...
@@ -255,7 +260,7 @@ GST_START_TEST (test_general)
fail_unless
(
gst_pad_push
(
myvideosrcpad
,
gst_buffer_ref
(
input
))
==
GST_FLOW_OK
);
fail_unless
(
output
!=
NULL
);
data
=
GST_BUFFER_DATA
(
output
);
data
=
orig
=
gst_buffer_map
(
output
,
NULL
,
NULL
,
GST_MAP_WRITE
);
for
(
i
=
0
;
i
<
400
;
i
++
)
{
for
(
j
=
0
;
j
<
400
;
j
++
)
{
fail_unless_equals_int
(
data
[
0
],
0
);
/* A */
...
...
@@ -265,6 +270,7 @@ GST_START_TEST (test_general)
data
+=
4
;
}
}
gst_buffer_unmap
(
output
,
orig
,
-
1
);
gst_buffer_unref
(
output
);
output
=
NULL
;
...
...
tests/check/elements/souphttpsrc.c
View file @
8e39d52b
...
...
@@ -343,15 +343,18 @@ got_buffer (GstElement * fakesink, GstBuffer * buf, GstPad * pad,
gpointer
user_data
)
{
GstStructure
*
s
;
GstCaps
*
caps
;
/* Caps can be anything if we don't except icy caps */
if
(
!
icy_caps
)
return
;
/* Otherwise they _must_ be "application/x-icy" */
fail_unless
(
GST_BUFFER_CAPS
(
buf
)
!=
NULL
);
s
=
gst_caps_get_structure
(
GST_BUFFER_CAPS
(
buf
),
0
);
caps
=
gst_pad_get_current_caps
(
pad
);
fail_unless
(
caps
!=
NULL
);
s
=
gst_caps_get_structure
(
caps
,
0
);
fail_unless_equals_string
(
gst_structure_get_name
(
s
),
"application/x-icy"
);
gst_caps_unref
(
caps
);
}
GST_START_TEST
(
test_icy_stream
)
...
...
tests/check/elements/udpsink.c
View file @
8e39d52b
...
...
@@ -22,6 +22,7 @@
#include <stdlib.h>
#include <unistd.h>
#if 0
static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
GST_PAD_ALWAYS,
...
...
@@ -182,6 +183,7 @@ GST_START_TEST (test_udpsink_bufferlist)
}
GST_END_TEST;
#endif
/*
* Creates the test suite.
...
...
@@ -199,8 +201,10 @@ udpsink_suite (void)
tcase_set_timeout
(
tc_chain
,
60
);
suite_add_tcase
(
s
,
tc_chain
);
#if 0
tcase_add_test (tc_chain, test_udpsink);
tcase_add_test (tc_chain, test_udpsink_bufferlist);
#endif
return
s
;
}
...
...
tests/check/elements/videocrop.c
View file @
8e39d52b
...
...
@@ -28,6 +28,7 @@
#include <unistd.h>
#include <gst/check/gstcheck.h>
#include <gst/video/video.h>
#include <gst/base/gstbasetransform.h>
/* return a list of caps where we only need to set
...
...
@@ -110,8 +111,8 @@ GST_START_TEST (test_unit_sizes)
for
(
i
=
0
;
i
<
G_N_ELEMENTS
(
sizes_to_try
);
++
i
)
{
gchar
*
caps_str
;
g
uint
csp_size
=
0
;
g
uint
vc_size
=
0
;
g
size
csp_size
=
0
;
g
size
vc_size
=
0
;
gst_structure_set
(
s
,
"width"
,
G_TYPE_INT
,
sizes_to_try
[
i
].
width
,
"height"
,
G_TYPE_INT
,
sizes_to_try
[
i
].
height
,
NULL
);
...
...
@@ -157,13 +158,19 @@ typedef struct
GstElement
*
crop
;
GstElement
*
sink
;
GstBuffer
*
last_buf
;
GstCaps
*
last_caps
;
}
GstVideoCropTestContext
;
static
void
handoff_cb
(
GstElement
*
sink
,
GstBuffer
*
buf
,
GstPad
*
pad
,
Gst
Buffer
**
p_buf
)
Gst
VideoCropTestContext
*
ctx
)
{
gst_buffer_replace
(
p_buf
,
buf
);
GstCaps
*
caps
;
gst_buffer_replace
(
&
ctx
->
last_buf
,
buf
);
caps
=
gst_pad_get_current_caps
(
pad
);
gst_caps_replace
(
&
ctx
->
last_caps
,
caps
);
gst_caps_unref
(
caps
);
}
static
void
...
...
@@ -190,10 +197,10 @@ videocrop_test_cropping_init_context (GstVideoCropTestContext * ctx)
g_object_set
(
ctx
->
src
,
"pattern"
,
4
,
NULL
);