About recording using a USB microphone from a Docker container(NGC Catalog)

Hi

I’m currently working on recording with a USB microphone in a Docker container.

I have successfully recorded using PyAudio from a Docker container by looking at the case below.

The Docker image I’m using from the NGC catalog is below.
I use l4t-pytorch because my goal is to use Whisper.
dustynv/l4t-pytorch:r35.1.0-pth1.13-py3

I have noticed the following cases.

I’m interested in recording using gst-launch-1.0 for this case.
I ran the below commands shown in this case.

$ gst-launch-1.0 nvcamerasrc num-buffers=300 ! omxh264enc ! queue ! mux. alsasrc num-buffers=1000 device="hw:2,0" ! voaacenc ! queue ! qtmux name=mux ! filesink location=a.mp4

However, in my environment the following error is output.

root@ubuntu:/whisper# gst-launch-1.0 nvcamerasrc num-buffers=300 ! omxh264enc ! queue ! mux. alsasrc num-buffers=1000 device="hw:2,0" ! voaacenc ! queue ! qtmux name=mux ! filesink location=a.mp4
(Argus) Error FileOperationFailed: Connecting to nvargus-daemon failed: No such file or directory (in src/rpc/socket/client/SocketClientDispatch.cpp, function openSocketConnection(), line 204)
(Argus) Error FileOperationFailed: Cannot create camera provider (in src/rpc/socket/client/SocketClientDispatch.cpp, function createCameraProvider(), line 106)
WARNING: erroneous pipeline: no element "nvcamerasrc"

Could you please tell me how to resolve this issue?
Thank you to everyone who helps me from now on.

Hi,

Do you have the CSI camera in your environment?
Is the same command works outside of the container?

Thanks.

@AastaLLL

Hi

I’m sorry, I made a big mistake.
I’m using a USB microphone, not a camera.
I just thought that {no element “nvcamerasrc”} was a command using the camera.

I connected a USB microphone to my Jetson Orin and ran $ arecoed -l.
The USB microphone can be found at “card 0: Microphone [USB Microphone], device 0: USB Audio [USB Audio]”.

Is it possible to record audio input from a USB microphone using gst-launch-1.0?
If possible, could you tell me the command?

echo@ubuntu:~/Desktop$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: Microphone [USB Microphone], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 0: tegra-dlink-0 XBAR-ADMAIF1-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 1: tegra-dlink-1 XBAR-ADMAIF2-1 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 2: tegra-dlink-2 XBAR-ADMAIF3-2 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 3: tegra-dlink-3 XBAR-ADMAIF4-3 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 4: tegra-dlink-4 XBAR-ADMAIF5-4 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 5: tegra-dlink-5 XBAR-ADMAIF6-5 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 6: tegra-dlink-6 XBAR-ADMAIF7-6 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 7: tegra-dlink-7 XBAR-ADMAIF8-7 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 8: tegra-dlink-8 XBAR-ADMAIF9-8 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 9: tegra-dlink-9 XBAR-ADMAIF10-9 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 10: tegra-dlink-10 XBAR-ADMAIF11-10 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 11: tegra-dlink-11 XBAR-ADMAIF12-11 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 12: tegra-dlink-12 XBAR-ADMAIF13-12 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 13: tegra-dlink-13 XBAR-ADMAIF14-13 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 14: tegra-dlink-14 XBAR-ADMAIF15-14 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 15: tegra-dlink-15 XBAR-ADMAIF16-15 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 16: tegra-dlink-16 XBAR-ADMAIF17-16 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 17: tegra-dlink-17 XBAR-ADMAIF18-17 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 18: tegra-dlink-18 XBAR-ADMAIF19-18 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 19: tegra-dlink-19 XBAR-ADMAIF20-19 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 20: tegra-dlink-20 ADSP-FE1-20 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: APE [NVIDIA Jetson AGX Orin APE], device 21: tegra-dlink-21 ADSP-FE2-21 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Hi,

Other tools that can do that.
Please check below topic:

Thanks.

@AastaLLL

Thank you for your advice.
It was very helpful.
I thought a lot,
But I’d still use PyAudio.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.