From: Helge Norberg Date: Fri, 8 Jan 2016 16:06:44 +0000 (+0100) Subject: Clarified logic around memcpy or not in Linux decklink consumer. X-Git-Tag: 2.1.0_Beta1~118 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=149552fc1baeb375695690d85f999dcb5007a78c;p=casparcg Clarified logic around memcpy or not in Linux decklink consumer. --- diff --git a/modules/decklink/consumer/decklink_consumer.cpp b/modules/decklink/consumer/decklink_consumer.cpp index c8492e653..e453e3338 100644 --- a/modules/decklink/consumer/decklink_consumer.cpp +++ b/modules/decklink/consumer/decklink_consumer.cpp @@ -185,13 +185,17 @@ public: { ref_count_ = 0; + bool dma_transfer_from_gl_buffer_impossible; + #if !defined(_MSC_VER) - // On Linux Decklink cannot DMA transfer from memory returned by glMapBuffer - needs_to_copy_ = will_attempt_dma; + // On Linux Decklink cannot DMA transfer from memory returned by glMapBuffer (at least on nvidia) + dma_transfer_from_gl_buffer_impossible = true; #else - // On Windows it does - needs_to_copy_ = false; + // On Windows it is possible. + dma_transfer_from_gl_buffer_impossible = false; #endif + + needs_to_copy_ = will_attempt_dma && dma_transfer_from_gl_buffer_impossible; } // IUnknown