Skip to content

Commit

Permalink
0.8.3
Browse files Browse the repository at this point in the history
  • Loading branch information
Anonymousdog authored Jun 2, 2018
1 parent 9419962 commit d6c7915
Show file tree
Hide file tree
Showing 18 changed files with 1,528 additions and 0 deletions.
75 changes: 75 additions & 0 deletions README
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
Systemd init system (because Raspbian) is presumed.
If installing on 'nix with other init systems, you will have to edit the install script or enable the displaycameras service with available tools for your init system.
The main script, normally installed at /usr/bin/displaycameras has an LSB header and will run as a systemv init script (if copied to /etc/init.d/).
Maybe just symlink to the /usr/bin/ location (untested)? No other init systems have been tested.

## Installation ##
run 'sudo install.sh'
Accept the offer to view the README after successful installation and follow the instructions therein

## Upgrade ##
run 'sudo install.sh upgrade'
No changes will be made to your existing config files, cron job setup, gpu memory allocation, or hdmi overscan setup.

## Removal ##
1. Stop the service 'sudo systemctl stop displaycameras.service'
2. Disable the service 'sudo systemctl disable displaycameras.service'
3. Remove the files:
a. Remove the config directory, 'sudo rm -R /etc/displaycameras'
b. Remove the service file, 'sudo rm /etc/systemd/system/displaycameras.service'
c. Remove the scripts, 'sudo rm /usr/bin/omxplayer_dbuscontrol /usr/bin/black.png /usr/bin/rotatedisplays'
d. Remove the crontab file, 'sudo rm /etc/cron.d/repaircameras && sudo systemctl restart cron'
4. Remove the pre-requisites (optional), 'for each package in omxplayer fbi; do sudo apt-get purge $package -y; done'
5. Remove pre-requisites' dependencies (optional), 'sudo apt-get autoremove -y'

## Post Instalation Instruction ##
==== CONFIGURATION ===="
Remember to edit the /etc/displaycameras/displaycameras.conf and /etc/displaycameras/layout.conf.default files for your environment.

==== Minimal Configuration ====

=== Global Options ===
== Main Conf File ==
Global options like screen blanking, omxplayer network timeout, startsleep, feedsleep, retry, displaydetect, and rotatedelay in /etc/displaycameras/displaycameras.conf.
All of these variables may be added to one or more layout configuration files to override the global options settings for one or more display layouts.

=== Camera and Window Layout ===
Screen/window matrix setup, window names, camera names, and camera feeds should be here (and most definitely NOT in the main config file).
Global options (exept for displaydetect) in the main conf file may be overridden (for specific displays) by supplying their values in these files.
Do NOT override 'displaydetect' settings in a layout config file; you will create problems.
== Layout Conf Files ==
All files in /etc/displaycameras/ which follow the naming convention 'layout.conf.<display resolution>' or the default layout conf file, layout.conf.default.
Unless you enable display detection in the main config file, the system will always use the default layout conf file.
== Default Layout Config File ==
The default layout file now has rotation disabled by default; so, it's safe to throw your camera names and feeds in there and just use it if you want an onscreen 2x2 matrix on reliably 1080p displays. If you have more than four cameras, you'll want to uncomment the last line.

==== Advanced Configurations ====
Perform all the steps in the minimal configuration and review the following options for tweaks to your setup.
== Display Detection ==
Enable display detection in displaycameras.conf and setup special layout configuration files for any display resolutions you want to support with auto-detection. Use the 1440x900 or 1280x1028 (and other) files as examples, and
duplicate the naming convention for these configuration file names, '/etc/displaycameras/layout.conf.<display resolution>' (e.g., /etc/displaycameras/layout.conf.1024x768). <--No, a 1024x768 layout
config file is not included in this package.

== Rotation ==
If you want to display more cameras on screen than the screen will hold, ensure you have at least as many windows defined as cameras, and uncomment the 'rotate="true"' line in the main config file (for all displays) or in a
custom layout file (for a specific screen resolution).

== Display Blanking ==
If your display shows background items from the terminal or GUI screen during rotation, you may want to enable screen "blanking" by uncommenting or adding a 'blank="true"' line in the main (for all displays) or custom layout files.

== Proper feed resolutions ==
!!!WARNING!!!
Configure camera feeds that are the same resolution or SMALLER than your windows. The RPi will struggle to downscale feeds to smaller windows.

== Boot Config Changes ==
You may want to adjust the gpu_mem value in /boot/config.txt if gpu resources restrict performance.

Installation ensures there is a "disable_overscan=1" line in your /boot/config.txt
file. This disables overscan compensation which allows display resolutions
autodetection to work properly. We recommend you setup your monitor to disable overscan.
It is often enabled by default on televisions and some commercial displays.

==== TESTING ====
Test by starting the service manually, "sudo /usr/bin/displaycameras start", to see the full output of the script. In the main config file, /etc/displaycameras/displaycameras.conf, adjust feedsleep upward until you no longer see script output reflecting omxplayer playback (not startup)
retries. Once that is resolved, adjust startsleep upward until you no longer see script output reflecting omxplayer startup or playback retries. Increase retries if results are inconsistent but you want short startup or
feedsleep values (for quicker startup).
Binary file added black.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit d6c7915

Please sign in to comment.