No internet connection
  1. Home
  2. Technical Support

TinyPilot no longer capturing video

By @sheas
    2022-01-03 21:15:44.981Z

    Hi -

    I powered off my server and disconnected it from my TinyPilot. I didn't change anything HW or SW related in the server, but when I reconnected the TinyPilot, it no longer shows the video feed, it just shows the "broken image" icon. I've restarted the TinyPilot and the server multiple times, I've checked all the connections twice and the server has video output when I connect a monitor.

    I'm running the latest version of TinyPilot Pro on a Raspberry Pi 4. Here is the URL to my logs:

    Please help!

    Thanks in advance

    Solved in post #2, click to view
    • 11 replies
    1. Michael Lynch @michael2022-01-03 21:36:57.859Z2022-03-24 19:58:09.962Z

      Update (2022-03-24)

      This is now fixed in TinyPilot Pro 2.4.0 and TinyPilot Community 1.7.0 and higher.

      Update (2022-01-20)

      This is a bug. The fix will be included in the February release.

      This is a workaround to fix this issue in the meantime, which you can run via ssh:

      cd /opt/ustreamer/
      sudo make clean
      sudo make WITH_OMX=1
      sudo systemctl restart ustreamer.service

      Update (2022-01-14)

      As multiple users are now reporting this, we're investigating this on Github:

      Thanks for reporting this! Sorry about this issue.

      It looks like uStreamer is failing to start because it's missing a library:

      /opt/ustreamer/ustreamer: error while loading shared libraries: cannot open shared object file: No such file or directory

      Did you make any changes that might have removed that library?

      Can you try SSHing in and running this command?

      sudo apt install libjpeg9-dev -y &&
        sudo service ustreamer restart

      That should hopefully fix the missing image issue and get the remote screen to show up again.

      If that doesn't work, you can try forcing TinyPilot to reinstall all of its components with this command:

      /opt/tinypilot/scripts/upgrade && sudo reboot
      1. S@sheas
          2022-01-04 14:35:19.860Z

          Thanks for your response! Unfortunately, neither of those solutions worked. The ustreamer service won't restart. I also tried removing that library and manually reinstalling it, but that didn't work either.

          Here's the link to the logs:

          1. That's really strange. I'm not sure how it got into that state where it's failing to load the libjpeg library. The only option left is to do a factory reset.

            1. K@Kariphoenix
                2022-01-14 04:54:50.411Z

                I am currently experiencing this same issue. All I did was update to the newest version (2.3.2), no other changes to my setup.
                It's looking like I'll need to do a factory reset.

                Here is a link to the logs:

                1. Sorry for this! Thanks for sharing the logs.

                  It seems like both you and @sheas are using the HDMI to USB dongle, correct? It's likely related to that. I'll investigate more.

                  Can you email with your update logs:

                  sudo /opt/tinypilot-privileged/read-update-log | curl -F '_=<-'
            2. In reply tomichael:
                2022-01-25 23:50:16.423Z

                Same issue. The 2022-01-20 update workaround solution worked for me. Thanks!

                1. In reply tomichael:
                  EBernd Ebert @ebert
                    2022-03-24 07:11:13.785Z2022-03-24 09:51:30.810Z

                    I do have that issue for the second time now - while the workaround from 20.01.2022 worked fine the first time it does not work this time. the tinyPilot is updated.
                    Edit: within deamon.log I do find the message

                    "daemon.log:Mar 24 06:00:25 tinypilot ustreamer[9079]: Unknown encoder type: omx; available: CPU, HW, NOOP"

                    Other than that nothing obviously relates to ustreamer, but the service is not running:

                    pilot@tinypilot:/opt/ustreamer $ sudo systemctl status ustreamer.service
                    ● ustreamer.service - uStreamer - Lightweight, optimized video encoder
                       Loaded: loaded (/lib/systemd/system/ustreamer.service; enabled; vendor preset: enabled)
                       Active: failed (Result: exit-code) since Thu 2022-03-24 07:08:46 GMT; 2h 38min ago
                      Process: 1108 ExecStart=/opt/ustreamer/ustreamer --port 8001 --encoder omx --format uyvy --workers 3 --drop-same-frames 30 --persistent --dv-timings && : (code=exited, status=1/FAILURE)
                     Main PID: 1108 (code=exited, status=1/FAILURE)
                    Mar 24 07:08:46 tinypilot systemd[1]: ustreamer.service: Service RestartSec=100ms expired, scheduling restart.
                    Mar 24 07:08:46 tinypilot systemd[1]: ustreamer.service: Scheduled restart job, restart counter is at 5.
                    Mar 24 07:08:46 tinypilot systemd[1]: Stopped uStreamer - Lightweight, optimized video encoder.
                    Mar 24 07:08:46 tinypilot systemd[1]: ustreamer.service: Start request repeated too quickly.
                    Mar 24 07:08:46 tinypilot systemd[1]: ustreamer.service: Failed with result 'exit-code'.
                    Mar 24 07:08:46 tinypilot systemd[1]: Failed to start uStreamer - Lightweight, optimized video encoder.
                    1. Diego @diego
                        2022-03-24 17:45:18.009Z

                        Hello Bernd - I'm sorry you are having this issue again. It is not clear why ustreamer is not starting again. I'd like to have the failed status of the service cleared, and then try to start it one more time, that might give us an indication of why it is refusing to start. I'd also like you to collect full logs for me to review them.

                        • Please run the following commands, save the output and paste it here in this thread.
                        sudo systemctl reset-failed ustreamer.service
                        sudo systemctl status ustreamer.service
                        sudo systemctl start ustreamer.service
                        • Then please upload full logs. This is how you would upload them: TinyPilot web interface > System > Logs > Get Shareable URL
                        1. In reply toebert:

                          @ebert - We just pushed a fix for this a few hours ago. Can you update to TinyPilot 2.4.0 from (System > Update) and try again?

                          1. EBernd Ebert @ebert
                              2022-03-24 20:20:52.816Z

                              works :-D Do you need the logs then?

                              1. Diego @diego
                                  2022-03-25 18:13:14.206Z

                                  @ebert - No, that's fine, we don't need the logs. I'm happy your issue was resolved!