Hey all
I'm attempting to write an application that will send a YUV (YUY2) stream out on udp and have gstreamer take it in and do some precessing. For starters, I'm trying to simply view the output with: gst-launch -v udpsrc port=1234 buffer-size=0 ! video/x-raw-yuv,format=\(fourcc\)YUY2,width=640,height=480,framerate=25/1 ! ffmpegcolorspace ! xvimagesink sync=false Only problem is I don't know how the stream should be formated. All I get is a green window with a few garbled rows of pixels at the top. I'm writing out YUYV, where each part one is a 8bit uint for YUYV being a full 32 bits. Are there some sort of header information that need to be sent along with this? Is there a site that details the format of the stream, better yet as it pertains to a UDP stream? Thanks ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
On Tue, Nov 11, 2008 at 04:23:04PM -0500, OB Lutz wrote:
> Hey all > > I'm attempting to write an application that will send a YUV (YUY2) > stream out on udp and have gstreamer take it in and do some > precessing. For starters, I'm trying to simply view the output with: > > gst-launch -v udpsrc port=1234 buffer-size=0 ! > video/x-raw-yuv,format=\(fourcc\)YUY2,width=640,height=480,framerate=25/1 > ! ffmpegcolorspace ! xvimagesink sync=false > > Only problem is I don't know how the stream should be formated. All I > get is a green window with a few garbled rows of pixels at the top. > I'm writing out YUYV, where each part one is a 8bit uint for YUYV > being a full 32 bits. Are there some sort of header information that > need to be sent along with this? Is there a site that details the > format of the stream, better yet as it pertains to a UDP stream? The obvious problem is that 640x480x2 = 614400, which is much larger than the largest UDP packet size. So you'll have to do some sort of framing to get raw video into UDP packets. There aren't really any standards or examples to go by here -- people generally don't send raw video over the network. One simple solution would be to use GDP (GStreamer Data Protocol), but that's GStreamer specific, and would require GStreamer on both ends. dave... ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
I'm sending out data in 512byte chunks, so max UDP size shouldnt be an
issue.Actually, I'm not sending it over the network, jfrom my app to gstreamer on the same machine. Using the udpsource seemed like the fastest way to go about moving the YUV sample to gstreamer. On Tue, Nov 11, 2008 at 6:53 PM, David Schleef <[hidden email]> wrote: > On Tue, Nov 11, 2008 at 04:23:04PM -0500, OB Lutz wrote: >> Hey all >> >> I'm attempting to write an application that will send a YUV (YUY2) >> stream out on udp and have gstreamer take it in and do some >> precessing. For starters, I'm trying to simply view the output with: >> >> gst-launch -v udpsrc port=1234 buffer-size=0 ! >> video/x-raw-yuv,format=\(fourcc\)YUY2,width=640,height=480,framerate=25/1 >> ! ffmpegcolorspace ! xvimagesink sync=false >> >> Only problem is I don't know how the stream should be formated. All I >> get is a green window with a few garbled rows of pixels at the top. >> I'm writing out YUYV, where each part one is a 8bit uint for YUYV >> being a full 32 bits. Are there some sort of header information that >> need to be sent along with this? Is there a site that details the >> format of the stream, better yet as it pertains to a UDP stream? > > The obvious problem is that 640x480x2 = 614400, which is much larger > than the largest UDP packet size. So you'll have to do some sort > of framing to get raw video into UDP packets. There aren't really > any standards or examples to go by here -- people generally don't > send raw video over the network. > > One simple solution would be to use GDP (GStreamer Data Protocol), > but that's GStreamer specific, and would require GStreamer on both > ends. > > > > dave... > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
On Tue, Nov 11, 2008 at 07:36:36PM -0500, OB Lutz wrote:
> I'm sending out data in 512byte chunks, so max UDP size shouldnt be an > issue.Actually, I'm not sending it over the network, jfrom my app to > gstreamer on the same machine. Using the udpsource seemed like the > fastest way to go about moving the YUV sample to gstreamer. Then it is probably sufficient to use videoparse to reframe the raw data stream from udpsrc into a video stream. Of course, you are still losing timing information, as well as size, frame rate, etc. dave... ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
In reply to this post by ob.lutz
On Tue, 2008-11-11 at 16:23 -0500, OB Lutz wrote:
> Hey all > > I'm attempting to write an application that will send a YUV (YUY2) > stream out on udp and have gstreamer take it in and do some > precessing. For starters, I'm trying to simply view the output with: > > gst-launch -v udpsrc port=1234 buffer-size=0 ! > video/x-raw-yuv,format=\(fourcc\)YUY2,width=640,height=480,framerate=25/1 > ! ffmpegcolorspace ! xvimagesink sync=false You could use the raw video rtp (de)pay loaders together with udp, like this: gst-launch videotestsrc ! rtpvrawpay ! udpsink and gst-launch udpsrc caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, depth=(string)8, width=(string)320, height=(string)240, colorimetry=(string)SMPTE240M" ! rtpvrawdepay ! xvimagesink YUYV is unfortunatly not a supported format for RFC 4175 but UYVY is. Wim > > Only problem is I don't know how the stream should be formated. All I > get is a green window with a few garbled rows of pixels at the top. > I'm writing out YUYV, where each part one is a 8bit uint for YUYV > being a full 32 bits. Are there some sort of header information that > need to be sent along with this? Is there a site that details the > format of the stream, better yet as it pertains to a UDP stream? > > Thanks > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Got everything working with the videoparse and switching to a
tcpserversink (with udpsink packets were either dropped or swapped, oddsince its all the same machine...) Thanks all! On Wed, Nov 12, 2008 at 5:05 AM, Wim Taymans <[hidden email]> wrote: > On Tue, 2008-11-11 at 16:23 -0500, OB Lutz wrote: >> Hey all >> >> I'm attempting to write an application that will send a YUV (YUY2) >> stream out on udp and have gstreamer take it in and do some >> precessing. For starters, I'm trying to simply view the output with: >> >> gst-launch -v udpsrc port=1234 buffer-size=0 ! >> video/x-raw-yuv,format=\(fourcc\)YUY2,width=640,height=480,framerate=25/1 >> ! ffmpegcolorspace ! xvimagesink sync=false > > You could use the raw video rtp (de)pay loaders together with udp, like > this: > > gst-launch videotestsrc ! rtpvrawpay ! udpsink > > and > > gst-launch udpsrc caps="application/x-rtp, media=(string)video, > clock-rate=(int)90000, encoding-name=(string)RAW, > sampling=(string)YCbCr-4:2:2, depth=(string)8, width=(string)320, > height=(string)240, colorimetry=(string)SMPTE240M" ! rtpvrawdepay ! > xvimagesink > > YUYV is unfortunatly not a supported format for RFC 4175 but UYVY is. > > Wim > >> >> Only problem is I don't know how the stream should be formated. All I >> get is a green window with a few garbled rows of pixels at the top. >> I'm writing out YUYV, where each part one is a 8bit uint for YUYV >> being a full 32 bits. Are there some sort of header information that >> need to be sent along with this? Is there a site that details the >> format of the stream, better yet as it pertains to a UDP stream? >> >> Thanks >> >> ------------------------------------------------------------------------- >> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge >> Build the coolest Linux based applications with Moblin SDK & win great prizes >> Grand prize is a trip for two to an Open Source event anywhere in the world >> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >> _______________________________________________ >> gstreamer-devel mailing list >> [hidden email] >> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |