Hello I have a stream where i have to add fps informations on the sps nal. Is there please a way to do this with an existing stream without encoding it again?
Ismail Ouchatti R&D Engineer ioucha...@otonomy-aviation.com +33 557892163 +33 617052862 -----Message d'origine----- De : live-devel [mailto:live-devel-boun...@ns.live555.com] De la part de live-devel-requ...@ns.live555.com Envoyé : jeudi 26 janvier 2017 21:00 À : live-de...@ns.live555.com Objet : live-devel Digest, Vol 158, Issue 20 Send live-devel mailing list submissions to live-devel@lists.live555.com To subscribe or unsubscribe via the World Wide Web, visit http://lists.live555.com/mailman/listinfo/live-devel or, via email, send a message with subject or body 'help' to live-devel-requ...@lists.live555.com You can reach the person managing the list at live-devel-ow...@lists.live555.com When replying, please edit your Subject line so it is more specific than "Re: Contents of live-devel digest..." Today's Topics: 1. Re: Live streaming MKV video (mehdi semsarzadeh) 2. Re: When streaming RTP over TCP, Live555 Proxy Server sometimes does not reconnect to 'back end' device (Ross Finlayson) 3. Re: Proxy Server using TCP crashes (Ross Finlayson) 4. where to call signalNewFrameData (Roland Aigner) 5. Re: where to call signalNewFrameData (Ross Finlayson) 6. Re: where to call signalNewFrameData (Roland Aigner) ---------------------------------------------------------------------- Message: 1 Date: Wed, 25 Jan 2017 15:11:03 -0500 From: mehdi semsarzadeh <msems...@uottawa.ca> To: "LIVE555 Streaming Media - development & use" <live-de...@ns.live555.com> Subject: Re: [Live-devel] Live streaming MKV video Message-ID: <ca+40fewsm1mbidw5_k+fts2hl0wk+ehjxe4amcq+dyyqb5n...@mail.gmail.com> Content-Type: text/plain; charset="utf-8" Thanks for replying Ross, I understand that MKV is a container and not used for streaming, but the reason that I am using MKV is its ability to carry custom data within its container (which is injected in gstreamer as buffer's timestamp). I could manage to stream live MKV video using Live555 in certain conditions and by doing some modifications. Here is more detailed explanation for anyone who may be interested. In order to stream pipe's containing live MKV info we should make sure that Live555 is not seeking pipe at all. The are two possible cases where Live555 seeks inside the stream: 1 - If the MKV stream has seek related content (like cue) 2 - MKV parser in Live555 parses portion of the file during creating an instance of MatroskaFile (called in testMKVStreamer) and reads from start of file again when startPlaying method (trackState[i].sink->startPlaying) is called. to solve the 1st seek issue we should give Live555 an stream which does not need to perform any seek during streaming (in gstreamer you can disable seeking by setting streamable=true for matroskamux element). to solve the 2nd seeking issue we should modify doReadFromFile method in ByteStreamFileSource class, to avoid reading any memory area more than once. To do so, we can save the first read from pipe in a buffer and avoid reading the pipe for 2nd time and using the saved data in buffer, instead. And after that continue normal read from pipe. yours, Mehdi On Wed, Jan 18, 2017 at 4:19 PM, Ross Finlayson <finlay...@live555.com> wrote: > > I am trying to make a live555 rtsp server which streams live MKV video. > > The phrase ?streams live MKV video? doesn?t really make much sense, > because ?MKV? is a filename suffix that?s used for Matroska-format files. > > From reading the rest of your email, I gather that you?re trying to > pipe a Matroska-format file - as it?s being created - to our > ?testOnDemandRTSPServer? demo application, which can stream from from > a Matroska-format file. That won?t work, because when a server is > streaming from a Matroska-format file, it has to demultiplex the video > (and audio, if > present) from it, and this demultiplexing involves seeking within the > file, rather than just reading through the file sequentially. But you > can?t ?seek? within a pipe; that?s probably why you?re getting a crash. > > As you discovered, you *can* pipe a media file to our server, but that > will work only if the media file format is one (like ?.h264?) that is > read sequentially. > > It doesn?t really make much sense to try to stream a Matroska-format > file as it?s being created. Instead, just create a raw video stream, > and stream that. (Or else have our server read and stream the > discrete media frames, as described in our FAQ.) > > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > > > _______________________________________________ > live-devel mailing list > live-devel@lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.live555.com/pipermail/live-devel/attachments/20170125/347cff4c/attachment-0001.html> ------------------------------ Message: 2 Date: Fri, 27 Jan 2017 00:34:49 +1300 From: Ross Finlayson <finlay...@live555.com> To: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Subject: Re: [Live-devel] When streaming RTP over TCP, Live555 Proxy Server sometimes does not reconnect to 'back end' device Message-ID: <f94c2010-bb07-4280-8df6-75a38e16d...@live555.com> Content-Type: text/plain; charset=utf-8 Sorry for taking so long to get around to this? I have now installed a new version (2017.01.26) of the ?LIVE555 Streaming Media? code that incorporates your patch (mostly). Please let us know if you run into any problems with this. Ross Finlayson Live Networks, Inc. http://www.live555.com/ ------------------------------ Message: 3 Date: Fri, 27 Jan 2017 00:36:21 +1300 From: Ross Finlayson <finlay...@live555.com> To: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Subject: Re: [Live-devel] Proxy Server using TCP crashes Message-ID: <e1208389-6dc8-46c6-93f5-4ec4dd525...@live555.com> Content-Type: text/plain; charset=utf-8 Sorry for the delay. I wasn?t able to diagnose your problem, but it?s likely that it?s fixed in the newest version (2017.01.26) of the code. Please upgrade to this newest version, and let us know if you still see the problem. Ross Finlayson Live Networks, Inc. http://www.live555.com/ ------------------------------ Message: 4 Date: Thu, 26 Jan 2017 12:33:53 +0000 From: Roland Aigner <roland.aig...@aec.at> To: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Subject: [Live-devel] where to call signalNewFrameData Message-ID: <c5ae8c2599165b45a2f99ce0597c19ec66577...@outlook.aec.at> Content-Type: text/plain; charset="utf-8" Hi, I'm struggling a bit to get started. I was implementing a test RTSP server for streaming of live-encoded H.264 data. Since there may be hickups in delivering the data, especially in the beginning, where I have to do a lot of initialization, the NAL units buffer may underrun. In fact it does every time. Now I saw in your sample code of DeviceSource.cpp a template for signalNewFrameData which I apparently have to use if this happens. Now I'm not sure where a good place to call this would be. Ideally, I would call it from my subsession class, which is derived from OnDemanServerMediaSubsession, but I don't know where. Also, it seems like the subsession does not have a reference to the source, but only to the sink, at least in the sample implementations. I don't know if it is a good idea to keep a pointer to the source in the Subsession, maybe the source gets deleted somewhere and I'd try to access it... would you recommend this? I tried signaling from checkForAuxLine1, but I'm n! ot sure. Also, the call doesn't work like that as it seems to just trigger a new call of the source's deliverFrame, but not of its doGetNextFrame. I'm not sure if this is the way it's supposed to work. Is there a sample or documentation somewhere? Thanks, Roland ------------------------------ Message: 5 Date: Fri, 27 Jan 2017 02:41:30 +1300 From: Ross Finlayson <finlay...@live555.com> To: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Subject: Re: [Live-devel] where to call signalNewFrameData Message-ID: <9dd9f79e-c0f1-443f-8416-545260a56...@live555.com> Content-Type: text/plain; charset=us-ascii > Now I saw in your sample code of DeviceSource.cpp a template for > signalNewFrameData which I apparently have to use if this happens. Now I'm > not sure where a good place to call this would be. See http://lists.live555.com/pipermail/live-devel/2016-September/020285.html Ross Finlayson Live Networks, Inc. http://www.live555.com/ ------------------------------ Message: 6 Date: Thu, 26 Jan 2017 17:20:54 +0000 From: Roland Aigner <roland.aig...@aec.at> To: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Subject: Re: [Live-devel] where to call signalNewFrameData Message-ID: <c5ae8c2599165b45a2f99ce0597c19ec66577...@outlook.aec.at> Content-Type: text/plain; charset="iso-8859-1" Thanks. Seems like I'm trying to do 2b. What I'm still not getting out of this is, where and how I would call signalNewFrameData on my source object. I've now added a callback I'm calling from my encoder class, which is a bit messy, because the encoder actually wasn't supposed to be aware of the streaming code. Is there a place within the live555 classes where this would have to go? Another question: is there a way of figuring out that the connection was lost/closed? Currently, my session keeps sending forever, as I couldn't find out how to handle this. Best, Roland -----Urspr?ngliche Nachricht----- Von: live-devel [mailto:live-devel-boun...@ns.live555.com] Im Auftrag von Ross Finlayson Gesendet: Donnerstag, 26. Januar 2017 14:42 An: LIVE555 Streaming Media - development & use <live-de...@ns.live555.com> Betreff: Re: [Live-devel] where to call signalNewFrameData > Now I saw in your sample code of DeviceSource.cpp a template for > signalNewFrameData which I apparently have to use if this happens. Now I'm > not sure where a good place to call this would be. See http://lists.live555.com/pipermail/live-devel/2016-September/020285.html Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel ------------------------------ Subject: Digest Footer _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel ------------------------------ End of live-devel Digest, Vol 158, Issue 20 ******************************************* _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel