we're looking into a solution to get a more stable Wowza setup with multiple servers. We currently have a setup on which all incoming live streams (push from encoders or pulled from off-site origins) are chunked. So our 'live' application has all the LiveStreamPacketizers enabled. The problem with this is, that it takes more system resources, because of the 30 seconds of chunk data that needs to stay in memory for all three LiveStreamPacketizers (iOS/cupertino, Smooth and Zeri/sanjose).
In order to make it more stable, we have the following idea:
We are able to relay from one application to another application on the same Wowza server. We want to change the 'live' application in such a way that it does not create chunks anymore. It is only used for RTMP streaming. By creating another application called 'chunker' and enabling the LiveStreamPacketizers there, we can just relay those streams that really need it to the chunker and not all streams. This is done with the StreamNameAlias package and the StreamManager. This should reduce the system resources for that Wowza machine. Less chunking is less memory usage... Is this a correct assumption?
The second issue is the relaying of the chunks. We are thinking that we could do the same with relays: We relay an RTMP stream from our origin server to an edge server. On that edge server we relay it internally to the chunker application. And that in turn is chunking the stream. However, I think that this will take more resources of the machine than if when we use the LiveStreamPacketizer's repeater option. As I understand it, this will just relay the chunks from the origin to the edge, and not rechunk them on the edge. In other words, creating chunks from a RTMP stream is more resource demanding then relaying the chunks. Is this a correct assumption?
So to conclude:
- on our origin server we relay an incoming RTMP stream internally to the chunker application
- on the edge server we use the LiveStreamPacketizers repeater functionality
This sounds like the best solution for chunking with Wowza. Is this correct? Or are there other methods of doing this?