X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=decklink_util.cpp;h=4b701abed3799448d2d6755652190a1c57769b77;hb=e08f8c2acf17cbdc4bd878edb1d779bf898aac76;hp=a6bdfd9cd65fe4831491a515346bd53322d600e7;hpb=41f99ea4da78522f8d3e25619d8e619e4ba7681e;p=nageru diff --git a/decklink_util.cpp b/decklink_util.cpp index a6bdfd9..4b701ab 100644 --- a/decklink_util.cpp +++ b/decklink_util.cpp @@ -4,6 +4,7 @@ #include #include "decklink_util.h" +#include "flags.h" using namespace bmusb; using namespace std; @@ -20,6 +21,7 @@ map summarize_video_modes(IDeckLinkDisplayModeIterator *mod mode.name = "Unknown mode"; } else { mode.name = mode_name; + free((char *)mode_name); } mode.autodetect = false; @@ -71,15 +73,18 @@ BMDVideoConnection pick_default_video_connection(IDeckLink *card, BMDDeckLinkAtt if (attribute_id == BMDDeckLinkVideoInputConnections) { fprintf(stderr, "Card %u has no input connections\n", card_index); } else { - fprintf(stderr, "Card %u has no outpu connectionss\n", card_index); + fprintf(stderr, "Card %u has no output connections\n", card_index); } exit(1); } - if (connection_mask & bmdVideoConnectionHDMI) { + if ((connection_mask & bmdVideoConnectionHDMI) && + global_flags.default_hdmi_input) { return bmdVideoConnectionHDMI; } else if (connection_mask & bmdVideoConnectionSDI) { return bmdVideoConnectionSDI; + } else if (connection_mask & bmdVideoConnectionHDMI) { + return bmdVideoConnectionHDMI; } else { // Fallback: Return lowest-set bit, whatever that might be. return connection_mask & (-connection_mask);