Replies: 12 comments 2 replies
-
+1 for looped .ts file! |
Beta Was this translation helpful? Give feedback.
-
Ooh, this is a great idea 👏🏻 |
Beta Was this translation helpful? Give feedback.
-
this would make it difficult to detect on the client side that the stream ended / died and automatic fall-back to another source URL would be broken. Imho you'd better handle such problems in your client side code |
Beta Was this translation helpful? Give feedback.
-
@basisbit I don‘t See a problem with my feature proposal.
As it shouldn’t be mandatory to use a fallback loop, you should be able to decide (on a per stream basis) if you want to use a loop or not. But there are also occurencies where a professional-broadcast-like behavior with a loop would be the better choice or even needed. I don’t want this feature to be mandatory, and I agree with you in this part, that there may be situations where it isn’t needed or is even an unwanted difficulty. |
Beta Was this translation helpful? Give feedback.
-
I think this is a good idea. I will create this task in our backlog. However, this is a very large task for the following reasons, so it will probably take a very long time to be supported.
|
Beta Was this translation helpful? Give feedback.
-
I agree with @basisbit. It's definitely easy to get excited about the many possibilities of OME, but the best thing for everybody is if the OME team can focus on the core functions, compatibility and performance. Your request might get more traction in the OvenPlayer project actually. The good news is, OvenPlayer already has methods and hooks which should let you accomplish what you're looking for. E.g. player.on('stateChanged') or player.on('allPlaylistEnded') could then trigger player.load({yourFallbackSource}) And OME has a REST API which can quickly tell you if the stream is actually online - you could periodically query the status of the live stream from the client and if it's not online, reload the fallback source whenever the player fires a 'complete' event. The REST API alone solves this concern:
E.g. a REST API call might change the error message on the player from 'Connection Error' to 'Stream Offline'. |
Beta Was this translation helpful? Give feedback.
-
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Beta Was this translation helpful? Give feedback.
-
Keep active for the future |
Beta Was this translation helpful? Give feedback.
-
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Beta Was this translation helpful? Give feedback.
-
Not stale |
Beta Was this translation helpful? Give feedback.
-
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Beta Was this translation helpful? Give feedback.
-
This has been released. You can do this with the right combination of FallbackStream and Program. |
Beta Was this translation helpful? Give feedback.
-
I'm sorry that I'm bothering you again with a feature request, but while evaluating some use-cases I found some interesting additions.
Is your feature request related to a problem? Please describe.
Whenever a source disconnects due to an connection issue or an other technical problem, the stream goes offline.
The same applies if the source hasn't started publishing or the stream has ended.
But if the stream is offline the user doesn't know if it's a problem on his side or on the server side.
Describe the solution you'd like
So it would be very useful to have the option to define a video (or image?) wich then is looped when the stream is offline.
And if the source reconnects the stream replaces the loop again, and everything is working again.
This could also be extended to play a pre-roll loop (the same loop file), until the live source starts publishing.
This would create an always-on stream, which can also be very useful in some use cases, but without the need of continuous streaming.
I think you should be able to define the loop on a per stream basis.
The same applies to the feature in general, and you should be able to enable/disable it on a per stream Basis too.
This would be like an combination of LoopUntilLive, an Plugin for Wowza Streaming Engine, and the streamRIP plugin for nginx-rtmp.
Also it should be combined with other features, like recording, so that the looping isn't recorded at all, but only the actual stream from the source itself.
Describe alternatives you've considered
Using other services, but they are not as good in regarding latency or not open-source.
Or using a combination of streamRIP and OME, wich adds a lot of latency, so this doesn't make much sense over using only nginx-rtmp.
Additional context
Have a look at Wowza's LoopUntilLive and streamRIP for nginx-rtmp.
Beta Was this translation helpful? Give feedback.
All reactions