IPU6 daemon+v4l2loopback is required to enable use for existing applications

Bug #1943915 reported by Stefan
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-oem-5.13 (Ubuntu)
Invalid
Undecided
Unassigned
Focal
Expired
Undecided
Unassigned

Bug Description

The device is properly detected but it seems there are still issues with gstreamer plugin. When I try to run cheese I get the following error message:

../src/intel/isl/isl.c:2018: FINISHME: ../src/intel/isl/isl.c:isl_surf_supports_ccs: CCS for 3D textures is disabled, but a workaround is available.

(cheese:3769): cheese-WARNING **: 08:02:37.506: Failed to allocate required memory.: gstv4l2src.c(660): gst_v4l2src_decide_allocation (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin18/GstV4l2Src:v4l2src1:
Buffer pool activation failed

With VLC I get
stefang@capella:~$ vlc v4l2:///dev/video0
VLC media player 3.0.9.2 Vetinari (revision 3.0.9.2-0-gd4c1aefe4d)
[000055cfdb6a3670] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Using mplane plugin for capture
[00007f0230001160] v4l2 demux error: cannot get streaming parameters: Inappropriate ioctl for device
libv4l2: error turning on stream: Link has been severed
[00007f0230001160] v4l2 demux error: cannot start streaming: Link has been severed
Using mplane plugin for capture
[00007f0230001160] v4l2 demux error: not a radio tuner device
Using mplane plugin for capture
[00007f0230007b70] v4l2 stream error: cannot get streaming parameters: Inappropriate ioctl for device
libv4l2: error turning on stream: Link has been severed
[00007f0230007b70] v4l2 stream error: cannot start streaming: Link has been severed
QObject::~QObject: Timers cannot be stopped from another thread

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: linux-image-5.13.0-1012-oem 5.13.0-1012.16
ProcVersionSignature: Ubuntu 5.13.0-1012.16-oem 5.13.1
Uname: Linux 5.13.0-1012-oem x86_64
ApportVersion: 2.20.11-0ubuntu27.20
Architecture: amd64
CasperMD5CheckResult: skip
Date: Fri Sep 17 07:59:51 2021
InstallationDate: Installed on 2021-09-16 (0 days ago)
InstallationMedia: Ubuntu 20.04.3 LTS "Focal Fossa" - Release amd64 (20210819)
SourcePackage: linux-signed-oem-5.13
UpgradeStatus: No upgrade log present (probably fresh install)
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu27.20
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: stefang 1469 F.... pulseaudio
CasperMD5CheckResult: skip
DistroRelease: Ubuntu 20.04
InstallationDate: Installed on 2021-09-16 (0 days ago)
InstallationMedia: Ubuntu 20.04.3 LTS "Focal Fossa" - Release amd64 (20210819)
MachineType: Dell Inc. Latitude 9420
Package: linux-oem-5.13 (not installed)
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.13.0-1012-oem root=UUID=e2704fd1-5330-4b87-9cdf-a353f5fe73b7 ro quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 5.13.0-1012.16-oem 5.13.1
PulseList: Error: command ['pacmd', 'list'] failed with exit code 1: No PulseAudio daemon running, or not running as session daemon.
RelatedPackageVersions:
 linux-restricted-modules-5.13.0-1012-oem N/A
 linux-backports-modules-5.13.0-1012-oem N/A
 linux-firmware 1.187.16
Tags: focal
Uname: Linux 5.13.0-1012-oem x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: N/A
_MarkForUpload: True
dmi.bios.date: 04/13/2021
dmi.bios.release: 1.2
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 1.2.2
dmi.board.name: 08XKF8
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 10
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvr1.2.2:bd04/13/2021:br1.2:svnDellInc.:pnLatitude9420:pvr:sku0A32:rvnDellInc.:rn08XKF8:rvrA00:cvnDellInc.:ct10:cvr:
dmi.product.family: Latitude
dmi.product.name: Latitude 9420
dmi.product.sku: 0A32
dmi.sys.vendor: Dell Inc.

Revision history for this message
Stefan (polisholsby) wrote :
You-Sheng Yang (vicamo)
no longer affects: linux-signed-oem-5.13 (Ubuntu)
Revision history for this message
You-Sheng Yang (vicamo) wrote :

Hi, could you do:

  $ sudo ln -s source_linux.py /usr/share/apport/package-hooks/source_linux-oem-5.13.py
  $ sudo apport-collect 1943915

The first command will manually create package hook link for source package linux-oem-5.13 as it should be (but missed in the official deb). Then it will collect as much info as needed generally for kernel issues.

I'll also need your output for following commands:

  $ apt-cache policy v4l2-relayd libipu6 libcamhal0
  $ cat /etc/default/v4l2-relayd
  $ cat /etc/v4l2-relayd

Revision history for this message
Stefan (polisholsby) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Stefan (polisholsby) wrote : CRDA.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : IwConfig.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : Lspci.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : Lspci-vt.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : Lsusb.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : Lsusb-t.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : Lsusb-v.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : ProcEnviron.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : ProcModules.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : RfKill.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : UdevDb.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : WifiSyslog.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote : acpidump.txt

apport information

Revision history for this message
Stefan (polisholsby) wrote (last edit ): Re: [Bug 1943915] Re: Intel IPU6 GStreamer src plugin not working

I did apport-collect, the information should now be attached to the bug.

As for the second part I don't have these packages installed and I
don't have the v4l2-relayd files either.

stefang@capella:~$ apt-cache policy v4l2-relayd libipu6 libcamhal0
N: Unable to locate package v4l2-relayd
N: Unable to locate package libipu6
N: Unable to locate package libcamhal0

stefang@capella:~$ cat /etc/default/v4l2-relayd
cat: /etc/default/v4l2-relayd: No such file or directory

/Stefan

On Fri, 17 Sept 2021 at 08:40, You-Sheng Yang
<email address hidden> wrote:
>
> Hi, could you do:
>
> $ sudo ln -s source_linux.py /usr/share/apport/package-hooks/source_linux-oem-5.13.py
> $ sudo apport-collect 1943915
>
> The first command will manually create package hook link for source
> package linux-oem-5.13 as it should be (but missed in the official deb).
> Then it will collect as much info as needed generally for kernel issues.
>
> I'll also need your output for following commands:
>
> $ apt-cache policy v4l2-relayd libipu6 libcamhal0
> $ cat /etc/default/v4l2-relayd
> $ cat /etc/v4l2-relayd
>

Revision history for this message
Stefan (polisholsby) wrote :

I have installed the missing packages from:
ppa:oem-solutions-group/intel-ipu6

Here is the result of the commands you asked for:
stefang@capella:~$ sudo apt-cache policy v4l2-relayd libipu6 libcamhal0
v4l2-relayd:
  Installed: 0~git202104290610.f14d6d4~ubuntu20.04.1
  Candidate: 0~git202104290610.f14d6d4~ubuntu20.04.1
  Version table:
 *** 0~git202104290610.f14d6d4~ubuntu20.04.1 500
        500 http://ppa.launchpad.net/oem-solutions-group/intel-ipu6/ubuntu focal/main amd64 Packages
        100 /var/lib/dpkg/status
libipu6:
  Installed: 0~git202104021802.45905c6-1~ubuntu20.04.1
  Candidate: 0~git202104021802.45905c6-1~ubuntu20.04.1
  Version table:
 *** 0~git202104021802.45905c6-1~ubuntu20.04.1 500
        500 http://ppa.launchpad.net/oem-solutions-group/intel-ipu6/ubuntu focal/main amd64 Packages
        100 /var/lib/dpkg/status
libcamhal0:
  Installed: 0~git202108110731.5b056cf~ubuntu20.04.1
  Candidate: 0~git202108110731.5b056cf~ubuntu20.04.1
  Version table:
 *** 0~git202108110731.5b056cf~ubuntu20.04.1 500
        500 http://ppa.launchpad.net/oem-solutions-group/intel-ipu6/ubuntu focal/main amd64 Packages
        100 /var/lib/dpkg/status
stefang@capella:~$ cat /etc/default/v4l2-relayd
# GStreamer source element name:
#VIDEOSRC="videotest"
#SPLASHSRC="filesrc location=/.../splash.png ! pngdec ! imagefreeze num-buffers=4 ! videoscale ! videoconvert"

# Output format, width, height, and frame rate:
#FORMAT=YUV2
#WIDTH=1280
#HEIGHT=720
#FRAMERATE=30/1

# Virtual video device name:
#CARD_LABEL="Virtual Camera"

# Extra options to pass to v4l2-relayd:
#EXTRA_OPTS=-d
stefang@capella:~$ cat /etc/v4l2-relayd
cat: /etc/v4l2-relayd: No such file or directory

Revision history for this message
Stefan (polisholsby) wrote :
Revision history for this message
Stefan (polisholsby) wrote :

I needed to install libdrm-dev when trying to locally compile gst-plugins-icamera even with libdrm-dev installed the compilation fails with:
utils.cpp:64:41: error: ‘V4L2_PIX_FMT_P010’ was not declared in this scope; did you mean ‘V4L2_PIX_FMT_Y10’?
   64 | { "P010", GST_VIDEO_FORMAT_P010_10BE, V4L2_PIX_FMT_P010 },
      | ^~~~~~~~~~~~~~~~~
      | V4L2_PIX_FMT_Y10
utils.cpp: In function ‘int CameraSrcUtils::get_number_of_valid_lines(int, int)’:
utils.cpp:123:10: error: ‘V4L2_PIX_FMT_P010’ was not declared in this scope; did you mean ‘V4L2_PIX_FMT_Y10’?
  123 | case V4L2_PIX_FMT_P010:
      | ^~~~~~~~~~~~~~~~~
      | V4L2_PIX_FMT_Y10
make[4]: *** [Makefile:670: libgsticamerasrc_la-utils.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
gstcameraformat.cpp: In function ‘GstStructure* create_structure(guint32)’:
gstcameraformat.cpp:154:10: error: ‘V4L2_PIX_FMT_P010’ was not declared in this scope; did you mean ‘V4L2_PIX_FMT_Y10’?
  154 | case V4L2_PIX_FMT_P010:{
      | ^~~~~~~~~~~~~~~~~
      | V4L2_PIX_FMT_Y10
make[4]: *** [Makefile:635: libgsticamerasrc_la-gstcameraformat.lo] Error 1
gstcamerasrc.cpp: In function ‘gboolean gst_camerasrc_start(GstCamBaseSrc*)’:
gstcamerasrc.cpp:2688:67: error: too many arguments to function ‘int icamera::camera_device_open(int)
 2688 | ret = camera_device_open(camerasrc->device_id, camerasrc->num_vc);
      | ^

Revision history for this message
Stefan (polisholsby) wrote :
Revision history for this message
Stefan (polisholsby) wrote :

I have managed to compile locally from:
https://github.com/intel/icamerasrc/tree/icamerasrc_slim_api
and got the camera to work with gst-launch-1.0
sudo -E gst-launch-1.0 icamerasrc device-name=ov01a1s-uf ! video/x-raw,format=YUY2,width=1280,height=720 ! videoconvert ! xvimagesink

Note: I need to run this command with sudo.

I have no idea what's required to get cheese and ffplay and other application to work properly.

Revision history for this message
You-Sheng Yang (vicamo) wrote :

I think you should be able to install following packages from the same ppa:

  * gstreamer1.0-icamera
  * v4l2loopback-dkms
  * v4l2-relayd

These 3 should be sufficient for you to bring up IPU6. And you'll need to create a config file /etc/v4l2-relayd:

  root$ echo <<EOF | tee /etc/v4l2-relayd
  VIDEOSRC=icamerasrc
  FORMAT=YUY2
  WIDTH=1280
  HEIGHT=720
  FRAMERATE=30/1
  CARD_LABEL=Intel MIPI Camera
  EOF

Changed in linux-oem-5.13 (Ubuntu Focal):
status: New → Incomplete
Revision history for this message
Stefan (polisholsby) wrote :

Yes, after installing these packages and adding the v4l2 relay config the camera works with ffplay and in firefox,not in cheese though, it still complains about:
"Buffer pool activation failed"

Stefan (polisholsby)
summary: - Intel IPU6 GStreamer src plugin not working
+ IPU6 daemon+v4l2loopback is required to enable use for existing
+ applications
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.13 (Ubuntu):
status: New → Invalid
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux-oem-5.13 (Ubuntu Focal) because there has been no activity for 60 days.]

Changed in linux-oem-5.13 (Ubuntu Focal):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.