- Posts: 7
- Joined: Wed Aug 11, 2021 6:30 am
- Real Name: King Tissy
Hello all,
I have a DeckLink 4k Extreme 12G - HDMI 2.0 capture card install in a PCIE gen3 x8 port, and OS is Windows 10, video card(NVIDIA RTX 2080ti). There I have 3 interfaces connected to other video cards' output ports(three NVIDIA RTX 2080ti), with those output ports configured to 3840x2160 @30hz RGB 8bpc.
I modified DeckLinkInputDevice::VideoInputFrameArrived in DeckLinkInputDevice.cpp in "Blackmagic DeckLink SDK 12.1" QuadPreview (Windows demo) project as follows, and compiled in release.
#Line 115
HRESULT DeckLinkInputDevice::VideoInputFrameArrived(IDeckLinkVideoInputFrame* /* videoFrame */, IDeckLinkAudioInputPacket* /* audioPacket */)
{
// Since this application only previews, everything is driven from IDeckLinkScreenPreviewCallback::DrawFrame
static int numRecv = 0;
numRecv ++;
std::wstring info = L"recv frame... numRecv:";
info += std::to_wstring(numRecv) + L"\n";
OutputDebugString(info.c_str());
return S_OK;
}
I use Dbgview.exe to check the debug info and found that only about 40 frames arrived per second(40 calls per second to this function). This means only about 13fps (40 frames /3 interfaces) were grabbed by each port, which is much lower than 30fps.
Any ideas?
Thank you in advance.
I have a DeckLink 4k Extreme 12G - HDMI 2.0 capture card install in a PCIE gen3 x8 port, and OS is Windows 10, video card(NVIDIA RTX 2080ti). There I have 3 interfaces connected to other video cards' output ports(three NVIDIA RTX 2080ti), with those output ports configured to 3840x2160 @30hz RGB 8bpc.
I modified DeckLinkInputDevice::VideoInputFrameArrived in DeckLinkInputDevice.cpp in "Blackmagic DeckLink SDK 12.1" QuadPreview (Windows demo) project as follows, and compiled in release.
#Line 115
HRESULT DeckLinkInputDevice::VideoInputFrameArrived(IDeckLinkVideoInputFrame* /* videoFrame */, IDeckLinkAudioInputPacket* /* audioPacket */)
{
// Since this application only previews, everything is driven from IDeckLinkScreenPreviewCallback::DrawFrame
static int numRecv = 0;
numRecv ++;
std::wstring info = L"recv frame... numRecv:";
info += std::to_wstring(numRecv) + L"\n";
OutputDebugString(info.c_str());
return S_OK;
}
I use Dbgview.exe to check the debug info and found that only about 40 frames arrived per second(40 calls per second to this function). This means only about 13fps (40 frames /3 interfaces) were grabbed by each port, which is much lower than 30fps.
Any ideas?
Thank you in advance.
- Attachments
-
- 微信图片_20210908163040.png (264.3 KiB) Viewed 2607 times