ONVIF / RTSP / RTMP protocol URLs in the web - url

Is there any this (look above) certain types URLs in the Internet? I need this urls for testing purpose.
I've found couple working RTSP urls:
rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov
rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
Also I've seen this topic, but it doesn't have working links for now, at least I haven't found.
Does anyone can help me?

Use Spydroid application which will record from your mobile camera and provides RTSP livestream.
You can use RTSP url provided by Spydroid to stream on your application.
Here is the link
https://github.com/fyhertz/spydroid-ipcamera

I had exact same problem searching for live rtmp streams, unfortunately someone closed first popular question found by google that you mentioned, hope this topic will live.
Urls I was able to find:
//cartoon
rtmp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov
//car ad
rtmp://s3b78u0kbtx79q.cloudfront.net/cfx/st/honda_accord

Related

How to find out what my live stream URL is?

I am trying to stream from obs or similar to maybe restream, but I also want to send the feed to a custom RTMP player on my site, it's asking for the Live Streaming URL. How can I find that?
I believe obs asks you to connect to a streaming platform (I think this is what you meant by "restream"). Depending on the platform you are streaming to (Twitch, Youtube, etc), then you would need to get the URL from that site. Connect to one of these first and it should give you a URL. I think YouTube requires 24 hours to enable live streaming.
If you can stream directly to your website I am not aware of it. Reason being, in most cases you have a dynamic IP or port that is not open for your website to view the original stream from your Obs software/computer.

How to create an ONVIF compliant interface using PiCam without third party codes?

I was looking through a lot of questions and answers about ONVIF compliant solutions for raspberry pi, but most of them provide incomplete solutions to my problem. I am looking for a way to make the Raspberry Pi Camera (Not an USB camera) into an ONVIF compliant camera which streams out in RTSP when needed.
Here is a similar question on how to implement ONVIF compliant interface that I've already tried to answer, but since in this case I guess you just want the video stream and using gSoap or anything would violate the third party software limitation, here is what I would do:
1) For an ONVIF client to be able to retrieve your stream URL, you need to implement a response to the GetStreamUri ONVIF request - through that you can return the actual RTSP link and if you have some sort of RTSP server running (I guess live555 is the most common choice these days) then the client will continue connecting to the RTSP server and will get the stream. I assume there are some out-of-the-box RTSP streaming solutions for Raspberry Pi so I won't talk about how to setup live555.
2) For the GetStreamUri to work, the client needs to know a profile token for this specific stream. This is why you need to implement the GetProfiles request. I assume since you are writing a solution for an exact use case, just predefine the xml response to this request and with a single profile and a hardcoded token. The GetProfiles request itself does not depend on any input parameters so you should be safe here. The ONVIF client may as well send some authorization headers, but you might for start just as well ignore them and implement authorization when the actual streaming is running. The ONVIF client may as well send a lot of other requests like capabilities etc., but you could ignore those for now. One important request is GetSystemDateAndTime - ONVIF clients query this since the timestamp is used in the authorization token.
What I would do is create a simple C/C++ web server with predefined xml answers for these 3 requests, take a general ONVIF client like ODM (Onvif Device Manager) and try to connect to the camera from it and see what happens, if any other requests are issued that block the flow or not. My guess is that it could actually work with these three in the following order: GetSystemDateAndTime -> GetProfiles -> GetStreamUri. I could be wrong and the client might query something else and not receiving an answer could make it stop from taking any further actions, but I am not sure about this.

How can http:// be changed to abc:// and can wireshark capture this traffic?

I've seen this before, but never knew how it is accomplished.
What is the http for? Does it direct my request? Is this related to MIME Types? How is it like saying ftp:// ?
http:// ftp:// file:// etc. are some of many URI Schemes
You're not mentioning any specific application so it's hard to answer your questions. Basicaly the URI scheme tells the application that handles to URI what is the URI for and what protocol should be used.
For example the web browsers support many protocols including HTTP, FTP, direct local file access etc. You can tell your browser to open file://path/to/local/file.html and it'll access the file from disk. You can also tell it to open ftp://server/path/to/file.html and it'll load the file from FTP server.
It's allowed to have any scheme you like in your application. For example a lot of mobile applications handle their URI schemes like fb:// for facebook or instagram:// for instagram.
Wireshark can capture any network traffic regardless of the URI scheme used. It works on low network layer and can capture even 'raw' wifi or ethernet traffic (that's huge simplification - please refer to the course mentioned in my profile bio)

How to track more than 400 keywords using Twitter Stream API?

The question is simply the title.
Please don't tell me to go for a Twitter Data reseller like Gnip or Datasift as they're so expensive.
Thank you.
Run more than one twitter stream, there is no other way around to solve this issue. For running multiple streamer basically you need a dedicated twitter user, ip address and registered application for each streamer.

determining full url from wireshark

i am watching a video stream from a proprietary app and i want to know the URL it's connecting to. note that in this case, i know the URL that it connects to but am curious how i'd determine it using wireshark.
i have wireshark open and i let it scan for a few seconds. i looked at the results, and all i was able to determine was the url and port of the site that's providing the stream. there's a series of URL parameters that are important as well. is there a way with wireshark to see the whole url that the app is connecting to?
A full URL is the concatenation of 'host' and 'path' ('path' is URI in wireshark's jargon).
The concatenation of these strings usually does not pass on wire - you will not see it in wireshark - and it is not required by HTTP.
Therefore, you have to concatenate them on you own, either manually or using some software as the one proposed by the writer of the lua dissector.
Example:
GET /path HTTP/1.1
Host: www.amazon.com
thus, the full URL is: www.amazon.com/path
There is no such thing as a "whole" url. An application may connect to many servers during it's lifetime.There could be different servers for authentication, configuration, logging, data, etc.
Wireshark is a low-level monitoring tool. You can choose to watch the packets of a specific osi-layer and add filters to limit the output. But I don't think it can aggregate all the incoming connections of a specific application.
Please, check out following custom dissector written in Lua, that helps showing full URL in wireshark HTTP captures
Feel free to ask any questions regarding it, upvoting is preferred as well ;)

Resources