From 1c73e77e3260458e6af63b16c8a83e88f6bbd0fd Mon Sep 17 00:00:00 2001 From: David Schleef Date: Sun, 21 Aug 2011 18:44:43 -0700 Subject: [PATCH] decklink: fix compilation on Linux --- sys/decklink/Makefile.am | 11 ++++++++--- sys/decklink/capture.cpp | 3 +-- sys/decklink/capture.h | 6 +----- sys/decklink/gstdecklink.h | 7 +++++-- sys/decklink/gstdecklinksink.cpp | 13 +++++-------- sys/decklink/gstdecklinksink.h | 1 - sys/decklink/gstdecklinksrc.h | 1 - 7 files changed, 20 insertions(+), 22 deletions(-) diff --git a/sys/decklink/Makefile.am b/sys/decklink/Makefile.am index c84d871264..cb13a8aceb 100644 --- a/sys/decklink/Makefile.am +++ b/sys/decklink/Makefile.am @@ -17,13 +17,18 @@ libgstdecklink_la_SOURCES = \ gstdecklinksink.cpp \ gstdecklink.cpp \ capture.cpp \ - DeckLinkAPIDispatch.cpp + linux/DeckLinkAPIDispatch.cpp noinst_HEADERS = \ gstdecklink.h \ gstdecklinksrc.h \ gstdecklinksink.h \ capture.h \ - DeckLinkAPI.h \ - LinuxCOM.h + linux/DeckLinkAPI.h \ + linux/LinuxCOM.h + +EXTRA_DIST = \ + win/DeckLinkAPI.h \ + win/DeckLinkAPIDispatch.cpp \ + win/DeckLinkAPI_i.c diff --git a/sys/decklink/capture.cpp b/sys/decklink/capture.cpp index 46c147dd9b..bc3d9e0875 100644 --- a/sys/decklink/capture.cpp +++ b/sys/decklink/capture.cpp @@ -33,7 +33,6 @@ #include "gstdecklinksrc.h" -#include "DeckLinkAPI.h" #include "capture.h" #define GST_CAT_DEFAULT gst_decklink_src_debug_category @@ -99,7 +98,7 @@ HRESULT if (g_timecodeFormat != 0) { IDeckLinkTimecode *timecode; if (videoFrame->GetTimecode (g_timecodeFormat, &timecode) == S_OK) { - timecode->GetString ((COMSTR_T)&timecodeString); + timecode->GetString (&timecodeString); CONVERT_COM_STRING (timecodeString); } } diff --git a/sys/decklink/capture.h b/sys/decklink/capture.h index 384326c480..c501616d7d 100644 --- a/sys/decklink/capture.h +++ b/sys/decklink/capture.h @@ -1,11 +1,7 @@ #ifndef __CAPTURE_H__ #define __CAPTURE_H__ -#include "DeckLinkAPI.h" - -extern "C" { - IDeckLinkIterator* CreateDeckLinkIteratorInstance (void); -}; +#include "gstdecklink.h" class DeckLinkCaptureDelegate : public IDeckLinkInputCallback { diff --git a/sys/decklink/gstdecklink.h b/sys/decklink/gstdecklink.h index f2d8f836e9..e69d14bb82 100644 --- a/sys/decklink/gstdecklink.h +++ b/sys/decklink/gstdecklink.h @@ -21,9 +21,12 @@ #define _GST_DECKLINK_H_ #include -#include "DeckLinkAPI.h" +#ifdef G_OS_UNIX +#include "linux/DeckLinkAPI.h" +#endif -#ifdef _MSC_VER +#ifdef G_OS_WIN32 +#include "win/DeckLinkAPI.h" #include diff --git a/sys/decklink/gstdecklinksink.cpp b/sys/decklink/gstdecklinksink.cpp index 288260e422..9948048bdc 100644 --- a/sys/decklink/gstdecklinksink.cpp +++ b/sys/decklink/gstdecklinksink.cpp @@ -40,9 +40,6 @@ #include "gstdecklinksink.h" #include -extern "C" { - IDeckLinkIterator* CreateDeckLinkIteratorInstance (void); -}; GST_DEBUG_CATEGORY_STATIC (gst_decklink_sink_debug_category); #define GST_CAT_DEFAULT gst_decklink_sink_debug_category @@ -1086,10 +1083,8 @@ HRESULT Output::ScheduledPlaybackHasStopped () HRESULT Output::RenderAudioSamples (bool preroll) { - unsigned long - samplesWritten; - GstBuffer * - buffer; + uint32_t samplesWritten; + GstBuffer * buffer; // guint64 samplesToWrite; @@ -1099,7 +1094,9 @@ HRESULT Output::RenderAudioSamples (bool preroll) // running = true; } else { g_mutex_lock (decklinksink->audio_mutex); - decklinksink->output->ScheduleAudioSamples (GST_BUFFER_DATA (decklinksink->audio_buffer), GST_BUFFER_SIZE (decklinksink->audio_buffer) / 4, // 2 bytes per sample, stereo + decklinksink->output->ScheduleAudioSamples ( + GST_BUFFER_DATA (decklinksink->audio_buffer), + GST_BUFFER_SIZE (decklinksink->audio_buffer) / 4, // 2 bytes per sample, stereo 0, 0, &samplesWritten); buffer = diff --git a/sys/decklink/gstdecklinksink.h b/sys/decklink/gstdecklinksink.h index ba71722aaf..b5f07005a4 100644 --- a/sys/decklink/gstdecklinksink.h +++ b/sys/decklink/gstdecklinksink.h @@ -22,7 +22,6 @@ #include #include "gstdecklink.h" -#include "DeckLinkAPI.h" G_BEGIN_DECLS diff --git a/sys/decklink/gstdecklinksrc.h b/sys/decklink/gstdecklinksrc.h index 9fcfa7c651..69dea49f1e 100644 --- a/sys/decklink/gstdecklinksrc.h +++ b/sys/decklink/gstdecklinksrc.h @@ -22,7 +22,6 @@ #include #include "gstdecklink.h" -#include "DeckLinkAPI.h" G_BEGIN_DECLS GST_DEBUG_CATEGORY_EXTERN (gst_decklink_src_debug_category);