Have been struggeling with ofxGstreamer on windows. I need to be able to receive a udp (possibly rtp) stream. For now I am trying to just play from a file.
Using gst-launch I can play the file, no problem: gst-launch-1.0 uridecodebin uri=file:///D:\hd.mp4 ! autovideosink.
When I try something similar in ofxGstreamer: gst.setPipeline("uridecodebin uri=file:///D:\hd.mp4 ", OF_PIXELS_RGB, true);
And then try to call gst.getPixels(); anywhere, I get the following types of errors: [ error ] ofGLUtils: ofGetGlTypeFromInternal(): unknown internal format 2, returning GL_UNSIGNED_BYTE [ error ] ofGLUtils: ofGetGLFormatFromInternal(): unknown internal format 2, returning GL_RGBA [ error ] ofPixels: image type not supported
How can I successfully get any data from gstreamer?
Hi @Arturo, thanks for your reply! Even with the ! videoconvert added, I get these: [ error ] ofGLUtils: ofGetGLFormatFromInternal(): unknown internal format 2, returning GL_RGBA [ error ] ofGLUtils: ofGetGlTypeFromInternal(): unknown internal format 2, returning GL_UNSIGNED_BYTE
For good measure: I found a workaround or maybe solution. I ended up using a different pipeline notation, and a different stream source, and this combination did not have the problems seen before. I do not know whether the new stream solved the problem, or the new notation did. Anyway, my working pipeline is: gst.setPipeline("udpsrc port=30120 !application/x-rtp, payload=96, encoding-name=H264 ! rtph264depay ! avdec_h264 ! videoconvert")