0

I'm working in FPGA device, which can provide raw video and pcm data. I'm using v4l2 and alsa framework for video and audio respectively. Audio flow path is using ALSA framework and video flow path is using v4l2 framework. Device can generate different audio sample rate such as 44.1KHz, 48KHz and 96KHz.

VLC can render video and audio smoothly with 48KHz of sample rate, 2 channel and video with FHD(1920x1080).

When device is set with 44.1KHz and 96KHz then vlc audio is breaking.I'm using vlc version as 2.2.8 and there is no way to inform how to set the sample rate for audio device.

Below are queries:

1) When device is generating audio sample rate of 44.1KHz then how to inform VLC that use 44.1KHz sample rate(same is for 96KHz)

2) what is command for vlc with video and audio device setting for width=1920 height= 1080 colorspace = RV24, channel =2,sample rate 44.1KHz. Assume video device is (/dev/video0 and audio device is hw:1.0)

Regards,

Kulkarni.

  • So did you write your own ALSA driver for the FPGA device? – CL. Nov 26 '18 at 14:40
  • Yes. ALSA driver is to get PCM data from FPGA device. Number of bytes for 48KHz is read from FPGA device, similarly for 44.1KHz also I'm reading number of bytes from FPGA device.But VLC is not aware what is sample rate at which it has to render. I have looked into "struct v4l2_audio" structure from v4l2, there is no option for sample rate. – Chakravarthi Pradeep Nov 27 '18 at 02:20
  • How does the ALSA driver manage the sample rate? – CL. Nov 27 '18 at 05:02
  • ALSA driver suppose to calculate number of bytes per frame using sample rate , channel and bit . However, device is providing number of bytes so ALSA driver no need to manage sample rate. Is my understanding is correct ? – Chakravarthi Pradeep Nov 27 '18 at 05:35

0 Answers0