External audio in QGC

Hi all,
Any thoughts on whether external audio (eg USB microphone) can be recorded over the QGC video file? (stable or daily builds)

Cheers

1 Like

Hi @spotxuv,

As per our Software Components diagram, QGC expects an audio stream at UDP port 5601. By default that’s sent by Companion, which uses gstreamer to stream the camera audio, but it should be possible to change the device used for that, or turn it off (comment it out in .companion.rc) and instead set up an audio stream at the topside (e.g. from a USB microphone recording spoken comments or something).

If you’re wanting to keep the camera audio and add in a voiceover or something on top that would probably require doing a separate voiceover recording while operating (or afterwards), and then combining that in post with the existing video recording audio using ffmpeg or video editing software.

2 Likes

Have you considered using OBS or another screen recorder to record your screen while flying the ROV and using a USB microphone? You could even have QGroundControl recording too as a backup if your computer has enough processing power.

Great, thanks @EliotBR , will give it a try
@btrue yes I did try that, but the issue with using OBS is that there is a 0.5-1 sec video delay (regardless of settings used), but no audio delay, so the tracks are always out of sync.

Hi @spotxuv,

I was looking into how this is set up and apparently that specific connection in our docs is incorrect for current QGC, and audio input currently isn’t supported in QGC (my apologies for misleading you).

Companion does stream audio (from our Low-Light HD USB Camera) to UDP:5601 (so you can receive the stream yourself if you want), but QGC audio receiving was apparently only available back when Blue Robotics had a custom fork. We apparently tried to add it to mainstream QGC after we’d merged across, but that pull request was put on hold while waiting for some other changes elsewhere, and has since been closed. It’s not clear why the PR was closed, so I’ve asked about it in the open issue on supporting audio recording.


Having re-read your post, it’s also not clear whether you’re wanting to record audio from the vehicle (which I assumed was the case), or from the topside (e.g. for narrating operation). Regardless, the recording will unfortunately need to be done external to QGC, so there may be some adjustment required to get things synched, and/or some muxing to add the audio to the video file afterwards.

1 Like

hi goodmorning, i have the some issue, i need to add some comment in to the video without obs, how can i procede for change the device used, for use an usb microphone?

Hi @brov, welcome to the forum :slight_smile:

As above, QGroundControl doesn’t support audio recording at this stage. If you need to record spoken comments with a USB microphone then the simplest solution is likely to use any arbitrary sound recording program, then use a video editor to align the sound recording with the video afterwards.

It may be helpful to clap in front of the camera at the start of the video, so you can do the alignment more easily. That’s the same approach that’s used in movies, except they use a rigid clapboard for extra precision.

ok thankk you for your fast reply, and what do you think if i take the audio from microphone and i stream it over udp in channel 5601 is possible ?

As above,

If you stream your audio to UDP port 5601 you’ll still need to receive it and record it yourself (in a separate application), and align it with the video afterwards.

If you need to use QGroundControl for it then you can follow

but there’s no timeline on when that will be resolved, so if you need audio recording you’ll need to do it yourself (outside of QGC) for now.

1 Like

Does anyone have any tips/software for streaming or capturing camera audio from UDP:5601 in Win 10?

Hi @BillyBudd,

I believe it should be possible to receive and record an audio stream from VLC, ffmpeg, or gstreamer. Note that audio streaming is not yet supported on BlueOS, so if you’ve upgraded from our old Companion Software then there currently won’t be an audio stream available to receive.

1 Like

Thanks Eliotđź‘Ť only just recently purchased so have the blue os installed. Will just use a gopro and sync offline but planning to build/integrate a hydrophone eventually. Do you know if anyone has done this already with the bluerov2?

Hi Folks,
I’m aware there are conversations here about the hydrophones, and usb mics potentially in a subsea enclosure.

But I’d also like to point out how useful it would be if the user were able to record voice commentary over video in QGC for infrastructure inspections.

In ROV inspections of infrastructure (and in diver inspections) there is usually a voice track known as “commentary”. The inspector holds/wears a mic which they keep muted until they need to record some commentary.

Commentary will usually begin with a description of the structure they’re inspecting - “Starting Pile number 6F”,
then as the ROV is flying they might describe what they’re doing - “transiting to the west face”.
They will also describe any potential anomalies they see - “coating damage to the east face near the seabed”.

The commentary log provides a rich audit log which helps end users of the data understand how the ROV team and inspectors have completed the job. And when there are questions over the data gathered, it is very common to go back to the video, and see what the inspector was thinking at the time of data capture.

As we operate our BlueROVs, we often have one person flying the ROV, and another person trying to capture timestamps and notes (also working to keep the tether paid out and launch and recovery). It would be a massive improvement if we could just have the pilot record their voice over the videos in QGC (or cockpit). We could use a mic that has a hardware mute button, and carry out an inspection without somebody having to be taking notes of everything.

Would it ever be possible for QGC or cockpit to take in audio from a USB device connected to the ground control station, and combine it with the video being collected?

Hi @XYZEng -
I would agree that audio recording would be a nice built in feature. If you’d like to do this, a simple sound-recorder app on your computer could have the output recording file be synced to video in a basic editor to achieve the result you’d like? Obviously this is a lot more work…

1 Like

There’s some discussion on that in this Cockpit issue.

One option in the interim is to use something like OBS to record the audio together with either the whole screen (if you want the screen recorded), or just a little segment of the screen where the video recording button is, to help with finding the timestamps in the audio recording where the video recordings should line up. It may also be possible to feed the camera stream into OBS as well as your control station software, but I expect that would likely use additional resources, which may be undesirable for performance and/or battery life.

1 Like

Cheers folks,

I have considered using audacity to record audio and timesync seperately, but there is a bit of processing to do to timesync them, especially if we have 15-20 videos in a day of surveying.

I’m not a big fan of OBS recording, as it’s difficult to replicate the neat overlay (ass file) you get from a QGC recording. There also tends to be widgets in the way and I know I’ll get the correct aspect ratio when I record using QGC no matter the size of the window

I’ll keep an eye on the cockpit development though. I haven’t tried it yet as QGroundControl currently gives us 95% of what we need.

Thanks for the responses folks!