[gst-devel] Another GstAppSrc Question

John Stowers john.stowers.lists at gmail.com
Thu Dec 2 11:54:41 CET 2010


On Thu, Dec 2, 2010 at 10:52 PM, Prabhulinga Swamy B S
<prabhulingaswamy.bs at globaledgesoft.com> wrote:
> Hi John,
>
> You can just leave out the filter you are doing between 'appsrc' and
> 'ffmpegcolorspace'.
> That is not required since you are setting the caps of appsrc, that fine.
> Have you tried like this?

Yeah. The solution was to add a videoparse filter (noted in another reply).

Thanks,

John

>
> app->pipeline = gst_parse_launch("appsrc name=mysource ! "
>        " ffmpegcolorspace ! videoscale method=1 ! theoraenc bitrate=150 ! udpsink "
>        " host=127.0.0.1 port=1234", NULL);
>
>
> Prabhu
>
>
>
> On 12/02/2010 11:28 AM, John Stowers wrote:
>> Hi All,
>>
>> I see quite a few similar questions to these on the gst-devel mailing
>> list, but none of them allowed me to get past my problem.
>>
>> I'm building a streaming video thing using gstreamer, the prototype
>> (works fine) is
>>
>> sender:
>> gst-launch -v videotestsrc !
>> video/x-raw-rgb,width=640,height=480,bpp=24,depth=24 !
>> ffmpegcolorspace ! videoscale method=1 ! theoraenc bitrate=150 ! udpsink
>> host=127.0.0.1 port=1234
>>
>> viewer:
>> gst-launch -v udpsrc port=1234 ! theoradec ! autovideosink
>>
>> I have been translating it to C starting with the appsrc-stream example.
>> I can't get it to negotiate the caps I set properly. The relevant
>> warning messages are;
>>
>> basetransform
>> gstbasetransform.c:1047:gst_base_transform_acceptcaps:<videoscale0>
>> transform could not transform video/x-raw-rgb, bpp=(int)24,
>> depth=(int)24, width=(int)640, height=(int)480 in anything we support
>> 0:00:00.178133697 10789  0x829a8d0 WARN           basetransform
>> gstbasetransform.c:1144:gst_base_transform_setcaps:<ffmpegcsp0>  FAILED
>> to configure caps<ffmpegcsp0:src>  to accept video/x-raw-yuv,
>> format=(fourcc)I420, framerate=(fraction)1/2147483647, width=(int)640,
>> height=(int)480
>>
>> The relevant code is;
>>
>> app->pipeline = gst_parse_launch("appsrc name=mysource !
>> video/x-raw-rgb,width=640,height=480,bpp=24,depth=24 !
>> ffmpegcolorspace ! videoscale method=1 ! theoraenc bitrate=150 ! udpsink
>> host=127.0.0.1 port=1234", NULL);
>>
>> <snip>
>>
>> caps = gst_caps_new_simple ("video/x-raw-rgb",
>>      "bpp",G_TYPE_INT,24,
>>      "depth",G_TYPE_INT,24,
>>       "width", G_TYPE_INT, 640,
>>       "height", G_TYPE_INT, 480,
>>       NULL);
>> gst_app_src_set_caps(GST_APP_SRC(app->appsrc), caps);
>>
>> Full source code is here
>> http://pastebin.com/PJuGVJLC
>>
>> Any pointers?
>>
>> John
>>
>>
>>
>
> ------------------------------------------------------------------------------
> Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
> Tap into the largest installed PC base & get more eyes on your game by
> optimizing for Intel(R) Graphics Technology. Get started today with the
> Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
> http://p.sf.net/sfu/intelisp-dev2dev
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>




More information about the gstreamer-devel mailing list