<div dir="ltr">I have an app where I'm sourcing data from appsink, modifying the data, and then sending it onto appsrc.<div><br></div><div style>However, for now I'm just using gst_app_sink_pull and gst_app_src_push to hand off the buffers.</div>
<div style><br></div><div style>My problem is that the color channels appear to be getting mixed up.</div><div style><br></div><div style>The data coming from appsink looks like ARBG</div><div style>and the data seems to be interpreted by appsrc as BGRA</div>
<div style><br></div><div style>I'm using videotestsrc and ximagesink and changing the patterns on videotestsrc and looking at the output. I also have some print statements to read the raw data pointers.</div><div style>
<br></div><div style>What would cause this? I'm setting the caps like this...</div><div style><br></div><div>caps = gst_caps_new_simple ("video/x-raw-rgb",</div><div> "format", G_TYPE_STRING, "RGB",</div>
<div> "width", G_TYPE_INT, 640,</div><div> "height", G_TYPE_INT, 480,</div><div> "framerate", GST_TYPE_FRACTION, 30000, 1001,</div><div> NULL);</div><div> gst_app_sink_set_caps( (GstAppSink*) gst_bin_get_by_name(GST_BIN(pipelineIn),app_sink_name) , caps);</div>
<div> gst_app_src_set_caps( (GstAppSrc*) gst_bin_get_by_name(GST_BIN(pipelineOut),app_src_name) , caps);</div><div style> </div></div>