no audio while using "DeckLink Quad HDMI Recorder" capturing

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

ninesunqian

  • Posts: 2
  • Joined: Fri Jan 03, 2020 9:55 am
  • Real Name: Xuguang Wang

no audio while using "DeckLink Quad HDMI Recorder" capturing

PostFri Jan 03, 2020 10:04 am

Hi,
I use "DeckLink Quad HDMI Recorder" capturing hdmi signals.
If I capture one port signal, everything is OK.
If I capture two ports, the audio of one hdmi signal is mute after about an hours.
If I capture three ports, the program will hang on BMDConfig::GetSelectedDeckLink or IDeckLink::Release.

I use Linux/Samples/Capture in sdk 11.4 to detect the signal format, and use ffmpeg 4.2.1 to capture.
The code of modified Capture and ffmpeg starting script is in the attachment (Capture.tar.gz).

the os and kernel is "centos 7.4" and "3.10.0-1062.9.1.el7.x86_64"

I don't know what the problem is, and how to resolve it, and need help.

Sincerely looking forward to your reply, Thank you!
Attachments
Capture.tar.gz
(7.53 KiB) Downloaded 136 times
Offline

ninesunqian

  • Posts: 2
  • Joined: Fri Jan 03, 2020 9:55 am
  • Real Name: Xuguang Wang

Re: no audio while using "DeckLink Quad HDMI Recorder" captu

PostTue Jan 07, 2020 2:59 am

I fixed an audio bug of ffmpeg, but the problem still exists. the patch is
diff --git a/libavdevice/decklink_dec.cpp b/libavdevice/decklink_dec.cpp
index 4da9122..3db7bec 100644
--- a/libavdevice/decklink_dec.cpp
+++ b/libavdevice/decklink_dec.cpp
@@ -902,6 +902,10 @@ HRESULT decklink_input_callback::VideoInputFrameArrived(
pkt.stream_index = ctx->audio_st->index;
pkt.data = (uint8_t *)audioFrameBytes;

+ pkt.buf = av_buffer_create(pkt.data, pkt.size, decklink_object_free, audioFrame, 0);
+ if (pkt.buf)
+ audioFrame->AddRef();
+
if (avpacket_queue_put(&ctx->queue, &pkt) < 0) {
++ctx->dropped;
}

Return to Software Developers

Who is online

Users browsing this forum: Julusian and 22 guests