[prev in list] [next in list] [prev in thread] [next in thread]
List: gstreamer-devel
Subject: [gst-devel] Fwd: Re: Internal data flow error
From: Stefan Kost <ensonic () hora-obscura ! de>
Date: 2007-03-29 9:12:12
Message-ID: 20070329111212.7nzxx09egw8gkwgs () horde ! hora-obscura ! de
[Download RAW message or body]
This message is in MIME format.
Riccardo,
please write to the list :)
Stefan
----- Weitergeleitete Nachricht von coronariccardo@gmail.com -----
Datum: Tue, 27 Mar 2007 12:13:33 +0200
Von: Riccardo Corona <coronariccardo@gmail.com>
Antwort an: Riccardo Corona <coronariccardo@gmail.com>
Betreff: Re: [gst-devel] Internal data flow error
An: Stefan Kost <ensonic@hora-obscura.de>
I've solved the internal data flow error, it was a stupid mistake : simply
miss an element into the "gst_element_link_many" function.
But now I've a nother problem.
I'm writing a gst application in which I'm trying to decode mpeg4 packet
received from a net source, I've already done the methods to connect to the
mpe4 source and get the compressed data, now I'm only find a way to decode
this stream with gst.
I've the function to obtain a mpeg4 packet and I would use it into the
fakesrc callback.
Here some snippet of code, note that the callback actually do nothing;
............................
pipeline = gst_pipeline_new ("pipeline");
fakesrc = gst_element_factory_make ("fakesrc", "source");
decoder = gst_element_factory_make
("ffdec_mpeg4","mpeg4-decoder");/*("theoradec",
"theora-decoder");*/
videoscale = gst_element_factory_make ("videoscale", "scaling-video");
par = gst_element_factory_make ("capsfilter", "dimens");
g_object_set (G_OBJECT(par), "caps",
gst_caps_new_simple( "video/x-raw-yuv",
"width", G_TYPE_INT, 720,
"height", G_TYPE_INT, 576,NULL),
NULL );
conv = gst_element_factory_make ("ffmpegcolorspace", "converter");
videosink = gst_element_factory_make ("directdrawsink", "directdraw");
if (!pipeline || !fakesrc || !decoder || !videoscale || !par || !conv ||
!videosink) {
g_print ("One element could not be created\n");
return -1;
}
/* put all elements in a bin */
gst_bin_add_many (GST_BIN (pipeline),
fakesrc, decoder,videoscale ,par, conv, videosink, NULL);
/* link together */
gst_element_link_many (fakesrc,decoder,videoscale, par, conv, videosink,
NULL);
//this's for information message about errors
bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
gst_bus_add_watch (bus, bus_call, loop);
gst_object_unref (bus);
g_object_set (G_OBJECT (fakesrc),
"signal-handoffs", TRUE,
"sizemax", 720 * 288 * 2,
"sizetype", 2, NULL);
//cb_handoff is my callback
g_signal_connect (fakesrc, "handoff", G_CALLBACK (cb_handoff), pParam);
............................
When I execute this code gst return this message "Internal GStreamer Error:
negotiation problem".
2007/3/19, Stefan Kost <ensonic@hora-obscura.de >:
>
> Hi Riccardo,
>
> you need to start you app using
> GST_DEBUG="*:3" ./app
>
> then it look for lines with WARN. A bit above should be the cause. If it
> does
> not show anything you can raise the log level ("*:4", it goes up to 5).
> The
> reason can be anything from missing conversion elements, to real bugs. It
> would
> help if you can tell what you are doing.
>
> Stefan
>
> Riccardo Corona wrote:
> > Hi,
> > someone knows the most common sources for the error "Internal data flow
> > error"?
> >
> > --
> > Riccardo Corona
> >
> >
> > ------------------------------------------------------------------------
> >
> >
> -------------------------------------------------------------------------
> > Take Surveys. Earn Cash. Influence the Future of IT
> > Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> > opinions on IT & business topics through brief surveys-and earn cash
> >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
--
Riccardo Corona
----- Ende der weitergeleiteten Nachricht -----
[Attachment #3 (multipart/alternative)]
This message is in MIME format.
I've solved the internal data flow error, it was a stupid mistake : simply
miss an element into the "gst_element_link_many" function.
But now I've a nother problem.
I'm writing a gst application in which I'm trying to decode mpeg4 packet
received from a net source, I've already done the methods to connect to the
mpe4 source and get the compressed data, now I'm only find a way to decode
this stream with gst.
I've the function to obtain a mpeg4 packet and I would use it into the
fakesrc callback.
Here some snippet of code, note that the callback actually do nothing;
............................
pipeline = gst_pipeline_new ("pipeline");
fakesrc = gst_element_factory_make ("fakesrc", "source");
decoder = gst_element_factory_make
("ffdec_mpeg4","mpeg4-decoder");/*("theoradec",
"theora-decoder");*/
videoscale = gst_element_factory_make ("videoscale", "scaling-video");
par = gst_element_factory_make ("capsfilter", "dimens");
g_object_set (G_OBJECT(par), "caps",
gst_caps_new_simple( "video/x-raw-yuv",
"width", G_TYPE_INT, 720,
"height", G_TYPE_INT, 576,NULL),
NULL );
conv = gst_element_factory_make ("ffmpegcolorspace", "converter");
videosink = gst_element_factory_make ("directdrawsink", "directdraw");
if (!pipeline || !fakesrc || !decoder || !videoscale || !par || !conv ||
!videosink) {
g_print ("One element could not be created\n");
return -1;
}
/* put all elements in a bin */
gst_bin_add_many (GST_BIN (pipeline),
fakesrc, decoder,videoscale ,par, conv, videosink, NULL);
/* link together */
gst_element_link_many (fakesrc,decoder,videoscale, par, conv, videosink,
NULL);
//this's for information message about errors
bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
gst_bus_add_watch (bus, bus_call, loop);
gst_object_unref (bus);
g_object_set (G_OBJECT (fakesrc),
"signal-handoffs", TRUE,
"sizemax", 720 * 288 * 2,
"sizetype", 2, NULL);
//cb_handoff is my callback
g_signal_connect (fakesrc, "handoff", G_CALLBACK (cb_handoff), pParam);
............................
When I execute this code gst return this message "Internal GStreamer Error:
negotiation problem".
2007/3/19, Stefan Kost <ensonic@hora-obscura.de >:
>
> Hi Riccardo,
>
> you need to start you app using
> GST_DEBUG="*:3" ./app
>
> then it look for lines with WARN. A bit above should be the cause. If it
> does
> not show anything you can raise the log level ("*:4", it goes up to 5).
> The
> reason can be anything from missing conversion elements, to real bugs. It
> would
> help if you can tell what you are doing.
>
> Stefan
>
> Riccardo Corona wrote:
> > Hi,
> > someone knows the most common sources for the error "Internal data flow
> > error"?
> >
> > --
> > Riccardo Corona
> >
> >
> > ------------------------------------------------------------------------
> >
> >
> -------------------------------------------------------------------------
> > Take Surveys. Earn Cash. Influence the Future of IT
> > Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> > opinions on IT & business topics through brief surveys-and earn cash
> >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
--
Riccardo Corona
[Attachment #6 (text/html)]
I've solved the internal data flow error, it was a stupid mistake : simply miss \
an element into the "gst_element_link_many" function.<br>But now I've a \
nother problem.<br>I'm writing a gst application in which I'm trying to \
decode mpeg4 packet received from a net source, I've already done the methods to \
connect to the mpe4 source and get the compressed data, now I'm only find a way \
to decode this stream with gst.<br> I've the function to obtain a mpeg4 \
packet and I would use it into the fakesrc callback.
<br>Here some snippet of code, note that the callback actually do \
nothing;<br><br>............................<br><br>pipeline = gst_pipeline_new \
("pipeline");<br> fakesrc = gst_element_factory_make \
("fakesrc", "source"); <br> decoder = \
gst_element_factory_make ("ffdec_mpeg4","mpeg4-decoder"<div \
id="mb_2">);/*("theoradec", \
"theora-decoder");*/<br> videoscale = \
gst_element_factory_make ("videoscale", "scaling-video"); \
<br> par = gst_element_factory_make ("capsfilter", \
"dimens");<br><br> g_object_set (G_OBJECT(par), \
"caps",<br> gst_caps_new_simple( \
"video/x-raw-yuv",<br> \
"width", G_TYPE_INT, 720, <br> \
"height", G_TYPE_INT, 576,NULL),<br> NULL \
);<br><br> conv = gst_element_factory_make \
("ffmpegcolorspace", "converter");<br> \
videosink = gst_element_factory_make ("directdrawsink", \
"directdraw"); <br> if (!pipeline || !fakesrc || !decoder \
|| !videoscale || !par || !conv || !videosink) {<br> \
g_print ("One element could not be \
created\n");<br> return \
-1;<br> }<br><br> /* put all elements in a bin */ \
<br> gst_bin_add_many (GST_BIN (pipeline),<br> \
fakesrc, decoder,videoscale ,par, conv, \
videosink, NULL);<br><br> /* link together */<br> \
gst_element_link_many (fakesrc,decoder,videoscale, par, conv, videosink, NULL); \
<br><br>//this's for information message about errors<br> bus = \
gst_pipeline_get_bus (GST_PIPELINE (pipeline));<br> \
gst_bus_add_watch (bus, bus_call, loop);<br> gst_object_unref \
(bus);<br><br> g_object_set (G_OBJECT (fakesrc), \
<br> "signal-handoffs", \
TRUE,<br> "sizemax", 720 * 288 * \
2,<br> "sizetype", 2, \
NULL);<br><br>//cb_handoff is my callback<br> g_signal_connect \
(fakesrc, "handoff", G_CALLBACK (cb_handoff), pParam); \
<br><br>............................<br><br>When I execute this code gst return this \
message "Internal GStreamer Error: negotiation \
problem".</div><br><br><div><span class="gmail_quote">2007/3/19, Stefan Kost \
< <a href="mailto:ensonic@hora-obscura.de" target="_blank" onclick="return \
top.js.OpenExtLink(window,event,this)">ensonic@hora-obscura.de \
</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid \
rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi \
Riccardo,<br><br>you need to start you app using<br> GST_DEBUG="*:3" ./app \
<br><br>then it look for lines with WARN. A bit above should be the cause. If it \
does<br>not show anything you can raise the log level ("*:4", it goes up to \
5). The<br>reason can be anything from missing conversion elements, to real bugs. It \
would <br>help if you can tell what you are doing.<br><br>Stefan<br><br>Riccardo \
Corona wrote:<br>> Hi,<br>> someone knows the most common sources for the error \
"Internal data flow<br>> error"?<br>><br>> -- <br>> Riccardo \
Corona<br>><br>><br>> \
------------------------------------------------------------------------<br>><br>> \
-------------------------------------------------------------------------<br>> \
Take Surveys. Earn Cash. Influence the Future of IT <br>> Join \
SourceForge.net's Techsay panel and you'll get the chance to share \
your<br>> opinions on IT & business topics through brief surveys-and earn \
cash<br>> <a href="http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV" \
target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV</a><br>><br>><br>> \
------------------------------------------------------------------------<br>><br>> \
_______________________________________________ <br>> gstreamer-devel mailing \
list<br>> <a href="mailto:gstreamer-devel@lists.sourceforge.net" target="_blank" \
onclick="return top.js.OpenExtLink(window,event,this)">gstreamer-devel@lists.sourceforge.net</a><br>> \
<a href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel" \
target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> \
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</a><br><br></blockquote></div><br><br \
clear="all"><br>-- <br>Riccardo Corona
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic