Open tphakala opened 2 months ago
My thoughts on multiple RTSP streams:
Regarding multiple streams, should be able to cut them into segments and feed them in. No need to start another analyser. Just have the source appended to the file name : i.e. backyard.YYYY.MM.DD.HH.MM.SS.wav etc
@tphakala - https://github.com/mcguirepr89/BirdNET-Pi/pull/818
They've just merged the capability for multiple rtsp streams.
I'm currently using Birdcage due to its multiple RTSP stream support, but that project looks dead and has lots of annoying bugs. I'd like to switch over, but I want/need multiple streams to consider switching.
Thanks for your interest in getting multiple RTSP streams going. I'd love to see it and would be happy to do any early testing if I can.
Yeah, I think we can start with simple implementation and improve it over time. I'll try to work on this.
My RTSP streams are passed first via go2rtc (frigate), and there are only two of them.
In the interim I have put this go2rtc config in place in frigate which creates a combined audio stream (and one copied video stream) by re-streaming the existing go2rtc streams which birdnet-go then picks up.
combined_audio:
- "ffmpeg:rtsp://127.0.0.1:8554/stream1#rtsp://127.0.0.1:8554/stream2#filter_complex=[0:a][1:a]amerge=inputs=2[aout]#map=0:v#map=[aout]#c:v=copy#c:a=aac"
Seems to work so far. I imagine this would have a scale limit at which point the audio would be too cluttered to be useful.
Support for multiple RTSP streams is now implemented, for more information please see https://github.com/tphakala/birdnet-go/discussions/187
Hey,
Since the modification to audio sources, I can't seem to get it working again with my rtsp source. sysdefault / null just hangs the system as there isn't a microphone attached. How do you config it to use rtsp streams now via config.yaml? default lets the system boot but no recordings
Format changed due to supporting multiple sources, URLs are configured like this now
rtsp:
transport: tcp # RTSP Transport Protocol
urls: # List of RTSP stream URLs
- rtsp://user:password@example.com/stream1
- rtsp://user:password@example.com/stream2
Cheers, works now with audio source set to null and what you mentioned
Cheers, works now with audio source set to null and what you mentioned
Also working for me! Awesome.
Background
Currently, BirdNET-Go supports only a single RTSP stream. There is a need to develop a solution that allows for the support of multiple streams.
Things to Consider
1. Architecture for Supporting Multiple Streams
2. Audio Processing Strategy
3. Performance and Limitations
4. User Interface Changes
5. Implementation of RTSP Stream Analysis
This issue aims to gather feedback, suggestions, and potential contributions from the community to address these considerations comprehensively.