#include <atomic>
using std::atomic;
+/* Include internal.h first to avoid conflict between winsock.h (used by
+ * DeckLink headers) and winsock2.h (used by libavformat) in MSVC++ builds */
+extern "C" {
+#include "libavformat/internal.h"
+}
+
#include <DeckLinkAPI.h>
extern "C" {
#include "libavformat/avformat.h"
-#include "libavformat/internal.h"
#include "libavutil/imgutils.h"
}