-
No need to use PushPublishRTMPAuthProviderAdobe actually. This is really interesting. Not working but could be useful …
-
Ok.
-
Thx.
Oups, seems to also have an issue with FMLE. Will investigate on this and let you know …
EDIT: Need to specify encoder IP address on HW side. My bad …
1/ Ok, it works now with Highwinds. With or without authentication. Credentials are set directly in stream name, using pattern [XXX]?encoderuser=[XXX]&encoderpassword=[XXX].
2/ @dptekco @rrlanham: This works:
publishers.put(stream, publisher1);
publishers.put(stream, publisher2);
But when publishers.remove(stream) is called, I still have these lines:
PushPublisher#IdleHandler.onIdle: validate
PushPublisher#PingResult.onResult: true
PushPublisher: ping OK
Guess WMS is still connected to one destination. Actually, this is not clear to me:
synchronized(publishers)
{
PushPublisherRTMP publisher = publishers.remove(stream);
if (publisher != null)
publisher.disconnect();
}
If I put several publishers, how can I disconnect them all ??
Thank you.
Up … (Never thought I would have to say that on WMS forums one day …)
Using Push Publishing Addon, can I push 1 stream to 2 destinations ?
Thank you Richard.
@Austin: The previous pages explain how to use this for Highwinds. Please read them …
Try:
publisher.setHostname(“fli003.dc1.hwcdn.net”);
publisher.setPort(1935);
publisher.setDstApplicationName(“zzz”);
publisher.setDstStreamName(“fli/444444-test2?encoderuser=user**&**encoderpassword=password”);
Weird. This is exactly how I used Highwinds last month and it worked.
Easy Charlie, I’m not complaining, just trying to help Austin.
No issue here with push and Highwinds …
Austin, what you need to know is not so far (Page 5) starting here.
You need to set encoder IP address on HW side, no need to use PushPublishRTMPAuthProviderAdobe, credentials are set in stream name and finally don’t forget ampersand …
Would it be possible to have the logging configured in such a way as to have the category of “pushPublish” rather than INFO server comment. If you were to change that then we wold be able to use something like
pushPublish appender
log4j.appender.pushPublish=org.apache.log4j.DailyRollingFileAppender
log4j.appender.pushPublish.DatePattern='.'yyyy-MM-dd
log4j.appender.pushPublish.File=${com.wowza.wms.ConfigHome}/logs/wowzamediaserver_pushPublish.log
log4j.appender.pushPublish.layout=com.wowza.wms.logging.ECLFPatternLayout
log4j.appender.pushPublish.layout.Fields=date,time,tz,x-event,x-category,x-severity,x-status,x-ctx,x-comment
log4j.appender.pushPublish.layout.OutputHeader=true
log4j.appender.pushPublish.layout.QuoteFields=false
log4j.appender.pushPublish.layout.Delimeter=tab
log4j.appender.pushPublish.layout.CategoryInclude=pushPublish
etc. Unless there is another way with log4j magic?
Thanks, Joe
To see published streams in JConsole you have to add IMediaStream to /conf/Server.xml /AdminInterface /ObjectList
Richard
I have done that and new tree item MediaStream appears, still no status or info for published streams
Two questions:
- What is the recommended way to configure multiple publishers for a single stream?
Should the publishers all be configured in the : onPublish -> synchronized(publishers) {} block? How would this be done because won’t publishers.put(), publishers.remove() only allow one unique stream in the collection?
i.e. this won’t work right?
publishers.put(stream, publisher1);
publishers.put(stream, publisher2);
- What is the recommended back-off implementation mentioned earlier in this thread to stagger publisher connections?
Thanks!
We haven’t had a chance to breakout the IDE and a test environment to try this yet. We just got a copy of the package and I was reviewing the sample for our use case, and noticed the possible issue.
Hi,
We are trying to use this module to push a stream to a destination that takes the form:
rtmp://(IP address]:1935/[app name]/[stream name] or
rtmp://(IP address]:1935/[app name]?[parameter list]/[stream name]
We try to achieve this with this bit of code:
// Destination stream
publisher.setHostname("[IP address]");
publisher.setPort(1935);
publisher.setDstApplicationName("[app name](?[parameter list])");
publisher.setDstStreamName("[stream name]");
It seems that doing so the module inserts an additional level definst to make the final URL: rtmp://(IP address]:1935/[app name](?[parameter list])/definst/[stream name].
Is it possible to not have this level automatically inserted? And if so, how should we modify the destination stream definition to do so?
Two further questions would be:
-
is there a maximum length that the application or stream name can have, and
-
can push-publish handle a parameter list preceded by a question mark
Thanks,
Peter
Hi Peter,
I have the module working with BitGravity, they don’t allow to transmit from this module to the Production origin.
If you need support please contact me.
Regards,
Alejandro
Peter,
The BG guys, in my case don’t allow to transmit to the Principal Origin, they disconnect me, I have talking with them and they are changed my Origin URL to uno PREWIEV Origin, this way works much better.
Possible you can have a similar issue, talk with them about your needs, they have a very good support too.
Regards,
Ale
Hi Austin, I have the module working with bitGravity, I can try to modify for use Highwinds, but i don’t have one account, contact me in private if you can give me one account for test.
Regards,
Ale
wmconsulting.info
Thanks Charlie,
I have the same issue… I have made a workarround using the /etc/hosts file into my linux system this way never need go to DNS but of course this workarround is horrible…
Regards,
Ale