v1.0.0 wrong path for streams

66 views
Skip to first unread message

smival

unread,
Oct 31, 2013, 5:35:59 AM10/31/13
to red5in...@googlegroups.com
Hi 
Found stable version for my recordings.
I am using following code:

@Override
 
public void streamBroadcastStart(IBroadcastStream stream)
 
{
 
String file = stream.getPublishedName();
 
 
try {
 stream
.saveAs(file, false);
 
} catch (Exception e) {
 logger
.error("Error while saving stream: {}", stream.getPublishedName());
 
} finally {
 
super.streamPublishStart(stream);
 
}
 
}


This example works fine. But if I need make a child scope (my_app/123) in windows version this also works 
and we can see such folder: webapps/my_app/streams/123/. However for linux version (zip or tarball archives) we can see:
webapps/123/streams/123/

Of course I cant use mentioned path for making a playlist. How to fix it?
For new versions like 1.0.1 and later I dont have this issue, but last versions does not has stable recording.

Valentin.

smival

unread,
Nov 3, 2013, 10:47:55 PM11/3/13
to red5in...@googlegroups.com
ok I found solution of mentioned issue.
Use not default StreamNameGenerator with resolvesToAbsolutePath == true; (attached)

But now a captured this error when I use DemoService (from oflaDemo) for getting a list of streams (attached):

12:30:00 [ERROR] [NioProcessor-2] org.red5.server.service.ServiceInvoker - Service invocation error
java
.lang.reflect.InvocationTargetException: null
        at sun
.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_27]
        at sun
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.6.0_27]
        at sun
.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.6.0_27]
        at java
.lang.reflect.Method.invoke(Method.java:616) ~[na:1.6.0_27]
        at org
.red5.server.service.ServiceInvoker.invoke(ServiceInvoker.java:198) [red5.jar:na]
        at org
.red5.server.service.ServiceInvoker.invoke(ServiceInvoker.java:115) [red5.jar:na]
        at org
.red5.server.net.rtmp.RTMPHandler.invokeCall(RTMPHandler.java:157) [red5.jar:na]
        at org
.red5.server.net.rtmp.RTMPHandler.onInvoke(RTMPHandler.java:399) [red5.jar:na]
        at org
.red5.server.net.rtmp.BaseRTMPHandler.messageReceived(BaseRTMPHandler.java:130) [red5.jar:na]
        at org
.red5.server.net.rtmp.RTMPMinaIoHandler.messageReceived(RTMPMinaIoHandler.java:164) [red5.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:716) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:427) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:245) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796) [mina-core-2.0.4.jar:na]
        at org
.red5.server.net.rtmpe.RTMPEIoFilter.messageReceived(RTMPEIoFilter.java:124) [red5.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:715) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:668) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:657) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1141) [mina-core-2.0.4.jar:na]
        at org
.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) [mina-core-2.0.4.jar:na]
        at java
.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) [na:1.6.0_27]
        at java
.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.6.0_27]
        at java
.lang.Thread.run(Thread.java:679) [na:1.6.0_27]
Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/catalina/loader/WebappClassLoader) previously initiated loading for a different type with name "org/springframework/core/io/Resource"
        at java
.lang.ClassLoader.defineClass1(Native Method) ~[na:1.6.0_27]
        at java
.lang.ClassLoader.defineClass(ClassLoader.java:634) ~[na:1.6.0_27]
        at java
.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.6.0_27]
        at org
.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2818) ~[catalina-6.0.32.jar:6.0.32]
        at org
.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159) ~[catalina-6.0.32.jar:6.0.32]
        at org
.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647) ~[catalina-6.0.32.jar:6.0.32]
        at org
.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) ~[catalina-6.0.32.jar:6.0.32]
        at org
.red5.demos.oflaDemo.DemoService.addToMap(DemoService.java:60) ~[DemoService.class:na]
        at org
.red5.demos.oflaDemo.DemoService.getListOfAvailableFLVs(DemoService.java:43) ~[DemoService.class:na]
       
... 35 common frames omitted



четверг, 31 октября 2013 г., 18:35:59 UTC+9 пользователь smival написал:
StreamNameGenerator.java
DemoService.java

Dominick Accattato

unread,
Nov 5, 2013, 12:40:39 PM11/5/13
to red5in...@googlegroups.com
Somehow it seems that the type "Resource" is being loaded from different places?

Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/catalina/loader/WebappClassLoader) previously initiated loading for a different type withname "org/springframework/core/io/Resource"

which would cause the error. Do you have any other types with that name? Do you have any spring library dependencies in the webapp lib directory?


--
 
---
You received this message because you are subscribed to the Google Groups "red5" group.
To unsubscribe from this group and stop receiving emails from it, send an email to red5interest...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
Dominick Accattato
Red5 Co-Project Manager & Engineer
---
Reply all
Reply to author
Forward
0 new messages