Pi Camera V2 not working with MJPG-Streamer

Hi everyone,

I am struggling with the installation of my webcam. I am using a genuine PiCam V2 (noir) and it seems that something is going wrong with the MJPG-Streamer install and settings. Same issue has been reported with my other usb camera.

I followed the instructions below but I am getting the following message in the log file:

https://www.repetier-server.com/setting-webcam-repetier-server-linux/

2022-01-04 09:16:31: Execute error response:mjpg_streamer: no process found
enabling daemon modeforked to background (1283)

Link to logfile: https://drive.google.com/file/d/1lgWQLuU-9jnHxNelMj0i5-Pcp2RgZ91f/view?usp=sharing

Could you please help me to fix it.

Thanks.

Comments

  • edited January 4
    I also confirm that camera is detected

    /usr/bin/vcgencmd get_camera
    supported=1 detected=1

    sudo /usr/local/Repetier-Setup/bin/startAllCams
    Start from directory /usr/local/Repetier-Setup/bin
    enabling daemon modeforked to background (2482)
    Testing active webcams in /dev/v4l/by-path/*
    Starting webcam /dev/v4l/by-path/platform-bcm2835-codec-video-index0
    Best resolution: 0 x 0 at 0
    Starting webcam /dev/v4l/by-path/platform-bcm2835-isp-video-index0
    Webcam does not support MJPG - using slower YUYV instead!
    Best resolution: 0 x 0 at 0
    Starting webcam /dev/v4l/by-path/platform-bcm2835-isp-video-index1
    Webcam does not support MJPG - using slower YUYV instead!
    Best resolution: 0 x 0 at 0
    Starting webcam /dev/v4l/by-path/platform-bcm2835-isp-video-index2
    Webcam does not support MJPG - using slower YUYV instead!
    Best resolution: 0 x 0 at 0
    Starting webcam /dev/v4l/by-path/platform-bcm2835-isp-video-index3
    Webcam does not support MJPG - using slower YUYV instead!
    Best resolution: 0 x 0 at 0

    ps aux | grep mjpg

    pi        3726  0.0  0.0   7348   584 pts/1    S+   12:34   0:00 grep --color=auto mjpg

  • Why not using our image where streamer is already preinstalled?

    startAllCams sees only the display videos. It should also start

     ./mjpgStart pi

    What image are you using? Bullseye has introduced new solution for pi cams that is not compatible with mjpg_streamer. If you have bullseye (lsb_release -a) you need to activate legacy solution for pi cam, see
    https://forums.raspberrypi.com/viewtopic.php?t=323390

  • edited January 4
    Well, I downloaded the PI image from your website a few months ago when I was building the printer. Then I installed Klipper

    This is what I have when I run the cmd:

    No LSB modules are available.
    Distributor ID: Raspbian
    Description:    Raspbian GNU/Linux 10 (buster)
    Release:        10
    Codename:       buster

    Please just let me know how to proceed.
  • So you are using our image and still did install again mjpg_streamer overwriting our files?

    What does
    sudo -i
    cd /usr/local/Repetier-Setup/bin
     ./mjpgStart pi

    return. That is explicitly starting pi streamer. Also check what webcam.conf contains. If still in bin folder;
    cat ../etc/webcam.conf

    It should have enabled pi or it will never try to start pi cam.
  • edited January 4
    Yes I am using your image and indeed I did install mjpg_streamer and overwrote all the files

    1. 

    No rasp webcam detected!

    2. webcam.conf is not in Bin folder

    # Framerate and capture size. Bigger sizes and frequencies need more storage/ram and bandwidth so consider if
    # you can handle better values or not.
    WEBCAM_FRAMERATE=15
    WEBCAM_WIDTH=640
    WEBCAM_HEIGHT=480
    # Default jpg quality is 85%
    WEBCAM_QUALITY=85
    # Extra paremeter for pi module when started.
    WEBCAM_PICAM_PARAMS=""
    # Extra parameter for usb module when started.
    WEBCAM_USB_PARAMS=""
    # Is this a pi where a picam could be connected? yes or no
    IS_PI="yes"
    # Path to
    MJPG_STREAMER=/usr/local/bin/mjpg_streamer
    MJPG_PLUGIN_DIR=/usr/local/lib/mjpg-streamer
    MJPG_WWW_DIR=/usr/local/share/mjpg-streamer/www
    # WEBCAM_DIR is used for naming video devices
    # /dev/v4l/by-id/*     Is to use the device names. It is not important where you plug it in
    # /dev/v4l/by-path/*   Is to use th eusb port plugged in to identify webcams. Use this if you have identical names
    WEBCAM_DIR=/dev/v4l/by-path/*

  • 2. it is in etc I know. I wrote ../etc/webcam.conf for that reason! File is ok.
    1. This is the code responsible

    if [ "$DEV" == "pi" ]; then
      if [ "$IS_PI" == "yes" ]; then
        PICAM=$(/usr/bin/vcgencmd get_camera | /bin/grep "detected=1")
        if [ "$PICAM" == "" ]; then
            echo "No rasp webcam detected!"
            exit 1
        fi
        ${MJPG_STREAMER} -i "${MJPG_PLUGIN_DIR}/input_raspicam.so -fps ${WEBCAM_FRAMERATE} -x ${WEBCAM_WIDTH} -y ${WEBCAM_HEIGHT} -quality ${WEBCAM_QUALITY} ${WEBCAM_PICAM_PARAMS}" -o "${MJPG_PLUGIN_DIR}/output_http.so -p 9000 -w ${MJPG_WWW_DIR}" -b
        exit 0
      else
         echo "Raspicam support disabled in configuration!"
         exit 0
      fi
    fi

    Guess that is the same in your mjpgStart. You see the error message there happening when $PICAM is empty, so 
    /usr/bin/vcgencmd get_camera | /bin/grep "detected=1"
    returned empty string. What does it return when you run it manually? You said it would return what needed in first post so I wonder it does not get detected here.
  • pi@RepetierServer:~ $ /usr/bin/vcgencmd get_camera
    supported=1 detected=0

    When I wrote the first post, it was detected ...
  • Quick update on this. I made a couple of tests and the issue was a bad ribbon cable.

    Now, everything is working great.

    Thank you for your help
Sign In or Register to comment.