Added initial gstreamer audio playback.

x86 might not work due to misconfiguration because I could not test it since acinerella is broken in x86 currenty. Gstreamer video support is yet to follow.
Please report back any bugs you experience. To compile you will need Visual C++, I hope all files are included
This commit is contained in:
Stephan Sundermann committed 2013-02-09 23:32:02 +01:00
1 parent 8a11b0eff0
commit e653ac87a2
1326 files changed
+154559 -4

No files matched your search

+44
View File
@@ -0,0 +1,44 @@
#pragma once
#include <string>
#include "gst/gst.h"
#define DllExport extern "C" __declspec(dllexport)
using namespace std;
typedef void (__stdcall * LogCallback)(const char* text);
static LogCallback Log;
DllExport void SetLogCallback(LogCallback Callback);
DllExport bool Init();
DllExport void SetGlobalVolume(float Volume);
DllExport int GetStreamCount(void);
DllExport void CloseAll(void);
//Stream handling
DllExport int Load(const wchar_t* Media);
DllExport int LoadPrescan(const wchar_t* Media, bool Prescan);
DllExport void Close(int Stream);
DllExport void Play(int Stream);
DllExport void PlayLoop(int Stream, bool Loop);
DllExport void Pause(int Stream);
DllExport void Stop(int Stream);
DllExport void Fade(int Stream, float TargetVolume, float Seconds);
DllExport void FadeAndPause(int Stream, float TargetVolume, float Seconds);
DllExport void FadeAndStop(int Stream, float TargetVolume, float Seconds);
DllExport void SetStreamVolume(int Stream, float Volume);
DllExport void SetStreamVolumeMax(int Stream, float Volume);
DllExport float GetLength(int Stream);
DllExport float GetPosition(int Stream);
DllExport bool IsPlaying(int Stream);
DllExport bool IsPaused(int Stream);
DllExport bool IsFinished(int Stream);
DllExport void SetPosition(int Stream, float Position);
DllExport void Update();
void LogError(const char* msg);