Well, It's known issue, I just need to add 'seek' callback to video tag. I'll add it on weekends. I'm glad to hear that the first chunk (7 sec) is played and browsers understand fmp4 format.
On Thu, Apr 6, 2017 at 7:27 PM, Maxim Solodovnik <[email protected]> wrote: > OK > works for me in Chrome > Stops after 7sec. in FF :( > > > > On Thu, Apr 6, 2017 at 7:14 PM, Maxim Solodovnik <[email protected]> > wrote: > >> My bad >> Forgot to add jar with tomcat-websockets :( >> Will re-check >> >> On Thu, Apr 6, 2017 at 7:11 PM, Dmitriy - <[email protected]> wrote: >> >>> You are using tomcat-websocket-8.0.33, it must be >>> tomcat-embed-websocket-8.5.12.jar. >>> Please, download it from the maven repo and put into red5/lib/ directory. >>> >>> On Thu, Apr 6, 2017 at 6:57 PM, Maxim Solodovnik <[email protected]> >>> wrote: >>> >>>> FF: 52.0.2 (64-bit) >>>> >>>> The same log >>>> >>>> $ git remote -v >>>> origin [email protected]:Dima00782/om-video.git (fetch) >>>> origin [email protected]:Dima00782/om-video.git (push) >>>> $ git pull >>>> Already up-to-date. >>>> >>>> >>>> On Thu, Apr 6, 2017 at 6:54 PM, Maxim Solodovnik <[email protected]> >>>> wrote: >>>> >>>>> Ubuntu: 16.10 >>>>> Chrome: 57.0.2987.133 (64-bit) >>>>> >>>>> [INFO] [http-nio-0.0.0.0-5080-exec-4] org.red5.omvideo.SignalConnection >>>>> - User connected >>>>> [INFO] [http-nio-0.0.0.0-5080-exec-4] org.red5.omvideo.SignalConnection >>>>> - Reading and writing started. >>>>> Pushing sample @48 of 804 bytes (i=1) >>>>> Pushing sample @852 of 25 bytes (i=2) >>>>> [ERROR] [http-nio-0.0.0.0-5080-exec-4] org.red5.omvideo.SignalConnection >>>>> - Error java.io.IOException: java.util.concurrent.TimeoutException >>>>> java.io.IOException: java.util.concurrent.TimeoutException >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailureWithEncode(WsRemoteEndpointImplBase.java:558) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailure(WsRemoteEndpointImplBase.java:533) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMe >>>>> ssageBlock(WsRemoteEndpointImplBase.java:285) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at >>>>> org.apache.tomcat.websocket.WsSession.sendCloseMessage(WsSession.java:587) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:489) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailureWithEncode(WsRemoteEndpointImplBase.java:548) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailure(WsRemoteEndpointImplBase.java:533) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMe >>>>> ssageBlock(WsRemoteEndpointImplBase.java:285) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendByt >>>>> es(WsRemoteEndpointImplBase.java:134) [tomcat-websocket-8.0.33.jar:8 >>>>> .0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendBinary >>>>> (WsRemoteEndpointBasic.java:43) [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.red5.omvideo.SignalConnection$1.write(SignalConnection.java:65) >>>>> [classes/:na] >>>>> at org.mp4parser.support.AbstractBox.getBox(AbstractBox.java:119) >>>>> [isoparser-1.9.27.jar:na] >>>>> at >>>>> org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.write(FragmentedMp4Writer.java:121) >>>>> [streaming-1.9.27.jar:na] >>>>> at org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.write >>>>> Header(FragmentedMp4Writer.java:360) [streaming-1.9.27.jar:na] >>>>> at org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.accep >>>>> tSample(FragmentedMp4Writer.java:226) [streaming-1.9.27.jar:na] >>>>> at >>>>> org.red5.omvideo.ClassicMp4ContainerSource.call(ClassicMp4ContainerSource.java:182) >>>>> [classes/:na] >>>>> at org.red5.omvideo.SignalConnection.onOpen(SignalConnection.java:71) >>>>> [classes/:na] >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> ~[na:1.8.0_121] >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>> ~[na:1.8.0_121] >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> ~[na:1.8.0_121] >>>>> at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] >>>>> at >>>>> org.apache.tomcat.websocket.pojo.PojoEndpointBase.doOnOpen(PojoEndpointBase.java:66) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at >>>>> org.apache.tomcat.websocket.pojo.PojoEndpointServer.onOpen(PojoEndpointServer.java:70) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.init >>>>> (WsHttpUpgradeHandler.java:128) [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at >>>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:848) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1441) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) >>>>> [na:1.8.0_121] >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) >>>>> [na:1.8.0_121] >>>>> at >>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121] >>>>> Caused by: java.util.concurrent.TimeoutException: null >>>>> at >>>>> org.apache.tomcat.websocket.FutureToSendHandler.get(FutureToSendHandler.java:111) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMe >>>>> ssageBlock(WsRemoteEndpointImplBase.java:278) >>>>> [tomcat-websocket-8.0.33.jar:8.0.33] >>>>> ... 28 common frames omitted >>>>> [INFO] [http-nio-0.0.0.0-5080-exec-4] org.red5.omvideo.SignalConnection >>>>> - Close >>>>> [ERROR] [http-nio-0.0.0.0-5080-exec-4] org.red5.omvideo.SignalConnection >>>>> - Error java.io.IOException: java.util.concurrent.TimeoutException >>>>> java.io.IOException: java.util.concurrent.TimeoutException >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailureWithEncode(WsRemoteEndpointImplBase.java:558) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.handleS >>>>> endFailure(WsRemoteEndpointImplBase.java:533) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMe >>>>> ssageBlock(WsRemoteEndpointImplBase.java:285) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendByt >>>>> es(WsRemoteEndpointImplBase.java:134) ~[tomcat-websocket-8.0.33.jar: >>>>> 8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendBinary >>>>> (WsRemoteEndpointBasic.java:43) ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.red5.omvideo.SignalConnection$1.write(SignalConnection.java:65) >>>>> ~[classes/:na] >>>>> at org.mp4parser.support.AbstractBox.getBox(AbstractBox.java:119) >>>>> ~[isoparser-1.9.27.jar:na] >>>>> at >>>>> org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.write(FragmentedMp4Writer.java:121) >>>>> ~[streaming-1.9.27.jar:na] >>>>> at org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.write >>>>> Header(FragmentedMp4Writer.java:360) ~[streaming-1.9.27.jar:na] >>>>> at org.mp4parser.streaming.output.mp4.FragmentedMp4Writer.accep >>>>> tSample(FragmentedMp4Writer.java:226) ~[streaming-1.9.27.jar:na] >>>>> at >>>>> org.red5.omvideo.ClassicMp4ContainerSource.call(ClassicMp4ContainerSource.java:182) >>>>> ~[classes/:na] >>>>> at org.red5.omvideo.SignalConnection.onOpen(SignalConnection.java:71) >>>>> ~[classes/:na] >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> ~[na:1.8.0_121] >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>> ~[na:1.8.0_121] >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> ~[na:1.8.0_121] >>>>> at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] >>>>> at >>>>> org.apache.tomcat.websocket.pojo.PojoEndpointBase.doOnOpen(PojoEndpointBase.java:66) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at >>>>> org.apache.tomcat.websocket.pojo.PojoEndpointServer.onOpen(PojoEndpointServer.java:70) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.init >>>>> (WsHttpUpgradeHandler.java:128) ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at >>>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:848) >>>>> ~[tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1441) >>>>> ~[tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) >>>>> [na:1.8.0_121] >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) >>>>> [na:1.8.0_121] >>>>> at >>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >>>>> [tomcat-embed-core-8.5.12.jar:8.5.12] >>>>> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121] >>>>> Caused by: java.util.concurrent.TimeoutException: null >>>>> at >>>>> org.apache.tomcat.websocket.FutureToSendHandler.get(FutureToSendHandler.java:111) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMe >>>>> ssageBlock(WsRemoteEndpointImplBase.java:278) >>>>> ~[tomcat-websocket-8.0.33.jar:8.0.33] >>>>> ... 23 common frames omitted >>>>> [INFO] [pool-4-thread-1] org.red5.server.tomcat.WarDeployer - Deploy >>>>> wars with app start >>>>> >>>>> >>>>> On Thu, Apr 6, 2017 at 2:01 PM, Maxim Solodovnik <[email protected] >>>>> > wrote: >>>>> >>>>>> It was Chrome >>>>>> Will send log later today >>>>>> >>>>>> WBR, Maxim >>>>>> (from mobile, sorry for the typos) >>>>>> >>>>>> On Apr 6, 2017 13:32, "Dmitriy -" <[email protected]> wrote: >>>>>> >>>>>>> Did you used last version of om-video? >>>>>>> The message about error is too small. Can you send the full log, >>>>>>> please? >>>>>>> >>>>>>> I checked yesterday and everything worked fine on ubuntu 16.04 + >>>>>>> firefox. >>>>>>> >>>>>>> On Thu, Apr 6, 2017 at 10:00 AM, Maxim Solodovnik < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> OK, have tried "omvideo" app >>>>>>>> It doesn't play :( >>>>>>>> >>>>>>>> The best result: >>>>>>>> [INFO] [http-nio-0.0.0.0-5080-exec-3] >>>>>>>> org.red5.omvideo.SignalConnection - User connected >>>>>>>> [INFO] [http-nio-0.0.0.0-5080-exec-3] >>>>>>>> org.red5.omvideo.SignalConnection - Reading and writing started. >>>>>>>> Pushing sample @48 of 804 bytes (i=1) >>>>>>>> Pushing sample @852 of 25 bytes (i=2) >>>>>>>> >>>>>>>> Then TimeoutException :((( >>>>>>>> >>>>>>>> >>>>>>>> On Fri, Mar 31, 2017 at 9:26 AM, Maxim Solodovnik < >>>>>>>> [email protected]> wrote: >>>>>>>> > Thanks, >>>>>>>> > Will try it this week end :) >>>>>>>> > >>>>>>>> > On Fri, Mar 31, 2017 at 3:08 AM, Dmitriy - <[email protected]> >>>>>>>> wrote: >>>>>>>> >> >>>>>>>> >> The estimate depends on what stream we receive from camera. >>>>>>>> >> >>>>>>>> >> On Fri, Mar 31, 2017 at 3:07 AM, Dmitriy - <[email protected]> >>>>>>>> wrote: >>>>>>>> >>> >>>>>>>> >>> Well, I've updated my om-video app recently so it can play the >>>>>>>> movie now. >>>>>>>> >>> You can try it. >>>>>>>> >>> Now for live camera you need just replace the input stream to >>>>>>>> what we >>>>>>>> >>> want. >>>>>>>> >>> >>>>>>>> >>> If we can produce h264 stream of bytes from RTMP stream then we >>>>>>>> can play >>>>>>>> >>> it in a browser. >>>>>>>> >>> >>>>>>>> >>> On Thu, Mar 30, 2017 at 10:49 PM, Maxim Solodovnik < >>>>>>>> [email protected]> >>>>>>>> >>> wrote: >>>>>>>> >>>> >>>>>>>> >>>> Good to know :) >>>>>>>> >>>> Can you estimate, when we can try to play live camera stream? >>>>>>>> :) >>>>>>>> >>>> >>>>>>>> >>>> On Thu, Mar 30, 2017 at 10:47 PM, Dmitriy - < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>> >>>>>>>> >>>>> Sorry for typos :) >>>>>>>> >>>>> >>>>>>>> >>>>> On Thu, Mar 30, 2017 at 10:45 PM, Dmitriy - < >>>>>>>> [email protected]> >>>>>>>> >>>>> wrote: >>>>>>>> >>>>>> >>>>>>>> >>>>>> Hello! >>>>>>>> >>>>>> I have a good news. >>>>>>>> >>>>>> >>>>>>>> >>>>>> My parser https://github.com/Dima00782/om-video produces >>>>>>>> right mp4 >>>>>>>> >>>>>> video, and it can be played in browser by chunks. >>>>>>>> >>>>>> >>>>>>>> >>>>>> I've converted the avengers mp4 clip h264, pcm into >>>>>>>> fragmented mp4 >>>>>>>> >>>>>> format with my parser and put it into this demo >>>>>>>> >>>>>> (https://github.com/nickdesaulniers/netfix/blob/gh-pages/dem >>>>>>>> o/bufferWhenNeeded.html). >>>>>>>> >>>>>> And it has played! The video is downloading by chunks and >>>>>>>> video tag >>>>>>>> >>>>>> play it online. >>>>>>>> >>>>>> So I must see at the demo and modify my demo to play video >>>>>>>> in browser >>>>>>>> >>>>>> via stream from java. >>>>>>>> >>>>>> >>>>>>>> >>>>>> >>>>>>>> >>>>>> On Thu, Mar 30, 2017 at 9:36 PM, Maxim Solodovnik >>>>>>>> >>>>>> <[email protected]> wrote: >>>>>>>> >>>>>>> >>>>>>>> >>>>>>> Hello Dmitriy, >>>>>>>> >>>>>>> >>>>>>>> >>>>>>> How is your work? any good news? >>>>>>>> >>>>>>> >>>>>>>> >>>>>>> -- >>>>>>>> >>>>>>> WBR >>>>>>>> >>>>>>> Maxim aka solomax >>>>>>>> >>>>>> >>>>>>>> >>>>>> >>>>>>>> >>>>>> >>>>>>>> >>>>>> >>>>>>>> >>>>>> -- >>>>>>>> >>>>>> Regards, >>>>>>>> >>>>>> Dmitry Bezheckov. >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> -- >>>>>>>> >>>>> Regards, >>>>>>>> >>>>> Dmitry Bezheckov. >>>>>>>> >>>> >>>>>>>> >>>> >>>>>>>> >>>> >>>>>>>> >>>> >>>>>>>> >>>> -- >>>>>>>> >>>> WBR >>>>>>>> >>>> Maxim aka solomax >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>> -- >>>>>>>> >>> Regards, >>>>>>>> >>> Dmitry Bezheckov. >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> -- >>>>>>>> >> Regards, >>>>>>>> >> Dmitry Bezheckov. >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > -- >>>>>>>> > WBR >>>>>>>> > Maxim aka solomax >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> WBR >>>>>>>> Maxim aka solomax >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Regards, >>>>>>> Dmitry Bezheckov. >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> WBR >>>>> Maxim aka solomax >>>>> >>>> >>>> >>>> >>>> -- >>>> WBR >>>> Maxim aka solomax >>>> >>> >>> >>> >>> -- >>> Regards, >>> Dmitry Bezheckov. >>> >> >> >> >> -- >> WBR >> Maxim aka solomax >> > > > > -- > WBR > Maxim aka solomax > -- Regards, Dmitry Bezheckov.
