0

I have generated MP4 files of a live streaming done using Kurento Media Server 6.10. The saved file does play in the chrome and other browsers but do not play in Safari browsers.

The video to be played is being sent as a stream with response code as 206 (as required by safari browser

I have tried autoplay tag in . Have looked into the encoding of the video and it is a proper mp4 file.

I was not able to alter/code the moov atom metadata to the start of the video as stated here https://doc-kurento.readthedocs.io/en/6.10.0/knowledge/mp4.html#mp4-fast-start-in-kurento

Below is the code snippet which records my video.

RecorderEndpoint recorderEndpointA =  new RecorderEndpoint.Builder(pipeline,"file:///tmp/recording.mp4").withMediaProfile(MediaProfileSpecType.MP4).build();

masterWebRtc.connect(recorderEndpointA); 
//masterWebRtc is source, recorderEndpointA is sink

recorderEndpointA.record();

Modified from this code repo https://github.com/Kurento/kurento-tutorial-java/tree/master/kurento-one2one-call-recording

The video thus generated should be played as a streamed video over the internet on the page rendered in safari browsers.

I have uploaded one of such sample over here

https://drive.google.com/open?id=1YMnOMaJ1EQDHWezxkMY-JYHzKxmwO8H2

  • What errors are you seeing and are you able to share a link to a sample video which does not play? – Mick Sep 23 '19 at 16:41
  • Hi @Mick I faced this issue `Plug-in handled load` . Unfortunately I cannot share the video file due to copyright issues, but the video file was generated as an output of this code example - https://github.com/Kurento/kurento-tutorial-java/tree/master/kurento-one2one-call-recording – Aashirwad Gupta Sep 23 '19 at 17:37
  • Could you put another video through the code and share that - it might help people isolate the issue? – Mick Sep 23 '19 at 20:44
  • Hi @Mick I have edited the question and uploaded the sample – Aashirwad Gupta Sep 24 '19 at 05:30
  • That video actually does play in Safari, for me at least, which is good as it probably means your encoding and packing etc is fine, There are some reported issues with some servers interaction with Safari so this may be something to do with it. It might be worth testing a video which does not work on a couple of different server to see if it works on one and not another. – Mick Sep 24 '19 at 10:32
  • Hi @Mick the link will play fine as it is being served from drive. However the moment we try to play via our server (https) in a streamed manner (byte-range, file to be sent with status 206 all taken care) it doesn't play. – Aashirwad Gupta Sep 24 '19 at 12:34
  • Also to mention, the server we use is tomcat 7 – Aashirwad Gupta Sep 24 '19 at 12:41
  • If you host the file on some other server, e.g. a simple node server to test - does it work? If so this seems similar to a problem which is discussed more than answered here (sorry!): https://stackoverflow.com/a/32998689/334402 If you can shed any light having looked at this please share as it would be great to close this out. – Mick Sep 24 '19 at 12:59
  • Hi Mick, I tried to stream the media directly from the server, bypassing any security layer. I used browser stack to verify the video play. I noticed that no matter what I change there is always this class appended on the html page created while fetching the video directly. ```media-document iPhone invalid video``` – Aashirwad Gupta Oct 07 '19 at 11:07

0 Answers0