mirror of
https://github.com/outbackdingo/UltraGrid.git
synced 2026-03-21 19:40:24 +00:00
AJA: initial support for SDK 12.4
This commit is contained in:
16
configure.ac
16
configure.ac
@@ -449,6 +449,7 @@ AC_ARG_VAR([DVS_DIRECTORY], [Path to DVS installation.])
|
||||
AC_ARG_VAR([DELTACAST_DIRECTORY], [Placement of VideoMasterHD directory (Deltacast).])
|
||||
AC_ARG_VAR([BLUE_LATEST_SDK], [Placement of Bluefish444 SDK.])
|
||||
AC_ARG_VAR([NTV2_ROOT], [Directory to AJA NTV2 SDK (ends with ntv2projects).])
|
||||
AC_ARG_VAR([AJA_DIRECTORY], [Directory to AJA NTV2 SDK.])
|
||||
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
# X Window System
|
||||
@@ -885,7 +886,14 @@ AC_ARG_ENABLE(aja,
|
||||
[aja_req=$enableval],
|
||||
[aja_req=auto]
|
||||
)
|
||||
AJA_PATH=$NTV2_ROOT
|
||||
|
||||
if test -n "$NTV2_ROOT"; then
|
||||
AJA_PATH=$NTV2_ROOT/..
|
||||
fi
|
||||
|
||||
if test -n "$AJA_DIRECTORY"; then
|
||||
AJA_PATH=$AJA_DIRECTORY
|
||||
fi
|
||||
|
||||
AC_ARG_WITH(aja,
|
||||
[ --with-aja=DIR specify location of NTV2],
|
||||
@@ -894,15 +902,15 @@ AC_ARG_WITH(aja,
|
||||
|
||||
if test -n "$AJA_PATH"
|
||||
then
|
||||
AC_CHECK_FILES(${AJA_PATH}/../lib/libaja.a ${AJA_PATH}/../lib/libajastuff.a, FOUND_LIBAJA=yes, FOUND_LIBAJA=no)
|
||||
AC_CHECK_FILES(${AJA_PATH}/lib/libaja.a ${AJA_PATH}/lib/libajastuff.a, FOUND_LIBAJA=yes, FOUND_LIBAJA=no)
|
||||
fi
|
||||
|
||||
if test "$aja_req" != no -a "$FOUND_LIBAJA" = yes
|
||||
then
|
||||
aja=yes
|
||||
AJA_CXXFLAGS="-DAJALinux -DAJA_LINUX"
|
||||
AJA_INC="$AJA_INC -I${AJA_PATH}/classes -I${AJA_PATH}/../ajaapi -I${AJA_PATH}/includes -I${AJA_PATH}/democlasses"
|
||||
AJA_LIB="${AJA_PATH}/../lib/libaja.a ${AJA_PATH}/../lib/libajastuff.a"
|
||||
AJA_INC="$AJA_INC -I${AJA_PATH}/ntv2projects/classes -I${AJA_PATH}/ajaapi -I${AJA_PATH}/ntv2projects/includes -I${AJA_PATH}/ntv2projects/democlasses"
|
||||
AJA_LIB="${AJA_PATH}/lib/libaja.a ${AJA_PATH}/lib/libajastuff.a"
|
||||
AJA_CAP_OBJ="src/video_capture/aja.o"
|
||||
AC_DEFINE([HAVE_AJA], [1], [Build with AJA support])
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#include "video_capture.h"
|
||||
|
||||
#include "ajatypes.h"
|
||||
#include "ntv2boardscan.h"
|
||||
#include "ntv2devicescanner.h"
|
||||
#include "ntv2democommon.h"
|
||||
#include "ntv2capture.h"
|
||||
#include "ajastuff/common/videotypes.h"
|
||||
@@ -62,7 +62,7 @@
|
||||
#include "ajastuff/system/thread.h"
|
||||
|
||||
#include "ntv2utils.h"
|
||||
#include "ntv2boardfeatures.h"
|
||||
#include "ntv2devicefeatures.h"
|
||||
|
||||
#define NTV2_AUDIOSIZE_MAX (401 * 1024)
|
||||
|
||||
@@ -369,7 +369,11 @@ AJAStatus vidcap_state_aja::SetupVideo()
|
||||
|
||||
mInputChannel = ::NTV2InputSourceToChannel (mInputSource);
|
||||
if (NTV2_INPUT_SOURCE_IS_SDI (mInputSource))
|
||||
#if AJA_NTV2_SDK_VERSION_BEFORE(12,4)
|
||||
mTimeCodeSource = ::NTV2ChannelToTimecodeSource (mInputChannel);
|
||||
#else
|
||||
mTimeCodeSource = ::NTV2InputSourceToTimecodeIndex(mInputSource);
|
||||
#endif
|
||||
else if (NTV2_INPUT_SOURCE_IS_ANALOG (mInputSource))
|
||||
mTimeCodeSource = NTV2_TCSOURCE_LTC1;
|
||||
else
|
||||
@@ -469,7 +473,17 @@ AJAStatus vidcap_state_aja::SetupVideo()
|
||||
AJAStatus vidcap_state_aja::SetupAudio (void)
|
||||
{
|
||||
// Have the audio system capture audio from the designated device input...
|
||||
#if AJA_NTV2_SDK_VERSION_BEFORE(12,4)
|
||||
mDevice.SetAudioSystemInputSource (mAudioSystem, mInputSource);
|
||||
#else
|
||||
NTV2AudioSource audioSource (NTV2_AUDIO_EMBEDDED);
|
||||
if (NTV2_INPUT_SOURCE_IS_HDMI (mInputSource))
|
||||
audioSource = NTV2_AUDIO_HDMI;
|
||||
else if (NTV2_INPUT_SOURCE_IS_ANALOG (mInputSource))
|
||||
audioSource = NTV2_AUDIO_ANALOG;
|
||||
|
||||
mDevice.SetAudioSystemInputSource (mAudioSystem, audioSource, ::NTV2ChannelToEmbeddedAudioInput(mInputChannel));
|
||||
#endif
|
||||
|
||||
mMaxAudioChannels = ::NTV2BoardGetMaxAudioChannels (mDeviceID);
|
||||
mDevice.SetNumberAudioChannels (mMaxAudioChannels, NTV2InputSourceToAudioSystem(mInputSource));
|
||||
|
||||
Reference in New Issue
Block a user