Zorin Camera cannot play Novatek UVC camera stream; VLC and FFplay work

I’m running Zorin OS 18.1 on a Microsoft Surface Laptop. I’m trying to use a USB digital microscope as a webcam/video source.

The microscope works correctly on a Windows PC. Under Zorin, the Camera application recognizes the camera but reports that it cannot play the stream.

The USB device enumerates correctly:

Bus 001 Device 027: ID 0603:8612 Novatek Microelectronics Corp. NTK96550-based camera (webcam mode)

The Linux uvcvideo driver is loaded, and connecting the microscope creates /dev/video14 and /dev/video15.

v4l2-ctl --device=/dev/video14 --all identifies /dev/video14 as:

Driver name      : uvcvideo
Card type        : USB Camera
Capabilities     : Video Capture, Metadata Capture, Streaming,
                   Extended Pix Format, Device Capabilities
Video input      : 0 (Camera 1: ok)

The camera advertises both H.264 and MJPEG USB streams. v4l2-ctl --device=/dev/video14 --list-formats-ext reports:

H264:
1920x1080 @ 30 fps
1280x720  @ 30 fps
640x480   @ 30 fps
320x240   @ 30 fps

MJPG:
1920x1080 @ 30 fps
1280x720  @ 30 fps
640x480   @ 30 fps
320x240   @ 30 fps

The default format was H.264. I used v4l2-ctl to change the device to MJPEG at 1920x1080/30, and verified that the format change was accepted. Zorin Camera still could not play the stream.

I then bypassed the Camera application and tested the same device directly with FFplay:

ffplay -f v4l2 -input_format mjpeg -framerate 30 \
  -video_size 1920x1080 -i /dev/video14

This works correctly and displays live 1080p video.

I also installed the normal APT version of VLC and tested:

vlc v4l2:///dev/video14

VLC also displays the microscope video correctly.

Therefore USB enumeration, the uvcvideo driver, V4L2 capture, and decoding of the stream all appear to be functioning. The failure appears specific to Zorin Camera or its multimedia/device-format negotiation with this particular Novatek UVC camera.

I’m happy to provide additional logs or run additional diagnostic commands if they would help identify the incompatibility.

1 Like

Welcome to the Forum!

Do You have installed the Kernel for a Microsoft Surface Device?

Some other Questions:

  • Are Secure Boot and Fast Boot in BIOS disabled?
  • Does Your System run in Wayland or X11? You can check that with the Command echo $XDG_SESSION_TYPE via Terminal.
  • Do You have all the Codecs installed?
1 Like

Hi and welcome.

Have you tried installing Cheese application?

I don't know why Cheese was dropped for a 'better' camera application. I have had no issue with Cheese running on a VM of Zorin 18.1 Core to access a redirected logitech camera in virt-manager.

This might help:

https://linux-hardware.org/?view=howto

1 Like