mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-09-29 15:22:17 +00:00
Lots of compile fixes against glib2.0
Original commit message from CVS: Lots of compile fixes against glib2.0
This commit is contained in:
parent
17be662ab2
commit
80d8eb350c
19 changed files with 135 additions and 137 deletions
|
@ -30,7 +30,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],"bytesperread",4096,NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],"bytesperread",4096,NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_create(parsefactory,"parse");
|
parse = gst_elementfactory_create(parsefactory,"parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
|
|
@ -23,7 +23,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_make("disksrc","src");
|
src = gst_elementfactory_make("disksrc","src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
// g_print("should be using file '%s'\n",argv[1]);
|
// g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_make("ac3parse","parse");
|
parse = gst_elementfactory_make("ac3parse","parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
@ -58,7 +58,7 @@ int main(int argc,char *argv[]) {
|
||||||
xmlSaveFile("ac3play.gst", gst_xml_write(GST_ELEMENT(pipeline)));
|
xmlSaveFile("ac3play.gst", gst_xml_write(GST_ELEMENT(pipeline)));
|
||||||
|
|
||||||
// set thread start state
|
// set thread start state
|
||||||
gtk_object_set(GTK_OBJECT(decodethread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(decodethread),"create_thread",TRUE,NULL);
|
||||||
|
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_PLAYING);
|
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_PLAYING);
|
||||||
|
|
|
@ -40,7 +40,7 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
g_return_if_fail(audio_thread != NULL);
|
g_return_if_fail(audio_thread != NULL);
|
||||||
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_encode));
|
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_encode));
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(mux),"audio","00",NULL);
|
g_object_set(G_OBJECT(mux),"audio","00",NULL);
|
||||||
|
|
||||||
// set up pad connections
|
// set up pad connections
|
||||||
gst_element_add_ghost_pad(GST_ELEMENT(audio_thread),
|
gst_element_add_ghost_pad(GST_ELEMENT(audio_thread),
|
||||||
|
@ -50,7 +50,7 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",BUFFER,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",BUFFER,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -60,7 +60,7 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
|
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
||||||
|
@ -74,17 +74,17 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
g_return_if_fail(smooth != NULL);
|
g_return_if_fail(smooth != NULL);
|
||||||
median = gst_elementfactory_make("median","median");
|
median = gst_elementfactory_make("median","median");
|
||||||
g_return_if_fail(median != NULL);
|
g_return_if_fail(median != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"filtersize",5,NULL);
|
g_object_set(G_OBJECT(median),"filtersize",5,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"active",TRUE,NULL);
|
g_object_set(G_OBJECT(median),"active",TRUE,NULL);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"filtersize",16,NULL);
|
g_object_set(G_OBJECT(smooth),"filtersize",16,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"tolerance",16,NULL);
|
g_object_set(G_OBJECT(smooth),"tolerance",16,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"active",FALSE,NULL);
|
g_object_set(G_OBJECT(smooth),"active",FALSE,NULL);
|
||||||
|
|
||||||
encode = gst_elementfactory_make("mpeg2enc","encode");
|
encode = gst_elementfactory_make("mpeg2enc","encode");
|
||||||
g_return_if_fail(encode != NULL);
|
g_return_if_fail(encode != NULL);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(mux),"video","00",NULL);
|
g_object_set(G_OBJECT(mux),"video","00",NULL);
|
||||||
|
|
||||||
// create the thread and pack stuff into it
|
// create the thread and pack stuff into it
|
||||||
video_thread = gst_thread_new("video_thread");
|
video_thread = gst_thread_new("video_thread");
|
||||||
|
@ -105,7 +105,7 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",BUFFER,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",BUFFER,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -114,7 +114,7 @@ void new_pad_created(GstElement *parse,GstPad *pad,GstElement *pipeline) {
|
||||||
gst_element_get_pad(video_thread,"sink"));
|
gst_element_get_pad(video_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_make("disksrc","src");
|
src = gst_elementfactory_make("disksrc","src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_make("avidecoder","parse");
|
parse = gst_elementfactory_make("avidecoder","parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
@ -153,18 +153,18 @@ int main(int argc,char *argv[]) {
|
||||||
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
g_return_val_if_fail(fdsink != NULL, -1);
|
g_return_val_if_fail(fdsink != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(mux));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(mux));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(fdsink));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(fdsink));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(parse),"new_pad",
|
g_signal_connectc(G_OBJECT(parse),"new_pad",
|
||||||
GTK_SIGNAL_FUNC(new_pad_created),pipeline);
|
G_CALLBACK(new_pad_created),pipeline, FALSE);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",
|
g_signal_connectc(G_OBJECT(src),"eos",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_pad_connect(gst_element_get_pad(src,"src"),
|
gst_pad_connect(gst_element_get_pad(src,"src"),
|
||||||
gst_element_get_pad(parse,"sink"));
|
gst_element_get_pad(parse,"sink"));
|
||||||
|
@ -178,9 +178,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
g_idle_add(idle_func,pipeline);
|
g_idle_add(idle_func,pipeline);
|
||||||
|
|
||||||
gdk_threads_enter();
|
//gtk_main();
|
||||||
gtk_main();
|
|
||||||
gdk_threads_leave();
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,13 +24,13 @@ int main(int argc,char *argv[]) {
|
||||||
src = gst_elementfactory_make("dvdsrc","src");
|
src = gst_elementfactory_make("dvdsrc","src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
if (argc >= 3)
|
if (argc >= 3)
|
||||||
gtk_object_set(GTK_OBJECT(src),"offset",atoi(argv[2]),NULL);
|
g_object_set(G_OBJECT(src),"offset",atoi(argv[2]),NULL);
|
||||||
|
|
||||||
sink = gst_elementfactory_make("fdsink","sink");
|
sink = gst_elementfactory_make("fdsink","sink");
|
||||||
g_return_val_if_fail(sink != NULL, -1);
|
g_return_val_if_fail(sink != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(sink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(sink),"fd",fd,NULL);
|
||||||
|
|
||||||
// construct the outer pipeline
|
// construct the outer pipeline
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
|
|
16
test/lat.c
16
test/lat.c
|
@ -41,7 +41,7 @@ GstElement *identity_add(GstPipeline *pipeline, GstElement *first, int count) {
|
||||||
snprintf(buf, 20, "identity_%03d", i);
|
snprintf(buf, 20, "identity_%03d", i);
|
||||||
ident = gst_elementfactory_make("identity",buf);
|
ident = gst_elementfactory_make("identity",buf);
|
||||||
g_return_val_if_fail(ident != NULL,NULL);
|
g_return_val_if_fail(ident != NULL,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(ident),"silent",TRUE,NULL);
|
g_object_set(G_OBJECT(ident),"silent",TRUE,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(ident));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(ident));
|
||||||
gst_pad_connect(gst_element_get_pad(last,"src"),
|
gst_pad_connect(gst_element_get_pad(last,"src"),
|
||||||
gst_element_get_pad(ident,"sink"));
|
gst_element_get_pad(ident,"sink"));
|
||||||
|
@ -56,10 +56,10 @@ GstElement *fakesrc() {
|
||||||
|
|
||||||
src = gst_elementfactory_make("fakesrc","src");
|
src = gst_elementfactory_make("fakesrc","src");
|
||||||
g_return_val_if_fail(src != NULL,NULL);
|
g_return_val_if_fail(src != NULL,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(src),"silent",TRUE,NULL);
|
g_object_set(G_OBJECT(src),"silent",TRUE,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(src),"num_buffers",iterations,NULL);
|
g_object_set(G_OBJECT(src),"num_buffers",iterations,NULL);
|
||||||
gtk_signal_connect(GTK_OBJECT(src),
|
g_signal_connectc(G_OBJECT(src),
|
||||||
"handoff",GTK_SIGNAL_FUNC(handoff_src),NULL);
|
"handoff",G_CALLBACK(handoff_src),NULL,FALSE);
|
||||||
|
|
||||||
return src;
|
return src;
|
||||||
}
|
}
|
||||||
|
@ -69,9 +69,9 @@ GstElement *fakesink() {
|
||||||
|
|
||||||
sink = gst_elementfactory_make("fakesink","fakesink");
|
sink = gst_elementfactory_make("fakesink","fakesink");
|
||||||
g_return_val_if_fail(sink != NULL,NULL);
|
g_return_val_if_fail(sink != NULL,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(sink),"silent",TRUE,NULL);
|
g_object_set(G_OBJECT(sink),"silent",TRUE,NULL);
|
||||||
gtk_signal_connect(GTK_OBJECT(sink),
|
g_signal_connectc(G_OBJECT(sink),
|
||||||
"handoff",GTK_SIGNAL_FUNC(handoff_sink),NULL);
|
"handoff",G_CALLBACK(handoff_sink),NULL,FALSE);
|
||||||
|
|
||||||
return sink;
|
return sink;
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",30,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",30,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -63,7 +63,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
g_print("setting to PLAYING state\n");
|
g_print("setting to PLAYING state\n");
|
||||||
|
@ -96,7 +96,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",30,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",30,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -105,7 +105,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
g_print("setting to PLAYING state\n");
|
g_print("setting to PLAYING state\n");
|
||||||
|
@ -123,14 +123,14 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
g_return_if_fail(decode_video != NULL);
|
g_return_if_fail(decode_video != NULL);
|
||||||
encode = gst_elementfactory_make("mpeg2enc","encode");
|
encode = gst_elementfactory_make("mpeg2enc","encode");
|
||||||
g_return_if_fail(encode != NULL);
|
g_return_if_fail(encode != NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(show),"width",640, "height", 480,NULL);
|
//g_object_set(G_OBJECT(show),"width",640, "height", 480,NULL);
|
||||||
fd = open(outfile,O_CREAT|O_RDWR|O_TRUNC);
|
fd = open(outfile,O_CREAT|O_RDWR|O_TRUNC);
|
||||||
|
|
||||||
fdsinkfactory = gst_elementfactory_find("fdsink");
|
fdsinkfactory = gst_elementfactory_find("fdsink");
|
||||||
g_return_if_fail(fdsinkfactory != NULL);
|
g_return_if_fail(fdsinkfactory != NULL);
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
g_return_if_fail(fdsink != NULL);
|
g_return_if_fail(fdsink != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
// create the thread and pack stuff into it
|
// create the thread and pack stuff into it
|
||||||
video_thread = gst_thread_new("video_thread");
|
video_thread = gst_thread_new("video_thread");
|
||||||
|
@ -152,7 +152,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",30,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",30,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -161,7 +161,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(video_thread,"sink"));
|
gst_element_get_pad(video_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
||||||
g_print("setting to PLAYING state\n");
|
g_print("setting to PLAYING state\n");
|
||||||
|
@ -188,7 +188,7 @@ int main(int argc,char *argv[]) {
|
||||||
src = gst_elementfactory_make("disksrc","src");
|
src = gst_elementfactory_make("disksrc","src");
|
||||||
|
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
|
|
||||||
g_print("should be using output file '%s'\n",argv[2]);
|
g_print("should be using output file '%s'\n",argv[2]);
|
||||||
|
@ -200,9 +200,9 @@ int main(int argc,char *argv[]) {
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(parse),"new_pad",mp2tomp1, pipeline);
|
g_signal_connectc(G_OBJECT(parse),"new_pad",mp2tomp1, pipeline, FALSE);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",GTK_SIGNAL_FUNC(eof),NULL);
|
g_signal_connectc(G_OBJECT(src),"eos",G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_pad_connect(gst_element_get_pad(src,"src"),
|
gst_pad_connect(gst_element_get_pad(src,"src"),
|
||||||
gst_element_get_pad(parse,"sink"));
|
gst_element_get_pad(parse,"sink"));
|
||||||
|
|
|
@ -18,7 +18,7 @@ void frame_encoded(GstElement *element, gint framenum, gpointer data) {
|
||||||
gulong frame_size;
|
gulong frame_size;
|
||||||
static gulong total = 0;
|
static gulong total = 0;
|
||||||
|
|
||||||
frame_size = gst_util_get_long_arg(GTK_OBJECT(element),"last_frame_size");
|
frame_size = gst_util_get_long_arg(G_OBJECT(element),"last_frame_size");
|
||||||
|
|
||||||
total+=frame_size;
|
total+=frame_size;
|
||||||
|
|
||||||
|
@ -45,17 +45,17 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
// construct internal pipeline elements
|
// construct internal pipeline elements
|
||||||
parse_audio = gst_elementfactory_make("ac3parse","parse_audio");
|
parse_audio = gst_elementfactory_make("ac3parse","parse_audio");
|
||||||
g_return_if_fail(parse_audio != NULL);
|
g_return_if_fail(parse_audio != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(parse_audio),"skip", 15, NULL);
|
g_object_set(G_OBJECT(parse_audio),"skip", 15, NULL);
|
||||||
decode = gst_elementfactory_make("ac3dec","decode_audio");
|
decode = gst_elementfactory_make("ac3dec","decode_audio");
|
||||||
g_return_if_fail(decode != NULL);
|
g_return_if_fail(decode != NULL);
|
||||||
audio_resample = gst_elementfactory_make("audioscale","audioscale");
|
audio_resample = gst_elementfactory_make("audioscale","audioscale");
|
||||||
g_return_if_fail(audio_resample != NULL);
|
g_return_if_fail(audio_resample != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(audio_resample),"frequency", 44100, NULL);
|
g_object_set(G_OBJECT(audio_resample),"frequency", 44100, NULL);
|
||||||
|
|
||||||
audio_encode = gst_elementfactory_make("mpegaudio","audio_encode");
|
audio_encode = gst_elementfactory_make("mpegaudio","audio_encode");
|
||||||
//audio_encode = gst_elementfactory_make("pipefilter","audio_encode");
|
//audio_encode = gst_elementfactory_make("pipefilter","audio_encode");
|
||||||
g_return_if_fail(audio_encode != NULL);
|
g_return_if_fail(audio_encode != NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(audio_encode),"command", "lame -x - -", NULL);
|
//g_object_set(G_OBJECT(audio_encode),"command", "lame -x - -", NULL);
|
||||||
|
|
||||||
// create the thread and pack stuff into it
|
// create the thread and pack stuff into it
|
||||||
audio_thread = gst_thread_new("audio_thread");
|
audio_thread = gst_thread_new("audio_thread");
|
||||||
|
@ -65,7 +65,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_resample));
|
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_resample));
|
||||||
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_encode));
|
gst_bin_add(GST_BIN(audio_thread),GST_ELEMENT(audio_encode));
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(mux),"audio","00",NULL);
|
g_object_set(G_OBJECT(mux),"audio","00",NULL);
|
||||||
|
|
||||||
// set up pad connections
|
// set up pad connections
|
||||||
gst_element_add_ghost_pad(GST_ELEMENT(audio_thread),
|
gst_element_add_ghost_pad(GST_ELEMENT(audio_thread),
|
||||||
|
@ -81,7 +81,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -90,7 +90,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
} else if (strncmp(gst_pad_get_name(pad), "subtitle_stream_4", 17) == 0) {
|
} else if (strncmp(gst_pad_get_name(pad), "subtitle_stream_4", 17) == 0) {
|
||||||
|
@ -125,7 +125,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -134,7 +134,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
||||||
|
@ -157,27 +157,27 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
g_return_if_fail(merge_subtitles != NULL);
|
g_return_if_fail(merge_subtitles != NULL);
|
||||||
videoscale = gst_elementfactory_make("videoscale","videoscale");
|
videoscale = gst_elementfactory_make("videoscale","videoscale");
|
||||||
g_return_if_fail(videoscale != NULL);
|
g_return_if_fail(videoscale != NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(videoscale),"width",352, "height", 288,NULL);
|
//g_object_set(G_OBJECT(videoscale),"width",352, "height", 288,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(videoscale),"width",640, "height", 480,NULL);
|
g_object_set(G_OBJECT(videoscale),"width",640, "height", 480,NULL);
|
||||||
median = gst_elementfactory_make("median","median");
|
median = gst_elementfactory_make("median","median");
|
||||||
g_return_if_fail(median != NULL);
|
g_return_if_fail(median != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"filtersize",9,NULL);
|
g_object_set(G_OBJECT(median),"filtersize",9,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"active",TRUE,NULL);
|
g_object_set(G_OBJECT(median),"active",TRUE,NULL);
|
||||||
smooth = gst_elementfactory_make("smooth","smooth");
|
smooth = gst_elementfactory_make("smooth","smooth");
|
||||||
g_return_if_fail(smooth != NULL);
|
g_return_if_fail(smooth != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"filtersize",5,NULL);
|
g_object_set(G_OBJECT(smooth),"filtersize",5,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"tolerance",9,NULL);
|
g_object_set(G_OBJECT(smooth),"tolerance",9,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"active",FALSE,NULL);
|
g_object_set(G_OBJECT(smooth),"active",FALSE,NULL);
|
||||||
encode = gst_elementfactory_make("winenc","encode");
|
encode = gst_elementfactory_make("winenc","encode");
|
||||||
g_return_if_fail(encode != NULL);
|
g_return_if_fail(encode != NULL);
|
||||||
gtk_signal_connect(GTK_OBJECT(encode),"frame_encoded",GTK_SIGNAL_FUNC(frame_encoded),NULL);
|
g_signal_connectc(G_OBJECT(encode),"frame_encoded",G_CALLBACK(frame_encoded),NULL,FALSE);
|
||||||
gtk_object_set(GTK_OBJECT(encode),"bitrate",800*4,NULL);
|
g_object_set(G_OBJECT(encode),"bitrate",800*4,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(encode),"quality",10000,NULL);
|
g_object_set(G_OBJECT(encode),"quality",10000,NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(encode),"compression",NULL,NULL);
|
//g_object_set(G_OBJECT(encode),"compression",NULL,NULL);
|
||||||
//encode = gst_elementfactory_make("mpeg1encoder","encode");
|
//encode = gst_elementfactory_make("mpeg1encoder","encode");
|
||||||
//gtk_object_set(GTK_OBJECT(show),"width",640, "height", 480,NULL);
|
//g_object_set(G_OBJECT(show),"width",640, "height", 480,NULL);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(mux),"video","00:DIV3",NULL);
|
g_object_set(G_OBJECT(mux),"video","00:DIV3",NULL);
|
||||||
|
|
||||||
// create the thread and pack stuff into it
|
// create the thread and pack stuff into it
|
||||||
video_thread = gst_thread_new("video_thread");
|
video_thread = gst_thread_new("video_thread");
|
||||||
|
@ -210,7 +210,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -219,7 +219,7 @@ void mp2tomp1(GstElement *parser,GstPad *pad, GstElement *pipeline) {
|
||||||
gst_element_get_pad(video_thread,"sink"));
|
gst_element_get_pad(video_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
||||||
}
|
}
|
||||||
|
@ -249,7 +249,7 @@ int main(int argc,char *argv[]) {
|
||||||
src = gst_elementfactory_make("disksrc","src");
|
src = gst_elementfactory_make("disksrc","src");
|
||||||
|
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
|
|
||||||
g_print("should be using output file '%s'\n",argv[2]);
|
g_print("should be using output file '%s'\n",argv[2]);
|
||||||
|
@ -264,16 +264,16 @@ int main(int argc,char *argv[]) {
|
||||||
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
g_return_val_if_fail(fdsink != NULL, -1);
|
g_return_val_if_fail(fdsink != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(mux));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(mux));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(fdsink));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(fdsink));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(parse),"new_pad",mp2tomp1, pipeline);
|
g_signal_connectc(G_OBJECT(parse),"new_pad",mp2tomp1, pipeline, FALSE);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",GTK_SIGNAL_FUNC(eof),NULL);
|
g_signal_connectc(G_OBJECT(src),"eos",G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_pad_connect(gst_element_get_pad(src,"src"),
|
gst_pad_connect(gst_element_get_pad(src,"src"),
|
||||||
gst_element_get_pad(parse,"sink"));
|
gst_element_get_pad(parse,"sink"));
|
||||||
|
|
|
@ -29,7 +29,7 @@ create_muxer (GstElement *pipeline, gchar *type, gchar *number)
|
||||||
gst_pad_connect(gst_element_get_pad(mux,"src"),
|
gst_pad_connect(gst_element_get_pad(mux,"src"),
|
||||||
gst_element_get_pad(fdsink,"sink"));
|
gst_element_get_pad(fdsink,"sink"));
|
||||||
}
|
}
|
||||||
gtk_object_set(GTK_OBJECT(mux), type, number,NULL);
|
g_object_set(G_OBJECT(mux), type, number,NULL);
|
||||||
|
|
||||||
return gst_element_get_pad(mux,g_strconcat (type, "_", number, NULL));
|
return gst_element_get_pad(mux,g_strconcat (type, "_", number, NULL));
|
||||||
}
|
}
|
||||||
|
@ -55,12 +55,12 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
g_return_if_fail(decode != NULL);
|
g_return_if_fail(decode != NULL);
|
||||||
audio_resample = gst_elementfactory_make("audioscale","audioscale");
|
audio_resample = gst_elementfactory_make("audioscale","audioscale");
|
||||||
g_return_if_fail(audio_resample != NULL);
|
g_return_if_fail(audio_resample != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(audio_resample),"frequency", 44100, NULL);
|
g_object_set(G_OBJECT(audio_resample),"frequency", 44100, NULL);
|
||||||
|
|
||||||
audio_encode = gst_elementfactory_make("mpegaudio","audio_encode");
|
audio_encode = gst_elementfactory_make("mpegaudio","audio_encode");
|
||||||
//audio_encode = gst_elementfactory_make("pipefilter","audio_encode");
|
//audio_encode = gst_elementfactory_make("pipefilter","audio_encode");
|
||||||
g_return_if_fail(audio_encode != NULL);
|
g_return_if_fail(audio_encode != NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(audio_encode),"command", "lame -x - -", NULL);
|
//g_object_set(G_OBJECT(audio_encode),"command", "lame -x - -", NULL);
|
||||||
|
|
||||||
// create the thread and pack stuff into it
|
// create the thread and pack stuff into it
|
||||||
audio_thread = gst_thread_new("audio_thread");
|
audio_thread = gst_thread_new("audio_thread");
|
||||||
|
@ -83,7 +83,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -92,7 +92,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
} else if (strncmp(gst_pad_get_name(pad), "subtitle_stream_4", 17) == 0) {
|
} else if (strncmp(gst_pad_get_name(pad), "subtitle_stream_4", 17) == 0) {
|
||||||
|
@ -120,7 +120,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipelie
|
// construct queue and connect everything in the main pipelie
|
||||||
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
audio_queue = gst_elementfactory_make("queue","audio_queue");
|
||||||
gtk_object_set(GTK_OBJECT(audio_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(audio_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(audio_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -129,7 +129,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
gst_element_get_pad(audio_thread,"sink"));
|
gst_element_get_pad(audio_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(audio_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(audio_thread),GST_STATE_READY);
|
||||||
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
} else if (strncmp(gst_pad_get_name(pad), "video_", 6) == 0) {
|
||||||
|
@ -143,22 +143,22 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
//g_return_if_fail(merge_subtitles != NULL);
|
//g_return_if_fail(merge_subtitles != NULL);
|
||||||
videoscale = gst_elementfactory_make("videoscale","videoscale");
|
videoscale = gst_elementfactory_make("videoscale","videoscale");
|
||||||
g_return_if_fail(videoscale != NULL);
|
g_return_if_fail(videoscale != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(videoscale),"width",352, "height", 288,NULL);
|
g_object_set(G_OBJECT(videoscale),"width",352, "height", 288,NULL);
|
||||||
median = gst_elementfactory_make("median","median");
|
median = gst_elementfactory_make("median","median");
|
||||||
g_return_if_fail(median != NULL);
|
g_return_if_fail(median != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"filtersize",5,NULL);
|
g_object_set(G_OBJECT(median),"filtersize",5,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(median),"active",TRUE,NULL);
|
g_object_set(G_OBJECT(median),"active",TRUE,NULL);
|
||||||
smooth = gst_elementfactory_make("smooth","smooth");
|
smooth = gst_elementfactory_make("smooth","smooth");
|
||||||
g_return_if_fail(smooth != NULL);
|
g_return_if_fail(smooth != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"filtersize",5,NULL);
|
g_object_set(G_OBJECT(smooth),"filtersize",5,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"tolerance",9,NULL);
|
g_object_set(G_OBJECT(smooth),"tolerance",9,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(smooth),"active",FALSE,NULL);
|
g_object_set(G_OBJECT(smooth),"active",FALSE,NULL);
|
||||||
encode = gst_elementfactory_make("mpeg2enc","encode");
|
encode = gst_elementfactory_make("mpeg2enc","encode");
|
||||||
g_return_if_fail(encode != NULL);
|
g_return_if_fail(encode != NULL);
|
||||||
gtk_object_set(GTK_OBJECT(encode),"frames_per_second",25.0,NULL);
|
g_object_set(G_OBJECT(encode),"frames_per_second",25.0,NULL);
|
||||||
//gtk_object_set(GTK_OBJECT(encode),"frames_per_second",29.97,NULL);
|
//g_object_set(G_OBJECT(encode),"frames_per_second",29.97,NULL);
|
||||||
//encode = gst_elementfactory_make("mpeg1encoder","encode");
|
//encode = gst_elementfactory_make("mpeg1encoder","encode");
|
||||||
//gtk_object_set(GTK_OBJECT(show),"width",640, "height", 480,NULL);
|
//g_object_set(G_OBJECT(show),"width",640, "height", 480,NULL);
|
||||||
|
|
||||||
muxerpad = create_muxer (pipeline, "video", "00");
|
muxerpad = create_muxer (pipeline, "video", "00");
|
||||||
g_return_if_fail(muxerpad != NULL);
|
g_return_if_fail(muxerpad != NULL);
|
||||||
|
@ -192,7 +192,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",1,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",1,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(pad,
|
gst_pad_connect(pad,
|
||||||
|
@ -201,7 +201,7 @@ mp2tomp1 (GstElement *parser, GstPad *pad, GstElement *pipeline)
|
||||||
gst_element_get_pad(video_thread,"sink"));
|
gst_element_get_pad(video_thread,"sink"));
|
||||||
|
|
||||||
// set up thread state and kick things off
|
// set up thread state and kick things off
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("setting to READY state\n");
|
g_print("setting to READY state\n");
|
||||||
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(video_thread),GST_STATE_READY);
|
||||||
}
|
}
|
||||||
|
@ -228,7 +228,7 @@ int main(int argc,char *argv[]) {
|
||||||
src = gst_elementfactory_make("disksrc","src");
|
src = gst_elementfactory_make("disksrc","src");
|
||||||
|
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
|
|
||||||
g_print("should be using output file '%s'\n",argv[2]);
|
g_print("should be using output file '%s'\n",argv[2]);
|
||||||
|
@ -242,15 +242,15 @@ int main(int argc,char *argv[]) {
|
||||||
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
g_return_val_if_fail(fdsinkfactory != NULL, -1);
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
g_return_val_if_fail(fdsink != NULL, -1);
|
g_return_val_if_fail(fdsink != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
|
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(parse),"new_pad",mp2tomp1, pipeline);
|
g_signal_connectc(G_OBJECT(parse),"new_pad",mp2tomp1, pipeline, FALSE);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",GTK_SIGNAL_FUNC(eof),NULL);
|
g_signal_connectc(G_OBJECT(src),"eos",G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_pad_connect(gst_element_get_pad(src,"src"),
|
gst_pad_connect(gst_element_get_pad(src,"src"),
|
||||||
gst_element_get_pad(parse,"sink"));
|
gst_element_get_pad(parse,"sink"));
|
||||||
|
|
|
@ -34,7 +34,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1]);
|
||||||
mp3 = gst_elementfactory_create(mp3factory,"mp3");
|
mp3 = gst_elementfactory_create(mp3factory,"mp3");
|
||||||
g_return_val_if_fail(mp3 != NULL, -1);
|
g_return_val_if_fail(mp3 != NULL, -1);
|
||||||
sink = gst_elementfactory_create(sinkfactory,"sink");
|
sink = gst_elementfactory_create(sinkfactory,"sink");
|
||||||
|
@ -49,8 +49,8 @@ int main(int argc,char *argv[]) {
|
||||||
gst_pad_connect(gst_element_get_pad(mp3,"src"),
|
gst_pad_connect(gst_element_get_pad(mp3,"src"),
|
||||||
gst_element_get_pad(sink,"sink"));
|
gst_element_get_pad(sink,"sink"));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eof",
|
g_signal_connectc(G_OBJECT(src),"eof",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL,FALSE);
|
||||||
|
|
||||||
gst_element_set_state(GST_ELEMENT(bin),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(bin),GST_STATE_READY);
|
||||||
gst_element_set_state(GST_ELEMENT(bin),GST_STATE_PLAYING);
|
gst_element_set_state(GST_ELEMENT(bin),GST_STATE_PLAYING);
|
||||||
|
|
|
@ -21,7 +21,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
decode = gst_elementfactory_create(decodefactory,"decode");
|
decode = gst_elementfactory_create(decodefactory,"decode");
|
||||||
g_return_val_if_fail(decode != NULL, -1);
|
g_return_val_if_fail(decode != NULL, -1);
|
||||||
|
|
|
@ -35,7 +35,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1]);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_create(parsefactory,"parse");
|
parse = gst_elementfactory_create(parsefactory,"parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
@ -46,8 +46,8 @@ int main(int argc,char *argv[]) {
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",
|
g_signal_connectc(G_OBJECT(src),"eos",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_pad_connect(gst_element_get_pad(src,"src"),
|
gst_pad_connect(gst_element_get_pad(src,"src"),
|
||||||
gst_element_get_pad(parse,"sink"));
|
gst_element_get_pad(parse,"sink"));
|
||||||
|
|
|
@ -28,7 +28,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1]);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_create(parsefactory,"parse");
|
parse = gst_elementfactory_create(parsefactory,"parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
@ -37,8 +37,8 @@ int main(int argc,char *argv[]) {
|
||||||
play = gst_elementfactory_create(playfactory,"play");
|
play = gst_elementfactory_create(playfactory,"play");
|
||||||
g_return_val_if_fail(play != NULL, -1);
|
g_return_val_if_fail(play != NULL, -1);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",
|
g_signal_connectc(G_OBJECT(src),"eos",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
|
|
|
@ -36,7 +36,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
parse = gst_elementfactory_create(parsefactory,"parse");
|
parse = gst_elementfactory_create(parsefactory,"parse");
|
||||||
g_return_val_if_fail(parse != NULL, -1);
|
g_return_val_if_fail(parse != NULL, -1);
|
||||||
|
@ -48,10 +48,10 @@ int main(int argc,char *argv[]) {
|
||||||
g_return_val_if_fail(sink != NULL, -1);
|
g_return_val_if_fail(sink != NULL, -1);
|
||||||
g_print("should be using output file '%s'\n",argv[2]);
|
g_print("should be using output file '%s'\n",argv[2]);
|
||||||
fd = open(argv[2], O_CREAT|O_RDWR|O_TRUNC);
|
fd = open(argv[2], O_CREAT|O_RDWR|O_TRUNC);
|
||||||
gtk_object_set(GTK_OBJECT(sink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(sink),"fd",fd,NULL);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",
|
g_signal_connectc(G_OBJECT(src),"eos",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL,FALSE);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(parse));
|
||||||
|
|
|
@ -31,7 +31,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
g_return_val_if_fail(src != NULL, -1);
|
g_return_val_if_fail(src != NULL, -1);
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
g_print("should be using file '%s'\n",argv[1]);
|
g_print("should be using file '%s'\n",argv[1]);
|
||||||
pipe = gst_elementfactory_create(pipefactory,"pipe");
|
pipe = gst_elementfactory_create(pipefactory,"pipe");
|
||||||
g_return_val_if_fail(pipe != NULL, -1);
|
g_return_val_if_fail(pipe != NULL, -1);
|
||||||
|
@ -39,10 +39,10 @@ int main(int argc,char *argv[]) {
|
||||||
g_return_val_if_fail(sink != NULL, -1);
|
g_return_val_if_fail(sink != NULL, -1);
|
||||||
|
|
||||||
fd = open(argv[2],O_CREAT|O_RDWR|O_TRUNC);
|
fd = open(argv[2],O_CREAT|O_RDWR|O_TRUNC);
|
||||||
gtk_object_set(GTK_OBJECT(sink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(sink),"fd",fd,NULL);
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eos",
|
g_signal_connectc(G_OBJECT(src),"eos",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL,FALSE);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(src));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(pipe));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(pipe));
|
||||||
|
|
|
@ -36,7 +36,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
srcfactory = gst_elementfactory_find("disksrc");
|
srcfactory = gst_elementfactory_find("disksrc");
|
||||||
src = gst_elementfactory_create(srcfactory,"src");
|
src = gst_elementfactory_create(srcfactory,"src");
|
||||||
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
|
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
|
||||||
gst_bin_add(GST_BIN(decodethread),GST_ELEMENT(src));
|
gst_bin_add(GST_BIN(decodethread),GST_ELEMENT(src));
|
||||||
|
|
||||||
_gst_plugin_spew = TRUE;
|
_gst_plugin_spew = TRUE;
|
||||||
|
@ -77,12 +77,12 @@ int main(int argc,char *argv[]) {
|
||||||
// gst_pad_connect(gst_element_get_pad(queue,"src"),
|
// gst_pad_connect(gst_element_get_pad(queue,"src"),
|
||||||
gst_element_get_pad(playthread,"sink"));
|
gst_element_get_pad(playthread,"sink"));
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(src),"eof",
|
g_signal_connectc(G_OBJECT(src),"eof",
|
||||||
GTK_SIGNAL_FUNC(eof),NULL);
|
G_CALLBACK(eof),NULL, FALSE);
|
||||||
|
|
||||||
g_print("\nsetting up the decode thread to *NOT* thread\n");
|
g_print("\nsetting up the decode thread to *NOT* thread\n");
|
||||||
// gtk_object_set(GTK_OBJECT(decodethread),"create_thread",TRUE,NULL);
|
// gtk_object_set(GTK_OBJECT(decodethread),"create_thread",TRUE,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(playthread),"create_thread",FALSE,NULL);
|
g_object_set(G_OBJECT(playthread),"create_thread",FALSE,NULL);
|
||||||
|
|
||||||
g_print("\neverything's built, setting it up to be runnable\n");
|
g_print("\neverything's built, setting it up to be runnable\n");
|
||||||
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
||||||
|
|
|
@ -20,7 +20,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
fdsinkfactory = gst_elementfactory_find("fdsink");
|
fdsinkfactory = gst_elementfactory_find("fdsink");
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd);
|
||||||
|
|
||||||
/* add objects to the main pipeline */
|
/* add objects to the main pipeline */
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(osssrc));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(osssrc));
|
||||||
|
|
|
@ -28,16 +28,16 @@ int main(int argc,char *argv[]) {
|
||||||
compress = gst_elementfactory_create(compressfactory,"jpegenc");
|
compress = gst_elementfactory_create(compressfactory,"jpegenc");
|
||||||
encoderfactory = gst_elementfactory_find("aviencoder");
|
encoderfactory = gst_elementfactory_find("aviencoder");
|
||||||
encoder = gst_elementfactory_create(encoderfactory,"aviencoder");
|
encoder = gst_elementfactory_create(encoderfactory,"aviencoder");
|
||||||
gtk_object_set(GTK_OBJECT(videosrc),"width",320,"height",240,NULL);
|
g_object_set(G_OBJECT(videosrc),"width",320,"height",240,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(videosrc),"format",9,NULL);
|
g_object_set(G_OBJECT(videosrc),"format",9,NULL);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(encoder),"video","00:I420",NULL);
|
g_object_set(G_OBJECT(encoder),"video","00:I420",NULL);
|
||||||
|
|
||||||
fd = open(argv[1],O_CREAT|O_RDWR|O_TRUNC);
|
fd = open(argv[1],O_CREAT|O_RDWR|O_TRUNC);
|
||||||
|
|
||||||
fdsinkfactory = gst_elementfactory_find("fdsink");
|
fdsinkfactory = gst_elementfactory_find("fdsink");
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(videosrc));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(videosrc));
|
||||||
|
|
||||||
|
@ -60,7 +60,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",30,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",30,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(gst_element_get_pad(videosrc, "src"),
|
gst_pad_connect(gst_element_get_pad(videosrc, "src"),
|
||||||
|
@ -68,7 +68,7 @@ int main(int argc,char *argv[]) {
|
||||||
gst_pad_connect(gst_element_get_pad(video_queue,"src"),
|
gst_pad_connect(gst_element_get_pad(video_queue,"src"),
|
||||||
gst_element_get_pad(video_thread,"video_00"));
|
gst_element_get_pad(video_thread,"video_00"));
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("\neverything's built, setting it up to be runnable\n");
|
g_print("\neverything's built, setting it up to be runnable\n");
|
||||||
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
||||||
g_print("\nok, runnable, hitting 'play'...\n");
|
g_print("\nok, runnable, hitting 'play'...\n");
|
||||||
|
|
|
@ -29,16 +29,16 @@ int main(int argc,char *argv[]) {
|
||||||
g_assert(compress != NULL);
|
g_assert(compress != NULL);
|
||||||
encoderfactory = gst_elementfactory_find("aviencoder");
|
encoderfactory = gst_elementfactory_find("aviencoder");
|
||||||
encoder = gst_elementfactory_create(encoderfactory,"aviencoder");
|
encoder = gst_elementfactory_create(encoderfactory,"aviencoder");
|
||||||
gtk_object_set(GTK_OBJECT(videosrc),"width",320,"height",240,NULL);
|
g_object_set(G_OBJECT(videosrc),"width",320,"height",240,NULL);
|
||||||
gtk_object_set(GTK_OBJECT(videosrc),"format",5,NULL);
|
g_object_set(G_OBJECT(videosrc),"format",5,NULL);
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(encoder),"video","00:DIV3",NULL);
|
g_object_set(G_OBJECT(encoder),"video","00:DIV3",NULL);
|
||||||
|
|
||||||
fd = open(argv[1],O_CREAT|O_RDWR|O_TRUNC);
|
fd = open(argv[1],O_CREAT|O_RDWR|O_TRUNC);
|
||||||
|
|
||||||
fdsinkfactory = gst_elementfactory_find("fdsink");
|
fdsinkfactory = gst_elementfactory_find("fdsink");
|
||||||
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
fdsink = gst_elementfactory_create(fdsinkfactory,"fdsink");
|
||||||
gtk_object_set(GTK_OBJECT(fdsink),"fd",fd,NULL);
|
g_object_set(G_OBJECT(fdsink),"fd",fd,NULL);
|
||||||
|
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(videosrc));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(videosrc));
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ int main(int argc,char *argv[]) {
|
||||||
|
|
||||||
// construct queue and connect everything in the main pipeline
|
// construct queue and connect everything in the main pipeline
|
||||||
video_queue = gst_elementfactory_make("queue","video_queue");
|
video_queue = gst_elementfactory_make("queue","video_queue");
|
||||||
gtk_object_set(GTK_OBJECT(video_queue),"max_level",30,NULL);
|
g_object_set(G_OBJECT(video_queue),"max_level",30,NULL);
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_queue));
|
||||||
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(video_thread));
|
||||||
gst_pad_connect(gst_element_get_pad(videosrc, "src"),
|
gst_pad_connect(gst_element_get_pad(videosrc, "src"),
|
||||||
|
@ -69,7 +69,7 @@ int main(int argc,char *argv[]) {
|
||||||
gst_pad_connect(gst_element_get_pad(video_queue,"src"),
|
gst_pad_connect(gst_element_get_pad(video_queue,"src"),
|
||||||
gst_element_get_pad(video_thread,"sink"));
|
gst_element_get_pad(video_thread,"sink"));
|
||||||
|
|
||||||
gtk_object_set(GTK_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
g_object_set(G_OBJECT(video_thread),"create_thread",TRUE,NULL);
|
||||||
g_print("\neverything's built, setting it up to be runnable\n");
|
g_print("\neverything's built, setting it up to be runnable\n");
|
||||||
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY);
|
||||||
g_print("\nok, runnable, hitting 'play'...\n");
|
g_print("\nok, runnable, hitting 'play'...\n");
|
||||||
|
|
|
@ -28,13 +28,13 @@ main (int argc,char *argv[])
|
||||||
//effect = gst_elementfactory_make("XMMS_EFFECT_echo_plugin_1.2.4", "xmms_effect");
|
//effect = gst_elementfactory_make("XMMS_EFFECT_echo_plugin_1.2.4", "xmms_effect");
|
||||||
g_return_val_if_fail(effect != NULL, -1);
|
g_return_val_if_fail(effect != NULL, -1);
|
||||||
|
|
||||||
gtk_object_set (GTK_OBJECT (src), "location", argv[1], NULL);
|
g_object_set (G_OBJECT (src), "location", argv[1], NULL);
|
||||||
//gtk_object_set (GTK_OBJECT (src), "filename", "tone://1000", NULL);
|
//gtk_object_set (G_OBJECT (src), "filename", "tone://1000", NULL);
|
||||||
|
|
||||||
g_print ("Song Info (text:length): %s\n",gst_util_get_string_arg (GTK_OBJECT (src), "song_info"));
|
g_print ("Song Info (text:length): %s\n",gst_util_get_string_arg (G_OBJECT (src), "song_info"));
|
||||||
//gtk_object_set (GTK_OBJECT (src), "show_about", TRUE, NULL);
|
//gtk_object_set (G_OBJECT (src), "show_about", TRUE, NULL);
|
||||||
//gtk_object_set (GTK_OBJECT (src), "configure", TRUE, NULL);
|
//gtk_object_set (G_OBJECT (src), "configure", TRUE, NULL);
|
||||||
//gtk_object_set (GTK_OBJECT (src), "show_file_info", TRUE, NULL);
|
//gtk_object_set (G_OBJECT (src), "show_file_info", TRUE, NULL);
|
||||||
|
|
||||||
osssink = gst_elementfactory_make("osssink", "osssink");
|
osssink = gst_elementfactory_make("osssink", "osssink");
|
||||||
g_return_val_if_fail(osssink != NULL, -1);
|
g_return_val_if_fail(osssink != NULL, -1);
|
||||||
|
@ -52,7 +52,7 @@ main (int argc,char *argv[])
|
||||||
|
|
||||||
g_idle_add(idle_func, bin);
|
g_idle_add(idle_func, bin);
|
||||||
|
|
||||||
gtk_main();
|
//gtk_main();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue