shodan search for open webcam streams and random show them in a loop = screensaver
- docker container runs gui via Xserver sharing (sorry applindows)
- code in python
-
future?:
- kivy, Qt
Streamer
- control what is shown
- UI
- holds video canvas
- timings of random cycling
- main loop
- crawler get 5 stream ips
- create 5 streams
- add 5 streams to queue
- cycle in queue
- user input (exit, next previous)
Crawler
- acquire ips via shodan
- get mutliple ips
Stream(CamGear)
- holds open video
- check whether not empty
StreamQueue
- loads streams
- holds loaded streams
- cycles through streams
- method
- add() - adds new Stream
- next()
- basic working concept
- find streams
- show streams
- list through them
- auto rotate
- stream filtering
- as to what to show
- another displaying option
- make it multi platform
- skip X from docker
- use rtsp stream and vlc on local host machin
- flask / fastapi for the control of streamer
test gui via docker-compose - shodan screensaver?
- it needs X to run - so probly only linux
- platforms
- linux
- with X11 = OK
- mac
- not tested - maybe possible with x-quartz / xrdp
- read thread here
- windows
- ??
- linux
via VNC it should be possible on "any system"
- not tested
Make sure you have docker and docker-compose installed.
docker-compose build
xhost +local:docker
docker-compose up
if you get error
No protocol specified
QXcbConnection: Could not connect to display :0
you may need to run this on your host - localmachine
xhost +local:docker
it happens cuz in docker container you are using the user root
.
if you would use user user
(non-root priviledged) it would work normaly,
but the opencv docker image is done in a way you need to work as root in the docker container