Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
GStreamer
gst-plugins-bad
Commits
de659d38
Commit
de659d38
authored
Jun 16, 2002
by
Wim Taymans
Browse files
Add DV seeking example
Original commit message from CVS: Add DV seeking example
parent
d04b373e
Changes
3
Hide whitespace changes
Inline
Side-by-side
examples/seeking/Makefile.am
View file @
de659d38
...
...
@@ -3,5 +3,5 @@ examples = seek spider_seek
noinst_PROGRAMS
=
$(examples)
# we have nothing but apps here, we can do this safely
LIBS
=
$(GST_LIBS)
$(GTK_LIBS)
LIBS
=
$(GST_LIBS)
$(GTK_LIBS)
-lfreetype
CFLAGS
=
$(GST_CFLAGS)
$(GTK_CFLAGS)
examples/seeking/seek.c
View file @
de659d38
...
...
@@ -89,6 +89,43 @@ make_mod_pipeline (const gchar *location)
return
pipeline
;
}
static
GstElement
*
make_dv_pipeline
(
const
gchar
*
location
)
{
GstElement
*
pipeline
;
GstElement
*
src
,
*
decoder
,
*
audiosink
,
*
videosink
;
GstPad
*
seekable
;
pipeline
=
gst_pipeline_new
(
"app"
);
src
=
gst_element_factory_make_or_warn
(
SOURCE
,
"src"
);
decoder
=
gst_element_factory_make_or_warn
(
"dvdec"
,
"decoder"
);
videosink
=
gst_element_factory_make_or_warn
(
"xvideosink"
,
"v_sink"
);
audiosink
=
gst_element_factory_make_or_warn
(
"osssink"
,
"a_sink"
);
//g_object_set (G_OBJECT (audiosink), "sync", FALSE, NULL);
g_object_set
(
G_OBJECT
(
src
),
"location"
,
location
,
NULL
);
gst_bin_add
(
GST_BIN
(
pipeline
),
src
);
gst_bin_add
(
GST_BIN
(
pipeline
),
decoder
);
gst_bin_add
(
GST_BIN
(
pipeline
),
audiosink
);
gst_bin_add
(
GST_BIN
(
pipeline
),
videosink
);
gst_element_connect
(
src
,
decoder
);
gst_element_connect
(
decoder
,
audiosink
);
gst_element_connect
(
decoder
,
videosink
);
seekable
=
gst_element_get_pad
(
decoder
,
"video"
);
seekable_pads
=
g_list_prepend
(
seekable_pads
,
seekable
);
rate_pads
=
g_list_prepend
(
rate_pads
,
seekable
);
seekable
=
gst_element_get_pad
(
decoder
,
"audio"
);
seekable_pads
=
g_list_prepend
(
seekable_pads
,
seekable
);
rate_pads
=
g_list_prepend
(
rate_pads
,
seekable
);
rate_pads
=
g_list_prepend
(
rate_pads
,
gst_element_get_pad
(
decoder
,
"sink"
));
return
pipeline
;
}
static
GstElement
*
make_wav_pipeline
(
const
gchar
*
location
)
{
...
...
@@ -687,7 +724,7 @@ main (int argc, char **argv)
gtk_init
(
&
argc
,
&
argv
);
if
(
argc
!=
3
)
{
g_print
(
"usage: %s <type 0=mp3 1=avi 2=mpeg1 3=mpegparse 4=vorbis 5=sid 6=flac 7=wav 8=mod> <filename>
\n
"
,
argv
[
0
]);
g_print
(
"usage: %s <type 0=mp3 1=avi 2=mpeg1 3=mpegparse 4=vorbis 5=sid 6=flac 7=wav 8=mod
9=dv
> <filename>
\n
"
,
argv
[
0
]);
exit
(
-
1
);
}
...
...
@@ -709,6 +746,8 @@ main (int argc, char **argv)
pipeline
=
make_wav_pipeline
(
argv
[
2
]);
else
if
(
atoi
(
argv
[
1
])
==
8
)
pipeline
=
make_mod_pipeline
(
argv
[
2
]);
else
if
(
atoi
(
argv
[
1
])
==
9
)
pipeline
=
make_dv_pipeline
(
argv
[
2
]);
/* initialize gui elements ... */
window
=
gtk_window_new
(
GTK_WINDOW_TOPLEVEL
);
...
...
examples/seeking/spider_seek.c
View file @
de659d38
...
...
@@ -41,7 +41,7 @@ make_spider_pipeline (const gchar *location, gboolean thread)
v_thread
=
gst_thread_new
(
"v_thread"
);
v_queue
=
gst_element_factory_make
(
"queue"
,
"v_queue"
);
videosink
=
gst_element_factory_make
(
"videosink"
,
"v_sink"
);
videosink
=
gst_element_factory_make
(
"
x
videosink"
,
"v_sink"
);
//g_object_set (G_OBJECT (audiosink), "sync", FALSE, NULL);
g_object_set
(
G_OBJECT
(
src
),
"location"
,
location
,
NULL
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment