RTSP STREAMING HOLOCAUST

The goal is: stream a webcam or a source that ISN'T rtsp creating a RTSP stream into a local port or something that can be used to stream out the shit, for example to rtsp.me server.

First case is this fucking DLINK DCS-933L. No rtsp at all.

Camera can be set up only with the FUCKING EXPLORER 11.

Install User-Agent Switcher for Chrome plugin / addon so you can mimic explore11 into chrome and setup the camera as you need.

Camera view is here:

http://10.69.1.220/video.cgi or mjpeg.cgi

FFMPEG howto

FFMPEG IS A STEAMING PILE OF SHIT. FUCK THAT SHIT AND HIS CREATOR.

I spent weeks trying it. I got rtsp with ffmpeg consuming 100% of all 4 cores on my i5 cpu. That's ridiculous.

DON'T USE IT.

VLC HOWTO

To view, ASSUMING your port was 8554: ffplay rtsp://your.local.streaming.vlc.ip:8554/

DON'T FORGET THE / AT THE END

NOW, you saved your generated output string before. You are streaming from vlc interface but yo' smart, yo'wanna cvlc.

convert it!

String:

:sout=#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100,scodec=none}:rtp{sdp=rtsp://:58554/} :no-sout-all :sout-keep

become:

cvlc --sout "#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100,scodec=none}:rtp{sdp=rtsp://:58554/}" --no-sout-all --sout-keep  http://user:pass@your.camera.address:yourcameraport/video.cgi

Some tuning can be made! This camera doesn't have audio at all. So the string became:

cvlc --sout "#transcode{vcodec=h264,scale=Auto}:rtp{sdp=rtsp://:8554/}" --sout-keep http://user:pass@your.camera.address:yourcameraport/video.cgi

mjpg as a vcodec can help use less cpu BUT rtsp.me don't accept it with the free plan:

cvlc --sout "#transcode{vcodec=mjpg,scale=Auto}:rtp{sdp=rtsp://:8554/}" --sout-keep http://user:pass@your.camera.address:yourcameraport/video.cgi

 cvlc --sout "#transcode{vcodec=h264,scale=Auto}:rtp{sdp=rtsp://:8554/}" --sout-keep http://user:pass@server.ip:port/video.cgi

Raspberry PI with an usb camera

Rasp pi has very low memory. Tried this on a 256 MB rasp pi 1 HAHAHAHAH!!!

Setup was done using vlc GUI on my laptop because I can't figure out HOW THE FUCK VLC want the /dev/video0 device showed in his ass. So:

VLC HOWTO to set up raspberry

Test it using ffplay.

BECAUSE YO'SMART, you want to use cvlc instead. So, convert your magic string:

:sout=#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100,scodec=none}:rtp{sdp=rtsp://:58554/} :no-sout-all :sout-keep

into

cvlc --sout "transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100,scodec=none}:rtp{sdp=rtsp://:58554/}" --no-sout-all 
 --sout-keep v4l2:///dev/video0 

note the v4l2:// for using the video device. WHAT A FUCKING SHIT. why THE FUCK vlc need v4l2 there? WHY THE HOLY FUCK we can't simply write /dev/video0 and let vlc KNOW or GUESS that, in order to deal with a FUCKING VIDEO DEVICE, it's CLEAR that you must use v4l shit? Those things are driving me nuts about usability.

As usual you can tweak to use no sound, and mjpg as we did before.

NOTE: h264 uses almost 100% cpu on raspberry and sometimes it dies with a malloc() error.

mjpg instead uses only 45% of the cpu and the rtsp goes out smoothly. But rtsp.me can't accept it with the free plan.

LAST TRIED COMMAND LINE ON RASP PI 1 WITH 256 MB RAM

cvlc --sout "#transcode{vcodec=mjpg,scale=Auto}:rtp{sdp=rtsp://:8554/}" --sout-keep v4l2:///dev/video0

PORT FORWARDING

To expose your rtsp streams outside to rtsp.me, you must forward TCP AND UDP!!!!!!

rtsp.me problems

this fucking site.

VERY IMPORTANT: SET UDP INTO ADVANCED SETTINGS

YOU MUST SET "TRANSPORT:UDP" IN ADVANCED SETTINGS, AND SAVE!

You MUST WAIT

Click on rtsp.me url, and FUCKING WAIT. It's slow to load, dunno why. Buffering?

mjpg stuck

If you try mjpg somewhere, when you revert stream to h264, this fucking site remember mjpg and got stuck there.

You need to DELETE the camera and create it back.

stream doesn't start

You launch the stream, rtsp.me doesn't start. You wait, and after some minutes, it give you the MIDDLE FINGER.

You must first play your stream from somewhere using ffplay or mplayer or whatever. After that, rtsp.me works.

Dunno why.

Conclusion

That's FUCKING ALL after 3 days of madness following WEEKS of checking the internet for any clear howto about how to do this shit.

I hope this howto IS FUCKING EASY and COMPLETE. STEP BY STEP.

GOD BLESS YA ALL, GOD BLESS THE U.S.A.

Thanks to Lobo, Katolaz, Nigthtolo and Freaknet guys!!!

RTSPHolocaust (last edited 2020-05-29 13:18:45 by asbesto)