Playback from an RTSP stream? (oF 0.9.8, Windows, 64bit)


#1

I’m looking into this now, I remember there were several ways, gstreamer for instance. But as I need it to be 64 bits I was wondering if someone knows of a common way to do this with the current oF


#2

gstreamer will work in windows 64bits in visual studio without problem using https://github.com/arturoc/ofxGStreamer


#3

Thanks @arturo, using the PG to add ofxGStreamer to my project it seems to point to the wrong paths for the ofGst* files:

		<ClCompile Include="..\..\..\addons\ofxGStreamer\src\ofxGStreamer.cpp" />
		<ClCompile Include="..\..\..\addons\ofxGStreamer\libs\openFrameworks\video\ofGstUtils.cpp" />
		<ClCompile Include="..\..\..\addons\ofxGStreamer\libs\openFrameworks\video\ofGstVideoPlayer.cpp" />
		<ClCompile Include="..\..\..\addons\ofxGStreamer\libs\openFrameworks\video\ofGstVideoGrabber.cpp" />

This was using the official 0.9.8 download. I fixe dthat by hand but now I’m getting unreferenced external symbols. Will look into it, might be related with PG failing to add the addon.


#4

ah, yeah there was a problem with the PG and this addon that i fixed some days ago so it’ll only work with the nightly builds


#5

you can probably just use the PG from the nightly builds with 0.9.8 instead if you want to use 0.9.8


#6

Yup that did it :smiley:

I had to change 2 things:

In ofGstUtils.cpp, I changed this line

string gst_path = g_getenv("GSTREAMER_1_0_ROOT_X86");

to this one

string gst_path = g_getenv("GSTREAMER_1_0_ROOT_X86_64"); 

Also, I had to remove two lines from ofGstVideoPlayer::createPipeline, these:

	#ifdef TARGET_WIN32
		//GstElement *audioSink = gst_element_factory_make("directsoundsink", NULL);
		//g_object_set (G_OBJECT(gstPipeline),"audio-sink",audioSink,(void*)NULL);
	#endif

because of some driver missing, maybe codecs or something to do with directshow. I don’t need audio in any case.


#7

Hi there,
I have the same problem here with OF098 (downloaded 2 weeks ago) on OS X 10.11.6.
Basically I simply try to play the “fingers.mov” file following the ofxGStreamer example with a project built with PG and it throws the " ‘gst/gst.h’ file not found " fatal error.
I installed the packages as described by Arturo on github.
But I noticed I couldn’t rename the assert.h files as advised because : no such file or directory.
Any clue to make it compile?


#8

renaming assert might not be needed anymore with the latest versions of gstreamer but there’s a bug in the 0.9.8 project generator that won’t allow to create a correct project for this addon. if you use the nightly builds or even just the nightly builds’ project generator with 0.9.8 it should work


#9

Thanks for the fast reply.
So I tried at first to create a new project with the nightly built PG in my actual OF98 folder but I had the same error message about the gst.h file.
Then I dowloaded the entire latest OF nightly built and generate the new project in this directory and it worked !
I wanted to play then from an url from youtube I have already tried with the VLC media player but without crashing it didn’t work : “Secure connection setup failed.” from gstHandleMessage().
So I guess this is a port issue or maybe I have to check the firewall.


#10

Hello,

Facing the same ‘gst/gst.h’ file not found around here (Osx 10.11.6, XCode Version 7.3.1, and nightly build oF downloaded from the website).

I also have installed the required packages according to the instructions in: https://github.com/arturoc/ofxGStreamer

Am I missing something?


#11

can you check if this directory exists in your system?

/Library/Frameworks/GStreamer.framework/Headers


#12

Thanks a lot for your quick response, Arturo!

/Library/Frameworks/GStreamer.framework/Headers

Hm, funny. The directory exists but the header is actually just a shortcut. And I couldn’t find the originals.

Maybe my installation is damaged for some reason?


#13

could be, you could try reinstalling it, what do you get with ls -la /Library/Frameworks/GStreamer.framework/Headers


#14

Result:


#15

and ls -la /Library/Frameworks/GStreamer.framework/Headers/Versions/Current/Headers


#16

ls: /Library/Frameworks/GStreamer.framework/Headers/Versions/Current/Headers: No such file or directory


#17

I reinstalled Gstreamer packages and the header files appeared! Everything is working fine now!

Thanks a lot, Arturo! It’s not the first time you’ve been really helpful to me! :slight_smile: