I just installed rpisurv on a new pi3 and can't get it to run. My RSTP feeds do work in VLC and OMXplayer.
This is my config I only changed 1 line.
essentials:
#These are the rtsp streams you want the program to display
#The streams will be displayed in the order you present them here
camera_streams:
#Dlink dcs-5222l example
#- rtsp_url: "rtsp://<user>:<password>@<ip or dnsname>:<port>/play1.sdp"
#Enable this option if you want the rtsp stream to stream over tcp instead of udp, this may solve a "smearing" effect on some setup$
#Note that you need a version of omxplayer older then 14 March 2016 for this option to work
rtsp_over_tcp: true
#Foscam-fi9821w example
#- rtsp_url: "rtsp://<user>:<password>@<ip or dnsname>:<port>/videoMain"
#Dahua IPC-HDW4200S example or IPC-HDW4300S
- rtsp_url: "rtsp://admin
192.168.78.153:554//h264Preview_01_sub"
#How many columns you want the program to use, it will autocalculate the amount of row needed based on the resolution of your screen
nr_of_columns: "2"
#Autostretching makes sures all of your pixels will be uses to display streams, so you have a maximum surveillance area.
#But this will probably destroy the aspect ratio of your last stream.
#autostretch: False
#rpisurv detects the connectable streams on startup,
#if this option is enabled it will keep the first calculated layout for the lifetime of the rpisurv running even if some cameras go down $
#When this option is set to True, rpisurv ignores all cameras configured that were not connectable when rpisurv was started
keep_first_screen_layout: False
If i run python surveillance.py this is the output
pi@raspberrypi:/usr/local/bin/rpisurv $ python surveillance.py
Traceback (most recent call last):
File "surveillance.py", line 10, in <module>
from config import cfg
File "/usr/local/bin/rpisurv/config.py", line 4, in <module>
cfg = yaml.load(ymlfile)
File "/usr/lib/python2.7/dist-packages/yaml/__init__.py", line 71, in load
return loader.get_single_data()
File "/usr/lib/python2.7/dist-packages/yaml/constructor.py", line 37, in get_single_data
node = self.get_single_node()
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 36, in get_single_node
document = self.compose_document()
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 55, in compose_document
node = self.compose_node(None, None)
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 127, in compose_mapping_node
while not self.check_event(MappingEndEvent):
File "/usr/lib/python2.7/dist-packages/yaml/parser.py", line 98, in check_event
self.current_event = self.state()
File "/usr/lib/python2.7/dist-packages/yaml/parser.py", line 439, in parse_block_mapping_key
"expected <block end>, but found %r" % token.id, token.start_mark)
yaml.parser.ParserError: while parsing a block mapping
in "conf/surveillance.yml", line 4, column 5
expected <block end>, but found '<block sequence start>'
in "conf/surveillance.yml", line 13, column 9