Wowza Community

play method not called for RTSP

Hi,

I am working with Wowza 3.6.4. I have made a module to intercept the requests like demonstrated in the javadoc of ModuleCore, the intent being to rewrite the URL. It works fine when I do a RTMP query, but when I query the same video with RTSP, the play method is not invoked.

How is it possible to have this behaviour (URL rewriting) for RTSP ?

Hi,

There are different hooks for rtmp and rtsp

for rtsp you could use

onRTSPSessionCreate

or you could also use the alias notifier of which there is a tutorial here

https://www.wowza.com/docs/how-to-use-the-imediastreamnamealiasprovider2-interface

Andrew.

onHTTPSessionCreate handles all the HTTP streaming types.

Richard

Hi,

It is not possible to modify the playlists generated by Wowza at this time. If you can provide the kind of modifications you are looking at these can be passed to our feature request list. This does not mean they will be added, but will considered.

You can intercept the calls for each segment request with

IVHostHTTPStreamerRequestValidator

You will need to dig around on how to implement it. It is a Vhost hook so

vhost.setHTTPStreamerRequestValidator() is required.

Andrew.

Thanks! Would the alias notifier also works for other types of streaming (HDS, HLS, smoothstreaming and MPEG-DASH) ?

Thank you very much.

For HLS (and more generally for HTTP adaptative streaming), it seems that onHTTPSessionCreate is invoked only when a playlist is queried, but not when a segment is queried. Is it possible to hook those queries as well ? In addition to that, is it possible to modifiy the playlists auto-generated by Wowza to modify them before they are to the end-user ?

One of my goals is to keep track of what had been downloaded. For HLS, Wowza seems to generate a new playlist name for every query to the original url like http://127.0.0.1:1935/vod/definst/mp4:foo.mp4/playlist.m3u8. The segment names then matches the name of the playlist. So it seems that if I can get the content of the playlist served to the user, I would be able to associate each segment query to the corresponding query to the original url.

Is it possible to access to the playlist content that will be served in onHTTPSessionCreate ?

Is it possible to access to the duration of a segment for its path in IVHostHTTPStreamerRequestValidator.validateHTTPStreamerRequest ?