From andro.debevere at ugent.be Mon Mar 1 01:45:05 2010 From: andro.debevere at ugent.be (Andro Debevere) Date: Mon, 1 Mar 2010 10:45:05 +0100 Subject: [Live-devel] openRTSP In-Reply-To: References: <000901cab13b$f4123060$dc369120$@debevere@ugent.be> <00a801cab60a$aae3e270$00aba750$@debevere@ugent.be> Message-ID: <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> We are testing with the Darwin streaming server. This server does reuse RTP/RTCP socket numbers for multiple streams, only if the destination port numbers are different. To make it clear I added an example below: ---------------------------------------------------------------------------- ------------------------------------------ Sending request: SETUP rtsp://test/test.mp4/trackID=65544 RTSP/1.0 CSeq: 9 Transport: RTP/AVP;unicast;client_port=39616-39617 Session: 8926136580911184994 User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.02.10) Received SETUP response: RTSP/1.0 200 OK Server: DSS/6.0.3 (Build/526.3; Platform/Linux; Release/Darwin Streaming Server; State/Development; ) Cseq: 9 Session: 8926136580911184994 Last-Modified: Thu, 04 Feb 2010 08:19:02 GMT Cache-Control: must-revalidate Date: Mon, 01 Mar 2010 08:25:25 GMT Expires: Mon, 01 Mar 2010 08:25:25 GMT Transport: RTP/AVP;unicast;source=157.193.213.35;client_port=39616-39617;server_port=69 70-6971;ssrc=3CD1781C Setup "audio/MPEG4-GENERIC" subsession (client ports 39616-39617) ---------------------------------------------------------------------------- --------------------------------------------- Sending request: SETUP rtsp://test/test.mp4/trackID=65572 RTSP/1.0 CSeq: 27 Transport: RTP/AVP;unicast;client_port=39616-39617 Session: 8926136580911184994 User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.02.10) Received SETUP response: RTSP/1.0 200 OK Server: DSS/6.0.3 (Build/526.3; Platform/Linux; Release/Darwin Streaming Server; State/Development; ) Cseq: 27 Session: 8926136580911184994 Last-Modified: Thu, 04 Feb 2010 08:19:02 GMT Cache-Control: must-revalidate Date: Mon, 01 Mar 2010 08:25:25 GMT Expires: Mon, 01 Mar 2010 08:25:25 GMT Transport: RTP/AVP;unicast;source=157.193.213.35;client_port=39616-39617;server_port=69 72-6973;ssrc=53F273FA Setup "audio/MPEG4-GENERIC" subsession (client ports 39616-39617) ---------------------------------------------------------------------------- ------------------------------------------------ For the first track the client port numbers proposed are "39616-39617" and the server port numbers are "6970-6971". For the second stream, the client port numbers are also "39616-39617", but now the server port numbers are "6972-6973", as you suggested in your post. Although this is correct, the recording will not start, because in the select statement, one of these socket handles will never be set as readable, even though packets are send correctly. Therefore, in the syncOK function, we will never reach the point where s.fNumSyncedSubsessions equals s.fNumSubsessions and the recording will never start (remember, we need synchronized streams). To solve this, you either try to determine from which server port number each packet was sent (so you can set the synchronization flag for the corresponding track id manually), or you make sure all streams use different client port numbers (just by creating a NoReuse object or disabling the default SO_REUSEADDR option). As for the ephemeral socket numbers, I understand that you get random port numbers this way, but I don't like it holding socket handles open for sockets with an odd port number, especially in environments where resources are scarce. This is related to the SO_REUSEADDR issue above, because if set, you would get a working socket pair eventually, but if it is not set, there is a chance (however very unlikely) that you couldn't create a usable socket pair. I know this is nitpicking, just found it odd ;) -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Saturday, February 27, 2010 6:30 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] openRTSP >I did not ran into the limit of sockets per thread but using netstat, I >found out that sometimes two pairs of sockets used the same RTP and RTCP >port numbers. It's the server that decides what port numbers are used for RTP and RTCP for each stream. If RTP and/or RTCP port numbers are being reused, then that appears to be a bug in your server. (Our RTSP server code should not be doing this, so I hope your server is not using our code.) >Also, in the MediaSubsession::initiate(int useSpecialRTPoffset) function >only the pointer value of fRT(C)PSocket is checked after the creation of a >Groupsock object. But if the socket creation call returns -1 in the >constructor, the program will continue using the invalid socket handle. >Apart from the pointer value of fRT(C)PSocket, the value of fSocketNum >should be checked. Yes, you're probably right. >A last remark in the MediaSubsession::initiate(int useSpecialRTPoffset) >function: I noticed that when the user does not specify a start port value >(fClientsPortNum) sockets are created and checked if they are bound to an >even port. If they don't they are added to a socketHashTable and a new >socket is created until successful. Why not just create two sockets and >trying to bind them to a given port number, just as is done when the user >actually does give a start port number Because that's not what we want to do. Instead, we want the operating system to chose a port number for itself (this is, by convention, called an "ephemeral port number"). We just have to make sure that even port numbers are used for RTP. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From bhadraji.d at allaboutif.com Mon Mar 1 02:59:30 2010 From: bhadraji.d at allaboutif.com (Bhadraji D) Date: Mon, 1 Mar 2010 16:29:30 +0530 Subject: [Live-devel] sending & receiving mpeg2ts or mp4 (with mpeg2 , h264 videos or mp3 /AC3 audio) data using RTP Message-ID: Hi, I am trying to develop an application using RTP for sending and receiving the m2ts and mp4 data over RTP . I am novice to RTP and c++ ,just started the code flow in live555. guide me to do so, regards, rahul -------------- next part -------------- An HTML attachment was scrubbed... URL: From lroels at hotmail.com Tue Mar 2 02:41:41 2010 From: lroels at hotmail.com (Luc Roels) Date: Tue, 2 Mar 2010 10:41:41 +0000 Subject: [Live-devel] MediaSession::initiate 5 second hang Message-ID: Hi, Does anyone have an idea why the call to MediaSession::initiate() could take 5 seconds to complete. I cannot simulate this problem on my PC but other PC's seem to experience this 5 second delay when connecting to the same server. regards, Luc _________________________________________________________________ Windows 7: kijk live tv, rechtstreeks vanaf je laptop. http://windows.microsoft.com/nl-BE/windows7/products/home?os=win7 -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhisun.tech at gmail.com Tue Mar 2 17:21:52 2010 From: zhisun.tech at gmail.com (zhi sun) Date: Wed, 3 Mar 2010 09:21:52 +0800 Subject: [Live-devel] could live555 support input live stream via udp/rtp/rtsp, just like vlc? Message-ID: <54ced3241003021721u5a02a4f9x1d4e960f392861a6@mail.gmail.com> Hi, could live555 support input live stream via udp/rtp/rtsp, just like vlc? BTW, what is the difference between vlc and live555? I am trying to decide which one is better as rtsp server. -kv -------------- next part -------------- An HTML attachment was scrubbed... URL: From den.dgtex at gmail.com Tue Mar 2 18:12:57 2010 From: den.dgtex at gmail.com (Denis) Date: Wed, 3 Mar 2010 05:12:57 +0300 Subject: [Live-devel] RTSP client and jumping timestamps Message-ID: Hello! I use live555 to receive video- and audio-streams via RTSP. I found a strange behavior of RTSP client that got stuck my work. After a few seconds of media session transmission, timestamps of media-frames suddenly jumps. I tested different video-cameras from different vendors - behavior of the RTSP client is almost the same in all cases. It seems that VLC Player, which also uses live555, has the same problem. After a few seconds of transmission the picture got stuck, VLC re-buffers the stream, and continue playing. For some reasons I can't do the same way, I need to get the whole stream, without discarding and re-buffering. Here is the log of timestamps (in microseconds) of arriving video-frames, from the beginning of media-session: Original timestamp | Relative | Difference between current and previous frame | | 18`446`738`645`799`261`232 | 0 | 0 18`446`738`645`799`294`576 | 33`344 | 33`344 18`446`738`645`799`327`953 | 66`721 | 33`377 18`446`738`645`799`361`353 | 100`121 | 33`400 18`446`738`645`799`394`708 | 133`476 | 33`355 18`446`738`645`799`428`063 | 166`831 | 33`355 18`446`738`645`799`461`440 | 200`208 | 33`377 18`446`738`645`799`494`795 | 233`563 | 33`355 18`446`738`645`799`528`161 | 266`929 | 33`366 18`446`738`645`799`561`516 | 300`284 | 33`355 18`446`738`645`799`594`893 | 333`661 | 33`377 18`446`738`645`799`628`404 | 367`172 | 33`511 18`446`738`645`799`661`626 | 400`394 | 33`222 18`446`738`645`799`694`992 | 433`760 | 33`366 18`446`738`645`799`728`492 | 467`260 | 33`500 18`446`738`645`799`761`725 | 500`493 | 33`233 18`446`738`645`799`795`091 | 533`859 | 33`366 18`446`738`645`799`828`568 | 567`336 | 33`477 18`446`738`645`799`861`812 | 600`580 | 33`244 18`446`738`645`799`895`189 | 633`957 | 33`377 18`446`738`645`799`928`622 | 667`390 | 33`433 18`446`738`645`799`961`910 | 700`678 | 33`288 18`446`738`645`799`995`343 | 734`111 | 33`433 18`446`738`645`800`028`631 | 767`399 | 33`288 18`446`738`645`800`061`997 | 800`765 | 33`366 18`446`738`645`800`095`374 | 834`142 | 33`377 18`446`738`645`800`128`751 | 867`519 | 33`377 18`446`738`645`800`162`106 | 900`874 | 33`355 18`446`738`645`800`195`461 | 934`229 | 33`355 18`446`738`645`800`228`994 | 967`762 | 33`533 18`446`738`645`800`262`282 | 1`001`050 | 33`288 18`446`738`645`800`295`559 | 1`034`327 | 33`277 18`446`738`645`800`328`914 | 1`067`682 | 33`355 18`446`738`645`800`362`269 | 1`101`037 | 33`355 18`446`738`645`800`395`657 | 1`134`425 | 33`388 18`446`738`645`800`428`990 | 1`167`758 | 33`333 18`446`738`645`800`462`378 | 1`201`146 | 33`388 18`446`738`645`800`496`166 | 1`234`934 | 33`788 18`446`738`645`800`529`088 | 1`267`856 | 32`922 18`446`738`645`800`562`488 | 1`301`256 | 33`400 18`446`738`645`800`595`854 | 1`334`622 | 33`366 18`446`738`645`800`629`220 | 1`367`988 | 33`366 18`446`738`645`800`662`575 | 1`401`343 | 33`355 18`446`738`645`800`696`075 | 1`434`843 | 33`500 18`446`738`645`800`729`297 | 1`468`065 | 33`222 18`446`738`645`800`762`685 | 1`501`453 | 33`388 18`446`738`645`800`796`040 | 1`534`808 | 33`355 18`446`738`645`800`829`395 | 1`568`163 | 33`355 18`446`738`645`800`862`772 | 1`601`540 | 33`377 18`446`738`645`800`896`138 | 1`634`906 | 33`366 18`446`738`645`800`929`504 | 1`668`272 | 33`366 18`446`738`645`800`962`870 | 1`701`638 | 33`366 18`446`738`645`800`996`236 | 1`735`004 | 33`366 18`446`738`645`801`029`602 | 1`768`370 | 33`366 18`446`738`645`801`062`957 | 1`801`725 | 33`355 18`446`738`645`801`096`334 | 1`835`102 | 33`377 18`446`738`645`801`129`700 | 1`868`468 | 33`366 18`446`738`645`801`163`044 | 1`901`812 | 33`344 18`446`738`645`801`196`421 | 1`935`189 | 33`377 18`446`738`645`801`229`787 | 1`968`555 | 33`366 18`446`738`645`801`263`153 | 2`001`921 | 33`366 18`446`738`645`801`296`486 | 2`035`254 | 33`333 18`446`738`645`801`329`874 | 2`068`642 | 33`388 18`446`738`645`801`363`251 | 2`102`019 | 33`377 18`446`738`645`801`396`617 | 2`135`385 | 33`366 18`446`738`645`801`429`972 | 2`168`740 | 33`355 18`446`738`645`801`463`405 | 2`202`173 | 33`433 18`446`738`645`801`496`705 | 2`235`473 | 33`300 18`446`738`645`801`530`049 | 2`268`817 | 33`344 18`446`738`645`801`563`449 | 2`302`217 | 33`400 18`446`738`645`801`596`804 | 2`335`572 | 33`355 18`446`738`645`801`630`181 | 2`368`949 | 33`377 18`446`738`645`801`663`525 | 2`402`293 | 33`344 18`446`738`645`801`696`902 | 2`435`670 | 33`377 18`446`738`645`801`730`257 | 2`469`025 | 33`355 18`446`738`645`801`763`634 | 2`502`402 | 33`377 18`446`738`645`801`797`000 | 2`535`768 | 33`366 18`446`738`645`801`830`355 | 2`569`123 | 33`355 18`446`738`645`801`863`721 | 2`602`489 | 33`366 18`446`738`645`801`897`087 | 2`635`855 | 33`366 18`446`738`645`801`930`453 | 2`669`221 | 33`366 18`446`738`645`801`963`819 | 2`702`587 | 33`366 18`446`738`645`801`997`185 | 2`735`953 | 33`366 18`446`738`645`802`030`551 | 2`769`319 | 33`366 18`446`738`645`860`363`282 | 61`102`050 | 58`332`731 // Jump! 18`446`738`645`860`396`648 | 61`135`416 | 33`366 18`446`738`645`860`430`014 | 61`168`782 | 33`366 18`446`738`645`860`463`380 | 61`202`148 | 33`366 18`446`738`645`860`496`746 | 61`235`514 | 33`366 18`446`738`645`860`530`101 | 61`268`869 | 33`355 18`446`738`645`860`563`478 | 61`302`246 | 33`377 18`446`738`645`860`596`866 | 61`335`634 | 33`388 18`446`738`645`860`630`199 | 61`368`967 | 33`333 18`446`738`645`860`663`576 | 61`402`344 | 33`377 18`446`738`645`860`696`942 | 61`435`710 | 33`366 18`446`738`645`860`730`297 | 61`469`065 | 33`355 18`446`738`645`860`763`674 | 61`502`442 | 33`377 18`446`738`645`860`797`029 | 61`535`797 | 33`355 18`446`738`645`860`830`395 | 61`569`163 | 33`366 18`446`738`645`860`863`761 | 61`602`529 | 33`366 18`446`738`645`860`897`127 | 61`635`895 | 33`366 18`446`738`645`860`930`515 | 61`669`283 | 33`388 18`446`738`645`860`963`870 | 61`702`638 | 33`355 18`446`738`645`860`997`225 | 61`735`993 | 33`355 18`446`738`645`861`030`647 | 61`769`415 | 33`422 18`446`738`645`861`063`958 | 61`802`726 | 33`311 18`446`738`645`861`097`324 | 61`836`092 | 33`366 18`446`738`645`861`130`679 | 61`869`447 | 33`355 18`446`738`645`861`164`045 | 61`902`813 | 33`366 18`446`738`645`861`197`411 | 61`936`179 | 33`366 18`446`738`645`861`230`788 | 61`969`556 | 33`377 18`446`738`645`861`264`132 | 62`002`900 | 33`344 18`446`738`645`861`297`609 | 62`036`377 | 33`477 Regards, Denis. From finlayson at live555.com Tue Mar 2 19:14:50 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 2 Mar 2010 19:14:50 -0800 Subject: [Live-devel] RTSP client and jumping timestamps In-Reply-To: References: Message-ID: >I use live555 to receive video- and audio-streams via RTSP. I found a >strange behavior of RTSP client that got stuck my work. >After a few seconds of media session transmission, timestamps of >media-frames suddenly jumps. See (Also, you should not be concerning yourself with RTP timestamps; instead, just look at presentation times.) However, VLC handles this automatically, so I don't know why you would be having problems with that... -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From den.dgtex at gmail.com Tue Mar 2 23:38:38 2010 From: den.dgtex at gmail.com (Denis) Date: Wed, 3 Mar 2010 10:38:38 +0300 Subject: [Live-devel] RTSP client and jumping timestamps In-Reply-To: Message-ID: <2EBE59414C6D41808311FB23981E6A3B@computer> Hi, Ross! Thank you, the function RTPSource::hasBeenSynchronizedUsingRTCP() is exactly what I need. Now my RTSP wrapper gives video and audio to synchronizer only after all of MediaSubsessions are synchronized, and it works fine! Regards, Denis. -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Wednesday, March 03, 2010 6:15 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] RTSP client and jumping timestamps >I use live555 to receive video- and audio-streams via RTSP. I found a >strange behavior of RTSP client that got stuck my work. >After a few seconds of media session transmission, timestamps of >media-frames suddenly jumps. See (Also, you should not be concerning yourself with RTP timestamps; instead, just look at presentation times.) However, VLC handles this automatically, so I don't know why you would be having problems with that... -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From harishn at netxcell.com Wed Mar 3 01:20:11 2010 From: harishn at netxcell.com (Harish N) Date: Wed, 3 Mar 2010 14:50:11 +0530 Subject: [Live-devel] FW: compiling OpenRTSP (client ) and RTSPServer Message-ID: <03506EFE6361E040B15B65F285CEFF850AE09A49F9@nxlmail.netxcell.com> Still with the same problem.....If you can help me building each module separately It would be more appreciable.... because then I can know exactly where I am going wrong..... Thank you -----Original Message----- From: BONNEAU Guy [mailto:gbonneau at miranda.com] Sent: Tuesday, March 02, 2010 6:10 AM To: Harish N Subject: RE: [Live-devel] compiling OpenRTSP (client ) and RTSPServer Harish, I'm away for the whole week and have no access to my setup! Thus it is impossible for me to help you ! If you haven't solved your compile issue this week let me know next Monday. I will be back! Regards Guy Bonneau >-----Original Message----- >From: Harish N [mailto:harishn at netxcell.com] >Sent: Saturday, February 27, 2010 0:14 >To: BONNEAU Guy; live-devel at lists.live555.com >Subject: RE: [Live-devel] compiling OpenRTSP (client ) and RTSPServer > > >thank you friend....but i did include all the files....idont know where >went wrong.....but all it says is cannot link livemedia.lib with some >object file..... > >can you please tell me how to build individual modules...i mean steps to >build usageenvironment module...livemedia module ,groupsock etc using >visual studio2008 >thank you > >======================================================= >======================================================= > >from: BONNEAU Guy [gbonneau at miranda.com] >Sent: Friday, February 26, 2010 10:16 PM >To: Harish N >Subject: [Live-devel] compiling OpenRTSP (client ) and RTSPServer > >It seems your project doesn't include some files that contains the >missing links. For example check that you do include the files >DVVideoRTPSource.cpp and DVVideoRTPSource.hh, RTCP.cpp and RTCP.hh > >Regards >Guy Bonneau > > > > From live555 at mxwendler.net Wed Mar 3 05:13:05 2010 From: live555 at mxwendler.net (henniman) Date: Wed, 03 Mar 2010 14:13:05 +0100 Subject: [Live-devel] Stream to LAN: maximize Quality, minimize Latency Message-ID: Hi all, i recently interated live into my application as was amazed how simple and robust it is. now i want to stream live-generated images over a LAN with maximal quality and minimal latency. I have a RGBA image source, and i have an ffmpeg encoder to compress the video so far. Right now i can stream mpeg-2 with ffmpeg settings float video_qscale = 1.0; vcodec->gop_size = 0; vcodec->flags |= CODEC_FLAG_QSCALE; v_codec->global_quality = _video_st->quality = FF_QP2LAMBDA * video_qscale; this should create only intraframes. As a receiver i use VLC 1.05 with reduced cache ( 200 ms ) My results are: very good image quality but non-fluent playback. Every 1-2 seconds, there is a stutter/hang of 3-6 frames even when streaming from app to app at the same machine. Increasing VLC cache time does not change behaviour. Is it possible that there are non-continous timestamps somewhere? What would be the best strategy to create the best possible videostream? Network bandwidth is not so much an issue - a gigabit connection is available. 1) what is the best codec ( quality, encoding speed ) 2) best codec options ( only i-frames ) 3) best receiver - can i get advantages over eg. VLC if i re-implement the receiver on my own? Best regards, hendrik -- --- my live555 id --- From den.dgtex at gmail.com Wed Mar 3 03:35:27 2010 From: den.dgtex at gmail.com (Denis) Date: Wed, 3 Mar 2010 14:35:27 +0300 Subject: [Live-devel] MediaSubsession::videoWidth, videoHeight, videoFPS Message-ID: Hi! I'm trying to obtain video stream properties (frame resolution and FPS) via functions MediaSubsession::videoWidth(), MediaSubsession::videoHeight() and MediaSubsession::videoFPS(), but every time each function returns me 0. Should I do some advance steps or initialization to make those functions work properly? How can I obtain those video stream properties? Regards, Denis. From chouhan.nishesh at gmail.com Thu Mar 4 02:16:35 2010 From: chouhan.nishesh at gmail.com (nishesh chouhan) Date: Thu, 4 Mar 2010 15:46:35 +0530 Subject: [Live-devel] audio lags video Message-ID: Hi Ross, I am reading a/v from live source through socket in 2 different threads, In my aplication I am using class derived from FramedSource and in doGetNextFrame() I read from cyclic buffers and set the fPresentationTime etc, I wonder how can I use *hasBeenSynchronizedUsingRTCP and make sure the a/v timestamps are in sync, I do see SR pkts at client though I dont have any class derived from RTPSource, audio lags video most of the time....I set the *fPresentationTime from system time for both **audio and video, I have no clue why then its not in sync, pls help out. Thanks, Nishesh -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 4 15:26:06 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 4 Mar 2010 15:26:06 -0800 Subject: [Live-devel] MediaSubsession::videoWidth, videoHeight, videoFPS In-Reply-To: References: Message-ID: >I'm trying to obtain video stream properties (frame resolution and FPS) >via functions MediaSubsession::videoWidth(), >MediaSubsession::videoHeight() and MediaSubsession::videoFPS(), but >every time each function returns me 0. Only a few media streams put this information in the stream's SDP description, so receivers should not rely on it being present. Instead, this sort of information is usually obtained by the media decoder (when it decodes the actual video data). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 4 15:49:37 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 4 Mar 2010 15:49:37 -0800 Subject: [Live-devel] audio lags video In-Reply-To: References: Message-ID: >I am reading a/v from live source through socket in 2 different threads I hope you've read the FAQ entry about threads. >, In my aplication I am using class derived from FramedSource and in >doGetNextFrame() I read from cyclic buffers and set the >fPresentationTime etc, I wonder how can I use >hasBeenSynchronizedUsingRTCP and make sure the a/v timestamps are in >sync This applies only when you are *receiving* a RTP stream; not when you are transmitting a RTP stream. If you are transmitting a RTP stream, then you must make sure that the "fPresentationTime" values that you assign each outgoing frame are accurate (and aligned with 'wall clock' time - i.e., the time that you would get by calling "gettimeofday()"). >, I do see SR pkts at client though I dont have any class derived >from RTPSource If you are receiving a RTP stream, then you will have a class derived from "RTPSource" (if you are using our software). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From lroels at hotmail.com Fri Mar 5 00:16:36 2010 From: lroels at hotmail.com (Luc Roels) Date: Fri, 5 Mar 2010 08:16:36 +0000 Subject: [Live-devel] MediaSession:Initiate 5 second delay Message-ID: Hi, I found out the reason of the 5 second delay. It's coming from the ourIPAddress() function in GroupsockHelper.cpp where a multicast packet is sent to determine the source address. This sometimes seems to fail so the readSocket function hangs for 5 seconds. The reason it fails is probably the fact we are using livemedia in a multithreaded environment ( each thread having it's own livemedia instance though) so it might be possible that things go wrong. I've just commented out this code, getting the address directly works fine for us. regards, Luc _________________________________________________________________ Speel samen met je vrienden de spelletjes die Windows Live je aanbiedt! http://www.messengerbillboard.be/nl/play -------------- next part -------------- An HTML attachment was scrubbed... URL: From nilremm at gmail.com Fri Mar 5 02:33:48 2010 From: nilremm at gmail.com (nilremm) Date: Fri, 5 Mar 2010 11:33:48 +0100 Subject: [Live-devel] MPEG2 indexer with DVD Message-ID: <7ED129B4-77D9-417F-BC38-2F7182D29C39@gmail.com> Hi, I have a VOB files from a DVD and I extract the video stream in a TS directly with TsMuxer (audio is not mpega, so I strip it away). I pass the resulting TS in the MPEG2 indexer, but the tsx files remains at zero KB. If I transcode the file with VLC (VOB to TS) and then pass the transcoded TS to MPEG2 Indexer it works. However the quality is not sufficient for me. Basically I attend to stream a DVD with trickplay using live555, so is there a set of tools/process to use to be able to input a DVD and having a resulting TS that can be indexed without re-encoding the video ? Jerome From awesomeprojectgroup at gmail.com Fri Mar 5 09:03:07 2010 From: awesomeprojectgroup at gmail.com (Live Media Server) Date: Fri, 5 Mar 2010 22:33:07 +0530 Subject: [Live-devel] Where to register the file extension name in Live555 Message-ID: <7938759a1003050903v1b7c732aye442c5217fa6b234@mail.gmail.com> Hi We are trying to enhance the live 555 code to stream MP4 . We have developed the *parser* for it. Please tell us, where to register the extension name .MP4 (the file which registers the extensions). Kindly guide us how to proceed further. When i try to extend the if else loop which checks for extension by including MP4 ( in DynamicRTSPServer.cpp , line no 160 i am not able to even display an error message at the client side). Regards awesomeprojectgroup -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Fri Mar 5 20:49:16 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 5 Mar 2010 20:49:16 -0800 Subject: [Live-devel] MPEG2 indexer with DVD In-Reply-To: <7ED129B4-77D9-417F-BC38-2F7182D29C39@gmail.com> References: <7ED129B4-77D9-417F-BC38-2F7182D29C39@gmail.com> Message-ID: >I have a VOB files from a DVD and I extract the video stream in a TS >directly with TsMuxer (audio is not mpega, so I strip it away). >I pass the resulting TS in the MPEG2 indexer, but the tsx files >remains at zero KB. Please put this TS file on a publically-accessible web (or FTP) server, and post the URL (not the file itself) to this mailing list, so we can download it and examine it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 5 21:26:20 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 5 Mar 2010 21:26:20 -0800 Subject: [Live-devel] openRTSP In-Reply-To: <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> References: <000901cab13b$f4123060$dc369120$@debevere@ugent.be> <00a801cab60a$aae3e270$00aba750$@debevere@ugent.be> <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> Message-ID: >For the first track the client port numbers proposed are "39616-39617" and >the server port numbers are "6970-6971". For the second stream, the client >port numbers are also "39616-39617", but now the server port numbers are >"6972-6973" OK, the problem is that the *client* port numbers are the same for both streams. I don't know why the server does this, but in any case it's not something that we currently support in our code (to do so would require that we demultiplex based on SSRC, which is something that we don't do). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From tatterdemalian at hotmail.com Sun Mar 7 09:16:43 2010 From: tatterdemalian at hotmail.com (Tatterdemalian Anzulovic) Date: Sun, 7 Mar 2010 17:16:43 +0000 Subject: [Live-devel] Cygwin finally fixed the ip_mreq_source bug Message-ID: Just a heads-up, I tried to compile Live555 from source with cygwin, and got a make error I'd never received before (GroupsockHelper.cpp:482: error: redefinition of `struct ip_mreq_source'/usr/include/cygwin/in.h:128: error: previous definition of `struct ip_mreq_source'). A quick inspection of the file causing the problem revealed the following note:// NOTE TO CYGWIN DEVELOPERS:// The "defined(__CYGWIN32__)" test was added above, because - as of January 2007 - the Cygwin header files// define IP_ADD_SOURCE_MEMBERSHIP (and IP_DROP_SOURCE_MEMBERSHIP), but do not define ip_mreq_source.// This has been acknowledged as a bug (see ), but it's// not clear when it is going to be fixed. When the Cygwin header files finally define "ip_mreq_source",// this code will no longer compile, due to "ip_mreq_source" being defined twice. When this happens, please// let us know, by sending email to the "live-devel" mailing list.// (See to subscribe to that mailing list.)// END NOTE TO CYGWIN DEVELOPERSSo, I'm letting you know. Also, thanks for providing such well-documented source! If all Linux developers were so thorough, Microsoft Windows would be as obsolete as punch cards. From finlayson at live555.com Sun Mar 7 15:03:26 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 7 Mar 2010 15:03:26 -0800 Subject: [Live-devel] Cygwin finally fixed the ip_mreq_source bug In-Reply-To: References: Message-ID: Thanks for the report. The "|| defined(__CYGWIN32__)" test will be removed, starting from the next release of the software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Sun Mar 7 20:34:44 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 7 Mar 2010 20:34:44 -0800 Subject: [Live-devel] Stream to LAN: maximize Quality, minimize Latency In-Reply-To: References: Message-ID: >Right now i can stream mpeg-2 with ffmpeg settings > >float video_qscale = 1.0; >vcodec->gop_size = 0; >vcodec->flags |= CODEC_FLAG_QSCALE; >v_codec->global_quality = _video_st->quality = FF_QP2LAMBDA * video_qscale; > > >this should create only intraframes. As a receiver i use VLC 1.05 with >reduced cache ( 200 ms ) >My results are: very good image quality but non-fluent playback. >Every 1-2 seconds, there is a stutter/hang of 3-6 frames even >when streaming from app to app at the same machine. Increasing VLC >cache time does not change behaviour. Is it possible that there are >non-continous timestamps somewhere? I assume that you have a "MPEG1or2VideoStreamDiscreteFramer" object between your MPEG-2 encoder source object and your "MPEG1or2VideoRTPSink" object. (You should, assuming that your encoder source object generates discrete video frames - one at a time.) If (and only if) your stream contains "B" frames, then the resulting presentation times (coming out of the "MPEG1or2VideoStreamDiscreteFramer" object) will be non-monotonic, but this is normal, and expected (and will be handled properly by receiving clients - such as VLC). >3) best receiver - can i get advantages over eg. VLC if i re-implement the >receiver on my own? This is unlikely; VLC is generally a well-written application. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From andro.debevere at ugent.be Mon Mar 8 00:41:54 2010 From: andro.debevere at ugent.be (Andro Debevere) Date: Mon, 8 Mar 2010 09:41:54 +0100 Subject: [Live-devel] openRTSP In-Reply-To: References: <000901cab13b$f4123060$dc369120$@debevere@ugent.be> <00a801cab60a$aae3e270$00aba750$@debevere@ugent.be> <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> Message-ID: <001101cabe9b$34ff8610$9efe9230$@debevere@ugent.be> >OK, the problem is that the *client* port numbers are the same for both >streams. I don't know why the server does this, but in any case it's >not something that we currently support in our code (to do so would >require that we demultiplex based on SSRC, which is something that we >don't do). Just to make things clear, it is the client (openRTSP) that initially proposes the client port numbers to the server, not the other way around (why would a server choose ports on a client?, it doesn't have any idea which ports are already used on it). See the SETUP message from the client (openRTSP) to the server. In the server response the client port numbers are just copied and the server port numbers are added. Sending request: SETUP rtsp://test/test.mp4/trackID=6 RTSP/1.0 CSeq: 4 Transport: RTP/AVP;unicast;client_port=61426-61427 Session: 6993324177280988772 User-Agent: openRTSP.exe (LIVE555 Streaming Media v2009.09.28) Received SETUP response: RTSP/1.0 200 OK Server: DSS/6.0.3 (Build/526.3; Platform/Linux; Release/Darwin Streaming Server; State/Development; ) Cseq: 4 Session: 6993324177280988772 Last-Modified: Tue, 02 Feb 2010 13:14:41 GMT Cache-Control: must-revalidate Date: Mon, 08 Mar 2010 08:02:05 GMT Expires: Mon, 08 Mar 2010 08:02:05 GMT Transport: RTP/AVP;unicast;source=157.193.213.35;client_port=61426-61427;server_ port=6970-6971;ssrc=6F6104C5 Because the groupsock library uses the SO_REUSEADDR option as default, there's a chance that creating sockets will result in two socket pairs using the same port numbers, and the recording will fail as explained in my previous post. -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Saturday, March 06, 2010 6:26 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] openRTSP >For the first track the client port numbers proposed are "39616-39617" and >the server port numbers are "6970-6971". For the second stream, the client >port numbers are also "39616-39617", but now the server port numbers are >"6972-6973" OK, the problem is that the *client* port numbers are the same for both streams. I don't know why the server does this, but in any case it's not something that we currently support in our code (to do so would require that we demultiplex based on SSRC, which is something that we don't do). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From finlayson at live555.com Mon Mar 8 01:06:07 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 8 Mar 2010 01:06:07 -0800 Subject: [Live-devel] openRTSP In-Reply-To: <001101cabe9b$34ff8610$9efe9230$@debevere@ugent.be> References: <000901cab13b$f4123060$dc369120$@debevere@ugent.be> <00a801cab60a$aae3e270$00aba750$@debevere@ugent.be> <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> <001101cabe9b$34ff8610$9efe9230$@debevere@ugent.be> Message-ID: > >OK, the problem is that the *client* port numbers are the same for both >>streams. I don't know why the server does this, but in any case it's >>not something that we currently support in our code (to do so would >>require that we demultiplex based on SSRC, which is something that we >>don't do). > >Just to make things clear, it is the client (openRTSP) that initially >proposes the client port numbers to the server, not the other way around OK, now I understand the point you're making - sorry. Yes, it seems that you've run across a bug (which your code is more likely to trigger, because it creates a large number of client subsessions (and thus sockets) for a single RTSP stream). Please try the following: In the file "liveMedia/MediaSession.cpp", add the line NoReuse dummy; at line 638 - i.e., just after the statement Boolean success = False; Please let us know if this seems to prevent the problem from occurring. (If so, I'll add this to a future release of the code.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From andro.debevere at ugent.be Mon Mar 8 01:39:10 2010 From: andro.debevere at ugent.be (Andro Debevere) Date: Mon, 8 Mar 2010 10:39:10 +0100 Subject: [Live-devel] openRTSP In-Reply-To: References: <000901cab13b$f4123060$dc369120$@debevere@ugent.be> <00a801cab60a$aae3e270$00aba750$@debevere@ugent.be> <011301cab923$dfd8c600$9f8a5200$@debevere@ugent.be> <001101cabe9b$34ff8610$9efe9230$@debevere@ugent.be> Message-ID: <001401cabea3$34fe05d0$9efa1170$@debevere@ugent.be> I already did this for myself and I wrote it in a previous post: http://lists.live555.com/pipermail/live-devel/2010-February/011827.html This does solve the issue, and I only get in trouble now while testing if I start and stop the application too many times in a short time (due to a socket limitation, creating sockets returning a -1 socket handle that were not properly handled), but you already responded to this :) -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Monday, March 08, 2010 10:06 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] openRTSP > >OK, the problem is that the *client* port numbers are the same for both >>streams. I don't know why the server does this, but in any case it's >>not something that we currently support in our code (to do so would >>require that we demultiplex based on SSRC, which is something that we >>don't do). > >Just to make things clear, it is the client (openRTSP) that initially >proposes the client port numbers to the server, not the other way around OK, now I understand the point you're making - sorry. Yes, it seems that you've run across a bug (which your code is more likely to trigger, because it creates a large number of client subsessions (and thus sockets) for a single RTSP stream). Please try the following: In the file "liveMedia/MediaSession.cpp", add the line NoReuse dummy; at line 638 - i.e., just after the statement Boolean success = False; Please let us know if this seems to prevent the problem from occurring. (If so, I'll add this to a future release of the code.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From finlayson at live555.com Mon Mar 8 02:22:04 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 8 Mar 2010 02:22:04 -0800 Subject: [Live-devel] Where to register the file extension name in Live555 In-Reply-To: <7938759a1003050903v1b7c732aye442c5217fa6b234@mail.gmail.com> References: <7938759a1003050903v1b7c732aye442c5217fa6b234@mail.gmail.com> Message-ID: >Hi >We are trying to enhance the live 555 code to stream MP4 . We have >developed the parser for it. Please tell us, where to register the >extension name .MP4 (the file which registers the extensions). For the "LIVE555 Media Server" application, you would add a new branch to the "if" statement in the function "createNewSMS()" (in the file "mediaServer/DynamicRTSPServer.cpp"). Of course, you will also need to write and use a new "ServerMediaSubsession" subclass for this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From marcos at a5security.com Mon Mar 8 02:53:44 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Mon, 8 Mar 2010 11:53:44 +0100 Subject: [Live-devel] playMediaSession H264 Message-ID: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> Hi developers, I'm having some problems with an specific IP source of H264. The problem is on the response of PlayMediaSession. I send this: OPTIONS, DESCRIBE, SETUP and PLAY. when I send PLAY I receive BAD REQUEST from the Server. In all the other cases I receive OK. I don't understand where is the problem because I only have the problem with that server. With other servers (IP Cameras) I receive correctly the data. I tried VLC or QuickTime(with that server that give me errors) and looked the packets and they send the same and they receive OK after PLAY command. Any suggestion of where is the problem?. I'm using RTSPClient.cpp. Thanks in advance. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From harishn at netxcell.com Mon Mar 8 21:13:04 2010 From: harishn at netxcell.com (Harish N) Date: Tue, 9 Mar 2010 10:43:04 +0530 Subject: [Live-devel] compiling each modules individually in VS2008 Message-ID: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com> Regards, Harish NPD team From: Harish N Sent: Tuesday, March 09, 2010 10:42 AM To: 'live-devel at lists.live555.com' Subject: Hello all... I am working on LIVE555,on RTSPClient and RTSPserver......I need little help in compiling OpenRTSP using visual Studio 2008..i tried compiling but there few link errors in it..... So anyone who worked on it using vs2008 please do assist me..... even followed the steps mentioned in few of the sites....I did Google and used all the possible resources and ended up with few errors while compiling So anyone here in this group do tell me the steps to build each of the modules first, so that I would myself link each module again and run the OPENRTSP client and server...any help is really appreciable... thanks all -------------- next part -------------- An HTML attachment was scrubbed... URL: From bigskang at nimbustek.com Mon Mar 8 23:05:39 2010 From: bigskang at nimbustek.com (William) Date: Tue, 9 Mar 2010 16:05:39 +0900 Subject: [Live-devel] Streaming H.264 and PCM in a session. Message-ID: <001a01cabf56$ece677a0$c6b366e0$@com> I have written own codes that testOnDemandRTSPServer send two RTPs to a RTSP client; one is for H.264 NAL and another is for PCM. I referenced the case of mpeg1or2AudioVideoTest and I think it is possible. If only a type of RTP packet is received to VLC(audio or video), VLC can decode it with no problem. But if both types of RTP packets is received, VLC's video is always stopped and only sound is heard. Is my thought wrong? -------------- next part -------------- An HTML attachment was scrubbed... URL: From gbonneau at miranda.com Tue Mar 9 05:40:25 2010 From: gbonneau at miranda.com (BONNEAU Guy) Date: Tue, 9 Mar 2010 08:40:25 -0500 Subject: [Live-devel] compiling each modules individually in VS2008 In-Reply-To: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com> References: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com> Message-ID: <6353CA579307224BAFDE9495906E6916041B7D31@ca-ops-mail> I have a visual Studio 2008 setup with live555 that could help you ! Unfortunately my live555 library is not up to date ! I'll be back later today after a few checking with an updated library! Guy Bonneau From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Harish N Sent: Tuesday, March 9, 2010 0:13 To: live-devel at lists.live555.com Subject: [Live-devel] compiling each modules individually in VS2008 Regards, Harish NPD team From: Harish N Sent: Tuesday, March 09, 2010 10:42 AM To: 'live-devel at lists.live555.com' Subject: Hello all... I am working on LIVE555,on RTSPClient and RTSPserver......I need little help in compiling OpenRTSP using visual Studio 2008..i tried compiling but there few link errors in it..... So anyone who worked on it using vs2008 please do assist me..... even followed the steps mentioned in few of the sites....I did Google and used all the possible resources and ended up with few errors while compiling So anyone here in this group do tell me the steps to build each of the modules first, so that I would myself link each module again and run the OPENRTSP client and server...any help is really appreciable... thanks all -------------- next part -------------- An HTML attachment was scrubbed... URL: From Abhishek.Jain at honeywell.com Tue Mar 9 05:39:16 2010 From: Abhishek.Jain at honeywell.com (Jain, Abhishek (IE10)) Date: Tue, 9 Mar 2010 19:09:16 +0530 Subject: [Live-devel] RTSP Client application development - how netwrok error will be notified? Message-ID: Hi, Regarding Live555 library usage for developing an RTSP client application, In case network is down while receiving the video packets from RTSP server, how this library will be notifying the client application i.e. which method will be called in this case? Regards Abhishek Jain -------------- next part -------------- An HTML attachment was scrubbed... URL: From gbonneau at miranda.com Tue Mar 9 06:09:35 2010 From: gbonneau at miranda.com (BONNEAU Guy) Date: Tue, 9 Mar 2010 09:09:35 -0500 Subject: [Live-devel] compiling each modules individually in VS2008 In-Reply-To: <6353CA579307224BAFDE9495906E6916041B7D31@ca-ops-mail> References: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com> <6353CA579307224BAFDE9495906E6916041B7D31@ca-ops-mail> Message-ID: <6353CA579307224BAFDE9495906E6916041B7D54@ca-ops-mail> OK I have an updated Visual Studio setup with the lastest release. Ross ! Can I post a zip file to the list that has a .sln .vcproj files that compile the library with Visual Studio 2008. The size of the file is around 40K Guy Bonneau From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of BONNEAU Guy Sent: Tuesday, March 9, 2010 8:40 To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] compiling each modules individually in VS2008 I have a visual Studio 2008 setup with live555 that could help you ! Unfortunately my live555 library is not up to date ! I'll be back later today after a few checking with an updated library! Guy Bonneau From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Harish N Sent: Tuesday, March 9, 2010 0:13 To: live-devel at lists.live555.com Subject: [Live-devel] compiling each modules individually in VS2008 Regards, Harish NPD team From: Harish N Sent: Tuesday, March 09, 2010 10:42 AM To: 'live-devel at lists.live555.com' Subject: Hello all... I am working on LIVE555,on RTSPClient and RTSPserver......I need little help in compiling OpenRTSP using visual Studio 2008..i tried compiling but there few link errors in it..... So anyone who worked on it using vs2008 please do assist me..... even followed the steps mentioned in few of the sites....I did Google and used all the possible resources and ended up with few errors while compiling So anyone here in this group do tell me the steps to build each of the modules first, so that I would myself link each module again and run the OPENRTSP client and server...any help is really appreciable... thanks all -------------- next part -------------- An HTML attachment was scrubbed... URL: From ottavio at videotec.com Tue Mar 9 06:48:48 2010 From: ottavio at videotec.com (Ottavio Campana) Date: Tue, 09 Mar 2010 15:48:48 +0100 Subject: [Live-devel] streaming http and h264 Message-ID: <4B965FD0.3020005@videotec.com> Hi, I implemented rtsp streaming of a h264 video obtained by a custom DeviceSource. Now I would like to embedded the visualization of the video stream in the browser, by exploiting the video tag provided by html5. I tried specifying rtsp:// in the src of the video tag, but it does not seem to work. Furthermore, by reading online, the video tag seems to support only http streaming. So, my question is, has anyone of you already tried to stream to a pure html5 page an h264 video with live555? Do you have examples? Thank you, Ottavio From live555 at mxwendler.net Tue Mar 9 07:32:11 2010 From: live555 at mxwendler.net (henniman) Date: Tue, 09 Mar 2010 16:32:11 +0100 Subject: [Live-devel] one rtsp - many rtp Message-ID: Hi all, i want to send many sessions from one point. I have read aboput the threading faq, and i know it may be simple to attach many videosinks to one task scheduler, but i want to use different threads since i want to spread the video compression across all possible cores. right now i create one rtspserver per thread and 'attach' rtp+rtcp to it. would it be possible to crate one rtsp server with many sessions handled in different threads? best, hendrik -- --- my live555 id --- From finlayson at live555.com Tue Mar 9 17:27:53 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 9 Mar 2010 17:27:53 -0800 Subject: [Live-devel] compiling each modules individually in VS2008 In-Reply-To: <6353CA579307224BAFDE9495906E6916041B7D54@ca-ops-mail> References: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com> <6353CA579307224BAFDE9495906E6916041B7D31@ca-ops-mail> <6353CA579307224BAFDE9495906E6916041B7D54@ca-ops-mail> Message-ID: >Can I post a zip file to the list that has a .sln .vcproj files that >compile the library with Visual Studio 2008. The size of the file is > around 40K No problem. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From gbonneau at miranda.com Tue Mar 9 18:04:54 2010 From: gbonneau at miranda.com (BONNEAU Guy) Date: Tue, 9 Mar 2010 21:04:54 -0500 Subject: [Live-devel] compiling each modules individually in VS2008 In-Reply-To: References: <03506EFE6361E040B15B65F285CEFF850B5D4D3605@nxlmail.netxcell.com><6353CA579307224BAFDE9495906E6916041B7D31@ca-ops-mail><6353CA579307224BAFDE9495906E6916041B7D54@ca-ops-mail> Message-ID: <6353CA579307224BAFDE9495906E6916041B817D@ca-ops-mail> Make sure you have the latest library dated 8 Mars 2010. If you want to debug OpenRTSP for example : 1- Unzip the latest live555 library to a folder were you want the library. The main folder should be "live" but could be renamed if you want. 2- Inside the main folder "live" unzip the included archive and copy the Visual2008 Folder as a new folder inside the main "live" folder 3- Open the live.sln solution in folder Visual2008 file with either Visual Studio Express 2008 or Visual Studio Professional 2008. 4- Compile the solution 5- Set OpenRTSP as the startup project 6- Configure you openRTSP command arguments 7- Debug! You will have 1 link error with project testGSMStreamer when you compile the solution. But this is normal because a class is purposely not defined for this project. Otherwise all other projects will compile fine either in release or debug mode. Some unused artifact might be present in the preprocessor definition for the projects but it shouldn't be harmful. If anyone on the list find a problem or have any suggestion let me know! Regards Guy Bonneau -------------- next part -------------- A non-text attachment was scrubbed... Name: Visual2008.zip Type: application/x-zip-compressed Size: 41332 bytes Desc: Visual2008.zip URL: From amabel.ison at gmail.com Tue Mar 9 04:52:39 2010 From: amabel.ison at gmail.com (amabel ison) Date: Tue, 9 Mar 2010 20:52:39 +0800 Subject: [Live-devel] Audio Problems Message-ID: <8795fdb41003090452qc028290mb5ed2355d6b7610@mail.gmail.com> Hi, We are trying to play the testMPEG1or2AudioVideo.sdp file. However, we are not receiving any audio. We checked the output files of the splitter and it does not have an audio content (it creates the file but does not have anything in it). When using MPEG1 video file, there is audio and video however it was very choppy. When MPEG2 video file, there is no audio at all. Do we need to configure something? Thank You Very Much! -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 9 19:50:29 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 9 Mar 2010 19:50:29 -0800 Subject: [Live-devel] one rtsp - many rtp In-Reply-To: References: Message-ID: >i want to send many sessions from one point. > >I have read aboput the threading faq, and i >know it may be simple to attach many videosinks >to one task scheduler, but i want to use different >threads since i want to spread the video compression >across all possible cores. > >right now i create one rtspserver per thread >and 'attach' rtp+rtcp to it. >would it be possible to crate one rtsp server >with many sessions handled in different threads? No, definitely not, because (as noted in the FAQ) our software uses a single-threaded event loop - rather than threads - for concurrency. However, because these streams are all independent, you could - for simplicity - use multiple RTSP server *processes* (i.e., multiple instances of a RTSP server application), rather than multiple RTSP server threads. Each RTSP server instance would need to use a different TCP port (i.e., other than the default port: 554), and therefore each stream's "rtsp://" URL would need to include the port number. On the other hand, because you really want parallelism (use of multiple cores) only for the encoding portion of your application, you could make the encoding part of your server - which would not use LIVE555 code at all - multi-threaded, and then have this (somehow) feed encoded data into a single (and of course single-threaded) RTSP server application that uses LIVE555. That would require more programming, but might be the best solution if you want to have only a single RTSP server. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From paulo at voicetechnology.com.br Wed Mar 10 12:05:03 2010 From: paulo at voicetechnology.com.br (=?ISO-8859-1?Q?Paulo_Rog=E9rio_Panhoto?=) Date: Wed, 10 Mar 2010 17:05:03 -0300 Subject: [Live-devel] "undefined references" when linking with liveMedia Message-ID: <4B97FB6F.6030700@voicetechnology.com.br> Hi, I'm trying to compile an application already built with LiveMedia (on OpenSuSE 11.2, GCC 4.4). but I am having some problems when it comes to linking. Apparently, I had no problems to compile LiveMedia. Here is the make result of the app: g++ -g -o "./Release/MultiMediaDemo" ./Release/CRTSPClient.o ./Release/CRTSPEnv.o ./Release/mmdemo.o ./Release/mmstream.o ./Release/config.o ./Release/exitsync.o ./Release/ipchannel.o ./Release/MultiMediaDemo_version.o -L/usr/dialogic/lib -lgc -lipm -lsrl -lmml -ldevmgmt /usr/dialogic/demos/MultiMedia/live/liveMedia/libliveMedia.a /usr/dialogic/demos/MultiMedia/live/groupsock/libgroupsock.a /usr/dialogic/demos/MultiMedia/live/UsageEnvironment/libUsageEnvironment.a /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a -lboost_thread /usr/dialogic/demos/sdpapi/Linux/sdpAPI.a /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler.o):(.rodata._ZTV18BasicTaskScheduler[vtable for BasicTaskScheduler]+0x18): undefined reference to `TaskScheduler::rescheduleDelayedTask(void*&, long long, void (*)(void*), void*)' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o): In function `BasicUsageEnvironment0::~BasicUsageEnvironment0()': BasicUsageEnvironment0.cpp:(.text+0x294): undefined reference to `UsageEnvironment::~UsageEnvironment()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o): In function `BasicUsageEnvironment0::BasicUsageEnvironment0(TaskScheduler&)': BasicUsageEnvironment0.cpp:(.text+0x2c5): undefined reference to `UsageEnvironment::UsageEnvironment(TaskScheduler&)' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o): In function `BasicUsageEnvironment0::BasicUsageEnvironment0(TaskScheduler&)': BasicUsageEnvironment0.cpp:(.text+0x305): undefined reference to `UsageEnvironment::UsageEnvironment(TaskScheduler&)' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o): In function `BasicUsageEnvironment0::~BasicUsageEnvironment0()': BasicUsageEnvironment0.cpp:(.text+0x251): undefined reference to `UsageEnvironment::~UsageEnvironment()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o): In function `BasicUsageEnvironment0::~BasicUsageEnvironment0()': BasicUsageEnvironment0.cpp:(.text+0x271): undefined reference to `UsageEnvironment::~UsageEnvironment()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicUsageEnvironment0.o):(.rodata._ZTI22BasicUsageEnvironment0[typeinfo for BasicUsageEnvironment0]+0x8): undefined reference to `typeinfo for UsageEnvironment' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::~BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x673): undefined reference to `TaskScheduler::~TaskScheduler()' BasicTaskScheduler0.cpp:(.text+0x699): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::~BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x701): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::~BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x771): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x7a9): undefined reference to `TaskScheduler::TaskScheduler()' BasicTaskScheduler0.cpp:(.text+0x801): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x839): undefined reference to `TaskScheduler::TaskScheduler()' BasicTaskScheduler0.cpp:(.text+0x891): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::~BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x6ec): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o): In function `BasicTaskScheduler0::~BasicTaskScheduler0()': BasicTaskScheduler0.cpp:(.text+0x75c): undefined reference to `TaskScheduler::~TaskScheduler()' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o):(.rodata._ZTV19BasicTaskScheduler0[vtable for BasicTaskScheduler0]+0x18): undefined reference to `TaskScheduler::rescheduleDelayedTask(void*&, long long, void (*)(void*), void*)' /usr/dialogic/demos/MultiMedia/live/BasicUsageEnvironment/libBasicUsageEnvironment.a(BasicTaskScheduler0.o):(.rodata._ZTI19BasicTaskScheduler0[typeinfo for BasicTaskScheduler0]+0x8): undefined reference to `typeinfo for TaskScheduler' Am I missing any library or flag?? Thanks for all help. Regards, Paulo. From jnoring at logitech.com Wed Mar 10 13:10:58 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Wed, 10 Mar 2010 14:10:58 -0700 Subject: [Live-devel] Possible arithmetic overflow? Message-ID: <988ed6931003101310h7eae8aaifa10bb9ff439f3e3@mail.gmail.com> In -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Wed Mar 10 13:16:03 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Wed, 10 Mar 2010 14:16:03 -0700 Subject: [Live-devel] Possible arithmetic overflow? In-Reply-To: <988ed6931003101310h7eae8aaifa10bb9ff439f3e3@mail.gmail.com> References: <988ed6931003101310h7eae8aaifa10bb9ff439f3e3@mail.gmail.com> Message-ID: <988ed6931003101316r3958e15ej46aa97c36a171e75@mail.gmail.com> Sorry, I accidentally sent it before I got to post anything. In RTPSink.cpp, unsigned lastReceivedTimeNTP = (unsigned)((lastReceivedTimeNTP_high<<16) + fractionalPart + 0.5); A 32-bit value is shifted, then cast to 64-bit value (this is because of the parenthesis); I'm not sure if lastReceivedTimeNTP_high gets large enough for this to be an issue, or if this is intended? On Wed, Mar 10, 2010 at 2:10 PM, Jeremy Noring wrote: > In > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 10 13:50:47 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 13:50:47 -0800 Subject: [Live-devel] "undefined references" when linking with liveMedia In-Reply-To: <4B97FB6F.6030700@voicetechnology.com.br> References: <4B97FB6F.6030700@voicetechnology.com.br> Message-ID: > I'm trying to compile an application already built with LiveMedia >(on OpenSuSE 11.2, GCC 4.4). but I am having some problems when it comes >to linking. That's strange. Are you able to build (compile and link) the "testProgs" applications OK? If so, then you should use that directory's Makefile as a model for how to build your own application. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From dsp at exacq.com Wed Mar 10 14:11:04 2010 From: dsp at exacq.com (Doug Porter) Date: Wed, 10 Mar 2010 22:11:04 +0000 Subject: [Live-devel] Possible arithmetic overflow? In-Reply-To: <988ed6931003101316r3958e15ej46aa97c36a171e75@mail.gmail.com> References: <988ed6931003101310h7eae8aaifa10bb9ff439f3e3@mail.gmail.com> <988ed6931003101316r3958e15ej46aa97c36a171e75@mail.gmail.com> Message-ID: <23064.1268259064@yocto> Jeremy Noring writes: > > In RTPSink.cpp, > > unsigned lastReceivedTimeNTP > = (unsigned)((lastReceivedTimeNTP_high<<16) + fractionalPart + 0.5); > > A 32-bit value is shifted, then cast to 64-bit value (this is > because of the parenthesis); I'm not sure if > lastReceivedTimeNTP_high gets large enough for this to be an > issue, or if this is intended? The round-trip delay would have to be larger than the period of overflow (2^16 s) for this to be a problem. -- dsp From jnoring at logitech.com Wed Mar 10 14:32:37 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Wed, 10 Mar 2010 15:32:37 -0700 Subject: [Live-devel] Possible arithmetic overflow? In-Reply-To: <23064.1268259064@yocto> References: <988ed6931003101310h7eae8aaifa10bb9ff439f3e3@mail.gmail.com> <988ed6931003101316r3958e15ej46aa97c36a171e75@mail.gmail.com> <23064.1268259064@yocto> Message-ID: <988ed6931003101432p58e16c1ewe8eac3fe8f91ad0@mail.gmail.com> On Wed, Mar 10, 2010 at 3:11 PM, Doug Porter wrote: > Jeremy Noring writes: > > > > In RTPSink.cpp, > > > > unsigned lastReceivedTimeNTP > > = (unsigned)((lastReceivedTimeNTP_high<<16) + fractionalPart + 0.5); > > > > A 32-bit value is shifted, then cast to 64-bit value (this is > > because of the parenthesis); I'm not sure if > > lastReceivedTimeNTP_high gets large enough for this to be an > > issue, or if this is intended? > > The round-trip delay would have to be larger than the period of > overflow (2^16 s) for this to be a problem. Thanks Doug--that clarifies things. -------------- next part -------------- An HTML attachment was scrubbed... URL: From agadkarmohan at gmail.com Tue Mar 9 22:08:46 2010 From: agadkarmohan at gmail.com (Mohan) Date: Wed, 10 Mar 2010 11:38:46 +0530 Subject: [Live-devel] No video audio is fine Message-ID: <5fec9111003092208t1e303b1aqf8df0df42dc4fd00@mail.gmail.com> Hi, My OS: Mac OSX snow leopard 10.6 1. I am trying to stream a local .mpg file which has both audio and video, I am using testMPEG1or2AudioVideoStreamer to run from the command prompt it is showing as the video is streaming, Next, clicked on testMPEG1or2AudioVideo.sdp file, it lauches quicktime player, able to hear audio, but video is not showing, can anyone has came across this problem and know how to solve. 2. How can I use the same for integrating in to Objective-C for iphone app. Regards, Mohan. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gabrieledeluca at libero.it Wed Mar 10 04:18:22 2010 From: gabrieledeluca at libero.it (gabrieledeluca at libero.it) Date: Wed, 10 Mar 2010 13:18:22 +0100 Subject: [Live-devel] Using live555 to relaying Message-ID: Hi Ross, I want know if it's possible use live555 to relay (given ports) and play RTP packets (without RTSP interaction) audio/video. Thanks in advance From nilremm at gmail.com Wed Mar 10 07:22:28 2010 From: nilremm at gmail.com (nilremm) Date: Wed, 10 Mar 2010 16:22:28 +0100 Subject: [Live-devel] live555 udp port range Message-ID: <25C71048-09B5-4C41-A208-AA929557394A@gmail.com> Hi, What are the port range used by live555MediaServer for RTP/RTCP traffic ? Is there a way to configure it ? Jerome From finlayson at live555.com Wed Mar 10 15:28:24 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 15:28:24 -0800 Subject: [Live-devel] live555 udp port range In-Reply-To: <25C71048-09B5-4C41-A208-AA929557394A@gmail.com> References: <25C71048-09B5-4C41-A208-AA929557394A@gmail.com> Message-ID: >What are the port range used by live555MediaServer for RTP/RTCP >traffic ? Is there a way to configure it ? See http://lists.live555.com/pipermail/live-devel/2009-January/010041.html -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From paulo at voicetechnology.com.br Wed Mar 10 15:57:41 2010 From: paulo at voicetechnology.com.br (=?ISO-8859-1?Q?Paulo_Rog=E9rio_Panhoto?=) Date: Wed, 10 Mar 2010 20:57:41 -0300 Subject: [Live-devel] "undefined references" when linking with liveMedia In-Reply-To: References: <4B97FB6F.6030700@voicetechnology.com.br> Message-ID: <9e6e8f461003101557p49b46b11w707743e39e32eca7@mail.gmail.com> The testProgs were built along with liveMedia. Thank you, I'll try that. 2010/3/10 Ross Finlayson > I'm trying to compile an application already built with LiveMedia >> (on OpenSuSE 11.2, GCC 4.4). but I am having some problems when it comes >> to linking. >> > > That's strange. Are you able to build (compile and link) the "testProgs" > applications OK? If so, then you should use that directory's Makefile as a > model for how to build your own application. > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: From paulo at voicetechnology.com.br Wed Mar 10 16:16:22 2010 From: paulo at voicetechnology.com.br (=?ISO-8859-1?Q?Paulo_Rog=E9rio_Panhoto?=) Date: Wed, 10 Mar 2010 21:16:22 -0300 Subject: [Live-devel] "undefined references" when linking with liveMedia In-Reply-To: <9e6e8f461003101557p49b46b11w707743e39e32eca7@mail.gmail.com> References: <4B97FB6F.6030700@voicetechnology.com.br> <9e6e8f461003101557p49b46b11w707743e39e32eca7@mail.gmail.com> Message-ID: <9e6e8f461003101616k6cb16f3bvf979d4f5ca8f21cc@mail.gmail.com> For the record, I checked out how the samples are built and did some quick research on the internet < http://www.network-theory.co.uk/docs/gccintro/gccintro_18.html>. The conclusion is (breaking news to me and) order of the libraries passed to the linker actually matter. So I just need to switch UsageEnvironment and BasicUsageEnvironment on the libraries. Regards, Paulo. Em 10 de mar?o de 2010 20:57, Paulo Rog?rio Panhoto < paulo at voicetechnology.com.br> escreveu: > The testProgs were built along with liveMedia. > > Thank you, I'll try that. > > 2010/3/10 Ross Finlayson > > I'm trying to compile an application already built with LiveMedia >>> (on OpenSuSE 11.2, GCC 4.4). but I am having some problems when it comes >>> to linking. >>> >> >> That's strange. Are you able to build (compile and link) the "testProgs" >> applications OK? If so, then you should use that directory's Makefile as a >> model for how to build your own application. >> -- >> >> Ross Finlayson >> Live Networks, Inc. >> http://www.live555.com/ >> _______________________________________________ >> live-devel mailing list >> live-devel at lists.live555.com >> http://lists.live555.com/mailman/listinfo/live-devel >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 10 17:54:34 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 17:54:34 -0800 Subject: [Live-devel] No video audio is fine In-Reply-To: <5fec9111003092208t1e303b1aqf8df0df42dc4fd00@mail.gmail.com> References: <5fec9111003092208t1e303b1aqf8df0df42dc4fd00@mail.gmail.com> Message-ID: >I am trying to stream a local .mpg file which has both audio and video, >I am using testMPEG1or2AudioVideoStreamer to run from the command prompt >it is showing as the video is streaming, >Next, clicked on testMPEG1or2AudioVideo.sdp file, it lauches quicktime player, >able to hear audio, but video is not showing, >can anyone has came across this problem and know how to solve. See http://www.live555.com/liveMedia/faq.html#my-file-doesnt-work -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Mar 10 18:20:02 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 18:20:02 -0800 Subject: [Live-devel] playMediaSession H264 In-Reply-To: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> References: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> Message-ID: >I'm having some problems with an specific IP source of H264. The >problem is on the response of PlayMediaSession. >I send this: > >OPTIONS, DESCRIBE, SETUP and PLAY. > >when I send PLAY I receive BAD REQUEST from the Server. What happens when you use "openRTSP" as your client? -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Mar 10 18:53:40 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 18:53:40 -0800 Subject: [Live-devel] RTSP Client application development - how netwrok error will be notified? In-Reply-To: References: Message-ID: >Regarding Live555 library usage for developing an RTSP client application, >In case network is down while receiving the video packets from RTSP >server, how this library will be notifying the client application >i.e. which method will be called in this case? Because the stream is datagram-based, there's no inherent way to detect that the 'network is down' (or, equivalently, that the server has died). However, the best way to detect this is simply to periodically check that data keeps arriving. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 10 19:05:02 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 19:05:02 -0800 Subject: [Live-devel] Streaming H.264 and PCM in a session. In-Reply-To: <001a01cabf56$ece677a0$c6b366e0$@com> References: <001a01cabf56$ece677a0$c6b366e0$@com> Message-ID: >I have written own codes that testOnDemandRTSPServer send two RTPs >to a RTSP client; one is for H.264 NAL and another is for PCM. I >referenced the case of mpeg1or2AudioVideoTest and I think it is >possible. >If only a type of RTP packet is received to VLC(audio or video), VLC >can decode it with no problem. But if both types of RTP packets is >received, VLC's video is always stopped and only sound is heard. I suspect that the "fPresentationTime"s for each of your two streams - at the server end - are not properly in sync. I suggest checking that you are setting "fPresentationTime" properly - for both your audio and video streams. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Mar 10 19:06:39 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 10 Mar 2010 19:06:39 -0800 Subject: [Live-devel] streaming http and h264 In-Reply-To: <4B965FD0.3020005@videotec.com> References: <4B965FD0.3020005@videotec.com> Message-ID: >I implemented rtsp streaming of a h264 video obtained by a custom >DeviceSource. > >Now I would like to embedded the visualization of the video stream >in the browser, by exploiting the video tag provided by html5. > >I tried specifying rtsp:// in the src of the video tag, but it >does not seem to work. Furthermore, by reading online, the video tag >seems to support only http streaming. Unfortunately this is the wrong mailing list for this question. (Your question applies to any RTSP/RTP stream - not just those generated by our server code.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marcos at a5security.com Wed Mar 10 23:01:48 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Thu, 11 Mar 2010 08:01:48 +0100 Subject: [Live-devel] playMediaSession H264 In-Reply-To: References: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> Message-ID: <39b9a2b31003102301v36191b61qc1d1f2705bba59c6@mail.gmail.com> I solved the problem after I updated live555 to the last version. Thanks. 2010/3/11 Ross Finlayson > I'm having some problems with an specific IP source of H264. The problem is >> on the response of PlayMediaSession. >> I send this: >> >> OPTIONS, DESCRIBE, SETUP and PLAY. >> >> when I send PLAY I receive BAD REQUEST from the Server. >> > > What happens when you use "openRTSP" as your client? > > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From kevin.liu at innosofts.com Thu Mar 11 00:04:55 2010 From: kevin.liu at innosofts.com (Kevin.Liu) Date: Thu, 11 Mar 2010 16:04:55 +0800 Subject: [Live-devel] sip "register" method implentment ? Message-ID: <004501cac0f1$8b341ca0$a19c55e0$@liu@innosofts.com> Hi ross: If the live555 library can handle SIP request just like "register","invite" ? I saw a sipClient.cpp in the source but I can not see the "register" method of sip implemented in the file , does the lib not support the method now ? Best regards, Kevin Liu -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 11 00:51:32 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 00:51:32 -0800 Subject: [Live-devel] sip "register" method implentment ? In-Reply-To: <004501cac0f1$8b341ca0$a19c55e0$@liu@innosofts.com> References: <004501cac0f1$8b341ca0$a19c55e0$@liu@innosofts.com> Message-ID: > If the live555 library can handle SIP request just like >"register","invite" ? I saw a sipClient.cpp in the source but I can >not see the "register" method of sip implemented in the file , does >the lib not support the method now ? No. The library currently supports the "INVITE", "ACK" and "BYE" commands only. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marcos at a5security.com Thu Mar 11 04:28:27 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Thu, 11 Mar 2010 13:28:27 +0100 Subject: [Live-devel] playMediaSession H264 In-Reply-To: <39b9a2b31003102301v36191b61qc1d1f2705bba59c6@mail.gmail.com> References: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> <39b9a2b31003102301v36191b61qc1d1f2705bba59c6@mail.gmail.com> Message-ID: <39b9a2b31003110428k2d74a51kdf598d7e8a02728d@mail.gmail.com> Hi, now I have one more question about it. I'm only receiving Slice packets from the H264 Server now(type 1 and 5). Why I don't receive SPS, SEI or PPS packets? Without this packets the video is impossible to see because I don't have all the information to decode. PD: In VLC looking the message box I see that is receiving that kind of packets and I can see the video OK. Any suggestions? Thanks in advance. 2010/3/11 Miguel Angel Arcos > I solved the problem after I updated live555 to the last version. Thanks. > > 2010/3/11 Ross Finlayson > > I'm having some problems with an specific IP source of H264. The problem >>> is on the response of PlayMediaSession. >>> I send this: >>> >>> OPTIONS, DESCRIBE, SETUP and PLAY. >>> >>> when I send PLAY I receive BAD REQUEST from the Server. >>> >> >> What happens when you use "openRTSP" as your client? >> >> -- >> >> Ross Finlayson >> Live Networks, Inc. >> http://www.live555.com/ >> _______________________________________________ >> live-devel mailing list >> live-devel at lists.live555.com >> http://lists.live555.com/mailman/listinfo/live-devel >> > > > > -- > Miguel Angel Arcos > -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From ottavio at videotec.com Thu Mar 11 05:20:59 2010 From: ottavio at videotec.com (Ottavio Campana) Date: Thu, 11 Mar 2010 14:20:59 +0100 Subject: [Live-devel] streaming http and h264 In-Reply-To: References: <4B965FD0.3020005@videotec.com> Message-ID: <4B98EE3B.2010605@videotec.com> Il 11/03/10 04.06, Ross Finlayson ha scritto: >> I implemented rtsp streaming of a h264 video obtained by a custom >> DeviceSource. >> >> Now I would like to embedded the visualization of the video stream in >> the browser, by exploiting the video tag provided by html5. >> >> I tried specifying rtsp:// in the src of the video tag, but it >> does not seem to work. Furthermore, by reading online, the video tag >> seems to support only http streaming. > > Unfortunately this is the wrong mailing list for this question. (Your > question applies to any RTSP/RTP stream - not just those generated by > our server code.) Ross, I I just need to know the answer to these questions: 1) can I do http streaming with live555? I do not really understand what HTTPSink does. 2) if yes, is there an example? Ottavio From finlayson at live555.com Thu Mar 11 06:45:06 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 06:45:06 -0800 Subject: [Live-devel] playMediaSession H264 In-Reply-To: <39b9a2b31003110428k2d74a51kdf598d7e8a02728d@mail.gmail.com> References: <39b9a2b31003080253t52721b37y8236f5454eec2f6b@mail.gmail.com> <39b9a2b31003102301v36191b61qc1d1f2705bba59c6@mail.gmail.com> <39b9a2b31003110428k2d74a51kdf598d7e8a02728d@mail.gmail.com> Message-ID: >now I have one more question about it. I'm only receiving Slice >packets from the H264 Server now(type 1 and 5). Why I don't receive >SPS, SEI or PPS packets? Perhaps your server just isn't sending them (in the stream)? SPS and PPS NAL units (I don't know anything about "SEI" NAL units) are usually encoded in the stream's SDP description (which is sent in response to the RTSP "DESCRIBE" command), but not necessarily in the stream itself. To overcome this, you will need to decode the PPS and SPS NAL unit data from the SDP description, and insert these at the front of the stream that you pass to your decoder. Specifically, you call "MediaSubsession:: fmtp_spropparametersets()" on your 'subsession' object, to get the appropriate configuration string, and then decode this string by calling "parseSPropParameterSets()". (See "liveMedia/include/H264VideoRTPSource.hh".) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 11 06:46:50 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 06:46:50 -0800 Subject: [Live-devel] streaming http and h264 In-Reply-To: <4B98EE3B.2010605@videotec.com> References: <4B965FD0.3020005@videotec.com> <4B98EE3B.2010605@videotec.com> Message-ID: >1) can I do http streaming with live555? No. > I do not really understand what HTTPSink does. Neither do I :-) This is old code that was apparently used to implement a rudimentary HTTP server specifically for MPEG-1 or 2 video - but I can't remember it actually being used for anything. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jnoring at logitech.com Thu Mar 11 07:43:58 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Thu, 11 Mar 2010 08:43:58 -0700 Subject: [Live-devel] Fix for a possible buffer overflow in SDESItem Message-ID: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> In RTCP.cpp, SDESItem::SDESItem(unsigned char tag, unsigned char const* value) { unsigned length = strlen((char const*)value); if (length > 511) length = 511; fData[0] = tag; fData[1] = (unsigned char)length; memmove(&fData[2], value, length); // Pad the trailing bytes to a 4-byte boundary: while ((length)%4 > 0) fData[2 + length++] = '\0'; } length is 511 bytes, and the additional padding at the end tacks on up to 3 more bytes. However, the buffer to which memory is being written to in RTCP.hh is declared as: unsigned char fData[2 + 0xFF]; // first 2 bytes are tag and length ...which is only 257 bytes. It needs to be at least 515 bytes in length (511+ 2 is 513; padded to before the nearest 4 byte boundary bumps that up to 515). So that line should change to: unsigned char fData[2 + 513]; // first 2 bytes are tag and length Either that, or the upper bound on "length" in the constructor needs to be shortened. (to work with 2 + 0xFF, length would need to be no greater than 251) Thanks, Jeremy -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Thu Mar 11 07:52:18 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Thu, 11 Mar 2010 08:52:18 -0700 Subject: [Live-devel] Fix for a possible buffer overflow in SDESItem In-Reply-To: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> References: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> Message-ID: <988ed6931003110752i4084f236x17d6fb959334cd7b@mail.gmail.com> On Thu, Mar 11, 2010 at 8:43 AM, Jeremy Noring wrote: > In RTCP.cpp, > > SDESItem::SDESItem(unsigned char tag, unsigned char const* value) { > unsigned length = strlen((char const*)value); > if (length > 511) length = 511; > > fData[0] = tag; > fData[1] = (unsigned char)length; > memmove(&fData[2], value, length); > > // Pad the trailing bytes to a 4-byte boundary: > while ((length)%4 > 0) fData[2 + length++] = '\0'; > } > > length is 511 bytes, and the additional padding at the end tacks on up to 3 > more bytes. However, the buffer to which memory is being written to in > RTCP.hh is declared as: > > unsigned char fData[2 + 0xFF]; // first 2 bytes are tag and length > > ...which is only 257 bytes. It needs to be at least 515 bytes in length > (511+ 2 is 513; padded to before the nearest 4 byte boundary bumps that up > to 515). So that line should change to: > > unsigned char fData[2 + 513]; // first 2 bytes are tag and length > > Either that, or the upper bound on "length" in the constructor needs to be > shortened. (to work with 2 + 0xFF, length would need to be no greater than > 251) > > Thanks, > > Jeremy > Actually, on second glance, the only realistic option is to shorten length, because only a single byte is allotted to the size field in fData[1]. (note that length is cast to unsigned char). So in RTCP.cpp, I'd change this line: if (length > 251) length = 251; -Jeremy -------------- next part -------------- An HTML attachment was scrubbed... URL: From dsp at exacq.com Thu Mar 11 08:16:03 2010 From: dsp at exacq.com (Doug Porter) Date: Thu, 11 Mar 2010 16:16:03 +0000 Subject: [Live-devel] Fix for a possible buffer overflow in SDESItem In-Reply-To: <988ed6931003110752i4084f236x17d6fb959334cd7b@mail.gmail.com> References: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> <988ed6931003110752i4084f236x17d6fb959334cd7b@mail.gmail.com> Message-ID: <13456.1268324163@yocto> Jeremy Noring writes: > > Actually, on second glance, the only realistic option is to > shorten length, because only a single byte is allotted to the > size field in fData[1]. (note that length is cast to unsigned > char). So in RTCP.cpp, I'd change this line: > > if (length > 251) length = 251; The text of an SDES item can be up to 255 octets (IETF RFC 3550 section 6.5). -- dsp From jnoring at logitech.com Thu Mar 11 09:13:23 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Thu, 11 Mar 2010 10:13:23 -0700 Subject: [Live-devel] Fix for a possible buffer overflow in SDESItem In-Reply-To: <13456.1268324163@yocto> References: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> <988ed6931003110752i4084f236x17d6fb959334cd7b@mail.gmail.com> <13456.1268324163@yocto> Message-ID: <988ed6931003110913r222abf4jbe2b04cce4f473a2@mail.gmail.com> On Thu, Mar 11, 2010 at 9:16 AM, Doug Porter wrote: > Jeremy Noring writes: > > > > Actually, on second glance, the only realistic option is to > > shorten length, because only a single byte is allotted to the > > size field in fData[1]. (note that length is cast to unsigned > > char). So in RTCP.cpp, I'd change this line: > > > > if (length > 251) length = 251; > > The text of an SDES item can be up to 255 octets (IETF RFC 3550 > section 6.5). Yeah, I realized that. I also see this code is never called with a buffer longer than 100 bytes, so it will never overflow. But I'd still fix it, just in case. I'd go with: // first 2 bytes are tag and length, then actual data (max length of 255), // then at least one byte for null terminator unsigned char fData[2 + 255 + 1]; ... SDESItem::SDESItem(unsigned char tag, unsigned char const* value) { unsigned length = strlen((char const*)value); if (length > 255) length = 255; fData[0] = tag; fData[1] = (unsigned char)length; memcpy(&fData[2], value, length); fData[2 + length] = '\0'; } -------------- next part -------------- An HTML attachment was scrubbed... URL: From Kenneth.X.Melms.-ND at espn.com Thu Mar 11 14:09:45 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Thu, 11 Mar 2010 17:09:45 -0500 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files Message-ID: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> Greetings everyone, I've been experimenting with live555 again, as we need to be able to stream MPEG2-TS files internally within our network. I like Live555 because it supported MPEG2-TS out of the box, with the promise of being able to produce "Trick-Play" index files. When I run the MPEG2TransportStreamIndexer on any of our newly ingest HD MPEG2-TS content we see only 0 byte index files (.tsx) generated and no trick-play support. The file format is definitely MPEG2-TS, the video codec (as reported by MPlayer and VLC) is "mpgv": MPlayer Output: TS file format detected. VIDEO MPEG2(pid=308) AUDIO A52(pid=256) NO SUBS (yet)! PROGRAM N. 2 VIDEO: MPEG2 1920x1080 (aspect 3) 29.970 fps 17066.0 kbps (2133.2 kbyte/s) ... snip ... VDec: using Planar YV12 as output csp (no 0) Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. VO: [x11] 1920x1080 => 1920x1080 Planar YV12 There are no errors generated by the MPEG2TransportStreamIndexer - but nothing except an empty .tsx file is written after a good long time grinding. --- $ MPEG2TransportStreamIndexer 1268344801-HD.ts Writing index file "1268344801-HD.tsx"......done $ ls -la *.tsx -rwxr--r-- 1 somedude somedude 0 2010-03-11 17:06 1268344801-HD.tsx --- Can anyone help? I can try and make some of these files available, but they're HUGE.. 300MB is the smallest one I have available to me at the moment, though I could snip the tail off of one I assume without breaking the headers. We desperately need trick play support on these .ts files, so any insight is greatly appreciated. I'm not afraid to write code to fix this. Ken -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 11 18:28:14 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 18:28:14 -0800 Subject: [Live-devel] Fix for a possible buffer overflow in SDESItem In-Reply-To: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> References: <988ed6931003110743sb4db46fu12a5e26d48a055f9@mail.gmail.com> Message-ID: Thanks for bringing this to our attention. There are actually two bugs here: Bug 1: > if (length > 511) length = 511; Each "511" should be "255" (duh!) Bug 2: > // Pad the trailing bytes to a 4-byte boundary: > while ((length)%4 > 0) fData[2 + length++] = '\0'; This code shouldn't be there at all, because there's not supposed to be any zero bytes between SDES items (RFC 355, section 6.5). (There *are* zero bytes (padded to a 4-byte boundary) at the end of the SDES item list, but our code already handles this in "RTCPInstance::addSDES()".) This will be fixed in the next release of the code. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sven.wasmer at gmail.com Thu Mar 11 07:33:45 2010 From: sven.wasmer at gmail.com (Sven Wasmer) Date: Thu, 11 Mar 2010 16:33:45 +0100 Subject: [Live-devel] RTSPClient: how to end eventloop AFTER file is written to disk Message-ID: <2AF6B4EA-D32E-4E2E-8DD0-8770A7E42A9A@gmail.com> Hello Ross, hello everbody else there, Well, I'm currently trying to get through the RTSPClient lib and mixing it up with some objC. Thus we get a nice meal called: obj-C++ :-) My current aim is to fetch a h264-stream from a server and write it to a file on the client-side. this works so far. I'm available to: - get an SDPDescription from the server - create my basicUsageEnivironment with that description - creating a Filesink for h264 - writing to a file ... ... but: after a final call to env->taskScheduler().doEventLoop(); this leads obviously to an infinity loop ... which I want to end, after all data is received and written to file. therefore I tried some solutions from older postings in this list using the "watcherVariable", especially the one introducing a modified "dummyTask" where I point to a global visible watchVariable: void dummyTask(UsageEnvironment* env, char* myWatchVariable) { // Call this again, after a brief delay: int uSecsToDelay = 1000000; // //*env->taskScheduler().scheduleDelayedTask(uSecsToDelay,(TaskFunc*)dummyTask, NULL); env->taskScheduler().scheduleDelayedTask(uSecsToDelay, (TaskFunc*)dummyTask, NULL); NSLog(@"dummyTask called :-) ... waiting a second\n"); //"printf" in objC //setting watchVariable to "NULL" -> EventLoop will end! myWatchVariable = '\0'; } my problem is, that my stream will not get written to the file, as the eventloop will be finished before this could be done, in fact zero bytes are written, only the filename ist created/updated. So my question: How can I get the eventLoop to end AFTER my file is written (seems the buffer needs to be checked or something else)? Do I have to setup "BasicTaskScheduler::turnOnBackgroundReadHandling" for this? Any help would be great :-) cheers Sven -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 11 19:44:40 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 19:44:40 -0800 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> Message-ID: >I can try and make some of these files available, but they're HUGE.. >300MB is the smallest one I have available to me at the moment That's fine; I don't mind downloading a file that size. Just put it on a web server and let us know the URL. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From paulo at voicetechnology.com.br Thu Mar 11 21:09:16 2010 From: paulo at voicetechnology.com.br (=?ISO-8859-1?Q?Paulo_Rog=E9rio_Panhoto?=) Date: Fri, 12 Mar 2010 02:09:16 -0300 Subject: [Live-devel] BasicUsageEnvironment::operator<<(const char *) Message-ID: <9e6e8f461003112109ld5c8abfi7aaa2543a9f7b3b6@mail.gmail.com> Hello, This might sound silly, but when I was debuggind an app I've got a signal being caught because a NULL string had been passed to a BasicUsageEnvironment and the app crashed. I've just added a NULL check to the operator << on my own (if(str == NULL) str = "NULL";). Wouldn't it be of any good if these functions had such checks? Regards, Paulo. -------------- next part -------------- An HTML attachment was scrubbed... URL: From agadkarmohan at gmail.com Thu Mar 11 21:27:41 2010 From: agadkarmohan at gmail.com (Mohan) Date: Fri, 12 Mar 2010 10:57:41 +0530 Subject: [Live-devel] Streaming from iphone to webserver Message-ID: <5fec9111003112127r52af96c2if858c0c8e6cdefc0@mail.gmail.com> Hi, I am developing an iphone app *which should do streaming from iphone camera to web server*. The iphone app has to be *coded in Objective-C*. I want to know, how I can use LIVE555 to implement the above functionality? Is it possible only with LIVE555? If we need additional things please do write what are the other things required to achieve the above functionality. Regards, Mohan. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 11 21:55:02 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 11 Mar 2010 21:55:02 -0800 Subject: [Live-devel] BasicUsageEnvironment::operator<<(const char *) In-Reply-To: <9e6e8f461003112109ld5c8abfi7aaa2543a9f7b3b6@mail.gmail.com> References: <9e6e8f461003112109ld5c8abfi7aaa2543a9f7b3b6@mail.gmail.com> Message-ID: >This might sound silly, but when I was debuggind an app I've got a >signal being caught because a NULL string had been passed to a >BasicUsageEnvironment and the app crashed. I've just added a NULL >check to the operator << on my own (if(str == NULL) str = "NULL";). > >Wouldn't it be of any good if these functions had such checks? Yes, that's a good idea. It will be included in the next release of the software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marcos at a5security.com Fri Mar 12 01:35:36 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Fri, 12 Mar 2010 10:35:36 +0100 Subject: [Live-devel] Unicast and Multicast H264 Message-ID: <39b9a2b31003120135g4092bdf2g2ca67823d4403b78@mail.gmail.com> Hi developers, I have one question about the difference of streaming Multicast and Unicast. When I connect to a multicast server I receive in my function "AfterReadingFrame" all the packets SPS, PPS and Slices and then I parse all and save to decode when I need. I tried a Unicast server and then I need to work with "fmtp_spropparametersets" to extract the SPS and PPS buffer to parse because in my "AfterReadingFrame" I only receive Slice packets, no SPS or PPS. If I save this packets with the Slice i can decode after all. Then my question is: Where or How can I obtain the information about the type of streaming (Unicast or Multicast) at first? Thanks in advance. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From sylvain.meynelly at newtek-ga.net Fri Mar 12 01:52:49 2010 From: sylvain.meynelly at newtek-ga.net (Sylvain MEYNELLY (NEWTEK)) Date: Fri, 12 Mar 2010 10:52:49 +0100 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> Message-ID: <4B9A0EF1.4040008@newtek-ga.net> An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: newtekmail.gif Type: image/gif Size: 12975 bytes Desc: not available URL: From wbreyha at gmx.net Fri Mar 12 05:35:47 2010 From: wbreyha at gmx.net (Wolfgang Breyha) Date: Fri, 12 Mar 2010 14:35:47 +0100 Subject: [Live-devel] 64Bit patch for QuickTimeFileSink and mp4a esds fix Message-ID: <4B9A4333.3070806@gmx.net> Hi! I enhanced the QuickTimeFileSink to be able to write MP4 files larger then 2GB. It uses TellFile64 and SeekFile64 from InputFile.hh instead of fseek and ftell, the mdat atom is written in 64bit format and all the stco atoms are co64 now. And I've fixed a bug which causes damaged mp4a.esds atoms in .mp4 format. Patch is for both. The parts @@ -1656,16 +1694,20 @@ @@ -1717,7 +1759,7 @@ are the esds fix. Regards, Wolfgang Breyha -- Wolfgang Breyha | http://www.blafasel.at/ Vienna University Computer Center | Austria -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: live-64bitmp4_esdsfix.patch URL: From jnoring at logitech.com Fri Mar 12 08:22:48 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Fri, 12 Mar 2010 09:22:48 -0700 Subject: [Live-devel] RTPOverTCP_OK Message-ID: <988ed6931003120822y92c7069g2e8b7e0631d04569@mail.gmail.com> I have an application that uses multiple instances of Live555 within a single process (each instance has a devoted thread, and I do not share instance data across threads, per the FAQ). However, RTPOverTCP_OK is a global variable so all instances of Live555 share its state. So if one instance has a TCP error then it affects all instances. I have two questions: 1. Is there some other way I should/could be dealing with TCP connectivity issues besides RTPOverTCP_OK? 2. If I were to fix this problem, what would be the best way to go about it? I was thinking of adding fRTPOverTCP_OK to the RTPInterface class, but then I'd need to expose it through other classes (RTPSink and RTCPInstance, from what I can see, which would then be visible from OnDemandServerMediaSubsession). I'd also leave the global in place to be backwards compatible with any existing code. Would you consider this patch if I wrote it? (or would you have a different suggestion?) Thank you, Jeremy -------------- next part -------------- An HTML attachment was scrubbed... URL: From Kenneth.X.Melms.-ND at espn.com Fri Mar 12 08:38:42 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Fri, 12 Mar 2010 11:38:42 -0500 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> Message-ID: <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> Ross - thanks for the assist, here's one of the files I get a 0 bytes index for: http://www.flyingplastic.com/share/bars.ts The server's network is slow, so it'll take about 69m to download - sorry, it's the best I can do for bandwidth at the moment. K -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Thursday, March 11, 2010 10:45 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files >I can try and make some of these files available, but they're HUGE.. >300MB is the smallest one I have available to me at the moment That's fine; I don't mind downloading a file that size. Just put it on a web server and let us know the URL. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel Please consider the environment before printing this e-mail. From wbreyha at gmx.net Fri Mar 12 06:05:56 2010 From: wbreyha at gmx.net (Wolfgang Breyha) Date: Fri, 12 Mar 2010 15:05:56 +0100 Subject: [Live-devel] 64Bit patch for QuickTimeFileSink and mp4a esds fix In-Reply-To: <4B9A4333.3070806@gmx.net> References: <4B9A4333.3070806@gmx.net> Message-ID: <4B9A4A44.4050503@gmx.net> Hi! I recognized that there was a recent release I missed. My patch was for release 2009-07-09. Since 2010-03-08 release added code for stss atom the first patch will not work on the current release. Find the new patch for 2010-03-08 release attached on this mail. Regards, Wolfgang -- Wolfgang Breyha | http://www.blafasel.at/ Vienna University Computer Center | Austria -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: live-64bitmp4_esdsfix_20100308.patch URL: From wbreyha at gmx.net Fri Mar 12 07:27:12 2010 From: wbreyha at gmx.net (Wolfgang Breyha) Date: Fri, 12 Mar 2010 16:27:12 +0100 Subject: [Live-devel] 64Bit patch for QuickTimeFileSink and mp4a esds fix In-Reply-To: <4B9A4333.3070806@gmx.net> References: <4B9A4333.3070806@gmx.net> Message-ID: <4B9A5D50.9090005@gmx.net> Hi, it's again me;-) Since I fixed the mp4a.esds, which was broken and ignored before, the fix in... --- 2010.01.07: - Fixed a bug in "parseGeneralConfigStr()" (it was mistakenly returning an extra byte). --- ... hit me as first. The extra byte was blindly removed in QuickTimeFileSink.cpp. Now that it wasn't there anymore the config was crippled. Another patch fixing this is attached. Regards, Wolfgang -- Wolfgang Breyha | http://www.blafasel.at/ Vienna University Computer Center | Austria -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: live-esdsconfigfix.patch URL: From finlayson at live555.com Fri Mar 12 19:38:27 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 12 Mar 2010 19:38:27 -0800 Subject: [Live-devel] 64Bit patch for QuickTimeFileSink and mp4a esds fix In-Reply-To: <4B9A5D50.9090005@gmx.net> References: <4B9A4333.3070806@gmx.net> <4B9A5D50.9090005@gmx.net> Message-ID: Wolfgang, Many thanks for contributing this patch. It will be included in the next release of the software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 12 22:39:28 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 12 Mar 2010 22:39:28 -0800 Subject: [Live-devel] RTPOverTCP_OK In-Reply-To: <988ed6931003120822y92c7069g2e8b7e0631d04569@mail.gmail.com> References: <988ed6931003120822y92c7069g2e8b7e0631d04569@mail.gmail.com> Message-ID: I'm currently modifying the "RTPInterface" code (to fix the longstanding failing-to-receive-RTSP-commands-when-RTP-over-TCP-is-used bug). As part of these modifications, I'm removing the "RTPOverTCP_OK" hack altogether, because its ugly. So you can forget about it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Sat Mar 13 00:38:21 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 13 Mar 2010 00:38:21 -0800 Subject: [Live-devel] Unicast and Multicast H264 In-Reply-To: <39b9a2b31003120135g4092bdf2g2ca67823d4403b78@mail.gmail.com> References: <39b9a2b31003120135g4092bdf2g2ca67823d4403b78@mail.gmail.com> Message-ID: >I have one question about the difference of streaming Multicast and >Unicast. When I connect to a multicast server I receive in my >function "AfterReadingFrame" all the packets SPS, PPS and Slices and >then I parse all and save to decode when I need. >I tried a Unicast server and then I need to work with >"fmtp_spropparametersets" to extract the SPS and PPS buffer to parse >because in my "AfterReadingFrame" I only receive Slice packets, no >SPS or PPS. If I save this packets with the Slice i can decode after >all. You can't assume that this will always be the case. I.e., you can't always assume that only multicast streams will have the SPS and PPS NAL units 'in band''. Therefore your client should *always* extract this information from the SDP description, and feed it to the decoder in front of any network packet data. It doesn't matter whether the stream is unicast or multicast. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jnoring at logitech.com Sat Mar 13 11:29:32 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Sat, 13 Mar 2010 11:29:32 -0800 Subject: [Live-devel] RTPOverTCP_OK In-Reply-To: References: <988ed6931003120822y92c7069g2e8b7e0631d04569@mail.gmail.com> Message-ID: <988ed6931003131129l63668d6ay6c41ce1a4a8db9cb@mail.gmail.com> On Fri, Mar 12, 2010 at 10:39 PM, Ross Finlayson wrote: > I'm currently modifying the "RTPInterface" code (to fix the longstanding > failing-to-receive-RTSP-commands-when-RTP-over-TCP-is-used bug). As part of > these modifications, I'm removing the "RTPOverTCP_OK" hack altogether, > because its ugly. So you can forget about it. > Do you need any help with this? I'd be happy to help test any code you have coming. Thanks, Jeremy -------------- next part -------------- An HTML attachment was scrubbed... URL: From hage.jeremy at gmail.com Sat Mar 13 09:48:34 2010 From: hage.jeremy at gmail.com (=?ISO-8859-1?Q?j=E9r=E9my_HAGE?=) Date: Sat, 13 Mar 2010 18:48:34 +0100 Subject: [Live-devel] Question about MediaServer+OpenRTSP+VLC Message-ID: <96761dc21003130948n79eab7c6lc1b0878d4628b8ca@mail.gmail.com> Hello, I would like to know how I can use OpenRTSP to receive a file from the MediServer then read the stream with VLC. I tried this : ./live555MediaServer ./openRTSP -r -p 1234 rtsp://192.168.1.5:8554/test.mpg With VLC I opened rtp://@192.168.1.5:1234 Result : I see just one frame :s Thank you. Jamy -------------- next part -------------- An HTML attachment was scrubbed... URL: From vubrhar at gmail.com Sat Mar 13 14:44:38 2010 From: vubrhar at gmail.com (Vogel Ubrhar) Date: Sat, 13 Mar 2010 14:44:38 -0800 Subject: [Live-devel] Getting live working with QT Message-ID: <1751c65b1003131444u5e1759d7t7573835f20c26135@mail.gmail.com> Hi Has anybody had any luck compiling Qt code with C wrapper (sshared object) for Live from within QT Creator (linking againist it) and run it's client portion without crashing? I am having this weird issue that I have been trying to solve for some time, the live code is compiled with the following CFLAGS : $(INCLUDES) -I. -DSOCKLEN_T=socklen_t -g3 -O0 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fPIC I have a C wrapper for live code, which calls into major functions of live in C environment. The executable crashes randomly but always seems to be near RTSPClient::setupMediaSubsession function and subsession.rtpSource() in file RTSPClient.cpp seems to cause it, sometimes in playMediaSession too. If I build the code by taking what I have and compile with regular g++, everything works fine. Maybe there are some namespace mangling somewhere? -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sat Mar 13 21:13:20 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 13 Mar 2010 21:13:20 -0800 Subject: [Live-devel] Question about MediaServer+OpenRTSP+VLC In-Reply-To: <96761dc21003130948n79eab7c6lc1b0878d4628b8ca@mail.gmail.com> References: <96761dc21003130948n79eab7c6lc1b0878d4628b8ca@mail.gmail.com> Message-ID: >Hello, >I would like to know how I can use OpenRTSP to receive a file from >the MediServer then read the stream with VLC. >I tried this : >./live555MediaServer >./openRTSP -r -p 1234 >rtsp://192.168.1.5:8554/test.mpg > >With VLC I opened rtp://@192.168.1.5:1234 VLC already has our RTSP client code built in. So you just open rtsp://192.168.1.5:8554/test.mpg in VLC, and you should be able to play your stream. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From hage.jeremy at gmail.com Sat Mar 13 23:31:59 2010 From: hage.jeremy at gmail.com (=?ISO-8859-1?Q?j=E9r=E9my_HAGE?=) Date: Sun, 14 Mar 2010 08:31:59 +0100 Subject: [Live-devel] Question about MediaServer+OpenRTSP+VLC In-Reply-To: References: <96761dc21003130948n79eab7c6lc1b0878d4628b8ca@mail.gmail.com> Message-ID: <96761dc21003132331r69cadab3pb3b6cf19bafa6c7@mail.gmail.com> Thank you for your answer but the problem is that I want to relay the stream with testRelay. What I really want to do is to open the stream with openRTSP then receive it with testRelay to relay the stream to the the localhost but also to another VLC client of the network. So I can't just open the stream directly with VLC. What I want to do is a sort of Streaming P2P application. Is it possible? Thanks, Jamy 2010/3/14 Ross Finlayson > Hello, > I would like to know how I can use OpenRTSP to receive a file from the > MediServer then read the stream with VLC. > I tried this : > ./live555MediaServer > > ./openRTSP -r -p 1234 rtsp://192.168.1.5:8554/test.mpg > > With VLC I opened rtp://@192.168.1.5:1234 > > > VLC already has our RTSP client code built in. So you just open > rtsp://192.168.1.5:8554/test.mpg > in VLC, and you should be able to play your stream. > > -- > > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 15:30:46 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 14:30:46 -0800 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP command bug Message-ID: FYI, I have now installed a new version (2010.03.14) of the "LIVE555 Streaming Media" code that fixes a bug that has been annoying lots of people. Our RTSP server implementation will now properly handle (and respond to) RTSP commands for RTP-over-TCP streams (even after the first "PLAY" command). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From SRawling at pelco.com Sun Mar 14 14:50:29 2010 From: SRawling at pelco.com (Rawling, Stuart) Date: Sun, 14 Mar 2010 14:50:29 -0700 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: Message-ID: Thanks Ross, Can we now remove the ?hack? you put in for version ?2009.11.27? that removed the GET_PARAMETER option being listed as valid after an OPTIONS command is received? I believe the fix you put in place will now allow clients to call GET_PARAMETER if they wish. (RTSPServer.cpp:452) Regards, Stuart On 3/14/10 3:30 PM, "Ross Finlayson" wrote: > FYI, I have now installed a new version (2010.03.14) of the "LIVE555 > Streaming Media" code that fixes a bug that has been annoying lots of > people. Our RTSP server implementation will now properly handle (and > respond to) RTSP commands for RTP-over-TCP streams (even after the > first "PLAY" command). -- Stuart Rawling | API & Integration | stuart.rawling at pelco.com | +1(559) 388-6248| PELCO by Schneider Electric This transmission is intended only for use by the intended recipient(s). If you are not an intended recipient you should not read, disclose copy, circulate or in any other way use the information contained in this transmission. The information contained in this transmission may be confidential and/or privileged. If you have received this transmission in error, please notify the sender immediately and delete this transmission including any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 16:00:48 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 15:00:48 -0800 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: References: Message-ID: >Can we now remove the "hack" you put in for version "2009.11.27" >that removed the GET_PARAMETER option being listed as valid after an >OPTIONS command is received? I believe the fix you put in place >will now allow clients to call GET_PARAMETER if they wish. Yes, that hack can now be removed. I'd forgotten about this; it will be removed in the next release of the software. (Nonetheless, properly standards-compliant clients should continue to send RTCP "RR" packets to indicate liveness.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Sun Mar 14 17:02:12 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Sun, 14 Mar 2010 17:02:12 -0700 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: References: Message-ID: <988ed6931003141702s57e96d48h93cd59d0ad616e92@mail.gmail.com> Does this release also address the RTPOverTCP_OK variable? -Jeremy > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 18:36:28 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 18:36:28 -0700 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: <988ed6931003141702s57e96d48h93cd59d0ad616e92@mail.gmail.com> References: <988ed6931003141702s57e96d48h93cd59d0ad616e92@mail.gmail.com> Message-ID: >Does this release also address the RTPOverTCP_OK variable? Oops - I said the other day that this release would be getting rid of the "RTPOverTCP_OK" hack altogether. I forgot to do this. However, I'm going to remove it from an upcoming release - so you should just ignore it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jnoring at logitech.com Sun Mar 14 19:19:04 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Sun, 14 Mar 2010 19:19:04 -0700 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: References: <988ed6931003141702s57e96d48h93cd59d0ad616e92@mail.gmail.com> Message-ID: <988ed6931003141919w2956dabfs9b01741ebd18bc82@mail.gmail.com> On Sun, Mar 14, 2010 at 6:36 PM, Ross Finlayson wrote: > Does this release also address the RTPOverTCP_OK variable? >> > > Oops - I said the other day that this release would be getting rid of the > "RTPOverTCP_OK" hack altogether. I forgot to do this. However, I'm going > to remove it from an upcoming release - so you should just ignore it. > Ross, I'm confused--when you say you're removing that hack all together, does this mean we won't have a method for determining when an RTP over TCP sessions has ended (either due to error, or the client disconnecting or other?). Or is there some other method for knowing it's completed now? Basically, I need a method for knowing the stream has ended in the instance of network failure. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 20:20:38 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 20:20:38 -0700 Subject: [Live-devel] New LIVE555 release - fixes RTP-over-TCP RTSP commandbug In-Reply-To: <988ed6931003141919w2956dabfs9b01741ebd18bc82@mail.gmail.com> References: <988ed6931003141702s57e96d48h93cd59d0ad616e92@mail.gmail.com> <988ed6931003141919w2956dabfs9b01741ebd18bc82@mail.gmail.com> Message-ID: >Oops - I said the other day that this release would be getting rid >of the "RTPOverTCP_OK" hack altogether. I forgot to do this. > However, I'm going to remove it from an upcoming release - so you >should just ignore it. > > >Ross, I'm confused--when you say you're removing that hack all >together, does this mean we won't have a method for determining when >an RTP over TCP sessions has ended (either due to error, or the >client disconnecting or other?). The normal method(s) of determining this will be used - i.e, either (i) the client will disconnect (by issuing a "TEARDOWN" command), or (ii) the session will time out due to client inactivity. There's no need for this special hack anymore. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 21:28:21 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 21:28:21 -0700 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> Message-ID: Thanks for bringing this issue to our attention. It turns out that there was a bug in our Transport Stream parsing code that was causing this problem. (We weren't analyzing certain kinds of Program Association Table properly.) I have now installed a new version (2010.03.15) of the "LIVE555 Streaming Media" software that fixes this problem. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From agadkarmohan at gmail.com Sun Mar 14 22:34:29 2010 From: agadkarmohan at gmail.com (Mohan) Date: Mon, 15 Mar 2010 11:04:29 +0530 Subject: [Live-devel] How to stream from iphone camera? Message-ID: <5fec9111003142234i6949900fu83848da903dc3449@mail.gmail.com> Hi, Can anyone provide me with a sample code/link(s) on how to capture/encode and stream video and audio data to a webserver using LIVE555 Streaming Media, Currently I am using UIGetScreenImage() to capture the image, I have gone through ffmpeg also, but i don't know how to encode and stream to a webserver (eg: rtsp:/ipaddres:port/live/). Mohan. -------------- next part -------------- An HTML attachment was scrubbed... URL: From harishn at netxcell.com Sun Mar 14 23:20:26 2010 From: harishn at netxcell.com (Harish N) Date: Mon, 15 Mar 2010 11:50:26 +0530 Subject: [Live-devel] generating RTP streams......! Message-ID: <03506EFE6361E040B15B65F285CEFF850BF2D79A34@nxlmail.netxcell.com> Hello everyone... Whenever I try to connect to media server using rtsp://:554/filename Then the information about the client (like on to which ip the response,i.e RTP streams are to be sent is given), but what if I want to send them to different no matter from where the request comes from.....can I modify this at server side......and if so which is the module which handles the RTSP requests... Is it "RTSPserver.cpp".... please tell me if I am wrong... any response is appreciable Thank you -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 14 23:53:55 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 14 Mar 2010 23:53:55 -0700 Subject: [Live-devel] generating RTP streams......! In-Reply-To: <03506EFE6361E040B15B65F285CEFF850BF2D79A34@nxlmail.netxcell.com> References: <03506EFE6361E040B15B65F285CEFF850BF2D79A34@nxlmail.netxcell.com> Message-ID: >Hello everyone? > >Whenever I try to connect to media server using > >rtsp://:554/filename > >Then the information about the client (like on >to which ip the response,i.e RTP streams are to >be sent is given), > >but what if I want to send them to different > no matter from where the request >comes from?..can I modify this at server >side??and if so which is the module > >which handles the RTSP requests? Is it "RTSPserver.cpp"?. Yes. You can do this by adding the line #define RTSP_ALLOW_CLIENT_DESTINATION_SETTING 1 to the start of "RTSPServer.cpp". This will enable the code that lets the server handle "destination=" parameter in the "Transport:" header of the client's RTSP "SETUP" command. (Note that this has the potential for a denial-of-service attack, which is why this code is disabled by default. You should use it only if you trust all of your potential clients.) To use this, you would need a RTSP client that sets the "destination=" parameter in the "Transport:" header of its RTSP "SETUP" command (note that our RTSP client does not do this). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From harishn at netxcell.com Mon Mar 15 00:42:54 2010 From: harishn at netxcell.com (Harish N) Date: Mon, 15 Mar 2010 13:12:54 +0530 Subject: [Live-devel] generating RTP streams....! Message-ID: <03506EFE6361E040B15B65F285CEFF850BF2D79A55@nxlmail.netxcell.com> That's good to hear from you..... I think if I use VLC as my client (instead of our RTSP client),the transport header has the destination field.... But the problem is I want to hard code the destination part in the server code, Because what I inferred from ur answer is the response will be sent to the the destination part in the transport header would be obviously of that the client ip.... Instead if I want to modify it then I have to inject the packet manually.... I think that's the only way I can add a destination field ...am I right.. Do tell me if I am going wrong..... Thank you -------------- next part -------------- An HTML attachment was scrubbed... URL: From marcos at a5security.com Mon Mar 15 01:54:00 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Mon, 15 Mar 2010 09:54:00 +0100 Subject: [Live-devel] H264 Unicast SPS Packet Message-ID: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> Hello developers, I'm working now with a client receiving images from an H264 unicast server. I extract SPS and PPS packet using fmtp_spropparametersets and parseSPropParameterSets. I can see correctly the video data received when I decode. The problem is with the extraction of the resolution. I don't have problems when the server is multicast, I have a parser to do that task correctly. But with unicast if I try the same parser on the SPS packet I can't obtain the values correctly. Any suggestion of where or how I can obtain the resolution with unicast streaming? Thanks in advance. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From harishn at netxcell.com Mon Mar 15 03:02:53 2010 From: harishn at netxcell.com (Harish N) Date: Mon, 15 Mar 2010 15:32:53 +0530 Subject: [Live-devel] generating RTP streams....! Message-ID: <03506EFE6361E040B15B65F285CEFF850BF2D79AA1@nxlmail.netxcell.com> Thanks Ross.... I got what u actually meant to say... I will try to modify it now and will do it as per my need..... And will let you know the result Regards, Harish NPD team -------------- next part -------------- An HTML attachment was scrubbed... URL: From harishn at netxcell.com Mon Mar 15 03:42:17 2010 From: harishn at netxcell.com (Harish N) Date: Mon, 15 Mar 2010 16:12:17 +0530 Subject: [Live-devel] generating RTP streams....! Message-ID: <03506EFE6361E040B15B65F285CEFF850BF2D79ABB@nxlmail.netxcell.com> Thank you Ross for your help I have tried checking the code...I used my code in between media server and VLC... when I received setup command from VLC , theres nothing like "destination=" in transport field..... how to do it now.... Say for example if I want to connect from a client(VLC from ) to media server on .... Now our media server responds to ip1(on some port number). But I want to send the RTP streams to ... So I tried doing it by VlC client connecting to my code... I then changed the and port number and then forwarded the request to media server(on diff machine) But when I searched for a destination ip in SETUP request I found nothing of that kind.... Instead how can I achieve my fumctionality(either by using my code or removing my code).... If it can be done in any one of the ways do give me an idea.... Thank you -------------- next part -------------- An HTML attachment was scrubbed... URL: From marcos at a5security.com Mon Mar 15 04:00:42 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Mon, 15 Mar 2010 12:00:42 +0100 Subject: [Live-devel] H264 Unicast SPS Packet In-Reply-To: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> References: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> Message-ID: <39b9a2b31003150400r35e74572y44afd53a1bdb0b3d@mail.gmail.com> Hello developers, I'm working now with a client receiving images from an H264 unicast server. I extract SPS and PPS packet using fmtp_spropparametersets and parseSPropParameterSets. I can see correctly the video data received when I decode. The problem is with the extraction of the resolution. I don't have problems when the server is multicast, I have a parser to do that task correctly. But with unicast if I try the same parser on the SPS packet I can't obtain the values correctly. Any suggestion of where or how I can obtain the resolution with unicast streaming? Thanks in advance. PD: Re-Send because I don't have confirmation of my last mail. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From chouhan.nishesh at gmail.com Mon Mar 15 05:39:32 2010 From: chouhan.nishesh at gmail.com (nishesh chouhan) Date: Mon, 15 Mar 2010 18:09:32 +0530 Subject: [Live-devel] announcing rtsp stream Message-ID: hi, I am getting following response when trying to fetch rtsp url(rtsp://ip/obama) Response: *DESCRIBE* RTSP/1.0 404 File Not Found, Or In Incorrect Format\r\n I have created RTSP server rtspServer->addServerMediaSession(sms); invoked announceStream... I am deugging this for last few days but issues dosent seems to be resolved..... what could cause this issue ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From wbreyha at gmx.net Mon Mar 15 07:43:48 2010 From: wbreyha at gmx.net (Wolfgang Breyha) Date: Mon, 15 Mar 2010 15:43:48 +0100 Subject: [Live-devel] QuickTimeFileSink IDR detection patch Message-ID: <4B9E47A4.5050309@gmx.net> Hi! I enhanced QuickTimeFileSink to detect h264 IDR Frames. If -y is set in openRTSP it now waits *) until Audio is in sync first *) then until h264 is in sync and an IDR Frame is received This ensures that the recorded stream starts with an IDR Frame. I've limited this detection to feeds with 2 sources (mostly audio+h264 I guess). And I've introduced class SyncFrame to store frame numbers on sync frames for the stss atom. In case of h264 I store the IDR frame numbers and write those instead of the fixed += 12 interval. Last but not least I changed the hinf.payt atom payload format from 8 bit to 32 bit since IMO the specs says so. See Table 3-12 at http://developer.apple.com/mac/library/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html#//apple_ref/doc/uid/TP40000939-CH205-85342 Makes mp4dump happy so far;-) Greetings, Wolfgang PS: the patch works with --fuzz=0 for 2010.03.15 -- Wolfgang Breyha | http://www.blafasel.at/ Vienna University Computer Center | Austria -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: live-IDRFrame.patch URL: From paul.kreker at fkie.fraunhofer.de Mon Mar 15 07:55:37 2010 From: paul.kreker at fkie.fraunhofer.de (Kreker, Paul) Date: Mon, 15 Mar 2010 15:55:37 +0100 Subject: [Live-devel] fseek failed (err 6) Message-ID: <1FF0CFC89178B64DBD5CF6696750AC433884D5@mailserv1.lorien.fkie.fgan.de> Hello, I am a trainee from Germany and I must write for my company a programme in which the picture of a camera is to be seen (This camera: http://www.level-one.de/levelone.php?page=prod&cat=7004&model=WCS-2030V3). Now my problem is that if I want to have with openRTSP-d 2-4-w 640-h 480-f 30 rtsp://192.168.0.99 / live.sdp a MP4 file these mistakes is indicated: QuickTimeFileSink:: setWord (): fseek failed (err 6). What do I make wrong? To my system: -Win Xp SP3 -Visual studio 2008 (C ++) ------------------------------------------------------------------------------------------------------ Paul Kreker Auszubildender zum Fachinformatiker f?r Anwendungsentwicklung Fraunhofer-Institut f?r Kommunikation, Informationsverarbeitung und Ergonomie (FKIE) Abteilung Sensordaten und Informationsfusion (SDF) Neuenahrer Str. 20 53343 Wachtberg Germany Fon: +49 228 9435 456 Email: Paul.Kreker at fkie.fraunhofer.de Web: www.fgan.de ------------------------------------------------------------------------------------------------------ Diese E-Mail kann vertrauliche und/oder rechtlich gesch?tzte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrt?mlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren, Verbreiten sowie die unbefugte Weitergabe dieser E-Mail, ihrer Anh?nge und/oder deren jeweiliger Inhalte ist nicht gestattet. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of this e-mail, its attachments and/or the information contained therein is strictly forbidden. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 3792 bytes Desc: image001.gif URL: From dpiedra at estudiantes.uci.cu Mon Mar 15 13:34:21 2010 From: dpiedra at estudiantes.uci.cu (Dennis Piedra Yalint) Date: Mon, 15 Mar 2010 15:34:21 -0500 (CST) Subject: [Live-devel] Including other libraries into live555 Message-ID: <1262410731.427001268685261821.JavaMail.root@ucimail3.uci.cu> hi, folks, how can I include other libraries into live555mediaserver? for example , i would like to include libavformat libraries or x264 libraries to stream H264 medias..... thanks From finlayson at live555.com Mon Mar 15 15:32:36 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 15 Mar 2010 15:32:36 -0700 Subject: [Live-devel] fseek failed (err 6) In-Reply-To: <1FF0CFC89178B64DBD5CF6696750AC433884D5@mailserv1.lorien.fkie.fgan.de> References: <1FF0CFC89178B64DBD5CF6696750AC433884D5@mailserv1.lorien.fkie.fgan.de> Message-ID: >I am a trainee from Germany and I must write for my company a >programme in which the picture of a camera is to be seen (This >camera: >http://www.level-one.de/levelone.php?page=prod&cat=7004&model=WCS-2030V3). >Now my problem is that if I want to have with openRTSP-d 2-4-w 640-h >480-f 30 rtsp://192.168.0.99 / live.sdp a MP4 file these mistakes is >indicated: QuickTimeFileSink:: setWord (): fseek failed (err 6). >What do I make wrong? The problem is that the "-4" option tells "openRTSP" to output a file (in ".mp4" format) to 'stdout'. If you don't redirect 'stdout' to a file, then it will go to your console, which is a non-seekable file. To fix this, redirect 'stdout' to a file, by adding > foo.mp4 to the end of your command line. This will tell "openRTSP" to write to a file named "foo.mp4". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 15 19:11:51 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 15 Mar 2010 19:11:51 -0700 Subject: [Live-devel] QuickTimeFileSink IDR detection patch In-Reply-To: <4B9E47A4.5050309@gmx.net> References: <4B9E47A4.5050309@gmx.net> Message-ID: Thanks. I have now installed a new version (2010.03.16) of the software that includes this patch. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From live-devel at lists.lammerts.org Mon Mar 15 21:08:28 2010 From: live-devel at lists.lammerts.org (Eric Lammerts) Date: Tue, 16 Mar 2010 00:08:28 -0400 Subject: [Live-devel] H264 Unicast SPS Packet In-Reply-To: <39b9a2b31003150400r35e74572y44afd53a1bdb0b3d@mail.gmail.com> References: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> <39b9a2b31003150400r35e74572y44afd53a1bdb0b3d@mail.gmail.com> Message-ID: <4B9F043C.7000908@lists.lammerts.org> On 03/15/10 07:00, Miguel Angel Arcos wrote: > I'm working now with a client receiving images from an H264 unicast > server. I extract SPS and PPS packet using fmtp_spropparametersets and > parseSPropParameterSets. I can see correctly the video data received > when I decode. The problem is with the extraction of the resolution. I > don't have problems when the server is multicast, I have a parser to > do that task correctly. But with unicast if I try the same parser on > the SPS packet I can't obtain the values correctly. Maybe you need to prepend 00 00 00 01 to the SPS packet before feeding it to your parser? Eric From dpiedra at estudiantes.uci.cu Mon Mar 15 22:31:03 2010 From: dpiedra at estudiantes.uci.cu (Dennis Piedra Yalint) Date: Tue, 16 Mar 2010 00:31:03 -0500 (CST) Subject: [Live-devel] Streaming h264 Message-ID: <863925505.583621268717463291.JavaMail.root@ucimail3.uci.cu> hi, can any of you stream h264,vod or live ?, please if someone could do it I would appreciate a little help because i don?t know where to start.....thanks From changchun.zhang at tektronix.com Mon Mar 15 23:33:58 2010 From: changchun.zhang at tektronix.com (changchun.zhang at tektronix.com) Date: Mon, 15 Mar 2010 23:33:58 -0700 Subject: [Live-devel] Testing resource for the RTP AMR In-Reply-To: <38A838806557FA4D80EFB2C91A7BC7640D98674355@us-bv-m10.global.tektronix.net> References: <38A838806557FA4D80EFB2C91A7BC7640D98580B37@us-bv-m10.global.tektronix.net > <38A838806557FA4D80EFB2C91A7BC7640D98674342@us-bv-m10.global.tektronix.net> <38A838806557FA4D80EFB2C91A7BC7640D98674355@us-bv-m10.global.tektronix.net> Message-ID: <38A838806557FA4D80EFB2C91A7BC7640DA5CE419B@us-bv-m10.global.tektronix.net> Does any body have resource to test the RTP AMR stream? I mean the RTSP server which is sending the RTP AMR stream for my RTSP Client test. B.R, Changchun (Alex) -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of changchun.zhang at tektronix.com Sent: Friday, January 22, 2010 3:08 PM To: live-devel at ns.live555.com Subject: [Live-devel] Testing resource for the RTP AMR Hi experts, I want to test the RTSP client on the all kinds of possible formates of the RTP AMR payload. But I can not find the testing resource which can generate the desired RTP stream used for this testing. I want to know how did you perform such test? The RTSP server can only generate the single frame single packet stream. Thanks, Alex Zhang _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From chouhan.nishesh at gmail.com Tue Mar 16 00:16:38 2010 From: chouhan.nishesh at gmail.com (nishesh chouhan) Date: Tue, 16 Mar 2010 12:46:38 +0530 Subject: [Live-devel] announcing rtsp stream - more info Message-ID: Hi , following is the bt from brakepoint in gdb.. when we receive DESCRIBE from client. I put brakepoint in doGetNextFrame...in normal scenario(working case) this hits only when we receive PLAY command....but here its getting hit when we receive DESCIBE and the reponse to DESCRIBE sent is either "400 bad request" or "404 file not found"....what is the exact problem here...its really getting hard to debug #0 0x08055e36 in RequestecVideoStreamBufferSource::doGetNextFrame () #1 0x0809f893 in StreamParser::ensureValidBytes1 () #2 0x08060615 in MPEG4VideoStreamParser::parseVisualObjectSequence () #3 0x08061366 in MPEG4VideoStreamParser::parse () #4 0x0805d475 in MPEGVideoStreamFramer::continueReadProcessing () #5 0x0807b80b in MultiFramedRTPSink::packFrame () #6 0x0807bd19 in MultiFramedRTPSink::continuePlaying () #7 0x08090a2e in MPEG4VideoFileServerMediaSubsession::getAuxSDPLine () #8 0x0808fbf4 in OnDemandServerMediaSubsession::setSDPLinesFromRTPSink () #9 0x08090052 in OnDemandServerMediaSubsession::sdpLines () #10 0x0808ebbe in ServerMediaSession::generateSDPDescription () #11 0x08081c41 in RTSPServer::RTSPClientSession::handleCmd_DESCRIBE () #12 0x0808206e in RTSPServer::RTSPClientSession::incomingRequestHandler1 () #13 0x080a73b7 in BasicTaskScheduler::SingleStep () #14 0x080a67d0 in BasicTaskScheduler0::doEventLoop () #15 0x0804eb17 in RequestecServer::startLive (this=0x86f9140, count=0) at requestecMain.cpp:726 #16 0x00db70a4 in PSimpleThread::Main () from /build/external/ptlib_v2_0_1/lib/libpt_linux_x86_r.so.2.0.1 #17 0x00da1ba6 in PThread::PX_ThreadStart () from /build/external/ptlib_v2_0_1/lib/libpt_linux_x86_r.so.2.0.1 #18 0x0064c5ab in start_thread () from /lib/libpthread.so.0 #19 0x005a2cfe in clone () from /lib/libc.so.6 Thanks, Nishesh -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 16 01:28:44 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 16 Mar 2010 01:28:44 -0700 Subject: [Live-devel] announcing rtsp stream - more info In-Reply-To: References: Message-ID: >when we receive DESCIBE and the reponse to DESCRIBE sent is either >"400 bad request" or "404 file not found"....what is the exact >problem here...its really getting hard to debug Oh come on. You Have Complete Source Code, and you can easily find the code where these error messages are being generated (Hint: In "RTSPServer.cpp"). Figuring out what your client is doing wrong (to make the server produce these errors) should be straightforward. (Now does everyone see why I discriminate against people who use "@gmail.com" addresses? :-) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From slaine at slaine.org Tue Mar 16 04:47:32 2010 From: slaine at slaine.org (Glen Gray) Date: Tue, 16 Mar 2010 11:47:32 +0000 Subject: [Live-devel] liveMediaServer in production env Message-ID: <9757CB1A-CAB5-4B83-9051-527FF8BACDB4@slaine.org> Hey Guys, I'm looking into whether we can use liveMediaServer in a production environment. At the moment, we extensively use Kasenna servers. But we've a few cost sensitive customers and I'm thinking that liveMediaServer could offer a good alternative. At the moment, one of the benefits of using kasenna is the support utils that accompany the server. At the most basic level, logging and the ability to get a list of playing streams. Is there anything like this available with liveMediaServer or are there open source streaming servers based off the code that offer this ? Kind Regards, -- Glen Gray From jnoring at logitech.com Tue Mar 16 09:38:03 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Tue, 16 Mar 2010 09:38:03 -0700 Subject: [Live-devel] liveMediaServer in production env In-Reply-To: <9757CB1A-CAB5-4B83-9051-527FF8BACDB4@slaine.org> References: <9757CB1A-CAB5-4B83-9051-527FF8BACDB4@slaine.org> Message-ID: <988ed6931003160938n21bd2109jc655a614c5b4d23a@mail.gmail.com> On Tue, Mar 16, 2010 at 4:47 AM, Glen Gray wrote: > Hey Guys, > > I'm looking into whether we can use liveMediaServer in a production > environment. At the moment, we extensively use Kasenna servers. But we've a > few cost sensitive customers and I'm thinking that liveMediaServer could > offer a good alternative. > > At the moment, one of the benefits of using kasenna is the support utils > that accompany the server. At the most basic level, logging and the ability > to get a list of playing streams. > > Is there anything like this available with liveMediaServer or are there > open source streaming servers based off the code that offer this ? > I think you can definitely get a list of playing streams. For logging, my impression of Live555 thus far is that it's hit-or-miss, and there isn't much granularity to the logging that does happen. Most of it is a result of compile-time switches. I think the primary purpose of Live555 is a light-weight, embedded RTSP server (and also RTP stack). It's generally full featured, but I could see an enterprise user thinking's it's a bit lacking (it's certainly not a Darwin or Wowza--but those products also don't run on a 200 MHZ ARM part either). -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Tue Mar 16 09:41:56 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Tue, 16 Mar 2010 09:41:56 -0700 Subject: [Live-devel] H264 Unicast SPS Packet In-Reply-To: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> References: <39b9a2b31003150154p2ac4105wdc877bb4e8b333f9@mail.gmail.com> Message-ID: <988ed6931003160941w788dd219pee4c4776389a065@mail.gmail.com> On Mon, Mar 15, 2010 at 1:54 AM, Miguel Angel Arcos wrote: > Hello developers, > > I'm working now with a client receiving images from an H264 unicast server. > I extract SPS and PPS packet using fmtp_spropparametersets and > parseSPropParameterSets. I can see correctly the video data received when I > decode. The problem is with the extraction of the resolution. I don't have > problems when the server is multicast, I have a parser to do that task > correctly. But with unicast if I try the same parser on the SPS packet I > can't obtain the values correctly. > > Any suggestion of where or how I can obtain the resolution with unicast > streaming? > For unicast, are you sure you're correctly sending the SPS/PPS info in your SDP file? Or is your SPS/PPS info in-stream? -------------- next part -------------- An HTML attachment was scrubbed... URL: From amadorim at vdavda.com Tue Mar 16 10:19:10 2010 From: amadorim at vdavda.com (Marco Amadori) Date: Tue, 16 Mar 2010 18:19:10 +0100 Subject: [Live-devel] liveMediaServer in production env In-Reply-To: <988ed6931003160938n21bd2109jc655a614c5b4d23a@mail.gmail.com> References: <9757CB1A-CAB5-4B83-9051-527FF8BACDB4@slaine.org> <988ed6931003160938n21bd2109jc655a614c5b4d23a@mail.gmail.com> Message-ID: <201003161819.11164.amadorim@vdavda.com> In data marted? 16 marzo 2010 17:38:03, Jeremy Noring ha scritto: > > I'm looking into whether we can use liveMediaServer in a production > > environment. It could be done, in fact I'm doing it since more than 1 year. > > At the moment, one of the benefits of using kasenna is the support utils > > that accompany the server. At the most basic level, logging You need to touch the code for that, no log as is. > > and the > > ability to get a list of playing streams. > > Is there anything like this available with liveMediaServer or are there > > open source streaming servers based off the code that offer this ? > I think you can definitely get a list of playing streams. yes, with: ls -l /proc/$(pidof live555MediaServer)/fd If you patch the code for logging, remember to share it back! -- A: http://it.wikipedia.org/wiki/Top-posting Q: Non ho capito, mi daresti un url in italiano? A: http://en.wikipedia.org/wiki/Posting_style#Top-posting Q: Where could I get some informations about this? A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? ESC:wq -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From dubin at sict.ac.cn Tue Mar 16 19:27:25 2010 From: dubin at sict.ac.cn (dubin) Date: Wed, 17 Mar 2010 10:27:25 +0800 Subject: [Live-devel] Does the server achieve these functions? Message-ID: <201003171027251967221@sict.ac.cn> My Dear: Now I need to build a network broadcast platform, so I need to select a streaming media server. I would like to ask whether the current version of Live555 Media Server deploy the functions that I need. a. User Authentication b. How does the server capture the live audio information and archive live broadcasting? c. How does the server achieve the function that users have different authorization to view the same media, such as if you are a paying user, you will have access to receive programs which needs to pay for, while ordinary users cannot. d. Whether the server can record the number of times each media file has been accessed, when it was accessed, and who has accessed it. Thank you for your reading and I am looking forward to hearing from you very much. Best wishes! Yours sincerely Du Bin. 2010-03-17 dubin -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: dubin at sict.ac.cn.jpg Type: image/jpeg Size: 7971 bytes Desc: not available URL: From finlayson at live555.com Tue Mar 16 22:26:54 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 16 Mar 2010 22:26:54 -0700 Subject: [Live-devel] Does the server achieve these functions? In-Reply-To: <201003171027251967221@sict.ac.cn> References: <201003171027251967221@sict.ac.cn> Message-ID: >Now I need to build a network broadcast platform, so I need to >select a streaming media server. I would like to ask whether the >current version of Live555 Media Server deploy the functions that I >need. The "LIVE555 Media Server" application - unmodified - does not support these functions. However, many of them could be added by doing some programming. > >a. User Authentication Yes. See the code bracketed by #ifdef ACCESS_CONTROL #endif in "live555MediaServer.cpp". > >b. How does the server capture the live audio information Please read the FAQ. >and archive live broadcasting? There's no archiving mechanism built in; you would need to write this. > >c. How does the server achieve the function that users have >different authorization to view the same media Our existing code does not support this. To support this, you would probably need to subclass "RTSPServer" and redefine the "authenticationOK()" virtual function. You might also need to subclass "UserAuthenticationDatabase". >d. Whether the server can record the number of times each >media file has been accessed, when it was accessed, and who has >accessed it. This is something that you would need to write yourself. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From Kenneth.X.Melms.-ND at espn.com Wed Mar 17 09:57:06 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Wed, 17 Mar 2010 12:57:06 -0400 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> Message-ID: <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> Ross - Excellent news! I tried out the new version, and it does indeed index the file I sent you - but it doesn't index some of the other ones I have. I can accumulate a set of files that fail and make them available if that helps. I assume I could also diff the versions and see what you did and try a DIY hack, but I would rather defer to the expert ;) Thanks for your quick response. K -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Monday, March 15, 2010 12:28 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files Thanks for bringing this issue to our attention. It turns out that there was a bug in our Transport Stream parsing code that was causing this problem. (We weren't analyzing certain kinds of Program Association Table properly.) I have now installed a new version (2010.03.15) of the "LIVE555 Streaming Media" software that fixes this problem. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel Please consider the environment before printing this e-mail. From finlayson at live555.com Wed Mar 17 11:37:09 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 17 Mar 2010 11:37:09 -0700 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> Message-ID: >I tried out the new version, and it does indeed index the file I >sent you - but it doesn't index some of the other ones I have. > >I can accumulate a set of files that fail and make them available if >that helps. Just one Transport Stream file that fails should be enough, for now. (We can work through any problems one-at-a-time.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From Kenneth.X.Melms.-ND at espn.com Wed Mar 17 12:55:13 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Wed, 17 Mar 2010 15:55:13 -0400 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> Message-ID: <811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> Ok, here's a link to another one: http://www.flyingplastic.com/share/news.ts Thanks again! K -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Wednesday, March 17, 2010 2:37 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files >I tried out the new version, and it does indeed index the file I >sent you - but it doesn't index some of the other ones I have. > >I can accumulate a set of files that fail and make them available if >that helps. Just one Transport Stream file that fails should be enough, for now. (We can work through any problems one-at-a-time.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel Please consider the environment before printing this e-mail. From finlayson at live555.com Thu Mar 18 08:03:17 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 18 Mar 2010 08:03:17 -0700 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> Message-ID: >Ok, here's a link to another one: > >http://www.flyingplastic.com/share/news.ts The problem with this file is that the Program Map Table (PMT) packets (those with PID 0x00a9) appear to be completely misformed. (Note, BTW, that VLC can't play this file either.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marcos at a5security.com Thu Mar 18 07:27:19 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Thu, 18 Mar 2010 15:27:19 +0100 Subject: [Live-devel] Timeout RTSP Message-ID: <39b9a2b31003180727u41a9c591j33bb29440c4565fc@mail.gmail.com> Hi developers, I'm working now with a client using live555 and the function getNextFrame(...). How I can detect when the connection with the server is broken and I don't receive more frames from him? I need that information to reconnect on my client but i don't know how. I readed from different sources about a timeout of 30 secs but where I receive the signal of this timeout? Thanks in advance. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From paul.kreker at fkie.fraunhofer.de Thu Mar 18 07:28:32 2010 From: paul.kreker at fkie.fraunhofer.de (Kreker, Paul) Date: Thu, 18 Mar 2010 15:28:32 +0100 Subject: [Live-devel] fseek failed (err 6) In-Reply-To: References: <1FF0CFC89178B64DBD5CF6696750AC433884D5@mailserv1.lorien.fkie.fgan.de> Message-ID: <1FF0CFC89178B64DBD5CF6696750AC4338852B@mailserv1.lorien.fkie.fgan.de> Hello, thank you for your answer. I didn't know that stdout can be also diverted in Windows. But now the programme runs. ------------------------------------------------------------------------------------------------------ Paul Kreker Auszubildender zum Fachinformatiker f?r Anwendungsentwicklung Fraunhofer-Institut f?r Kommunikation, Informationsverarbeitung und Ergonomie (FKIE) Abteilung Sensordaten und Informationsfusion (SDF) Neuenahrer Str. 20 53343 Wachtberg Germany Fon: +49 228 9435 456 Email: Paul.Kreker at fkie.fraunhofer.de Web: www.fgan.de ------------------------------------------------------------------------------------------------------ Diese E-Mail kann vertrauliche und/oder rechtlich gesch?tzte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrt?mlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren, Verbreiten sowie die unbefugte Weitergabe dieser E-Mail, ihrer Anh?nge und/oder deren jeweiliger Inhalte ist nicht gestattet. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of this e-mail, its attachments and/or the information contained therein is strictly forbidden. ________________________________ Von: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] Im Auftrag von Ross Finlayson Gesendet: Montag, 15. M?rz 2010 23:33 An: LIVE555 Streaming Media - development & use Betreff: Re: [Live-devel] fseek failed (err 6) I am a trainee from Germany and I must write for my company a programme in which the picture of a camera is to be seen (This camera: http://www.level-one.de/levelone.php?page=prod&cat=7004&model=WCS-2030V3). Now my problem is that if I want to have with openRTSP-d 2-4-w 640-h 480-f 30 rtsp://192.168.0.99 / live.sdp a MP4 file these mistakes is indicated: QuickTimeFileSink:: setWord (): fseek failed (err 6). What do I make wrong? The problem is that the "-4" option tells "openRTSP" to output a file (in ".mp4" format) to 'stdout'. If you don't redirect 'stdout' to a file, then it will go to your console, which is a non-seekable file. To fix this, redirect 'stdout' to a file, by adding > foo.mp4 to the end of your command line. This will tell "openRTSP" to write to a file named "foo.mp4". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 3792 bytes Desc: image001.gif URL: From amor_massi at yahoo.fr Thu Mar 18 08:30:14 2010 From: amor_massi at yahoo.fr (amor massi) Date: Thu, 18 Mar 2010 15:30:14 +0000 (GMT) Subject: [Live-devel] H264 SVC Media Server Message-ID: <750978.81431.qm@web24205.mail.ird.yahoo.com> Hello developpers; I am developing a H264 SVC Media Server I am a novice on the live555 plateforme; I want to extend the live555mediaserver, and I think use the sources available for the H264 Media to build mine. Actually, I am in a lack of time, and reading the source anarchically.I read the FAQ, So, any suggestion to a good start, documentation, references are welcome. Thank you -------------- next part -------------- An HTML attachment was scrubbed... URL: From den.dgtex at gmail.com Thu Mar 18 14:23:01 2010 From: den.dgtex at gmail.com (Denis Z) Date: Fri, 19 Mar 2010 00:23:01 +0300 Subject: [Live-devel] UDP RTSP media session expires Message-ID: Hi! I use live555 RTSP-client to receive video-audio via UDP from NVC Encoder (vendor - UDPTechnology). I have a problem: media session expires after 45 seconds and encoder stops streaming. In some manuals I read that client should periodically send some command for its session (for example - OPTIONS request) - it will prevent the media session expiration. I made the solution: I schedule my custom task using BasicTaskScheduler::scheduleDelayedTask() and pass to the task underlying RTSP-client's tcp socket. In this task I send RTSP-request OPTIONS to the server and receive the response. I perform that every 20 seconds. It works fine, but, are there any complete solution in live555? It's not very good to do such custom-made things. PS. VLC player doesn't keep the session alive, and as a result - the video-audio stops after 45 seconds of transmission. Thanks, Denis. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 18 18:29:27 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 18 Mar 2010 18:29:27 -0700 Subject: [Live-devel] UDP RTSP media session expires In-Reply-To: References: Message-ID: >I use live555 RTSP-client to receive video-audio via UDP from NVC >Encoder (vendor - UDPTechnology). I have a problem: media session >expires after 45 seconds and encoder stops streaming. In some >manuals I read that client should periodically send some command for >its session (for example - OPTIONS request) - it will prevent the >media session expiration. Yes, but if your client is using RTCP - which it should - then this will not be necessary, because periodic RTCP "RR" (Reception Report) packets from the client will indicate liveness. Are you creating a "RTCPInstance" for each "RTPSource" in your client? You should. If you are calling "MediaSubsession::initiate()", then this should be happening automatically. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From hage.jeremy at gmail.com Fri Mar 19 01:44:36 2010 From: hage.jeremy at gmail.com (=?ISO-8859-1?Q?j=E9r=E9my_HAGE?=) Date: Fri, 19 Mar 2010 09:44:36 +0100 Subject: [Live-devel] Question about the fonction addDestination Message-ID: <96761dc21003190144w7e4a0752vca68301b7955f094@mail.gmail.com> Hello, I have a question concerning the fonction "addDestination". How can I use it when the sink is playing? Thanks. Jamy -------------- next part -------------- An HTML attachment was scrubbed... URL: From Kenneth.X.Melms.-ND at espn.com Fri Mar 19 08:14:48 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Fri, 19 Mar 2010 11:14:48 -0400 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> Message-ID: <811154F9C0E3974790ED68483262161006D6C3E9CF@xchgbrsmit.corp.espn.pvt> Ross - Do you have/know of a good tool I can use to analyze faulty streams (ones who create 0 byte indexes) myself? Most MPG analysis tools I've tried don't work properly, so I'm left with a hex editor and the RFC most times. K -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Thursday, March 18, 2010 11:03 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files >Ok, here's a link to another one: > >http://www.flyingplastic.com/share/news.ts The problem with this file is that the Program Map Table (PMT) packets (those with PID 0x00a9) appear to be completely misformed. (Note, BTW, that VLC can't play this file either.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel Please consider the environment before printing this e-mail. From finlayson at live555.com Fri Mar 19 08:38:42 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 19 Mar 2010 08:38:42 -0700 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3E9CF@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E9CF@xchgbrsmit.corp.espn.pvt> Message-ID: >Do you have/know of a good tool I can use to analyze faulty streams >(ones who create 0 byte indexes) myself? > >Most MPG analysis tools I've tried don't work properly, so I'm left >with a hex editor and the RFC most times. That's pretty much what I resort to, also (plus, adding debugging "fprintf()" calls to my code, to figure out why it's not working on the Transport Stream file in question). At the very least, if you have a Transport Stream file for which indexing doesn't work, I suggest that you first make sure that VLC (for example) can play it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From gbonneau at miranda.com Fri Mar 19 08:43:53 2010 From: gbonneau at miranda.com (BONNEAU Guy) Date: Fri, 19 Mar 2010 11:43:53 -0400 Subject: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte index files In-Reply-To: <811154F9C0E3974790ED68483262161006D6C3E9CF@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6C3DF71@xchgbrsmit.corp.espn.pvt><811154F9C0E3974790ED68483262161006D6C3E066@xchgbrsmit.corp.espn.pvt><811154F9C0E3974790ED68483262161006D6C3E66A@xchgbrsmit.corp.espn.pvt><811154F9C0E3974790ED68483262161006D6C3E70C@xchgbrsmit.corp.espn.pvt> <811154F9C0E3974790ED68483262161006D6C3E9CF@xchgbrsmit.corp.espn.pvt> Message-ID: <6353CA579307224BAFDE9495906E69160427608A@ca-ops-mail> I've been told that this is one of the best tool available. http://www.manzanitasystems.com/mp2tsa.html GB >-----Original Message----- >From: live-devel-bounces at ns.live555.com [mailto:live-devel- >bounces at ns.live555.com] On Behalf Of Melms, Kenneth X. -ND >Sent: Friday, March 19, 2010 11:15 >To: LIVE555 Streaming Media - development & use >Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte >index files > >Ross - > >Do you have/know of a good tool I can use to analyze faulty streams >(ones who create 0 byte indexes) myself? > >Most MPG analysis tools I've tried don't work properly, so I'm left with >a hex editor and the RFC most times. > >K > >-----Original Message----- >From: live-devel-bounces at ns.live555.com [mailto:live-devel- >bounces at ns.live555.com] On Behalf Of Ross Finlayson >Sent: Thursday, March 18, 2010 11:03 AM >To: LIVE555 Streaming Media - development & use >Subject: Re: [Live-devel] MPEG2TransportStreamIndexer produces 0 byte >index files > >>Ok, here's a link to another one: >> >>http://www.flyingplastic.com/share/news.ts > >The problem with this file is that the Program Map Table (PMT) >packets (those with PID 0x00a9) appear to be completely misformed. >(Note, BTW, that VLC can't play this file either.) >-- > >Ross Finlayson >Live Networks, Inc. >http://www.live555.com/ >_______________________________________________ >live-devel mailing list >live-devel at lists.live555.com >http://lists.live555.com/mailman/listinfo/live-devel > >Please consider the environment before printing this e-mail. >_______________________________________________ >live-devel mailing list >live-devel at lists.live555.com >http://lists.live555.com/mailman/listinfo/live-devel From d2 at d2consulting.co.uk Fri Mar 19 09:47:36 2010 From: d2 at d2consulting.co.uk (Dom Robinson) Date: Fri, 19 Mar 2010 16:47:36 +0000 Subject: [Live-devel] PlaySIP Message-ID: <692469279-1269017391-cardhu_decombobulator_blackberry.rim.net-1887608011-@bda2148.bisx.produk.on.blackberry> Hi list This is my first posting: I wonder if anyone has 'versioned' playsip to enable a connection to a SIP call and an out put as a live stream (suitable for windows media / flash to listen to - one way obviously!)? I want to stream SIP calls on the net. If so could you share any info on how you went about it? Thanks in advance Dom From den.dgtex at gmail.com Fri Mar 19 13:17:05 2010 From: den.dgtex at gmail.com (Denis Z) Date: Fri, 19 Mar 2010 23:17:05 +0300 Subject: [Live-devel] UDP RTSP media session expires In-Reply-To: References: Message-ID: Yes, I call MediaSubsession::initiate() for each subsession that I want to receive data from. But the session expires. And doesn't expires if I perform my custom-made scheduled task. 2010/3/19 Ross Finlayson > I use live555 RTSP-client to receive video-audio via UDP from NVC Encoder >> (vendor - UDPTechnology). I have a problem: media session expires after 45 >> seconds and encoder stops streaming. In some manuals I read that client >> should periodically send some command for its session (for example - OPTIONS >> request) - it will prevent the media session expiration. >> > > Yes, but if your client is using RTCP - which it should - then this will > not be necessary, because periodic RTCP "RR" (Reception Report) packets from > the client will indicate liveness. > > Are you creating a "RTCPInstance" for each "RTPSource" in your client? You > should. If you are calling "MediaSubsession::initiate()", then this should > be happening automatically. > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Fri Mar 19 15:58:42 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 19 Mar 2010 15:58:42 -0700 Subject: [Live-devel] UDP RTSP media session expires In-Reply-To: References: Message-ID: >Yes, I call MediaSubsession::initiate() for each subsession that I >want to receive data from. But the session expires. Then you must have a firewall somewhere that is blocking RTCP packets from your client from reaching your server. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From den.dgtex at gmail.com Fri Mar 19 18:12:22 2010 From: den.dgtex at gmail.com (Denis Z) Date: Sat, 20 Mar 2010 04:12:22 +0300 Subject: [Live-devel] RTSP and assembling audio buffer from audio frames Message-ID: Hi! I'm not really sure which side is responsible for the problem... More like that I need your advice what to do and investigate next. I use live555 to receive video and audio streams using RTSP client. The problem is: when I fill audio buffer with audio-frames according to their timestamps, I get a small gaps between frames in the buffer. That causes unacceptable artefacts while playing. From the other side, if I simply concatenate incoming audio-frames, I got clear audio without artefacts. The problem is protocol-independent, I can hear the same artefacts on both TCP and UDP protocols. Audio is ?-law encoded. Here (http://www.sendspace.com/file/ba7f3n) you can download small archive (~200 kilobytes) with two samples: "solid.wav" created via simple concatenation of incoming audio-frames. Plays clear, no artefacts. "assembled.wav" created using prerequisite buffer, where incoming audio-frames were arranged according to their timestamps. Plays with artefacts. If you'll open this file in hex-editor you will see small null-filled gaps. I can't use simple concatenation method because of synchronization issue. What should I do, what solutions can fix that problem? -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sat Mar 20 01:19:19 2010 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 20 Mar 2010 01:19:19 -0700 Subject: [Live-devel] RTSP and assembling audio buffer from audio frames In-Reply-To: References: Message-ID: >I'm not really sure which side is responsible for the problem... >More like that I need your advice what to do and investigate next. > >I use live555 to receive video and audio streams using RTSP client. >The problem is: when I fill audio buffer with audio-frames according >to their timestamps I hope you mean "presentation times" rather than "timestamps". (You should not be dealing with RTP timestamps directly, but instead "presentation times", which are derived automatically from RTP timestamps.) >, I get a small gaps between frames in the buffer. That causes >unacceptable artefacts while playing. From the other side, if I >simply concatenate incoming audio-frames, I got clear audio without >artefacts. The problem is protocol-independent, I can hear the same >artefacts on both TCP and UDP protocols. First, you should make absolutely sure that you're not seeing network packet loss. You can check this by running "openRTSP" with the "-Q" option. (A small amount of packet loss would explain the presentation time gaps, but might not be noticeable when you concatenate the frames that you end up receiving.) Second, you haven't said anything about your server. It is the server that determines the frames' presentation times. I hope you don't see this problem with presentation times when you use *our* server implementation (either "testOnDemandRTSPServer" or "live555MediaServer"). What server are you using? -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From den.dgtex at gmail.com Sat Mar 20 08:48:37 2010 From: den.dgtex at gmail.com (Denis Z) Date: Sat, 20 Mar 2010 18:48:37 +0300 Subject: [Live-devel] RTSP and assembling audio buffer from audio frames In-Reply-To: References: Message-ID: Good day, Ross! I mean the timestamps that I obtain in frame's callback, which is setup using MediaSink::fSource->getNextFrame(..., &on_frame, ...); void on_frame(void* clientData, unsigned int frameSize, unsigned /*numTruncatedBytes*/, struct timeval tv, unsigned /*durationInMicroseconds*/) { // tv - is my timestamp } I didn't saw the packet loss in the openRTSP tool. As I said before, the problem is the same on both network protocols UDP and TCP, so I think its not a network issue. My server is NVC1000 encoder by UDP Technology, here is detailed description http://www.udptechnology.com/products/IP/NVC1000.html There is no such problem in VLC player or NVC1000 SDK Tool while playing their stream (both uses live555 RTSP client) in the same environment. Also, the problem is independent of network environment: my customer viewed the stream being in the same private network with the encoder, and I view the stream over the Internet from another continent. In both cases the problem is the same - small gaps between audio frames. I will be glad get any advices, suggestions or ideas. 2010/3/20 Ross Finlayson > I'm not really sure which side is responsible for the problem... More like >> that I need your advice what to do and investigate next. >> >> I use live555 to receive video and audio streams using RTSP client. The >> problem is: when I fill audio buffer with audio-frames according to their >> timestamps >> > > I hope you mean "presentation times" rather than "timestamps". (You should > not be dealing with RTP timestamps directly, but instead "presentation > times", which are derived automatically from RTP timestamps.) > > > , I get a small gaps between frames in the buffer. That causes >> unacceptable artefacts while playing. From the other side, if I simply >> concatenate incoming audio-frames, I got clear audio without artefacts. The >> problem is protocol-independent, I can hear the same artefacts on both TCP >> and UDP protocols. >> > > First, you should make absolutely sure that you're not seeing network > packet loss. You can check this by running "openRTSP" with the "-Q" option. > (A small amount of packet loss would explain the presentation time gaps, > but might not be noticeable when you concatenate the frames that you end up > receiving.) > > Second, you haven't said anything about your server. It is the server that > determines the frames' presentation times. I hope you don't see this > problem with presentation times when you use *our* server implementation > (either "testOnDemandRTSPServer" or "live555MediaServer"). What server are > you using? > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Sun Mar 21 12:55:47 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Sun, 21 Mar 2010 12:55:47 -0700 Subject: [Live-devel] Detecting network failure Message-ID: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> Previously I was watching RTPOverTCP_OK to determine when there was a failure in TCP streaming, but that's since been removed. How can I determine when streaming has ceased because the network has failed (my internet connection goes down, for example)? In particular, I need to do this with a DarwinInjector instance. Previously I'd check the status of RTPOverTCP_OK every 500 msec; what options do I now have to determine if streaming is failing? Thanks, Jeremy -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 09:26:52 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 09:26:52 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> Previously I was watching RTPOverTCP_OK to determine when there was a failure in TCP streaming, but that's since been removed. How can I determine when streaming has ceased because the network has failed (my internet connection goes down, for example)? In particular, I need to do this with a DarwinInjector instance. Previously I'd check the status of RTPOverTCP_OK every 500 msec; what options do I now have to determine if streaming is failing? Thanks, Jeremy Hi Jeremy, When this happens do you, by chance, notice the CPU utilization go close to 100% on your target? I've seen this phenomenon when the client side closes an RTPOverTCP connection in my RTP/RTSP/TCP/HTTP environment...VLC sends an RTCP BYTE, and then closes the socket (it didn't send an RTSP TEARDOWN...can anyone confirm that behavior??? is that correct/expected??? (I'm not sure why it wouldn't send the TEARDOWN too)... Anyway, as an experiment, I changed sendRTPOverTCP() helper function to return the socket status return from send()....and in sendPacket(), upon a non-zero return from sendRTPOverTCP, I call removeStreamSocket(). In RTPInterface::sendPacket(...) // Also, send over each of our TCP sockets: for (tcpStreamRecord* streams = fTCPStreams; streams != NULL; streams = streams->fNext) { if (sendRTPOverTCP(packet, packetSize, streams->fStreamSocketNum, streams->fStreamChannelId)) { #ifdef DEBUG_RTP fprintf(stderr, "RTPInterface::sendRTPOverTCP() failed...remoteStreamSocket %d, channelID %d\n", streams->fStreamSocketNum, streams->fStreamChannelId); #endif removeStreamSocket(streams->fStreamSocketNum, streams->fStreamChannelId); } } Eventually, the server side will timeout the connection as the "liveness" check fails, and all context, as far as I can tell, will be intact... This change will keep the tcpReadHandler() from calling select() (via readSocket()->blockUntilReadable()) with a non-NULL timeout.tv_sec = 0, which always returns 0 every time through the event loop...it also keeps sendPacket from sending to a "broken-pipe", for every packet...I'm guessing the latter is the cause of the cpu utilization spike. Without this change, I see the cpu utilization spike, until the liveness check removes the session/socket, etc. I haven't found any negative side effects to this change...and performance seems more stable... Randy -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 10:01:40 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 10:01:40 -0700 Subject: [Live-devel] RTSPOverHTTP Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847E5@coral.sba.flir.net> Hi Ross, I don't know if you've made any progress on RTP/RTSPoverHTTP... I took your RTP/RTSPOverHTTP skeleton (from 2009.11.27) and came up with an implementation that is working reasonably well...including bi-directional RTCP reports. I've encountered a few issues along the way that I've had to resolve in other modules, such as a TCP connection getting taken down (see previous post/reply to Jeremy), but, I think, all in all, it may be an architecturally reasonable solution. I've tested it with multiple simultaneous VLC sessions, and with Quicktime, and with an ONVIF compliant NVC. I chose to implement an internal TCP (tunnel) connection between each HTTP client connection (pair) and the RTSP server...so, I didn't have to do any RTSP parsing in the HTTP Client Connection code. I've added to the RTSPOverHTTPServer the capability to "bind" the GET/POST HTTP Client Connections together, etc. Would you be interested in pulling this back into your baseline?? Randy -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Mon Mar 22 10:53:47 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 22 Mar 2010 10:53:47 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> Message-ID: <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> > > Hi Jeremy, > > > > When this happens do you, by chance, notice the CPU utilization go close to > 100% on your target? > I checked, and I don't experience this. Mostly, I just need a way of knowing that stuff is erroring out, but as far as I see, I don't get any feedback. The stream never times out (I'm using a DarwinInjector), none of the callbacks get fired (i.e. ByeHandler/AfterPlaying), etc. At this point I'm thinking I'll have to make code changes to make this work correctly, but maybe Ross will have some feedback. -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 11:43:51 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 11:43:51 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com><9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> Hi Jeremy, When this happens do you, by chance, notice the CPU utilization go close to 100% on your target? I checked, and I don't experience this. Mostly, I just need a way of knowing that stuff is erroring out, but as far as I see, I don't get any feedback. The stream never times out (I'm using a DarwinInjector), none of the callbacks get fired (i.e. ByeHandler/AfterPlaying), etc. At this point I'm thinking I'll have to make code changes to make this work correctly, but maybe Ross will have some feedback. I just pulled the network cable on my setup (RTSPoverHTTP)...I get an EAGAIN returned from send() (as my TCP tunnel socket is non-blocking)... the TCP connection hasn't timed out...the Socket buffer just fills up... Do your send() calls fail inside sendRTPOverTCP() (with EAGAIN)? The current code checks, but doesn't return the status...it simply returns after the first failed call. Note, it is a void return from sendRTPOverTCP(), so you'd never know that data isn't making it down the stack (nor that the connection is "broken"). Note, I didn't conditionalize my error handling for specific errno returns...which I probably should have...and, it may be better to pass the status further up, to allow for error handling at a higher, more appropriate layer...Ross may have some ideas here (maybe a client provided error "handler" function could be used). In my case the send() call(s) fail with errno= broken-pipe once that connection gets closed by the peer...that is the clue upon which my experiment is triggering the cleanup (i.e. removing the socket). The status is returned at the same point that RTPOverTCP_OK would be set FALSE in previous releases of code...as you've pointed out before, that is a global, and doesn't work for multiple connections/streams...however, the returned status should. I believe both the RTP and RTCP sockets from the RTPInterface are non-blocking, so your behavior should be same (send() returns EAGAIN, after socket buffer fills up)...you could take action after some number of retry attempts on the send?? Randy -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 22 11:46:53 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 22 Mar 2010 11:46:53 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> Message-ID: >Previously I was watching RTPOverTCP_OK to determine when there was >a failure in TCP streaming, but that's since been removed. How can >I determine when streaming has ceased because the network has failed >(my internet connection goes down, for example)? You would detect this the same way that you would detect it for a UDP stream - e.g., because the server suddenly died. (There's no need for a special hack just for RTP-over-TCP streams.) E.g., you can periodically (i.e., using "TaskScheduler::scheduleDelayedTask()") check that new data keeps arriving (into whatever object you're feeding from your "RTPSource" subclass). There's certainly no need to change any of the supplied "LIVE555 Streaming Media" code for this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jnoring at logitech.com Mon Mar 22 12:05:16 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 22 Mar 2010 12:05:16 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> Message-ID: <988ed6931003221205kd54f580lf110ca3546d41c5f@mail.gmail.com> On Mon, Mar 22, 2010 at 11:43 AM, Roberts, Randy wrote: > Note, I didn?t conditionalize my error handling for specific errno > returns?which I probably should have?and, it may be better to pass the > status further up, to allow for error handling at a higher, more appropriate > layer?Ross may have some ideas here (maybe a client provided error ?handler? > function could be used). > This is basically what I'm looking for--I need the application layer to be informed when TCP communication has gone south so I can take appropriate action. It's not clear to me how to do this anymore. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Mon Mar 22 12:13:47 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 22 Mar 2010 12:13:47 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> Message-ID: <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> On Mon, Mar 22, 2010 at 11:46 AM, Ross Finlayson wrote: > Previously I was watching RTPOverTCP_OK to determine when there was a >> failure in TCP streaming, but that's since been removed. How can I >> determine when streaming has ceased because the network has failed (my >> internet connection goes down, for example)? >> > > You would detect this the same way that you would detect it for a UDP > stream - e.g., because the server suddenly died. (There's no need for a > special hack just for RTP-over-TCP streams.) > > Okay--what is this "same way" you speak of? I've set breakpoints in every callback I could find, after my doEventLoop() call, etc. When I kill my internet connection mid-stream, I hit none of these breakpoints. I am using the DarwinInjector, if that changes anything. > E.g., you can periodically (i.e., using > "TaskScheduler::scheduleDelayedTask()") check that new data keeps arriving > (into whatever object you're feeding from your "RTPSource" subclass). > There's certainly no need to change any of the supplied "LIVE555 Streaming > Media" code for this. This is code that is pushing AV to a server online--unless I'm checking for RTCP stuff, data shouldn't be "arriving," should it? -------------- next part -------------- An HTML attachment was scrubbed... URL: From vikasjkmcs2005 at yahoo.co.in Sun Mar 21 19:00:36 2010 From: vikasjkmcs2005 at yahoo.co.in (vikas srivastava) Date: Mon, 22 Mar 2010 07:30:36 +0530 (IST) Subject: [Live-devel] H.264 Streaming from Live H.264 source Message-ID: <563042.63085.qm@web95311.mail.in2.yahoo.com> Hi Developers, I have requirement to create streaming in H.264 , i am receiving stream from live source(in H.264 format) and i have to re-stream it to another ip/port. for that i have edited openRTSP and added one more option for re-streaming and added following code. RTPSink* videoSink; iter.reset(); {while((subsession = iter.next()) != NULL) //***************Create our RTPsink variables...// Create 'groupsocks' for RTP and RTCP:charconst* destinationAddressStr = "10.69.169.149";constunsignedshortrtpPortNum = 8888;constunsignedshortrtcpPortNum = rtpPortNum+1;constunsignedcharttl = 7; // low, in case routers don't admin scopedestinationAddress.s_addr = our_inet_addr(destinationAddressStr); Groupsock rtpGroupsock(*env, destinationAddress, rtpPort, ttl); Groupsock rtcpGroupsock(*env, destinationAddress, rtcpPort, ttl);structin_addr destinationAddress;constPort rtpPort(rtpPortNum);constPort rtcpPort(rtcpPortNum);//Create our sink...videoSink = H264VideoRTPSink::createNew(*env, &rtpGroupsock,subsession->rtpPayloadFormat(),subsession->fmtp_profile_level_id(),subsession->fmtp_spropparametersets()); ????? *env << ????? ?exit(1); ??? }if(videoSink == NULL){"Unable to create sink \n";//********************************************** subsession->sink = videoSink; subsession->sink->startPlaying(*(subsession->readSource()),subsessionAfterPlaying,subsession); } ? But i am unable to play stream , i am using VLC player. Can anybody help me out, for rtpPayloadFormat,profile_level_id,sprop_parameter_sets_str in H264VideoRTPSink::createNew , i am putting whatever i am getting from live source. ? Thanks Vikas Srivastava The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From albalber at yahoo.com Mon Mar 22 02:27:12 2010 From: albalber at yahoo.com (Alberto Alberici) Date: Mon, 22 Mar 2010 02:27:12 -0700 (PDT) Subject: [Live-devel] make the live555 scheduler working together with other schedulers Message-ID: <123507.9121.qm@web114102.mail.gq1.yahoo.com> Hi, which is the best way to make the live555 library work together with another library which has its own main scheduler (for example: qt), _without using threads_? I mean: qt has app.exec(), which doesn't return, and live555 has doEventLoop(), which doesn't return.... Of course I could write MyScheduler and then call singleStep(), which returns, instead of calling doEventLoop(), but in this case singleStep() would return only after the select() wait (and this would block the other library, meanwhile) .... thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From harishn at netxcell.com Mon Mar 22 06:13:40 2010 From: harishn at netxcell.com (Harish N) Date: Mon, 22 Mar 2010 18:43:40 +0530 Subject: [Live-devel] information about sdp file suport in live555......! Message-ID: <007E0DB7F798F74CB459378DC498163701835CF634@nxlmail.netxcell.com> Hello all, Am running live media server (vS2008) in my testing server.... It streams the files (which are in the current directory) well... But I wanted to know whether if it can use the sdp file generated by VLC and stream the corresponding file... This functionality works in Darwin.... Please do mention if it can happen in this also.... Because when I tested it, it didn't work.... Before this, I want to know whether sdp is supported or not......May be if there is any flag setting(if so,mention me).. Any help is highly appreciated... Thank you.. Harish -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 16:04:52 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 16:04:52 -0700 Subject: [Live-devel] RTSPoverTCP TEARDOWN In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com><9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> Hi Ross, Is it "by design" that the RTSP Teardown message (from the client) never gets processed in the RTSPOverTCP server implementation, may in lieu of other mechanisms like the RTCP BYE, or just relying upon the liveness check to timeout the session? I can see the message is discarded because we are looking for only '$' in the tcpReadHandler()....I'm just wondering if that is intentional or a side-effect... Thanks, Randy -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 17:11:40 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 17:11:40 -0700 Subject: [Live-devel] RTSPOverTCP race condition (temporary lockout)? In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com><9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> <9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847F0@coral.sba.flir.net> Hi Ross, I thought I should open a new thread for the RTSPOverTCP lockout issue that I've come across (from my response to Jeremy's message (subject: Detecting network failure)). I apologize for the detail here...if you have any suggestions/preferences for further communications, please advise. In case it helps, I've reproduced the CPU spike with RTPoverRTSP (as well as RTSPOverHTTP)...so, I'm fairly convinced it wasn't anything I've added for RTSPOverHTTP. My test case is to simply open a VLC RTPoverRTSP client session, and immediately close it... The only reason I added the return of the send() status was to allow recovery from (avoidance of) whatever cpu bound processing loop which may have been causing the cpu utilization spike (lockout). Anyway, I was pursuing the thought that it might have had to do with the special handling for RTPOverTCP streams in sendRTPOverTCP and/or the tcpReadHandler() upon connection reset by peer. A side question/concern, is that readSocket (and readSocketExact) always use recvfrom, even though, in this case, we are reading from stream sockets...therefore, the CONNECTION state will never be considered by the socket layer. If we used recv() we might get a "connection reset by peer" indication....no? The problem I had when I tried that theory out, is that select() always returns timeout so we never get to the recv() or recvfrom() calls... The lockup doesn't occur every time... When it doesn't lockup, readSocket() returns with result = -1, and errno indicates the 104 (Connection reset by peer)...and therefore the background readhandler gets turned off.. When it does lockup, I do NOT get that same indication... so, I'm suspicious that temporary lockout is a result of some race condition in the timing of receiving the (VLC) peer TCP disconnect and where we are in the processing of the "interleaved message(s)"... VLC sends the TEARDOWN (which we don't "see" because once we start the tcpReadHandler we are then *only* looking for RTCP messages, NOT any further RTSP messages like TEARDOWN or SET_PARAMETER (e.g. for keepalive...true??), sometimes (why only sometimes?) followed by the RTCP BYE, then it immediately (~100us later) closes the TCP connection. I think there may be a race there that causes some grief in the tcpReadHandler() processing...where, depending on where we're at in our interleaved packet handling when the TCP connection gets reset by the peer, we end up in a non-blocking, and non-exiting near infinite loop... Regarding the TEARDOWN, it would seem we might need a more stateful implementation of the interleaved stream parsing, no? Or, is it by design that we no longer process the TEARDOWN, because we SHOULD see the RTCP BYE, or will otherwise timeout the connection?? I think the problem case is where we are waiting for the next '$'...where we call readSocket() with a non-NULL timeout (all other calls to readsocket() (for the remaining portions of the exchange) use a NULL timeout so the select call will block... FWIW, In my testing, disconnecting the network doesn't cause the CPU spike...like the quick STOP of VLC did when I was testing RTSPOverHTTP... As I mentioned in my response to Jeremy, the client session will eventually be brought down via liveness check "due to inactivity"...however, my linux system gets pretty locked up until that expiry triggers... I appreciate any light you may be able to shine on this one. Randy -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 22 17:12:04 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 22 Mar 2010 17:12:04 -0700 Subject: [Live-devel] RTSPoverTCP TEARDOWN In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com><9FF07362A2BF D446B95FC028D0B7B4D0014847E1@coral.sba.flir.net> <988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com> <9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net> <9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> Message-ID: >Is it "by design" that the RTSP Teardown message (from the client) >never gets processed in the RTSPOverTCP server implementation Are you using a recent version of the code?? This problem was definitely fixed in version 2010.03.14 -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 22 17:15:12 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 22 Mar 2010 17:15:12 -0700 Subject: [Live-devel] RTSPOverHTTP In-Reply-To: <9FF07362A2BFD446B95FC028D0B7B4D0014847E5@coral.sba.flir.net> References: <9FF07362A2BFD446B95FC028D0B7B4D0014847E5@coral.sba.flir.net> Message-ID: >Would you be interested in pulling this back into your baseline?? Feel free to post a patch file (made against the most recent version of the code) to the mailing list. However, I don't know when I'll be working on this... -------------- next part -------------- An HTML attachment was scrubbed... URL: From Randy.Roberts at flir.com Mon Mar 22 17:39:17 2010 From: Randy.Roberts at flir.com (Roberts, Randy) Date: Mon, 22 Mar 2010 17:39:17 -0700 Subject: [Live-devel] RTSPoverTCP TEARDOWN In-Reply-To: References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com><9FF07362A2BFD446B95FC028D0B7B4D0014847E1@coral.sba.flir.net><988ed6931003221053i77f04a5cxfd2a42caf8ba48be@mail.gmail.com><9FF07362A2BFD446B95FC028D0B7B4D0014847EA@coral.sba.flir.net><9FF07362A2BFD446B95FC028D0B7B4D0014847EF@coral.sba.flir.net> Message-ID: <9FF07362A2BFD446B95FC028D0B7B4D0014847F1@coral.sba.flir.net> Funny, I was just replying to myself...having noticed you'd answered my question in your code comments; // Begin by reading and discarding any characters that aren't '$'. // Any such characters are probably regular RTSP responses or // commands from the server. At present, we can't do anything with // these, because we have taken complete control of reading this socket. // (Later, fix) ##### So, no...I am using 2009.11.27... Does this new version, by chance, handle RTCP BYEs too? Have you put any further time/thought into RTSPOverHTTP? I'll of course look at code too...(and/or release notes?). Thanks again! Randy ________________________________ From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Monday, March 22, 2010 5:12 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] RTSPoverTCP TEARDOWN Is it "by design" that the RTSP Teardown message (from the client) never gets processed in the RTSPOverTCP server implementation Are you using a recent version of the code?? This problem was definitely fixed in version 2010.03.14 -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 22 18:35:18 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 22 Mar 2010 18:35:18 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> Message-ID: >I've set breakpoints in every callback I could find, after my >doEventLoop() call, etc. When I kill my internet connection >mid-stream, I hit none of these breakpoints. OK, it sounds like you're blocking in your RTSP client "ANNOUNCE" operation. This will not be a problem in the upcoming "RTSPClient" restructuring (that will make all RTSP client operations asynchronous). > >I am using the DarwinInjector, if that changes anything. > > >E.g., you can periodically (i.e., using >"TaskScheduler::scheduleDelayedTask()") check that new data keeps >arriving (into whatever object you're feeding from your "RTPSource" >subclass). There's certainly no need to change any of the supplied >"LIVE555 Streaming Media" code for >this. > > >This is code that is pushing AV to a server online--unless I'm >checking for RTCP stuff, data shouldn't be "arriving," should it? OK, so you would need to check for RTCP packets - assuming that Darwin sends them; I don't know whether it does. If so, you could do this using "RTCPInstance::setRRHandler()" (assuming that Darwin sends RTCP "RR" packets in response to "ANNOUNCE" data). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at schuckmannacres.com Mon Mar 22 16:13:08 2010 From: matt at schuckmannacres.com (Matt Schuckmannn) Date: Mon, 22 Mar 2010 16:13:08 -0700 Subject: [Live-devel] make the live555 scheduler working together with other schedulers In-Reply-To: <123507.9121.qm@web114102.mail.gq1.yahoo.com> References: <123507.9121.qm@web114102.mail.gq1.yahoo.com> Message-ID: <4BA7F984.8060103@schuckmannacres.com> An HTML attachment was scrubbed... URL: From lovestoryhouse at gmail.com Mon Mar 22 18:30:28 2010 From: lovestoryhouse at gmail.com (steven choong) Date: Tue, 23 Mar 2010 09:30:28 +0800 Subject: [Live-devel] Form hang when running live555MediaServer In-Reply-To: References: Message-ID: Dear Ross, I am trying to use live555MediaServer.cpp as a server , I was successfully compiled the code in VS2008. I use a main form to present the live555MediaServer, there has a button which triggered the below functions: public: void startServer(){ TaskScheduler* scheduler = BasicTaskScheduler::createNew(); UsageEnvironment* env = BasicUsageEnvironment::createNew(*scheduler); UserAuthenticationDatabase* authDB = NULL; RTSPServer* rtspServer; portNumBits rtspServerPortNum = 554; rtspServer = DynamicRTSPServer::createNew(*env, rtspServerPortNum, authDB); if (rtspServer == NULL) { rtspServerPortNum = 8554; rtspServer = DynamicRTSPServer::createNew(*env, rtspServerPortNum, authDB); } env->taskScheduler().doEventLoop(); } When the form is running, user click on the button in order to start the server, it hangs. My question is, Is that a way to prevent the form being hang while the server is running ? Thanks in advance, Steven Choong -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Mon Mar 22 22:38:19 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 22 Mar 2010 22:38:19 -0700 Subject: [Live-devel] Form hang when running live555MediaServer In-Reply-To: References: Message-ID: <988ed6931003222238n4442a59co9c911822c46c11c0@mail.gmail.com> On Mon, Mar 22, 2010 at 6:30 PM, steven choong wrote: > > > Dear Ross, > > I am trying to use live555MediaServer.cpp as a server , I was successfully > compiled the code in VS2008. I use a main form to present the > live555MediaServer, there has a button which triggered the below functions: > > public: > void startServer(){ > > TaskScheduler* scheduler = BasicTaskScheduler::createNew(); > UsageEnvironment* env = > BasicUsageEnvironment::createNew(*scheduler); > UserAuthenticationDatabase* authDB = NULL; > RTSPServer* rtspServer; > portNumBits rtspServerPortNum = 554; > rtspServer = DynamicRTSPServer::createNew(*env, > rtspServerPortNum, authDB); > if (rtspServer == NULL) { > rtspServerPortNum = 8554; > rtspServer = DynamicRTSPServer::createNew(*env, > rtspServerPortNum, authDB); > } > > env->taskScheduler().doEventLoop(); > > } > > When the form is running, user click on the button in order to start the > server, it hangs. My question is, Is that a way to prevent the form being > hang while the server is running ? > > Unless startServer is on a thread, your doEventLoop() call will block indefinitely. You need to run Live555 on a dedicated thread. Running it on the GUI thread is not an option. Read the FAQ section about threading if you have questions. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 22 22:33:26 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 22 Mar 2010 22:33:26 -0700 Subject: [Live-devel] information about sdp file suport in live555......! In-Reply-To: <007E0DB7F798F74CB459378DC498163701835CF634@nxlmail.netxcell.com> References: <007E0DB7F798F74CB459378DC498163701835CF634@nxlmail.netxcell.com> Message-ID: >Am running live media server (vS2008) in my testing server?. > >It streams the files (which are in the current directory) well? > >But I wanted to know whether if it can use the >sdp file generated by VLC and stream the >corresponding file? No. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From chouhan.nishesh at gmail.com Mon Mar 22 23:05:40 2010 From: chouhan.nishesh at gmail.com (nishesh chouhan) Date: Tue, 23 Mar 2010 11:35:40 +0530 Subject: [Live-devel] live555 as RTSP proxy Message-ID: Hi , for my project I need to use live555 as RTSP proxy...the requirement is to take an RTSP url from client ex VLC at live555 and pass that URL to the application which I want to make on top of live555 this application will proxy the RTSP url (rtsp://ip..../NA123) to the RTSP server and on session establishment proxies the media across to the client, pls let me know if this is viable using live555 library. I had a look in the code and found that when we receive RTSP commands (like DESCRIBE) live555 requires stream to be annouced before that also I did not find the way to pass the RTSP url from library to the application which I have, my application uses FramedSource class. Many Thanks in Advance. -Nishesh -------------- next part -------------- An HTML attachment was scrubbed... URL: From mediadevel at gmail.com Mon Mar 22 23:56:57 2010 From: mediadevel at gmail.com (john david) Date: Tue, 23 Mar 2010 09:56:57 +0300 Subject: [Live-devel] stream JPEG video via RTP In-Reply-To: References: Message-ID: Hi, Hi I'm fresher to the live555, How can I stream JPEG video via RTP? Is there any application that sending and receiving the PEG video via RTP in Linux system. Warm Regards, John David. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 23 08:13:06 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 23 Mar 2010 08:13:06 -0700 Subject: [Live-devel] stream JPEG video via RTP In-Reply-To: References: Message-ID: >How can I stream JPEG video via RTP? Is there any application that >sending and receiving the PEG video via RTP in Linux system. Read the FAQ!!! -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From vikasjkmcs2005 at yahoo.co.in Wed Mar 24 00:34:59 2010 From: vikasjkmcs2005 at yahoo.co.in (vikas srivastava) Date: Wed, 24 Mar 2010 13:04:59 +0530 (IST) Subject: [Live-devel] Subclass for OnDemandServerMediaSubsession Message-ID: <866777.20943.qm@web95315.mail.in2.yahoo.com> Hi Ross, ????????? I am working on streaming from live source in H.264 format.I have studied you FAQ and i have made?subclass H264VideoRtpServerMediaSubsession from OnDemandServerMediaSubsession and redefined virtual function createNewStreamSource() , createNewRTPSink(). Inside createNewRTPSink virtual function , i have returned H264VideoRTPSink() sink ? And inside createNewStreamSource() virtual function ,i have written code to access live source , ?i have created RTSPClient and then through describeURL() method provided my live source URL and then created MediaSession and?...... as openRTSP test , and finally returned framed source through MediaSubsession rtspSource() method , code is following ?FramedSource* framedSource=NULL;char*_progName = "SirisMediaPlayer"; char* url = "rtsp://10.69.170.23/axis-media/media.amp?videocodec=h264"; // Create our client object:RTSPClient *rtspClient = RTSPClient::createNew(envir(),1); MediaSession *mediaSession = MediaSession::createNew(envir(), sdpDescription); MediaSubsessionIterator iter(*mediaSession); MediaSubsession *mediaSubsession; {char* sdpDescription = rtspClient->describeURL(url);while((mediaSubsession = iter.next()) != NULL) { if(!mediaSubsession->initiate()) // "Unable to create receiver for \"" << subsession->mediumName() << "/" << subsession->codecName() << "\" subsession: " << _env->getResultMsg() << "\n";} framedSource = mediaSubsession->rtpSource(); } ? ? But as soon as i play VLC player , i gets error inside strlen.asm file as Unhandled exception at 0x7855b690 (msvcr90.dll) in openRTSP.exe: 0xC0000005: Access violation reading location 0x00000000. Can you pls help me out where is the problem.if(mediaSubsession->rtpSource() != NULL)returnframedSource; ? Thanks Vikas Srivastava ? ________________________________ Your Mail works best with the New Yahoo Optimized IE8. Get it NOW!. Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Wed Mar 24 13:14:03 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Wed, 24 Mar 2010 13:14:03 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> Message-ID: <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> On Mon, Mar 22, 2010 at 6:35 PM, Ross Finlayson wrote: > I've set breakpoints in every callback I could find, after my > doEventLoop() call, etc. When I kill my internet connection mid-stream, I > hit none of these breakpoints. > > > OK, it sounds like you're blocking in your RTSP client "ANNOUNCE" > operation. This will not be a problem in the upcoming "RTSPClient" > restructuring (that will make all RTSP client operations asynchronous). > Any idea when this might happen, and do you need any help? I definitely need these changes, so anything I can do to expedite that will be done. > > OK, so you would need to check for RTCP packets - assuming that Darwin > sends them; I don't know whether it does. If so, you could do this using > "RTCPInstance::setRRHandler()" (assuming that Darwin sends RTCP "RR" packets > in response to "ANNOUNCE" data). > > I added a handler to check for RR reports, but unfortunately my server does not send them. I verified this on their forums as well (we're not using Darwin, but the general idea is the same). So, I guess my only option is to modify the library to do a per-RTPInterface variable that tracks TCP failure. Would you have any interest in this change if I supplied a patch? Thanks for your help. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 24 14:45:48 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 24 Mar 2010 14:45:48 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> Message-ID: >OK, it sounds like you're blocking in your RTSP client "ANNOUNCE" >operation. This will not be a problem in the upcoming "RTSPClient" >restructuring (that will make all RTSP client operations >asynchronous). > > >Any idea when this might happen As a policy, I don't answer "are we there yet?"-type questions (because if I did, I'd find myself wasting much of my time doing so). >, and do you need any help? No. >OK, so you would need to check for RTCP packets - assuming that >Darwin sends them; I don't know whether it does. If so, you could >do this using "RTCPInstance::setRRHandler()" (assuming that Darwin >sends RTCP "RR" packets in response to "ANNOUNCE" data). > > >I added a handler to check for RR reports, but unfortunately my >server does not send them. I verified this on their forums as well >(we're not using Darwin, but the general idea is the same). I should warn you that I consider the "DarwinInjector" stuff to be deprecated technology, and although I'll probably be upgrading it to do an asynchronous "ANNOUNCE", there's no guarantee that it will continue to be supported in the future. We have our own RTSP server implementation, and people should really be using this, rather than using this hack along with some other implementation. >So, I guess my only option is to modify the library to do a >per-RTPInterface variable that tracks TCP failure. Would you have >any interest in this change if I supplied a patch? No, because that's not the way we're going to be handling RTSP client operation failure in the future. (Instead, this will get handled via asynchronous callback functions.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From jnoring at logitech.com Wed Mar 24 15:08:26 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Wed, 24 Mar 2010 15:08:26 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> Message-ID: <988ed6931003241508o5a8b1285v2329a471a911182b@mail.gmail.com> On Wed, Mar 24, 2010 at 2:45 PM, Ross Finlayson wrote: > I should warn you that I consider the "DarwinInjector" stuff to be > deprecated technology, and although I'll probably be upgrading it to do an > asynchronous "ANNOUNCE", there's no guarantee that it will continue to be > supported in the future. We have our own RTSP server implementation, and > people should really be using this, rather than using this hack along with > some other implementation. Well, let me explain a few things to you (you seem confused about why I'm doing this), and maybe you can recommend something better. We have a device that streams audio/video. This device will run on our customer's private networks (think SOHO type network at your house--dumpy linksys/dlink/netgear/whatever router hooked up to cable/DSL/etc.). To view AV remotely, we have to traverse NAT somehow (customers cannot directly connect to the device behind their NAT router without configuration). We don't want people to have to configure their router (i.e. port forwarding) because the vast majority of people A) do not know how to do this and B) haven't the foggiest clue what port forwarding/networking involves. Furthermore, doing it with multiple devices behind the same NAT is extra cumbersome/complicated/error prone, particularly when you throw DHCP into the mix on their internal network. So, we relay video through a central server that we support and maintain. I use the DarwinInjector to push video to Wowza (http://www.wowzamedia.com/), and that relays the video onto some client elsewhere (note that wowza can also transcode, so it can deliver over rtmp, rtsp, etc). Even when we do get a more sophisticated NAT traversal method, like STUN/ICE/whatever, we're still going to need this relay for the remaining customers for whom STUN/ICE/whatever doesn't work. What alternate options to the DarwinInjector do I have that would accomplish this with Live555? -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 24 17:00:20 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 24 Mar 2010 17:00:20 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: <988ed6931003241508o5a8b1285v2329a471a911182b@mail.gmail.com> References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> <988ed6931003241508o5a8b1285v2329a471a911182b@mail.gmail.com> Message-ID: >On Wed, Mar 24, 2010 at 2:45 PM, Ross Finlayson ><finlayson at live555.com> wrote: >> I should warn you that I consider the "DarwinInjector" stuff to be >> deprecated technology, and although I'll probably be upgrading it to do an >> asynchronous "ANNOUNCE", there's no guarantee that it will continue to be >> supported in the future. We have our own RTSP server implementation, and >> people should really be using this, rather than using this hack along with >> some other implementation. > >Well, let me explain a few things to you (you seem confused about >why I'm doing this) Actually, I'm less "confused" than "uninterested". Overall, in general, I'm just not particularly interested in proxys (or 'middleboxes' in general). While they're often useful, supporting them is generally not a high priority for me. >What alternate options to the DarwinInjector do I have that would >accomplish this with Live555? Right now, nothing. In the future, though, I hope a cleaner, more standard protocol for this will come available (perhaps for RTSP 2.0). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From vikasjkmcs2005 at yahoo.co.in Wed Mar 24 20:34:03 2010 From: vikasjkmcs2005 at yahoo.co.in (vikas srivastava) Date: Thu, 25 Mar 2010 09:04:03 +0530 (IST) Subject: [Live-devel] initialize with URL Message-ID: <514547.48238.qm@web95315.mail.in2.yahoo.com> Hi , ??????? I have to define H264VideoRTPSource from URL instead of groupSock , ip/port , is it possible to do this.If yes then , what should i do , any little hint? will help me a lot. Thanks Vikas The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From sindhumaheswari at gmail.com Wed Mar 24 21:26:12 2010 From: sindhumaheswari at gmail.com (sindhumaheswari at gmail.com) Date: Thu, 25 Mar 2010 04:26:12 +0000 Subject: [Live-devel] (no subject) Message-ID: <0016e68fcfff5dd84804829872e1@google.com> Hi, I am trying to replace my http client with rtsp client. For that I have downloaded the openrtsp.cpp.. my application is in .net VS2005 c#. I have reached till the compilation of the live 555 in VS2005. now I have the openrtsp exe. How should I build the libraries for vs2005 framework . kindly help me. I am newbie to VS. Regards Sindhu -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 24 21:46:02 2010 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 24 Mar 2010 21:46:02 -0700 Subject: [Live-devel] initialize with URL In-Reply-To: <514547.48238.qm@web95315.mail.in2.yahoo.com> References: <514547.48238.qm@web95315.mail.in2.yahoo.com> Message-ID: > I have to define H264VideoRTPSource from URL instead of >groupSock , ip/port , is it possible to do this. If the URL is a "rtsp://" URL, then just use "openRTSP". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marcos at a5security.com Thu Mar 25 00:29:09 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Thu, 25 Mar 2010 08:29:09 +0100 Subject: [Live-devel] RTSP reconnect Message-ID: <39b9a2b31003250029g7f706219r6c4df00af98d1f04@mail.gmail.com> Hi all, I am working in a client RTSP and I am having some problems when my program loses the connection with an IP camera, it's the server RTSP. I have a timer with a function and then I can detect correctly when i lose the conection, without teardown, for example disconnection of the network. After I detect the disconnection I try to reconnect and then I have some questions/problems. Can I create another RTSPClient without stopping the EventLoop? There are any function that I can use to know if the server is up without the creation of a RTSPClient? In my case I use to know after the creation of another client the sendOptionsCmd function but if this fails I wait 30 secs and I try to create another client, I have recovered my network now for example, and all the processes are ok (setup, playsession and call of getNextFrame) but i don't receive any frame on my callback function and I don't understand the reason. I don't stop the EventLoop in that case. Thanks in advance. PD: Sorry if my explanation is confusing. -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 25 04:24:14 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 25 Mar 2010 04:24:14 -0700 Subject: [Live-devel] RTSP reconnect In-Reply-To: <39b9a2b31003250029g7f706219r6c4df00af98d1f04@mail.gmail.com> References: <39b9a2b31003250029g7f706219r6c4df00af98d1f04@mail.gmail.com> Message-ID: >Can I create another RTSPClient without stopping the EventLoop? Yes, of course. >There are any function that I can use to know if the server is up >without the creation of a RTSPClient? Not really. The only reliable way to know whether a RTSP server is running is to use RTSP. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From Kenneth.X.Melms.-ND at espn.com Thu Mar 25 07:31:07 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Thu, 25 Mar 2010 10:31:07 -0400 Subject: [Live-devel] Windows Media Player? Message-ID: <811154F9C0E3974790ED68483262161006D655DE8C@xchgbrsmit.corp.espn.pvt> Hey guys - I have the live555StreamingServer serving up MPEG2-TS files for me, and it works great! When I view it with VNC, everything is perfect - yet when I connect with non-standards-compliant Windows Media Player to view the RTSP stream, it fails. I've wiresharked the handshake, and it's almost right (DESCRIBE, SETUP) up to the point where you would excpect a "PLAY" command to be issued, at which point the WMP for some reason issues an HTTP GET on the file (complete with http headers). I'm sure I'm not the first to have hit this - so has anyone out there modified the live555server codebase to allow this hackney WMP handshake to work? Without support for WMP, I'm sorta dead in the water. K +-------------------------------------------------------------------------------------------------------+ | Ken Melms | Sr. Software Architect, Designer, Programmer and Consultant | wgold at flyingplastic.com | Kenneth.X.Melms.-ND at espn.com +-------------------------------------------------------------------------------------------------------+ -------------- next part -------------- An HTML attachment was scrubbed... URL: From Kenneth.X.Melms.-ND at espn.com Thu Mar 25 07:38:00 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Thu, 25 Mar 2010 10:38:00 -0400 Subject: [Live-devel] Windows Media Player? In-Reply-To: <811154F9C0E3974790ED68483262161006D655DE8C@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D655DE8C@xchgbrsmit.corp.espn.pvt> Message-ID: <811154F9C0E3974790ED68483262161006D655DE8D@xchgbrsmit.corp.espn.pvt> (I meant VLC, sorry for the spam, please don't flame :) ________________________________ From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Melms, Kenneth X. -ND Sent: Thursday, March 25, 2010 10:31 AM To: live-devel at ns.live555.com Subject: [Live-devel] Windows Media Player? Hey guys - I have the live555StreamingServer serving up MPEG2-TS files for me, and it works great! When I view it with VNC, everything is perfect - yet when I connect with non-standards-compliant Windows Media Player to view the RTSP stream, it fails. I've wiresharked the handshake, and it's almost right (DESCRIBE, SETUP) up to the point where you would excpect a "PLAY" command to be issued, at which point the WMP for some reason issues an HTTP GET on the file (complete with http headers). I'm sure I'm not the first to have hit this - so has anyone out there modified the live555server codebase to allow this hackney WMP handshake to work? Without support for WMP, I'm sorta dead in the water. K +-------------------------------------------------------------------------------------------------------+ | Ken Melms | Sr. Software Architect, Designer, Programmer and Consultant | wgold at flyingplastic.com | Kenneth.X.Melms.-ND at espn.com +-------------------------------------------------------------------------------------------------------+ ________________________________ Please consider the environment before printing this e-mail. -------------- next part -------------- An HTML attachment was scrubbed... URL: From marcos at a5security.com Thu Mar 25 07:47:55 2010 From: marcos at a5security.com (Miguel Angel Arcos) Date: Thu, 25 Mar 2010 15:47:55 +0100 Subject: [Live-devel] RTSP reconnect In-Reply-To: References: <39b9a2b31003250029g7f706219r6c4df00af98d1f04@mail.gmail.com> Message-ID: <39b9a2b31003250747w39a392feof773e9be925fb7b7@mail.gmail.com> I have been triying to discover more info about my problem and now I can extract some more conclusions. I followed the next steps: 1. Connect my client and start the receiving of the image data from the camera. 2. I disconnect the network more than one minute. (My program try to connect every 30 seconds If he detect the lose of connection) 3. After 2+ retries I connect the network again. In retries I only try to create one RTSPClient and call the function sendOptionsCmd an when this fail I wait 30 secs more to repeat. 4. When I create again the client all the process starts OK(...setupMediaSubsession, playMediaSession(I see on wireshark how the camera starts to send me data) and I call getNextFrame(...AfterReadingFrame...). 5. In my function AfterReadingFrame the program never stops if I put a breakpoint. At last, If I reconnect correctly at first try I receive the data correctly in AfterReadingFrame. The problem is when I try more than one time an after all the camera connect. I can't see where is the problem.... Thanks for your help Ross. 2010/3/25 Ross Finlayson > Can I create another RTSPClient without stopping the EventLoop? >> > > Yes, of course. > > > > There are any function that I can use to know if the server is up without >> the creation of a RTSPClient? >> > > Not really. The only reliable way to know whether a RTSP server is running > is to use RTSP. > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -- Miguel Angel Arcos -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 25 09:05:03 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 25 Mar 2010 09:05:03 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: <811154F9C0E3974790ED68483262161006D655DE8C@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D655DE8C@xchgbrsmit.corp.espn.pvt> Message-ID: >I have the live555StreamingServer serving up MPEG2-TS files for me, >and it works great! > >When I view it with [VLC], everything is perfect - yet when I >connect with non-standards-compliant Windows Media Player to view >the RTSP stream, it fails. You've answered your question right there. > I've wiresharked the handshake, and it's almost right (DESCRIBE, >SETUP) up to the point where you would excpect a "PLAY" command to >be issued, at which point the WMP for some reason issues an HTTP GET >on the file (complete with http headers). > >I'm sure I'm not the first to have hit this - so has anyone out >there modified the live555server codebase to allow this hackney WMP >handshake to work? > >Without support for WMP, I'm sorta dead in the water. Then you're "sorta dead in the water". You should complain to Microsoft, asking them to fix their non-standards-compliant media player. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 25 09:52:06 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 25 Mar 2010 09:52:06 -0700 Subject: [Live-devel] Windows Media Player? Message-ID: Following up on my earlier message: Yes, Microsoft is a large and influential company - but so is ESPN. If enough large companies - like yours - lean on Microsoft asking them to comply with the RTSP protocol standard, then perhaps they'll fix their Media Player software in one of their frequent software updates. But simply expecting us to (somehow) modify our server software to work with Windows Media Player's non-standard (and undocumented) variant of RTSP is counterproductive. Instead, you should encourage your clients to use standards-compliant media players like VLC (or perhaps QuickTime Player - although I don't think that plays Transport Stream data). Alternatively, you could make your own branded media player client (perhaps based on VLC), and distribute that to your clients to use instead of Windows Media Player. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jnoring at logitech.com Thu Mar 25 11:04:17 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Thu, 25 Mar 2010 11:04:17 -0700 Subject: [Live-devel] Detecting network failure In-Reply-To: References: <988ed6931003211255u3e6f21cek616607432c22ba7d@mail.gmail.com> <988ed6931003221213u77d6fab1p2170ea147d7bbc66@mail.gmail.com> <988ed6931003241314l2460130ew9ac2c512739501d3@mail.gmail.com> <988ed6931003241508o5a8b1285v2329a471a911182b@mail.gmail.com> Message-ID: <988ed6931003251104l5df3272at9a83f65632b766f7@mail.gmail.com> On Wed, Mar 24, 2010 at 5:00 PM, Ross Finlayson wrote > Well, let me explain a few things to you (you seem confused about why I'm > doing this) > > > Actually, I'm less "confused" than "uninterested". Overall, in general, > I'm just not particularly interested in proxys (or 'middleboxes' in > general). While they're often useful, supporting them is generally not a > high priority for me. > Are there any other features your library currently ships with that you're "not particularly interested in" that I should be aware of so I can avoid them in the future? -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at schuckmannacres.com Thu Mar 25 10:16:30 2010 From: matt at schuckmannacres.com (Matt Schuckmannn) Date: Thu, 25 Mar 2010 10:16:30 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: References: Message-ID: <4BAB9A6E.8040907@schuckmannacres.com> Dude, he didn't ask you to modify your server, he asked if anybody out there has successfully make the necessary changes to make it work, perhaps in there own branch of the project. Since you have made this an open source project there is a good chance somebody in the community of users has done this and they might be willing to help him out, don't jump down his throat for asking. Helping each other out whether you be a professional or a hobbyist, etc is what open source is all about. I totally agree with you on standards compliant players, server, etc but try to be a little nicer. On 3/25/2010 9:52 AM, Ross Finlayson wrote: > Following up on my earlier message: > > Yes, Microsoft is a large and influential company - but so is ESPN. If > enough large companies - like yours - lean on Microsoft asking them to > comply with the RTSP protocol standard, then perhaps they'll fix their > Media Player software in one of their frequent software updates. But > simply expecting us to (somehow) modify our server software to work > with Windows Media Player's non-standard (and undocumented) variant of > RTSP is counterproductive. Instead, you should encourage your clients > to use standards-compliant media players like VLC (or perhaps > QuickTime Player - although I don't think that plays Transport Stream > data). Alternatively, you could make your own branded media player > client (perhaps based on VLC), and distribute that to your clients to > use instead of Windows Media Player. From vikasjkmcs2005 at yahoo.co.in Wed Mar 24 23:43:53 2010 From: vikasjkmcs2005 at yahoo.co.in (vikas srivastava) Date: Thu, 25 Mar 2010 12:13:53 +0530 (IST) Subject: [Live-devel] Re :: initialize with URL Message-ID: <424609.94584.qm@web95316.mail.in2.yahoo.com> Hi Ross, Thanks a ton for your reply. ys,i also thought and have done that but that was not working as a whole.Actually my requirement is to stream live source in H.264?and as you said in FAQ ,i am making a subclass of OnDemandMediaSubsession where i have to redefine virtual function CreateNewStreamSource() and have to return FramedSource * from inside this. For this i have followed openRTSP 1) Created RTSPClient then provide URL with describeURL() method 2) Created MediaSession 3) Iterated through MediaSession and from Video subsession (i have just one SubSession Video) returned rtpSource as mediaSubsessoin->rtpSource() (after initializing) But i was getting error , is this method is correct to do such type of thing inside createNewStreamSource() or i have to do StreamFramer type of thing. Just hint will help me a lot to go in right direction. Thanks Vikas ************** > I have to define H264VideoRTPSource from URL instead of >groupSock , ip/port , is it possible to do this. If the URL is a "rtsp://" URL, then just use "openRTSP". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From ph.silva at gmail.com Thu Mar 25 08:56:43 2010 From: ph.silva at gmail.com (Paulo Henrique Silva) Date: Thu, 25 Mar 2010 12:56:43 -0300 Subject: [Live-devel] Monochromatic MJPEG stream Message-ID: <9d9acabc1003250856o5d80cea7t9d013057772aea70@mail.gmail.com> Hi, I'm working with guys at Elphel to enable RTP streaming of their raw format (called JP4). The JP4 format is stored as MJPEG file with single component JPEG frames. Elphel uses a custom RTP server, but the client (mplayer) uses live55 library and without single component support, all decoded JPEG frames get wrong headers. Per RFC 2435, only three component JPEG files have a defined 'type' on the RTP/MJPEG packet header. I was wondering if a patch to support single component JPEGs on live555 would be accepted, using a non standard 'type' field (type > 127), Another possibility is to use a x-* field on the SDP file, as used to support frame dimensions larger than 2048. What's is the preferred way? If any. Thanks a lot, -- Paulo From vidiot1000 at yahoo.com Thu Mar 25 15:43:21 2010 From: vidiot1000 at yahoo.com (Brad Thomas) Date: Thu, 25 Mar 2010 15:43:21 -0700 (PDT) Subject: [Live-devel] openRTSP (playcommon.cpp) -- duration greater than ~2000 seconds? Message-ID: <212270.13775.qm@web112614.mail.gq1.yahoo.com> Hello, Does anyone have the code changes to allow openrtsp to take advantage of the changelog below. Thanks, Brad Thomas I noticed in the change log the following : 2006.02.15: Changed the "microseconds" parameter to "TaskScheduler::scheduleDelayedTask()" from "int" to "int64_t". This allows for durations greater than the previous ~2000 second limit. It seems that openRTSP (playcommon.cpp) was not updated to take advantage of this change as it still has the following code in startPlayingStreams() which still only allows for ~2000 seconds of recording. // Figure out how long to delay (if at all) before shutting down, or // repeating the playing Boolean timerIsBeingUsed = False; double secondsToDelay = duration; if (duration > 0) { double const maxDelayTime = (double)( ((unsigned)0x7FFFFFFF)/1000000.0 ); if (duration > maxDelayTime) { *env << "Warning: specified end time " << duration << " exceeds maximum " << maxDelayTime << "; will not do a delayed shutdown\n"; } else { timerIsBeingUsed = True; double absScale = scale > 0 ? scale : -scale; // ASSERT: scale != 0 secondsToDelay = duration/absScale + durationSlop; int uSecsToDelay = (int)(secondsToDelay*1000000.0); sessionTimerTask = env->taskScheduler().scheduleDelayedTask( uSecsToDelay, (TaskFunc*)sessionTimerHandler, (void*)NULL); } } From finlayson at live555.com Thu Mar 25 18:51:52 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 25 Mar 2010 18:51:52 -0700 Subject: [Live-devel] Monochromatic MJPEG stream In-Reply-To: <9d9acabc1003250856o5d80cea7t9d013057772aea70@mail.gmail.com> References: <9d9acabc1003250856o5d80cea7t9d013057772aea70@mail.gmail.com> Message-ID: >I'm working with guys at Elphel to enable RTP streaming of their raw >format (called JP4). The JP4 format is stored as MJPEG file with >single component JPEG frames. Elphel uses a custom RTP server, but the >client (mplayer) uses live55 library and without single component >support, all decoded JPEG frames get wrong headers. > >Per RFC 2435, only three component JPEG files have a defined 'type' on >the RTP/MJPEG packet header. > >I was wondering if a patch to support single component JPEGs on >live555 would be accepted, using a non standard 'type' field (type > >127), > >Another possibility is to use a x-* field on the SDP file, as used to >support frame dimensions larger than 2048. Paulo, Note that we have already (in December 2007) added the patch that Andrey Filippov described here: http://lists.live555.com/pipermail/live-devel/2007-November/007760.html This patch allows the server to specify the JPEG width and height in the SDP description, using the "a=x-dimensions:,". (These will then be used if the 'width' and 'height' fields in the JPEG header are 0.) If that's not sufficient for your needs, and you instead (or also) want to use a non-standard JPEG type field, then this would constitute an extension (albeit a backwards-compatible one) to the RFC 2435 RTP payload format. In that case, you should contact the IETF's AVT working group (avt at ietf.org), outlining your problem, and your proposed solution. If the AVT working group adopts your proposed solution (this might require that you write an Internet Draft that describes it), then I would be happy to add a patch to our code to support it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 25 19:35:39 2010 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 25 Mar 2010 19:35:39 -0700 Subject: [Live-devel] openRTSP (playcommon.cpp) -- duration greater than ~2000 seconds? In-Reply-To: <212270.13775.qm@web112614.mail.gq1.yahoo.com> References: <212270.13775.qm@web112614.mail.gq1.yahoo.com> Message-ID: Brad, Thanks for pointing out this oversight. This will get fixed in the next release of the software. (For now, you can fix this by removing the offending "if" clause, and changing "uSecsToDelay" to be an "int64_t".) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From ph.silva at gmail.com Thu Mar 25 22:50:05 2010 From: ph.silva at gmail.com (Paulo Henrique Silva) Date: Fri, 26 Mar 2010 02:50:05 -0300 Subject: [Live-devel] Monochromatic MJPEG stream In-Reply-To: References: <9d9acabc1003250856o5d80cea7t9d013057772aea70@mail.gmail.com> Message-ID: <9d9acabc1003252250w57081cd7mbcf4cc862addb1e4@mail.gmail.com> Ross, > Note that we have already (in December 2007) added the patch that Andrey > Filippov described here: > http://lists.live555.com/pipermail/live-devel/2007-November/007760.html This > patch allows the server to specify the JPEG width and height in the SDP > description, using the "a=x-dimensions:,". (These will then > be used if the 'width' and 'height' fields in the JPEG header are 0.) Yes, I'm aware of that. That was enough for the frame size problem. Now we are facing a new issue. > If that's not sufficient for your needs, and you instead (or also) want to > use a non-standard JPEG type field, then this would constitute an extension > (albeit a backwards-compatible one) to the RFC 2435 RTP payload format. ?In > that case, you should contact the IETF's AVT working group (avt at ietf.org), > outlining your problem, and your proposed solution. ?If the AVT working > group adopts your proposed solution (this might require that you write an > Internet Draft that describes it), then I would be happy to add a patch to > our code to support it. I see. I was just wondering if that extension could not be implemented freely by custom needs. Per section 3.1.3 of the RFC 2435, we get this about custom types: "... Types 128-255 are free to be dynamically defined by a session setup protocol (which is beyond the scope of this document). " The session setup protocol mentioned, is that SDP, right?! Anyway, I'll ask AVT people about the issue. Thanks a lot, -- Paulo From jabirm at gmail.com Fri Mar 26 04:12:22 2010 From: jabirm at gmail.com (jabir) Date: Fri, 26 Mar 2010 16:42:22 +0530 Subject: [Live-devel] multi threaded RTSP client Message-ID: <48e0692a1003260412v112d420aw99bc8d61e335e7b1@mail.gmail.com> Hi all, Is there any option to use RTSP client (openRTSP) to receive multiple video streams concurrently with a single openRTSP instance ? Can we include a thread for that ? Thanks Jabir -------------- next part -------------- An HTML attachment was scrubbed... URL: From albalber at yahoo.com Fri Mar 26 06:14:46 2010 From: albalber at yahoo.com (Alberto Alberici) Date: Fri, 26 Mar 2010 06:14:46 -0700 (PDT) Subject: [Live-devel] make the live555 scheduler working together with other schedulers In-Reply-To: <4BA7F984.8060103@schuckmannacres.com> Message-ID: <408525.80641.qm@web114108.mail.gq1.yahoo.com> I specified that I don't want to use threads... Is there another way to solve? --- On Mon, 3/22/10, Matt Schuckmannn wrote: From: Matt Schuckmannn Subject: Re: [Live-devel] make the live555 scheduler working together with other schedulers To: "LIVE555 Streaming Media - development & use" Date: Monday, March 22, 2010, 11:13 PM My approach for this kind of stuff has been to put them in separate threads (I'd probably create a thread for Live555) and then just use some sort of thread safe communication for passing events and data between the 2, e.g. a socket or thread safe queue, etc. Matt S. On 3/22/2010 2:27 AM, Alberto Alberici wrote: Hi, which is the best way to make the live555 library work together with another library which has its own main scheduler (for example: qt), _without using threads_? I mean: qt has app.exec(), which doesn't return, and live555 has doEventLoop(), which doesn't return.... Of course I could write MyScheduler and then call singleStep(), which returns, instead of calling doEventLoop(), but in this case singleStep() would return only after the select() wait (and this would block the other library, meanwhile) .... thanks _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel -----Inline Attachment Follows----- _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From vidiot1000 at yahoo.com Fri Mar 26 07:32:03 2010 From: vidiot1000 at yahoo.com (Brad Thomas) Date: Fri, 26 Mar 2010 07:32:03 -0700 (PDT) Subject: [Live-devel] openRTSP (playcommon.cpp) -- duration greater than ~2000 seconds? Message-ID: <36289.8071.qm@web112618.mail.gq1.yahoo.com> Hi Ross, I made the change you mentioned below and was able to start a session but anything number still greater than ~2000 second resulted in an immediate TEARDOWN request. It will still works fine for less durations below that thresh hold. Thanks, Brad Thomas Started playing session Receiving streamed data (for up to 2400.000000 seconds)... <--- Immediate TEARDOWN sent Sending request: TEARDOWN rtsp://172.29.1.240:554/axis-media/media.amp?streamprofile=Chase RTSP/1.0 CSeq: 7 Session: 9587AD3D Authorization: Digest username="XXX", realm="AXIS_00408CA133D2", nonce="000cef35Y82434676244b0a12a8c0649896209ba51318a", uri="rtsp://XX.XX.XX.XX:554/axis-media/media.amp/", response="2599c4f8f117608d96f185cb34fcdcb9" User-Agent: openRTSP (LIVE555 Streaming Media v2010.03.16) Received TEARDOWN response: RTSP/1.0 200 OK CSeq: 7 Session: 9587AD3D Date: Fri, 26 Mar 2010 14:27:08 GMT ----- Message: 7 Date: Thu, 25 Mar 2010 19:35:39 -0700 From: Ross Finlayson Subject: Re: [Live-devel] openRTSP (playcommon.cpp) -- duration greater than ~2000 seconds? To: LIVE555 Streaming Media - development & use Message-ID: Content-Type: text/plain; charset="us-ascii" ; format="flowed" Brad, Thanks for pointing out this oversight. This will get fixed in the next release of the software. (For now, you can fix this by removing the offending "if" clause, and changing "uSecsToDelay" to be an "int64_t".) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 26 08:08:04 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 26 Mar 2010 08:08:04 -0700 Subject: [Live-devel] multi threaded RTSP client In-Reply-To: <48e0692a1003260412v112d420aw99bc8d61e335e7b1@mail.gmail.com> References: <48e0692a1003260412v112d420aw99bc8d61e335e7b1@mail.gmail.com> Message-ID: >Hi all, > Is there any option to use RTSP client (openRTSP) to >receive multiple video streams concurrently with a single openRTSP >instance ? Can we include a thread for that ? No! Read the FAQ - especially the entry about threads! Note also that "openRTSP" is an application. To do what you want. you would write a new application of your own (but perhaps using some of the code that "openRTSP" uses). You can do this by creating and using multiple "RTSPClient" objects - one for each stream that you want to receive from. You would do this within a single (and single-threaded) event loop. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 26 08:26:53 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 26 Mar 2010 08:26:53 -0700 Subject: [Live-devel] make the live555 scheduler working together with other schedulers In-Reply-To: <408525.80641.qm@web114108.mail.gq1.yahoo.com> References: <408525.80641.qm@web114108.mail.gq1.yahoo.com> Message-ID: >I specified that I don't want to use threads... > >Is there another way to solve? You have to do one of the following (your choice): 1/ Define a new subclass of "TaskScheduler", and reimplement the "doEventLoop()" virtual function so that it handles the other system (QT)'s event, as well as LIVE555 events. Or, 2/ (Re)implement the other system (QT)'s scheduler so that it handles LIVE555 events as well. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 26 08:44:57 2010 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 26 Mar 2010 08:44:57 -0700 Subject: [Live-devel] openRTSP (playcommon.cpp) -- duration greater than ~2000 seconds? In-Reply-To: <36289.8071.qm@web112618.mail.gq1.yahoo.com> References: <36289.8071.qm@web112618.mail.gq1.yahoo.com> Message-ID: >I made the change you mentioned below and was able to start a >session but anything >number still greater than ~2000 second resulted in an immediate >TEARDOWN request. It will work if you define "uSecsToDelay" as follows: int64_t uSecsToDelay = (int64_t)(secondsToDelay*1000000.0); Or else just wait a few days until the next official release of the software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From Kenneth.X.Melms.-ND at espn.com Mon Mar 29 13:51:34 2010 From: Kenneth.X.Melms.-ND at espn.com (Melms, Kenneth X. -ND) Date: Mon, 29 Mar 2010 16:51:34 -0400 Subject: [Live-devel] Windows Media Player? In-Reply-To: References: Message-ID: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> Right. Thanks. Without flame-baiting - Your answer seems either unusually acerbic, or naively short-sighted to me (perhaps both) and it didn't even answer my original question. I didn't ask if Live555 would officially support it, I asked the developer's mailing list specifically if any other developers out there using the live555 server had found the time and energy to evaluate how to make WMP work - or could point me in the right direction. You said you don't think it's right to support broken players, and on an idealistic level I totally agree, and if that was my question we could toast to the inanity of the massive corporate frauds who call themselves technology leaders. But -- That wasn't my question, no? My question was looking for anyone who has yet to try to manage this discrepancy between reality and idealism forced on us by the great big M$ corporation. Unfortunately, as you note, I don't work for an open source community project where I can stand on my ideals and thumb my nose at those who can't. I work in the real world of broken standards and large corporations using those fissures to vie for intellectual property rights while still trying to make my own very time-sensitive software projects work appropriately in the real world. This project, regardless of my spite, ire, anger, ideals, or bloviated bluster - contains Windows Media Player as a base requirement - and no amount of pushback ill change that... (oh, trust me .. I've tried..) If I were to expand upon the base theme of your retort, you're saying that I could also take the time and effort to build a self-branded robust RTSP streaming server that supports both VLC and WMP - but not within my project's scoped timeframe - and thus I was looking for some help from the community. It's possible to both push for the ideal while supporting reality... K -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Thursday, March 25, 2010 12:52 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] Windows Media Player? Following up on my earlier message: Yes, Microsoft is a large and influential company - but so is ESPN. If enough large companies - like yours - lean on Microsoft asking them to comply with the RTSP protocol standard, then perhaps they'll fix their Media Player software in one of their frequent software updates. But simply expecting us to (somehow) modify our server software to work with Windows Media Player's non-standard (and undocumented) variant of RTSP is counterproductive. Instead, you should encourage your clients to use standards-compliant media players like VLC (or perhaps QuickTime Player - although I don't think that plays Transport Stream data). Alternatively, you could make your own branded media player client (perhaps based on VLC), and distribute that to your clients to use instead of Windows Media Player. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel Please consider the environment before printing this e-mail. From finlayson at live555.com Mon Mar 29 14:54:40 2010 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 29 Mar 2010 14:54:40 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> Message-ID: >Unfortunately, as you note, I don't work for an open source >community project where I can stand on my ideals and thumb my nose >at those who can't. I work in the real world of broken standards >and large corporations using those fissures to vie for intellectual >property rights while still trying to make my own very >time-sensitive software projects work appropriately in the real >world. This project, regardless of my spite, ire, anger, ideals, or >bloviated bluster - contains Windows Media Player as a base >requirement - and no amount of pushback ill change that... >(oh, trust me .. I've tried..) Yes, I understand this. That's why I noted that ESPN - being a large and influentual company - is in a position to possibly persuade Microsoft to fix Windows Media Player to make it handle your (standards compliant) streams. I wish more companies would try this approach, rather than assuming that their only option is to try to modify their servers to work with Windows Media Player (something that might not even be possible, because Windows Media Player is a closed-source application whose inner workings are a mystery). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From rainer.georg at gmx.de Mon Mar 29 02:13:51 2010 From: rainer.georg at gmx.de (rainer georg) Date: Mon, 29 Mar 2010 11:13:51 +0200 Subject: [Live-devel] wis-server for a 2.4 Kernel Message-ID: <20100329091351.52330@gmx.net> Hello, everyone I have to make a rtsp/rtp-server work on a adm5120 based ip-camera with a wisgo7007. There was already the cellvision "goserver" on the cam, but it creates an encapsulated stream to be received just by an special active-x-plugin from the internet-explorer. (Because there was already a working server on the cam, I have to mention why I try to get another server working. It is a project for school to get us working with linux-based systems.) I successfully got access to the ramdisk of the firmware and now I am able to modify it. But my problem now is, that the cam has a busybox-system (Kernel-2.4.18) The driver and the "wis-streamer" are designed for use with a kernel >2.6 and the alsa sound system. I know that the readmes of live555 and the original wis-readme show, that the modules are just for use with a Kernel-2.6. Is there any chance to get them working for 2.4 and OSS instead of ALSA? Or are there any older versions of the wis-streamer available? (I started very naive and wanted to keep the the old go7007-modules from cellvision, because I wanted to save the time to crosscompile the wis-go7007-driver. there were allready two device files in /dev called wisgo7007_0 and wisgo7007_1. so I expected to find the interfaces for audio and video within those devicefiles. I played a little around with the code and its static coded path-strings for the needed device files. but I cant get the wis-streamer started.) Sorry to bother you and the live-devel-system with such a stupid question. But I don't know any other place to get a qualified answer to my problems. -- GRATIS f?r alle GMX-Mitglieder: Die maxdome Movie-FLAT! Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01 From jnoring at logitech.com Mon Mar 29 14:41:12 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 29 Mar 2010 14:41:12 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> References: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> Message-ID: <988ed6931003291441n711cdfccn7cdda23de5d3f6ce@mail.gmail.com> On Mon, Mar 29, 2010 at 1:51 PM, Melms, Kenneth X. -ND < Kenneth.X.Melms.-ND at espn.com> wrote: > This project, regardless of my spite, ire, anger, ideals, or bloviated > bluster - contains Windows Media Player as a base requirement - and no > amount of pushback ill change that... > (oh, trust me .. I've tried..) > Depending on how you're using WMP, you may be able to extend it to use Live555 or some other standards-compliant RTSP stack (if you're using a player embedded in a web page, this probably isn't an option; if you're using the standalone player, then there is no reason you cannot extend it). Another (likely better) option is silverlight. Send me mail directly if you have questions, since this is OT for the mailing list. -------------- next part -------------- An HTML attachment was scrubbed... URL: From d2 at d2consulting.co.uk Mon Mar 29 15:52:47 2010 From: d2 at d2consulting.co.uk (Dom Robinson) Date: Mon, 29 Mar 2010 23:52:47 +0100 Subject: [Live-devel] Windows Media Player? In-Reply-To: References: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> Message-ID: <9198f0351003291552i36e80b74gfb54b1139f3e208f@mail.gmail.com> (Interesting thread: very like the streamingmedia forum ones - I'm a newbie and thought this list was pure tech ! : ) I doubt you could do anything to get msft to 'return' to focusing on developing wmp. Their focus has sensibly gone to silverlight and frag 4 / TCP (http) now so there is no commercial sense in continuing to 'improve' wmp. RIAs and browsers are the only 'battle ground' now 'media players' are 'old hat'. The enterprise is going to switch on flash like crazy this year with adobe adding multicast support and that will flush wmp leaving silverlight (which already plays msft multicast) as the only contender. Even in IPTV world (set top boxes are moving that way too in readiness for OTT) its moving to 'dynamic' and 'smooth' - rtsp and mpeg-ts are quite 'cable and satellite' era but not very 'IP' era frankly. Yes the new-kids are less mature, but no they are not going to go away and media players are not going to have a 'come back'. Actually, unlike adobe, the msft video guys are very approachable - even on a core level. Of course it helps if you don't go in with bulbs of garlic (!) By the way if you do mod rtsp implementation so it works with the live555 implementation and others, and manage to get the update pushed into the win media player through windows update there would then be a new probelm (assuming you are trying to stream mpeg-2 to wmp):- The player normally tries to download codecs is hasn't got. However if you have ever tried wmp on a machine with no dvd (or other device which installs a *licensed* MPEG2 codec) wmp can't actually download mpeg-2 from msft. This will be because its not something msft are going to pay for (imagine the licensing costs due to mpeg by msft if that was possible). Accordingly if you don't have MPEG-2 on you ESPN intranet machines (or your client boxes if you are seriously trying to stream MPEG2 to internet users(?)) even if you do get rtsp working from live555 to wmp, you will have. a support nightmare for decompression / codec installation. Standards or not, that issue is actually caused by MPEG licensing and not MSFT (unless you feel that MSFT is duty bound to pay MPEG for license fees for us?) I agree rtsp would have been nice had it been properly implemented with wm9. But I think its like expecting msft to go back and support windows 95 to want rtsp sorted in wmp at this point. Writing an rstp plug in for IIS would be interesting - I don't know what silverlight's rtsp capability is like? That really would be interesting since the user interfacing could allow a transaction for the end user to pay the mpeg-2 license fee on an automated install (which media players generally struggle to handle) . Dom Robinson D2Consulting On 3/29/10, Ross Finlayson wrote: >>Unfortunately, as you note, I don't work for an open source >>community project where I can stand on my ideals and thumb my nose >>at those who can't. I work in the real world of broken standards >>and large corporations using those fissures to vie for intellectual >>property rights while still trying to make my own very >>time-sensitive software projects work appropriately in the real >>world. This project, regardless of my spite, ire, anger, ideals, or >>bloviated bluster - contains Windows Media Player as a base >>requirement - and no amount of pushback ill change that... >>(oh, trust me .. I've tried..) > > Yes, I understand this. That's why I noted that ESPN - being a large > and influentual company - is in a position to possibly persuade > Microsoft to fix Windows Media Player to make it handle your > (standards compliant) streams. I wish more companies would try this > approach, rather than assuming that their only option is to try to > modify their servers to work with Windows Media Player (something > that might not even be possible, because Windows Media Player is a > closed-source application whose inner workings are a mystery). > -- > > Ross Finlayson > Live Networks, Inc. > http://www.live555.com/ > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -- Dom Robinson From jnoring at logitech.com Mon Mar 29 16:58:21 2010 From: jnoring at logitech.com (Jeremy Noring) Date: Mon, 29 Mar 2010 16:58:21 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: <9198f0351003291552i36e80b74gfb54b1139f3e208f@mail.gmail.com> References: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> <9198f0351003291552i36e80b74gfb54b1139f3e208f@mail.gmail.com> Message-ID: <988ed6931003291658l1e8340b7hc16ed3a34f7da978@mail.gmail.com> This is probably extremely OT (sorry Ross, feel free not to post should you feel the need to moderate), but I've written media code for MSFT platforms for the last seven years so I can comment on this. On Mon, Mar 29, 2010 at 3:52 PM, Dom Robinson wrote: > I doubt you could do anything to get msft to 'return' to focusing on > developing wmp. Their focus has sensibly gone to silverlight and frag > 4 / TCP (http) now so there is no commercial sense in continuing to > 'improve' wmp. RIAs and browsers are the only 'battle ground' now > 'media players' are 'old hat'. The enterprise is going to switch on > flash like crazy this year with adobe adding multicast support and > that will flush wmp leaving silverlight (which already plays msft > multicast) as the only contender. > Silverlight is extensible to support new protocols and codecs. There are restrictions on the protocols you can use (in particular, no UDP) due to security issues, but there's no reason you couldn't extend silverlight to receive "standards" based RTSP and RTP-over-TCP. The one caveat is you'd need your stack to be in C# (it's all managed code), so Live555 isn't going to help here. AFAIK, there is no decent, open source RTSP stack for managed code, but it's been a while since I looked. Hopefully someone will toss one together (Ross, if you want to make some money...people'd pay). This will be because its not something msft > are going to pay for (imagine the licensing costs due to mpeg by msft > if that was possible). > This isn't the case with Windows 7. MSFT finally bit the bullet and licensed MPEG2, H264 and AAC codecs (thank god, it's about time), and silverlight supports H264/AAC. So these days are rapidly going to be behind us. I should also add that silverlight is vastly preferable to WMP, particularly if you're hosting the player online. > Standards or not, that issue is actually caused by MPEG licensing and > not MSFT (unless you feel that MSFT is duty bound to pay MPEG for > license fees for us?) > Apple has always done this. They've been shipping with MPEG2/DVD/H264 for _years_ so why shouldn't I expect the same from MSFT? > Writing an rstp plug in for IIS would be interesting > Quite frankly, screw IIS/WMS--it'd make more sense to simply start with a server that supports RTSP in a standard compliant way, out of the box (e.g. wowza). There are (IMO) much better options for streaming servers than IIS/WMS, particularly if you want to deliver a codec that doesn't blow (e.g. H264). And WMS, to this day, has atrocious latency issues. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 30 00:55:41 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 30 Mar 2010 00:55:41 -0700 Subject: [Live-devel] Windows Media Player? In-Reply-To: <988ed6931003291441n711cdfccn7cdda23de5d3f6ce@mail.gmail.com> References: <811154F9C0E3974790ED68483262161006D6FA2935@xchgbrsmit.corp.espn.pvt> <988ed6931003291441n711cdfccn7cdda23de5d3f6ce@mail.gmail.com> Message-ID: A reminder that this mailing list is for discussion of (and/or questions about) the "LIVE555 Streaming Media" software. General discussion of the future of "Silverlight", etc. - while possibly interesting - is off-topic for this mailing list. Therefore I'm rejecting two posts (from Dom and Matt) that are currently in the queue. Sorry. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sindhumaheswari at gmail.com Mon Mar 29 23:45:22 2010 From: sindhumaheswari at gmail.com (sindhumaheswari at gmail.com) Date: Tue, 30 Mar 2010 06:45:22 +0000 Subject: [Live-devel] reg rtsp Message-ID: <001485e774164eba530482fef9f3@google.com> Hi I have successfully built four of the libraries, (basicusage,usage,groupsock and live media). I am not able to build the testprogs.mak. I face the followinig problems. I am building them in VC6.0.kindly help me. Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. "C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl" -c -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -Z7 -Od -c -W3 -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -D_WINNT -D_WIN32_WINNT=0x0400 -D_WIN32_IE=0x0300 -DWINVER=0x0400 -DWIN32 -D_WIN32 -D_MT -D_DLL -MD -I. -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" testMP3Streamer.cpp testMP3Streamer.cpp link -out:testMP3Streamer.exe -debug:full -debugtype:cv msvcrt.lib /NODEFAULTLIB /INCREMENTAL:NO /PDB:NONE /RELEASE /NOLOGO -subsystem:console,4.0 msvcrt.lib oldnames.lib kernel32.lib ws2_32.lib mswsock.lib advapi32.lib testMP3Streamer.obj ../liveMedia/libliveMedia.lib ../groupsock/libgroupsock.lib ../BasicUsageEnvironment/libBasicUsageEnvironment.lib ../UsageEnvironment/libUsageEnvironment.lib testMP3Streamer.obj : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored msvcrt.lib(cinitexe.obj) : warning LNK4078: multiple ".CRT" sections found with different attributes (C0300040) libliveMedia.lib(RTCP.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MPEG1or2AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3FileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(Media.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(rtcp_from_spec.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MultiFramedRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3StreamState.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedFileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(InputFile.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3Internals.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3InternalsHuffman.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetAddress.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(inet.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupsockHelper.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupEId.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(DelayQueue.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicHashTable.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(strDup.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(UsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol ___security_cookie testMP3Streamer.obj : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 testMP3Streamer.obj : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol __imp____iob_func libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MediaSink.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __ftol2_sse libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp___stat64i32 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ctime64 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ftime64 testMP3Streamer.exe : fatal error LNK1120: 7 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop. Error executing NMAKE. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 30 01:34:37 2010 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 30 Mar 2010 01:34:37 -0700 Subject: [Live-devel] wis-server for a 2.4 Kernel In-Reply-To: <20100329091351.52330@gmx.net> References: <20100329091351.52330@gmx.net> Message-ID: >Is there any chance to get them working for 2.4 and OSS instead of ALSA? >Or are there any older versions of the wis-streamer available? No, there's no other version of the source code available. Note, though, that most of the value of this application comes from the RTSP/RTP streaming code (which uses the "LIVE555" libraries), rather than the device driver interface code, which is relatively minor. If you were to reimplement the code in "WISInput.cpp" for whatever drivers you have available, you would get an application with the same functionality as the existing "wis-streamer". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From wbreyha at gmx.net Wed Mar 31 05:08:48 2010 From: wbreyha at gmx.net (Wolfgang Breyha) Date: Wed, 31 Mar 2010 14:08:48 +0200 Subject: [Live-devel] TEARDOWN stale authentication => unauthorized Message-ID: <4BB33B50.6080909@gmx.net> Hi! I'm recording long streams directly from an AXIS Q1755 with openrtsp. When I stop openrtsp after a long recording I always see an authentication failure due to a stale auth token. That looks like: Sending request: TEARDOWN rtsp://xxxxxxxxxxxxxx/axis-media/media.amp?........ RTSP/1.0 CSeq: 7 Session: EC7B22F6 Authorization: Digest username="xxxxxxx", realm="AXIS_00408CA4Fxxx", nonce="xxxxxxxxxxxxxxxx7ec3dd99fded5d0ba344626d51", uri="rtsp://xxxxxxxxxxxxxxx/axis-media/media.amp/", response="xxxxxxxxxxxx50614d8af56911eb01f962b" User-Agent: openRTSP.staticnon2gb (LIVE555 Streaming Media v2009.07.09) Received TEARDOWN response: RTSP/1.0 401 Unauthorized CSeq: 7 Session: EC7B22F6 WWW-Authenticate: Digest realm="AXIS_00408CA4Fxxx", nonce="xxxxxxxxxxxxx431219b3d7dd7db6c9ef93b3481952", stale=TRUE WWW-Authenticate: Basic realm="AXIS_00408CA4Fxxx" Date: Wed, 31 Mar 2010 11:58:34 GMT It's not a big issue because the cam stops streaming after a timeout, but I report it anyway;-) Greetings, Wolfgang Breyha -- Wolfgang Breyha | http://www.blafasel.at/ Vienna University Computer Center | Austria From sindhumaheswari at gmail.com Wed Mar 31 05:16:30 2010 From: sindhumaheswari at gmail.com (sindhumaheswari at gmail.com) Date: Wed, 31 Mar 2010 12:16:30 +0000 Subject: [Live-devel] kindly help Message-ID: <000e0cdf1c0460e88e048317b787@google.com> hi all, i am trying to replace the http client in my application with rtsp client. i found ur application worth, but i am having trouble in building it and adding it to my application. i have successfully built the first 4 libraries namely : basicusageenvironment, usageenvironment ,groupsock and live media. now i am trying to build the testprogs.mak i am facing some problems. also i face some probelm while building the openrtsp.cpp.please help me. i am working in vc 6.0 . also i am a new bie to tat. so kindlyhelp me build my rtsp client. kindlyhelp me build log for testprogs.mak: "C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl" -c -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -Z7 -Od -c -W3 -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -D_WINNT -D_WIN32_WINNT=0x0400 -D_WIN32_IE=0x0300 -DWINVER=0x0400 -DWIN32 -D_WIN32 -D_MT -D_DLL -MD -I. -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" testMP3Streamer.cpp testMP3Streamer.cpp link -out:testMP3Streamer.exe -debug:full -debugtype:cv msvcrt.lib /NODEFAULTLIB /INCREMENTAL:NO /PDB:NONE /RELEASE /NOLOGO -subsystem:console,4.0 msvcrt.lib oldnames.lib kernel32.lib ws2_32.lib mswsock.lib advapi32.lib testMP3Streamer.obj ../liveMedia/libliveMedia.lib ../groupsock/libgroupsock.lib ../BasicUsageEnvironment/libBasicUsageEnvironment.lib ../UsageEnvironment/libUsageEnvironment.lib testMP3Streamer.obj : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored msvcrt.lib(cinitexe.obj) : warning LNK4078: multiple ".CRT" sections found with different attributes (C0300040) libliveMedia.lib(RTCP.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MPEG1or2AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3FileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(Media.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(rtcp_from_spec.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MultiFramedRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3StreamState.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedFileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(InputFile.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3Internals.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3InternalsHuffman.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetAddress.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(inet.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupsockHelper.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupEId.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(DelayQueue.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicHashTable.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(strDup.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(UsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol ___security_cookie testMP3Streamer.obj : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 testMP3Streamer.obj : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol __imp____iob_func libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MediaSink.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __ftol2_sse libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp___stat64i32 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ctime64 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ftime64 testMP3Streamer.exe : fatal error LNK1120: 7 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop. Error executing NMAKE. error log for openrtsp: Command Lines Creating temporary file "C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" with contents [ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/openRTSP.pdb" /debug /machine:I386 /out:"Debug/openRTSP.exe" /pdbtype:sept ".\Debug\openRTSP.obj" ] Creating command line "link.exe @C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" Output Window Linking... openRTSP.obj : error LNK2001: unresolved external symbol "public: static class RTSPClient * __cdecl RTSPClient::createNew(class UsageEnvironment &,int,char const *,unsigned short)" (?createNew at RTSPClient@@SAPAV1 at AAVUsageEnvironment@@HPBDG at Z) openRTSP.obj : error LNK2001: unresolved external symbol "unsigned short tunnelOverHTTPPortNum" (?tunnelOverHTTPPortNum@@3GA) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::sendOptionsCmd(char const *,char *,char *,class Authenticator *,int)" (?sendOptionsCmd at RTSPClient@@QAEPADPBDPAD1PAVAuthenticator@@H at Z) openRTSP.obj : error LNK2001: unresolved external symbol "unsigned int statusCode" (?statusCode@@3IA) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::describeURL(char const *,class Authenticator *,unsigned int,int)" (?describeURL at RTSPClient@@QAEPADPBDPAVAuthenticator@@IH at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::describeWithPassword(char const *,char const *,char const *,unsigned int,int)" (?describeWithPassword at RTSPClient@@QAEPADPBD00IH at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::setupMediaSubsession(class MediaSubsession &,unsigned int,unsigned int,unsigned int)" (?setupMediaSubsession at RTSPClient@@QAEIAAVMediaSubsession@@III at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::playMediaSession(class MediaSession &,double,double,float)" (?playMediaSession at RTSPClient@@QAEIAAVMediaSession@@NNM at Z) openRTSP.obj : error LNK2001: unresolved external symbol "double duration" (?duration@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "double scale" (?scale@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "double initialSeekTime" (?initialSeekTime@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::teardownMediaSession(class MediaSession &)" (?teardownMediaSession at RTSPClient@@QAEIAAVMediaSession@@@Z) LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/openRTSP.exe : fatal error LNK1120: 13 unresolved externals Error executing link.exe. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gbonneau at miranda.com Wed Mar 31 08:38:14 2010 From: gbonneau at miranda.com (BONNEAU Guy) Date: Wed, 31 Mar 2010 11:38:14 -0400 Subject: [Live-devel] kindly help In-Reply-To: <000e0cdf1c0460e88e048317b787@google.com> References: <000e0cdf1c0460e88e048317b787@google.com> Message-ID: <6353CA579307224BAFDE9495906E691604399813@ca-ops-mail> I send to this list a solution .sln Visual Studio Xpress file 3 weeks ago. Use it to compile the tests projects. See this link in the email archive : http://lists.live555.com/pipermail/live-devel/2010-March/011875.html GB From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of sindhumaheswari at gmail.com Sent: Wednesday, March 31, 2010 8:17 To: live-devel at ns.live555.com Subject: [Live-devel] kindly help hi all, i am trying to replace the http client in my application with rtsp client. i found ur application worth, but i am having trouble in building it and adding it to my application. i have successfully built the first 4 libraries namely : basicusageenvironment, usageenvironment ,groupsock and live media. now i am trying to build the testprogs.mak i am facing some problems. also i face some probelm while building the openrtsp.cpp.please help me. i am working in vc 6.0 . also i am a new bie to tat. so kindlyhelp me build my rtsp client. kindlyhelp me build log for testprogs.mak: "C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl" -c -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -Z7 -Od -c -W3 -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -D_WINNT -D_WIN32_WINNT=0x0400 -D_WIN32_IE=0x0300 -DWINVER=0x0400 -DWIN32 -D_WIN32 -D_MT -D_DLL -MD -I. -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" testMP3Streamer.cpp testMP3Streamer.cpp link -out:testMP3Streamer.exe -debug:full -debugtype:cv msvcrt.lib /NODEFAULTLIB /INCREMENTAL:NO /PDB:NONE /RELEASE /NOLOGO -subsystem:console,4.0 msvcrt.lib oldnames.lib kernel32.lib ws2_32.lib mswsock.lib advapi32.lib testMP3Streamer.obj ../liveMedia/libliveMedia.lib ../groupsock/libgroupsock.lib ../BasicUsageEnvironment/libBasicUsageEnvironment.lib ../UsageEnvironment/libUsageEnvironment.lib testMP3Streamer.obj : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored msvcrt.lib(cinitexe.obj) : warning LNK4078: multiple ".CRT" sections found with different attributes (C0300040) libliveMedia.lib(RTCP.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MPEG1or2AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3FileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(Media.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(RTPSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(rtcp_from_spec.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(AudioRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MultiFramedRTPSink.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3StreamState.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(FramedFileSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MediaSource.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(InputFile.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3Internals.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libliveMedia.lib(MP3InternalsHuffman.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetAddress.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(inet.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupsockHelper.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(GroupEId.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(DelayQueue.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicHashTable.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libBasicUsageEnvironment.lib(BasicTaskScheduler0.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(strDup.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libUsageEnvironment.lib(UsageEnvironment.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol ___security_cookie testMP3Streamer.obj : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol ___security_cookie libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol ___security_cookie libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 testMP3Streamer.obj : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol @__security_check_cookie at 4 libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved external symbol __imp____iob_func libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MediaSink.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external symbol __imp____iob_func libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol __ftol2_sse libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external symbol __imp___stat64i32 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ctime64 libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved external symbol __imp___ftime64 testMP3Streamer.exe : fatal error LNK1120: 7 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop. Error executing NMAKE. error log for openrtsp: Command Lines Creating temporary file "C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" with contents [ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/openRTSP.pdb" /debug /machine:I386 /out:"Debug/openRTSP.exe" /pdbtype:sept ".\Debug\openRTSP.obj" ] Creating command line "link.exe @C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" Output Window Linking... openRTSP.obj : error LNK2001: unresolved external symbol "public: static class RTSPClient * __cdecl RTSPClient::createNew(class UsageEnvironment &,int,char const *,unsigned short)" (?createNew at RTSPClient@@SAPAV1 at AAVUsageEnvironment@@HPBDG at Z) openRTSP.obj : error LNK2001: unresolved external symbol "unsigned short tunnelOverHTTPPortNum" (?tunnelOverHTTPPortNum@@3GA) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::sendOptionsCmd(char const *,char *,char *,class Authenticator *,int)" (?sendOptionsCmd at RTSPClient@@QAEPADPBDPAD1PAVAuthenticator@@H at Z) openRTSP.obj : error LNK2001: unresolved external symbol "unsigned int statusCode" (?statusCode@@3IA) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::describeURL(char const *,class Authenticator *,unsigned int,int)" (?describeURL at RTSPClient@@QAEPADPBDPAVAuthenticator@@IH at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: char * __thiscall RTSPClient::describeWithPassword(char const *,char const *,char const *,unsigned int,int)" (?describeWithPassword at RTSPClient@@QAEPADPBD00IH at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::setupMediaSubsession(class MediaSubsession &,unsigned int,unsigned int,unsigned int)" (?setupMediaSubsession at RTSPClient@@QAEIAAVMediaSubsession@@III at Z) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::playMediaSession(class MediaSession &,double,double,float)" (?playMediaSession at RTSPClient@@QAEIAAVMediaSession@@NNM at Z) openRTSP.obj : error LNK2001: unresolved external symbol "double duration" (?duration@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "double scale" (?scale@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "double initialSeekTime" (?initialSeekTime@@3NA) openRTSP.obj : error LNK2001: unresolved external symbol "public: unsigned int __thiscall RTSPClient::teardownMediaSession(class MediaSession &)" (?teardownMediaSession at RTSPClient@@QAEIAAVMediaSession@@@Z) LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/openRTSP.exe : fatal error LNK1120: 13 unresolved externals Error executing link.exe. -------------- next part -------------- An HTML attachment was scrubbed... URL: From sindhumaheswari at gmail.com Wed Mar 31 21:01:54 2010 From: sindhumaheswari at gmail.com (sindhumaheswari at gmail.com) Date: Thu, 01 Apr 2010 04:01:54 +0000 Subject: [Live-devel] kindly help In-Reply-To: <000e0cdf1c0460e88e048317b787@google.com> Message-ID: <000e0cd70c0058b4b2048324ec36@google.com> hi, thanks for the link . i saw it. but i am using visual 2005 and vc 6.0 for compiling. in this platform i want to build the openrtsp for rtsp client. here i am not able to build the testprogs.mak file. the above said libraries have to be linked with this file before building right ? kindly tell me how to link the libraries with this fiel in vc 6.0 and after building this file ? kindly help. thanks in advance On Mar 31, 2010 5:46pm, sindhumaheswari at gmail.com wrote: > hi all, > i am trying to replace the http client in my application with rtsp > client. i found ur application worth, > but i am having trouble in building it and adding it to my application. i > have successfully built the first 4 libraries namely : > basicusageenvironment, usageenvironment ,groupsock and live media. now i > am trying to build the testprogs.mak i am facing some problems. > also i face some probelm while building the openrtsp.cpp.please help me. > i am working in vc 6.0 . also i am a new bie to tat. so kindlyhelp me > build my rtsp client. > kindlyhelp me > build log for testprogs.mak: > "C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl" -c > -I../UsageEnvironment/include -I../groupsock/include > -I../liveMedia/include -I../BasicUsageEnvironment/include -Z7 -Od -c -W3 > -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -D_WINNT > -D_WIN32_WINNT=0x0400 -D_WIN32_IE=0x0300 -DWINVER=0x0400 -DWIN32 -D_WIN32 > -D_MT -D_DLL -MD -I. -I"C:\Program Files\Microsoft Visual Studio > 8\VC\include" testMP3Streamer.cpp > testMP3Streamer.cpp > link -out:testMP3Streamer.exe -debug:full -debugtype:cv msvcrt.lib > /NODEFAULTLIB /INCREMENTAL:NO /PDB:NONE /RELEASE /NOLOGO > -subsystem:console,4.0 msvcrt.lib oldnames.lib kernel32.lib ws2_32.lib > mswsock.lib advapi32.lib > testMP3Streamer.obj ../liveMedia/libliveMedia.lib ../groupsock/libgroupsock.lib ../BasicUsageEnvironment/libBasicUsageEnvironment.lib ../UsageEnvironment/libUsageEnvironment.lib > testMP3Streamer.obj : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.CRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > msvcrt.lib(cinitexe.obj) : warning LNK4078: multiple ".CRT" sections > found with different attributes (C0300040) > libliveMedia.lib(RTCP.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MPEG1or2AudioRTPSink.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MediaSink.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MP3FileSource.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(Media.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(RTPInterface.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(RTPSink.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(RTPSource.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(rtcp_from_spec.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(AudioRTPSink.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MultiFramedRTPSink.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(FramedSource.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MP3StreamState.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(FramedFileSource.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MediaSource.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(InputFile.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MP3Internals.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libliveMedia.lib(MP3InternalsHuffman.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(Groupsock.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(NetAddress.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(inet.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(GroupsockHelper.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(NetInterface.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(GroupEId.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : warning > LNK4044: unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(BasicTaskScheduler.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(DelayQueue.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(BasicHashTable.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : warning > LNK4044: unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libBasicUsageEnvironment.lib(BasicTaskScheduler0.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.CRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libUsageEnvironment.lib(strDup.obj) : warning LNK4044: unrecognized > option "manifestdependency:type='win32' name='Microsoft.VC80.DebugCRT' > version='8.0.50608.0' processorArchitecture='x86' > publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libUsageEnvironment.lib(UsageEnvironment.obj) : warning LNK4044: > unrecognized option "manifestdependency:type='win32' > name='Microsoft.VC80.DebugCRT' version='8.0.50608.0' > processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored > libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external > symbol ___security_cookie > libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol > ___security_cookie > libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved > external symbol ___security_cookie > libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved > external symbol ___security_cookie > libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external > symbol ___security_cookie > libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external > symbol ___security_cookie > libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved > external symbol ___security_cookie > testMP3Streamer.obj : error LNK2001: unresolved external symbol > ___security_cookie > libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol > ___security_cookie > libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external > symbol ___security_cookie > libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external > symbol ___security_cookie > libgroupsock.lib(Groupsock.obj) : error LNK2001: unresolved external > symbol @__security_check_cookie at 4 > libgroupsock.lib(inet.obj) : error LNK2001: unresolved external symbol > @__security_check_cookie at 4 > libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved > external symbol @__security_check_cookie at 4 > libliveMedia.lib(MultiFramedRTPSink.obj) : error LNK2001: unresolved > external symbol @__security_check_cookie at 4 > libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external > symbol @__security_check_cookie at 4 > libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external > symbol @__security_check_cookie at 4 > libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved > external symbol @__security_check_cookie at 4 > testMP3Streamer.obj : error LNK2001: unresolved external symbol > @__security_check_cookie at 4 > libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol > @__security_check_cookie at 4 > libliveMedia.lib(MP3FileSource.obj) : error LNK2001: unresolved external > symbol @__security_check_cookie at 4 > libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external > symbol @__security_check_cookie at 4 > libBasicUsageEnvironment.lib(BasicUsageEnvironment0.obj) : error LNK2001: > unresolved external symbol __imp____iob_func > libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external > symbol __imp____iob_func > libliveMedia.lib(MP3Internals.obj) : error LNK2001: unresolved external > symbol __imp____iob_func > libliveMedia.lib(MP3InternalsHuffman.obj) : error LNK2001: unresolved > external symbol __imp____iob_func > libBasicUsageEnvironment.lib(BasicUsageEnvironment.obj) : error LNK2001: > unresolved external symbol __imp____iob_func > libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol > __imp____iob_func > libliveMedia.lib(MediaSink.obj) : error LNK2001: unresolved external > symbol __imp____iob_func > libliveMedia.lib(RTPInterface.obj) : error LNK2001: unresolved external > symbol __imp____iob_func > libliveMedia.lib(MP3StreamState.obj) : error LNK2001: unresolved external > symbol __imp____iob_func > libliveMedia.lib(RTCP.obj) : error LNK2001: unresolved external symbol > __ftol2_sse > libliveMedia.lib(InputFile.obj) : error LNK2001: unresolved external > symbol __imp___stat64i32 > libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved > external symbol __imp___ctime64 > libgroupsock.lib(GroupsockHelper.obj) : error LNK2001: unresolved > external symbol __imp___ftime64 > testMP3Streamer.exe : fatal error LNK1120: 7 unresolved externals > NMAKE : fatal error U1077: 'link' : return code '0x460' > Stop. > Error executing NMAKE. > error log for openrtsp: > Command Lines > Creating temporary file "C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" > with contents > [ > kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib > shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib > /nologo /subsystem:console /incremental:yes /pdb:"Debug/openRTSP.pdb" > /debug /machine:I386 /out:"Debug/openRTSP.exe" /pdbtype:sept > ".\Debug\openRTSP.obj" > ] > Creating command line "link.exe > @C:\DOCUME~1\e480177\LOCALS~1\Temp\RSP166.tmp" > Output Window > Linking... > openRTSP.obj : error LNK2001: unresolved external symbol "public: static > class RTSPClient * __cdecl RTSPClient::createNew(class UsageEnvironment > &,int,char const *,unsigned short)" > (?createNew at RTSPClient@@SAPAV1 at AAVUsageEnvironment@@HPBDG at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "unsigned short > tunnelOverHTTPPortNum" (?tunnelOverHTTPPortNum@@3GA) > openRTSP.obj : error LNK2001: unresolved external symbol "public: char * > __thiscall RTSPClient::sendOptionsCmd(char const *,char *,char *,class > Authenticator *,int)" > (?sendOptionsCmd at RTSPClient@@QAEPADPBDPAD1PAVAuthenticator@@H at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "unsigned int > statusCode" (?statusCode@@3IA) > openRTSP.obj : error LNK2001: unresolved external symbol "public: char * > __thiscall RTSPClient::describeURL(char const *,class Authenticator > *,unsigned int,int)" > (?describeURL at RTSPClient@@QAEPADPBDPAVAuthenticator@@IH at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "public: char * > __thiscall RTSPClient::describeWithPassword(char const *,char const > *,char const *,unsigned int,int)" > (?describeWithPassword at RTSPClient@@QAEPADPBD00IH at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "public: > unsigned int __thiscall RTSPClient::setupMediaSubsession(class > MediaSubsession &,unsigned int,unsigned int,unsigned int)" > (?setupMediaSubsession at RTSPClient@@QAEIAAVMediaSubsession@@III at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "public: > unsigned int __thiscall RTSPClient::playMediaSession(class MediaSession > &,double,double,float)" > (?playMediaSession at RTSPClient@@QAEIAAVMediaSession@@NNM at Z) > openRTSP.obj : error LNK2001: unresolved external symbol "double > duration" (?duration@@3NA) > openRTSP.obj : error LNK2001: unresolved external symbol "double scale" > (?scale@@3NA) > openRTSP.obj : error LNK2001: unresolved external symbol "double > initialSeekTime" (?initialSeekTime@@3NA) > openRTSP.obj : error LNK2001: unresolved external symbol "public: > unsigned int __thiscall RTSPClient::teardownMediaSession(class > MediaSession &)" > (?teardownMediaSession at RTSPClient@@QAEIAAVMediaSession@@@Z) > LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main > Debug/openRTSP.exe : fatal error LNK1120: 13 unresolved externals > Error executing link.exe. -------------- next part -------------- An HTML attachment was scrubbed... URL: