Is it possible to use the gstreamer sdk with c#?
eldon wong
ewong at verifeye.com
Mon Aug 13 05:57:42 PDT 2012
Is it possible to incorporate gstreamer SDK into a DLL that can be called from
a .NET app?
There was no problem compiling the application code along with the some of the
gstreamer DLLs
into a library. __declspec(dllexport) was added to expose the external
calling interface
for a DLL.
#include <stdio.h>
#include "stdafx.h"
#include "testProto.h"
extern "C"
{
__declspec(dllexport) int Sum(int a, int b)
{
return CTestProto::SetVideoCaps( a, b );
}
}
The header file looked like this:
#pragma once
class CTestProto
{
public:
CTestProto();
static void TestThis();
static int SetVideoCaps( int nWidth, int nHeight ) ;
};
This code sample worked when called from a WPF .net application
int CTestProto::SetVideoCaps( int nWidth, int nHeight )
{
GstCaps *caps;
return nWidth + nHeight;
}
This DID NOT!!!
When the sample was modified by adding gst_video_format_new_caps(...), failure
occurred during run-time.
void CTestProto::SetVideoCaps( int nWidth, int nHeight )
{
GstCaps *caps;
caps = gst_video_format_new_caps (GST_VIDEO_FORMAT_RGB, nWidth, nHeight, 0,
1, 3, 3);
}
An error appears : BadImageFormatException was unhandled
An attempt was made to load a program with an incorrect format. ( Exception
from HRESULT: 0x8007000B )
The GUI-based code will be WPF-based, I was planning to pass the Window Handle
of the WPF application to the Gstreamer pipeline written in Native C++ code.
Is it possible to wrap the gst... calls so that the DLL can be used?
If the only option is the use of the gstreamer-sharp wrapper, I am unsure how
to proceed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120813/ed5d9741/attachment.html>
More information about the gstreamer-devel
mailing list