From afc719a65d73b8866392e4de90837cf2a56e8743 Mon Sep 17 00:00:00 2001 From: Dan Dennedy Date: Tue, 31 May 2011 21:55:38 -0700 Subject: [PATCH] Let decklink run forever. Also fix setting resource property. --- src/modules/decklink/producer_decklink.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/modules/decklink/producer_decklink.cpp b/src/modules/decklink/producer_decklink.cpp index 0645bee4..f4ab5da2 100644 --- a/src/modules/decklink/producer_decklink.cpp +++ b/src/modules/decklink/producer_decklink.cpp @@ -22,6 +22,7 @@ #include #include #include +#include #include "DeckLinkAPI.h" class DeckLinkProducer @@ -383,15 +384,19 @@ mlt_producer producer_decklink_init( mlt_profile profile, mlt_service_type type, if ( decklink->open( profile, arg? atoi( arg ) : 0 ) ) { producer = decklink->getProducer(); + mlt_properties properties = MLT_PRODUCER_PROPERTIES( producer ); // Set callbacks producer->close = (mlt_destructor) producer_close; producer->get_frame = get_frame; // Set properties - mlt_properties_set( MLT_PRODUCER_PROPERTIES( producer ), "resource", arg ); - mlt_properties_set_int( MLT_PRODUCER_PROPERTIES( producer ), "channels", 2 ); - mlt_properties_set_int( MLT_PRODUCER_PROPERTIES( producer ), "buffer", 25 ); + mlt_properties_set( properties, "resource", arg? arg : "0" ); + mlt_properties_set_int( properties, "channels", 2 ); + mlt_properties_set_int( properties, "buffer", 25 ); + mlt_properties_set_int( properties, "length", INT_MAX ); + mlt_properties_set_int( properties, "out", INT_MAX - 1 ); + mlt_properties_set( properties, "eof", "loop" ); // Start immediately if ( !decklink->start( profile ) ) -- 2.39.2