openframeworks_X64
openframeworks_X64 copied to clipboard
gstreamer error x64
Could you add few lines with explanation how to setup gstreamer? Thanks
hey,i think this branch still using the old version which is from here http://www.gstreamer.com/ however you can download 1.xx gst from http://gstreamer.freedesktop.org/data/pkg/windows/1.4.5/ install the x64 version gstreamer-1.0-devel-x86_64-1.4.5.msi and gstreamer-1.0-x86_64-1.4.5.msi be sure to install as complete version,check everything. after that copy the necessity files from gstreamer folder(the libs&include files) just replace it into the /libs/GStreamer folder.
add YOURGSTINSTALLPATH\1.0\x64\bin to your system environment path,i.e mine is J:\gstreamer\1.0\x64\bin
then you ready to using it player.setPlayer(ofPtr<ofGstVideoPlayer>(new ofGstVideoPlayer));
let me know if you still find troubles
Thank man! super useful tips. I gonna try and let you know if I found any trouble.
I installed both and I add in PATH of windows: C:\gstreamer\1.0\x86_64\bin\ . Also add in c++ folders the headers of the library in: openframeworks_X64-VS2013_X64\libs\GStreamer\include\gst (all folders) . But I get assert error when i try to make use in the code instance of new gstreamer like: player.setPlayer(ofPtr<ofGstVideoPlayer>(new ofGstVideoPlayer)). Any idea how to fix this? Error output is this one:
Debug Assertion Failed!
Program: C:\Windows\system32\MSVCP120D.dll File: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xstring Line: 1168
Expression: invalid null pointer
can you try with this new branch vs2013_x64_GST1.4.5? (will update later on) and since i'v added those two line in ofVideoPlayer.h so you don't need to using setPlayer method #define OF_VIDEO_PLAYER_GSTREAMER #undef OF_VIDEO_PLAYER_QUICKTIME have to using vpn to access here,in the mean time you can download file from http://pan.baidu.com/s/1hqkX8B6 with password: x113 (non english page,sorry can't find better place)and replaced it in libs also,you may need uncommon those lines in ofGstUtils.cpp #ifdef TARGET_WIN32 string gst_path = g_getenv("GSTREAMER_1_0_ROOT_X86"); putenv(("GST_PLUGIN_PATH_1_0=" + ofFilePath::join(gst_path, "lib\gstreamer-1.0") + ";.").c_str()); #endif
b'coz that's x86 path.
Thanks now compile and video it renders well!
I replace the libs you send and I add '_64' in the path: #ifdef TARGET_WIN32 string gst_path = g_getenv("GSTREAMER_1_0_ROOT_X86_64"); putenv(("GST_PLUGIN_PATH_1_0=" + ofFilePath::join(gst_path, "lib\gstreamer-1.0") + ";.").c_str()); #endif
But I got couple strange Gstreamer warnings:
- failed to load plugin glut32.dll
- failed to load plugin Zlib.dll
Both say %1 is not valid Win32 application
.
ok,but does app running? i'll testing it after holiday.
ok,i found the what's the problem is. don't using the ofAppGlutWindow in main.cpp,leave it as default which is using ofAppGLFWWindow.
and in my case i have to uncommon #ifdef TARGET_WIN32 string gst_path = g_getenv("GSTREAMER_1_0_ROOT_X86"); putenv(("GST_PLUGIN_PATH_1_0=" + ofFilePath::join(gst_path, "lib\gstreamer-1.0") + ";.").c_str()); #endif
and last thing is create new variable called GST_PLUGIN_SYSTEM_PATH_1_0 and copy your gstreamer-1.0 path to it,i.e D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0 in System Variables panel
should be working without any issue.