RTSP testing

Free RTSP Stream URL for Testing 2026

The most reliable free RTSP test URL is one you create on your own network. Run MediaMTX, publish a video with FFmpeg, and test the resulting URL in SmartRTSP without using an exposed private camera.

Commands and official documentation checked: July 22, 2026

Quick answer

Start MediaMTX on a Mac or PC, publish a video to rtsp://127.0.0.1:8554/test with FFmpeg, and verify it locally. On an iPhone, iPad or Apple TV, replace 127.0.0.1 with the computer's LAN address, for example rtsp://192.168.1.20:8554/test.

Safe RTSP Test Options

OptionExample URLBest for
Your own IP camerartsp://user:pass@192.168.1.50:554/MODEL_PATHReal credentials, codec and LAN testing. Use the exact model path.
Local MediaMTX serverrtsp://192.168.1.20:8554/testRepeatable app testing without relying on a physical camera.
Computer webcamrtsp://192.168.1.20:8554/camA repeatable live source when no IP camera is available.
Brand sample from your camerartsp://user:pass@IP:554/cam/realmonitor?channel=1&subtype=0Testing Dahua, Amcrest, Lorex, and many OEM cameras.

Create a local RTSP test stream

  1. Download and start MediaMTX using the instructions for your operating system. Its default RTSP listener is port 8554.
  2. Open another terminal and publish a video file. The command documented by MediaMTX keeps the file looping and publishes it at path /test.
ffmpeg -re -stream_loop -1 -i sample.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/test

If stream copy fails because the input codecs are not suitable for the clients you are testing, publish H.264 video instead:

ffmpeg -re -stream_loop -1 -i sample.mp4 -an -c:v libx264 -pix_fmt yuv420p -preset veryfast -tune zerolatency -f rtsp rtsp://127.0.0.1:8554/test

Verify the stream on the same computer:

ffplay -rtsp_transport tcp rtsp://127.0.0.1:8554/test

Open the stream in SmartRTSP

  1. Find the computer's local address, such as 192.168.1.20.
  2. Keep the computer and Apple device on the same network and allow incoming connections to MediaMTX in the computer firewall.
  3. In SmartRTSP, add a manual camera with rtsp://192.168.1.20:8554/test.
  4. If playback fails, first repeat the test on the computer, then check the LAN address, port 8554, firewall and whether FFmpeg is still publishing.

127.0.0.1 always means the device running the player. It works for a player on the MediaMTX computer, but not from your phone or Apple TV.

Learn about SmartRTSP

What each test result means

ResultLikely conclusion
ffplay works on the server; phone does notUse the LAN IP instead of localhost, and check the computer firewall or Wi-Fi isolation.
FFmpeg reports connection refusedMediaMTX is not running or is not listening on port 8554.
Stream opens but video is blackTranscode to H.264/yuv420p to separate codec compatibility from network access.
Local test works; camera URL does notSmartRTSP and the LAN path work. Check the camera's URL, account, RTSP service and codec.

Safe test URL formats

Local camera: rtsp://user:pass@192.168.1.50:554/MODEL_PATH

MediaMTX test server: rtsp://192.168.1.20:8554/test

Brand camera example: use the exact format from the RTSP URL list.

Avoid public cameras

They may be private, unstable, or illegal to view.

Test locally first

Local streams remove internet and firewall variables.

Check codecs

Use H.264 or H.265 for best SmartRTSP compatibility.

Frequently Asked Questions

Is it safe to use public RTSP camera URLs for testing?

No. Avoid random public camera URLs because many are exposed accidentally. Use a stream you own or a local test server.

What is the best RTSP URL for testing SmartRTSP?

Use a camera or server on your own LAN. That tests the same credentials, codec, port, firewall, and Wi-Fi path you will use later.

How can I create a free RTSP test stream?

Run a local RTSP server, publish a sample video with FFmpeg, or use a phone/camera app that can expose RTSP locally.

Why do public RTSP URLs stop working?

They are unstable because owners change passwords, cameras go offline, networks block access, or the stream was never meant to be public.