From finlayson at live555.com Tue Mar 1 02:17:31 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 1 Mar 2011 02:17:31 -0800 Subject: [Live-devel] Bug about demo.aac In-Reply-To: References: Message-ID: >The demo.aac is the one in >http://www.live555.com/liveMedia/public/aac/. I just use >live555MediaServer.exe as the server, VLC and openRTSP as the >clients. The samplerate from the SDP description is 22050 hz, but the >audio decoder (faad) in VLC reports the value of 44100hz, that's >strange and something maybe wrong. I don't believe there's any bug in our code. The first 4 (i.e., header) bytes from "demo.aac" are: ff f9 5d 80 This gives (from the ADTS file format specification): profile=1; sampling_frequency_index = 7 (which means that the sampling frequency is 22050); channel_configuration = 6 (See "ADTSFileSource.cpp") In any case, using VLC as a client, the file plays correctly if streamed by our server (e.g., from "live555MediaServer"), and also if played directly. So there's no problem. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From 44072429 at qq.com Tue Mar 1 01:01:47 2011 From: 44072429 at qq.com (=?gbk?B?NDQwNzI0Mjk=?=) Date: Tue, 1 Mar 2011 17:01:47 +0800 Subject: [Live-devel] Live555 Shared Library Visual Studio Message-ID: hi, my way is to write another open source dll.then static link live555.and export some useful interface. regards. KunYou ------------------ Original ------------------ From: "Heinzelmann David"; Date: 2011?2?28?(???) ??9:26 To: "live-devel"; Subject: [Live-devel] Live555 Shared Library Visual Studio Hi, I do like to include your library in a Win app as LGPL. But to include the library dynamically in Visual Studio the classes have to be exported with "__declspec(dllexport)". Do I have to add "__declspec(dllexport)" to every class? And does this violate the LGPL? Or is there any other possiblity to add Live555 dynamically in Visual Studio? Regards, David. -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 1 02:23:31 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 1 Mar 2011 02:23:31 -0800 Subject: [Live-devel] hi.problem about rtsp server. In-Reply-To: References: Message-ID: >there are one video source.with 8mbps rate. >now 48 client want to get video. >but only 32 client can be connectted. [...] >is there any config parameters? Yes, but they're in the operating system, not our software. I.e., the limit that you're running into is the maximum number of open files that your operating system can support. You can probably increase this, but how you do this depends upon your operating system. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Tue Mar 1 02:25:19 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 1 Mar 2011 02:25:19 -0800 Subject: [Live-devel] i don't know how to use Iunknown::CreateMediaSession In-Reply-To: <1462f385.1468c.12e6010129a.Coremail.en_1230@163.com> References: <1462f385.1468c.12e6010129a.Coremail.en_1230@163.com> Message-ID: >We just found sourcecode of >Morgan RTP DirectShowTM >Filters", I don't know how to use Iunknown::CreateMediaSession in >Morgan RTP DirectShow .We don't known how to development client of >com, > Please guide me how to programe Iunknown::CreateMediaSession >in client of com and how to programe in server of com in order to >building SDP. Sorry, but the "Morgan RTP DirectShow Filter" code was not developed by us (even though it uses our libraries), so we can't help you with this. You'll need to contact "Morgan Multimedia" for help with this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.blyth.edu at gmail.com Tue Mar 1 21:32:07 2011 From: john.blyth.edu at gmail.com (John Blyth) Date: Wed, 2 Mar 2011 16:32:07 +1100 Subject: [Live-devel] SAP announcements and the live555 library in VLC (multiple media ports please) Message-ID: Hi all, the live555 library is used by VLC. VLC can decode SAP announcements to make it easy for end users to access playlists via SAP announce and it appears that the live555 library is used to decode the SAP announcements. But VLC will not decode properly formed SAP announcements where there is more than one media line. It appears that this is a function of the live555 library and it changed about version 1.0.5 of VLC when there used to be a workaround before this version. For those of us who use RTSP streams with multiple media (aka QTSS / DSS) with in a multicast enabled network, getting this to work properly would be a great benefit. SAP/SDP files can have one connection entry for the whole file with multiple media lines/entries, or an individual connection entry with each media line. Both of these options are compliant with the RFC for SAP/SDP. Now I assume the live555 library was written with the assumption that the main media being used was multiplexed MPEG-TS with one port set only, and so one connection entry; one media file is all that it requires. But for live (IP / darwin / QT / flash) streaming it is typical to have two media ports, one for video, one for audio within the one connection. A plea to the live555 developers (I am making an assumption based on a response from the VLC developer{s}) that it is the live555 library that is the cause of this problem) - can the live555 library be adjusted so that it can successfully handle SAP/SDP files for the wider range of live broadcast media that use multiple media ports. See this entry here for the VLC discussion http://forum.videolan.org/viewtopic.php?f=2&t=81370&p=290102#p290102 thankyou JB From rafael.madeira at idea-ip.com Wed Mar 2 12:23:03 2011 From: rafael.madeira at idea-ip.com (Rafael Madeira) Date: Wed, 2 Mar 2011 17:23:03 -0300 Subject: [Live-devel] Live555 mixing with C source code. Message-ID: Hi, to avoid problems with inter process comunication i wanna use live555 as a library to my dm6467 encoder C source code. But, after a quick search about this issue (mixing c and c++) things seems to be very complex. There is a specific way i can achieve such code mix with live555? Tanks, -- Att, Rafael Madeira Idea! Electronic Systems www.idea-ip.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From 13861333891 at 126.com Wed Mar 2 18:50:55 2011 From: 13861333891 at 126.com (=?GBK?B?zfXWvrjV?=) Date: Thu, 3 Mar 2011 10:50:55 +0800 (CST) Subject: [Live-devel] Fw:how to use live555 lib in MFC project with vc6.0 Message-ID: hi all I want use live555 lib in my MFC project build with vc6.0,but i cannot do it.who can help me? -- Best regards, ??? -- Best regards, ??? -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 2 19:39:54 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 2 Mar 2011 19:39:54 -0800 Subject: [Live-devel] Live555 mixing with C source code. In-Reply-To: References: Message-ID: >to avoid problems with inter process comunication i wanna use >live555 as a library to my dm6467 encoder C source code. > >But, after a quick search about this issue (mixing c and c++) things >seems to be very complex. There is a specific way i can achieve such >code mix with live555? Yes - it's actually quite easy. You can call C functions from C++ by prefixing extern "C" to the function definitions that your C++ code sees. See, for example, the bottom of "groupsock/include/GroupsockHelper.hh". You can also call C++ functions (regular functions; not member functions) from C by prefixing extern "C" to their C++ implementations. See, for example, the bottom of "liveMedia/RTCP.cpp". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 3 03:06:58 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 3 Mar 2011 03:06:58 -0800 Subject: [Live-devel] Regarding wis-streamer issue In-Reply-To: References: Message-ID: > I am new to streaming application.We are using The >Appro-IPNC as a RTSP Server and Gstreamer as a RTSP Client. Which of these are implemented using our software? >We tried to get mpeg4 stream from RTSP Server by using four RTSP >Client at same time,We are getting the following error > >FramedSource::getNextFrame(): attempting to read more than once at >the same time! Is this error occuring in one of your clients, or in your server? In any case, the error means what it says. Somewhere there is a LIVE555 media object that is attempting to be read either by two different 'downstream' objects, or (more likely) is attempting to be read by a single 'downstream' object, but is being done so before a previous read attempt completed. I.e., it indicates a programming error somewhere in whatever application is using our software (note: *not* a programming error in our software itself). But, in any case, you are going to have to track down exactly where this is happening. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 3 03:14:25 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 3 Mar 2011 03:14:25 -0800 Subject: [Live-devel] Streaming server In-Reply-To: References: Message-ID: >I am planning to use MPEG-2, directly streaming MPEG-2 instead of h.264. >Which streaming server can I use? You could use our "testOnDemandRTSPServer" demo application. Note the difference between streaming a MPEG-2 Program Stream (which, for this demo application, must be called "test.mpg"), and a MPEG-2 Video Elementary Stream (which, for this demo application, must be called "testv.mpg"). > And How? As noted above, this depends on whether you want to stream a MPEG-2 Program Stream, or a MPEG-2 Elementary Stream. (If you instead want to stream a MPEG-2 *Transport* Stream, then you would use a file named "test.ts" instead.) If you want to stream from a live source (such as an encoder), rather than from a file, then you can do this by making a small modification to the application's source code. See the FAQ. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From max.goettner at dstream.de Thu Mar 3 05:37:32 2011 From: max.goettner at dstream.de (=?iso-8859-1?Q?Max_G=F6ttner_-_d.stream?=) Date: Thu, 3 Mar 2011 14:37:32 +0100 Subject: [Live-devel] .avi files written by openRTSP In-Reply-To: References: <000001cbd2b3$135445a0$39fcd0e0$@goettner@dstream.de> Message-ID: <001201cbd9a8$26262bc0$72728340$@goettner@dstream.de> Ok, I see. Thanks for your answer, if I find the time for implementing any solution, I will be glad to send it to you. Greetings, Max -----Urspr?ngliche Nachricht----- Von: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] Im Auftrag von Ross Finlayson Gesendet: Mittwoch, 23. Februar 2011 04:19 An: LIVE555 Streaming Media - development & use Betreff: Re: [Live-devel] .avi files written by openRTSP The "AVIFileSink" class - which implements writing AVI-format files - is incomplete, and could undoubtedly be improved. I don't have time to work on this myself, however, so I'd appreciate any improvements to this code that anyone wishes to make. -- 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 sumeet.kumar at hcl.com Thu Mar 3 03:51:45 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Thu, 3 Mar 2011 17:21:45 +0530 Subject: [Live-devel] continuous streaming of m4e media file Message-ID: <7F32C6A46402CD49BA87BC5874370F1A25B1890ADE@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 3 07:43:42 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 3 Mar 2011 07:43:42 -0800 Subject: [Live-devel] SAP announcements and the live555 library in VLC (multiple media ports please) In-Reply-To: References: Message-ID: >the live555 library is used by VLC. VLC can decode SAP announcements >to make it easy for end users to access playlists via SAP announce and >it appears that the live555 library is used to decode the SAP >announcements. Yes, but not exclusively (I think). I.e., I think that sometimes VLC uses a separate mechanism - not using our libraries - to parse/decode SAP announcements. I'm not sure about this, though, because VLC is not our software, and I'm not sure how it works internally. > But VLC will not decode properly formed SAP >announcements where there is more than one media line. It appears that >this is a function of the live555 library >Now I assume the live555 library was written with the assumption that >the main media being used was multiplexed MPEG-TS with one port set >only, and so one connection entry; one media file is all that it Incorrect. Our library has *always* been able to parse/handle SDP announcements that have multiple "m=" lines (e.g., one "m=" for audio; one "m=" for video). If your stream is accessible via a "rtsp://" URL, then you can verify this using our "openRTSP" RTSP client application. (Unlike VLC, openRTSP *is* our software.) So, please try opening our stream using "openRTSP", and let us know if you have any problems with this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 3 07:53:45 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 3 Mar 2011 07:53:45 -0800 Subject: [Live-devel] continuous streaming of m4e media file In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A25B1890ADE@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A25B1890ADE@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >I am trying to perform multicast live streaming from a web camera. >The web camera is continuously generating mpeg 4 stream (single file >with extension as .m4e). I am performing the streaming using >testMPEG4VideoStreamer. You should first try running the *original*, *unmodified* testMPEG4VideoStreamer application, using a single file - named "test.m4e" - as input. Only when you have this working should you consider modifying the code and/or writing your own server application. >However, on opening the rtsp url from VLC player, although no error >is reported. However, VLC player does not show any video. Please >help me in identifying my mistake I can't, because ***VLC is not our software***. Instead, you should first try playing/recording the stream (as served by the *original*, *unmodified* testMPEG4VideoStreamer application) using our "openRTSP" RTSP client application (see ). If "openRTSP" fails to record any data, then the problem may be because you don't have IP multicast routing between your server and client, or else a firewall that blocks UDP. (See ) You should instead first try running the server and client on the same LAN. If "openRTSP" records data OK (i.e., writes non-empty files), then the problem is likely that VLC is having trouble decoding your video. In that case, you need to report the problem on a VLC mailing list instead. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From Andreas.Gaer at baslerweb.com Thu Mar 3 09:00:38 2011 From: Andreas.Gaer at baslerweb.com (Gaer, A.) Date: Thu, 3 Mar 2011 18:00:38 +0100 Subject: [Live-devel] Several problems with RTP-over-TCP Message-ID: Hello all! The last days I was debugging some problems when using an On-Demand Server to stream MPEG4/H.264 video as RTP-over-TCP. After taking a deeper look into the TCP code, it seems that they are not too easily fixable, but a major rewrite of the RTP-over-TCP code would be needed to fix them all. Are there currently any efforts underway in that direction? If they're not already known, here are the problems I'm dealing with at the moment (you can reproduce them with the "testOnDemandRTSPServer" from the latest 2011.01.24 release). All problems arise when you use RTP-over-TCP streaming mode. * "No response to TEARDOWN when the source ended" If the source ends playing (e.g. EOF), StreamState::reclaim will be called by the afterPlayingStreamState handler. The RTCPInstance and RTPSink will be deleted, which causes them to de-register the TCP socket from the RTPInterface. This turns off reading of this socket. The delete of the RTCPInstance also will send a BYE-Event to the client. The client will try to TEARDOWN, but as nobody is listening on the still open TCP socket, it never get's an answer. VLC (1.1.7) totally locks up in that situation - nice. * "Defective reuseFirstSource when using OnDemandServerMediaSubsession with RTP-over-TCP" Again, if the source ends (e.g. EOF) the StreamState will "reclaim", but the OnDemandServerMediaSubsession will not be informed by that. So on the next request, it will readily re-use the StreamState that is already dead, no data at all. This will only be cured if eventually the RTSPClientSession owning the StreamTokens are garbage collected by the liveness timeout. If they (for whatever reason) are kept alive, it is impossible to open a new Stream with this Subsession. * "RTSP is dead after stopping all RTP-over-TCP streams" I'm not too sure about that one, as I'm not too deep into RTSP RFC and I don't have any testcode to prove it. But from what I see, if within a RTSP session you start RTP-over-TCP streams and stop them all, also the RTSP session will be dead. It seems to be impossible to start any other streams now. * "No error handling on TCP Socket errors" There are already some posts about this on the list. Personally I think not doing error handling on serious errors (socket closed => "Broken pipe") is not good. The server will continue to try to put packets into a socket that is known closed. So you will have extra load until some time a liveness check will kill the RTSPClientSession. It seems that handing over the ownership of the TCP socket to the RTPInterface when doing RTP-over-TCP is the root of all evil here. Wouldn't it be better to let the RTSPClientSession still own the socket, do the read-handling and de-muxing and give a delegate to the RTPInterface for sending data? Best regards, Andreas. -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.blyth.edu at gmail.com Thu Mar 3 19:17:46 2011 From: john.blyth.edu at gmail.com (John Blyth) Date: Fri, 4 Mar 2011 14:17:46 +1100 Subject: [Live-devel] SAP announcements and the live555 library in VLC (multiple media ports please) In-Reply-To: References: Message-ID: Thanks Ross, it is not a problem decoding the SDP file and the corresponding stream - VLC and QuicktimePlayer7 all do this and will display the rtsp stream from the information encoded in the SDP file. {The openrtsp does not have a SAP interpreting function?} The problem we have been experiencing is decoding the SAP announcement with the SDP information embedded inside it. VLC does interpret SAP announcements, but not SAP announcements with multiple media lines. The "messages" output from VLC implies that it is a live555 library function {used to decode the SAP announce} here's a line that one sees often in that messages window... "sap debug: Multiple media ports not supported -> live555" If you forgive me (in advance) the VLC developer said " I do not know what live555 does internally. This is not developed by the VideoLAN project." But it seemed to imply that live555 library was used by VLC for parsing SAP, but I may? be wrong. The debug message was the only clue I had for the observed behaviour. What I was hoping to achieve, is to find out if live555 is used for decoding SAP announcements in VLC, & does support multiple media ports, why that is not being included or recognised in VLC - a bit of a tricky situation for a third party user outside of the development teams of videolan and live555, & get it fixed. On Fri, Mar 4, 2011 at 2:43 AM, Ross Finlayson wrote: >> the live555 library is used by VLC. ?VLC can decode SAP announcements >> to make it easy for end users to access playlists via SAP announce and >> it appears that the live555 library is used to decode the SAP >> announcements. > > Yes, but not exclusively (I think). ?I.e., I think that sometimes VLC uses a > separate mechanism - not using our libraries - to parse/decode SAP > announcements. ?I'm not sure about this, though, because VLC is not our > software, and I'm not sure how it works internally. > > >> ?But VLC will not decode properly formed SAP >> announcements where there is more than one media line. It appears that >> this is a function of the live555 library > >> Now I assume the live555 library was written with the assumption that >> the main media being used was multiplexed MPEG-TS with one port set >> only, and so one connection entry; one media file is all that it > > Incorrect. ?Our library has *always* been able to parse/handle SDP > announcements that have multiple "m=" lines (e.g., one "m=" for audio; one > "m=" for video). > > If your stream is accessible via a "rtsp://" URL, then you can verify this > using our "openRTSP" RTSP client application. ?(Unlike VLC, openRTSP *is* > our software.) > > So, please try opening our stream using "openRTSP", and let us know if you > have any problems with this. > -- > > 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 Thu Mar 3 22:28:42 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 3 Mar 2011 22:28:42 -0800 Subject: [Live-devel] SAP announcements and the live555 library in VLC (multiple media ports please) In-Reply-To: References: Message-ID: >The problem we have been experiencing is decoding the SAP announcement >with the SDP information embedded inside it. VLC does interpret SAP >announcements, but not SAP announcements with multiple media lines. >The "messages" output from VLC implies that it is a live555 library >function {used to decode the SAP announce} > >here's a line that one sees often in that messages window... > >"sap debug: Multiple media ports not supported -> live555" This error message is printed by VLC (specifically, the VLC file "modules/services_discovery/sap.c"), not by our code. I don't know why it's mentioning "live555" at all, because - as far as I can tell - it is *not* using the LIVE555 library at this point to parse the SDP announcement. In any case, if VLC *were* using the LIVE555 library to parse the SDP announcement, then there would not be a problem, because we can (and always have been able to) parse SDP descriptions that contain multiple "m=" lines. So this is an issue to raise with the VLC developers, not us. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Mar 4 22:33:46 2011 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 4 Mar 2011 22:33:46 -0800 Subject: [Live-devel] New LIVE555 version, changes the signature of "OnDemandServerMediaSubsession::seekStreamSource()" Message-ID: [This message is relevant only to people who have implemented their own subclass of "OnDemandServerMediaSubsession". Everyone else can ignore this message.] Those of you who have implemented your own subclass of "OnDemandServerMediaSubsession" (for implementing the unicast serving of a specific codec) should be aware that the latest version (2011.03.05) of the LIVE555 Streaming Media code changes the signature of the "seekStreamSource()" virtual function to add a "streamDuration" parameter. This parameter, if >0.0, specifies a shorter finite duration for a stream (otherwise, the stream runs for its entire duration). Subclasses of "OnDemandServerMediaSubsession" may (but are not required to) use this parameter to limit how much data is sent for the stream, before treating the stream as if had encountered EOF. Our RTSP server implementation uses this to implement finite ranges specified in the "Range:" header in a "PLAY" request - e.g. "Range: npt=10-30", which specifies that the stream should run from the 10 second point up to the 30 second point, but no longer. (Previously, the server did not handle the end time (30, in this example) of a range; instead leaving it up to the client to 'TEARDOWN' the stream at the appropriate time.) As with seeking, this functionality is implemented for some codecs, but not others. It is currently implemented for MP3 audio, WAV audio, and DV video. (Support for Transport Stream data will be added shortly.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From dbeal at cardinalpeak.com Sat Mar 5 11:40:28 2011 From: dbeal at cardinalpeak.com (Dave Beal) Date: Sat, 05 Mar 2011 12:40:28 -0700 Subject: [Live-devel] =?iso-8859-1?q?AAC_packaging_for_=22mpeg4-generic=22?= =?iso-8859-1?q?_stream=3F?= Message-ID: <20110305194028.88608425@smtp.cardinalpeak.com> I'm trying to code a server to stream live video and audio over RTSP/RTP to VLC. The video stream plays fine, but I'm having trouble with the audio stream; the VLC's faad module continuously complains about problems in the bitstream. I suspect the problem may be that I'm not packaging the raw AAC data as VLC or Live555 expects. As I understand, the two options for packaging AAC are ADIF and ADTS. I'm using the faac library to do the encoding; it knows how to do ADTS and "raw", but VLC/Live555 didn't seem to be happy with either. What packaging does Live555 expect? Do I need to describe the AAC packaging in the SDP description of the stream? If so, how? This is my current SDP: m=audio 0 RTP/AVP 97 a=control: rtsp://192.168.0.153/input_1/audio a=rtpmap: 97 mpeg4-generic/16000/1 a=fmtp: 97 streamtype=5;profile-level-id=16;mode=AAC-hbr;config=1408;sizeLength=13;indexLength=3;indexDeltaLength=3;constantDuration=1024 Thanks! - Dave Beal Cardinal Peak, LLC Lafayette, Colorado USA Dave Beal (303) 665-3962 x124 | Email | vCard | Web | Company Blog | LinkedIn -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sat Mar 5 21:38:04 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 5 Mar 2011 21:38:04 -0800 Subject: [Live-devel] AAC packaging for "mpeg4-generic" stream? In-Reply-To: <20110305194028.88608425@smtp.cardinalpeak.com> References: <20110305194028.88608425@smtp.cardinalpeak.com> Message-ID: >I'm trying to code a server to stream live video and audio over >RTSP/RTP to VLC. The video stream plays fine, but I'm having trouble >with the audio stream; the VLC's faad module continuously complains >about problems in the bitstream. Your message didn't make it clear whether or not your server is implemented using our libraries, but if it's not, then we can't really help you here, because the VLC media player is not our software. (VLC does use our libraries for the RTSP/RTP protocol, but not for decoding at all.) Instead, you should begin by using our "openRTSP" client (see ) to make sure that it receives your stream OK (and writes a non-empty file for the incoming audio stream). I also suggest that you take a look at how our RTSP server implementation (e.g, our "testOnDemandRTSPServer" demo application) streams from an ADTS-format aac file. (For an example ADTS-format AAC file, you can use the file "test.aac" from .) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From maratshch at gmail.com Sun Mar 6 01:36:05 2011 From: maratshch at gmail.com (Marat Shchuchinsky) Date: Sun, 6 Mar 2011 11:36:05 +0200 Subject: [Live-devel] RTSP server in multicast: livenessTimeoutTask API Message-ID: Dear Sir! I upgrade my old version of live555 on one latest (from 2011/Jan/24) and pay attention on small difference in functionality in RTSP server that I don't clearly understood. I mean this API: void RTSPServer::RTSPClientSession ::livenessTimeoutTask(RTSPClientSession* clientSession); As written in new version of live555 client session object always deleted, even this is multicast session. But "old version" of live555 delete the client session object on timeout only in unicast mode. This is fragment from "old' version: ===================== void RTSPServer::RTSPClientSession ::livenessTimeoutTask(RTSPClientSession* clientSession) { // If this gets called, the client session is assumed to have timed out, // so delete it: // However, we don't timeout multicast sessions, because to do so would require // closing all client sessions that have requested the stream - not just this one. // Also, the multicast stream itself would usually not be halted, in any case. if (clientSession->isMulticast()) return; #ifdef DEBUG fprintf(stderr, "RTSP client session from %s has timed out (due to inactivity)\n", our_inet_ntoa(clientSession->fClientAddr.sin_addr)); #endif delete clientSession; } And this code fragment form latest version of live555: ======================== void RTSPServer::RTSPClientSession ::livenessTimeoutTask(RTSPClientSession* clientSession) { if (clientSession->isMulticast()) return; // If this gets called, the client session is assumed to have timed out, // so delete it: delete clientSession; clientSession = NULL; } Maybe I don't clearly understood how live555 service the multicast client, but I would be very glad on your explain why multicast checking removed from livenessTimeoutTask API??? Best regards, Marat Shchuchinsky DSP software engineer -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 02:33:12 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 02:33:12 -0800 Subject: [Live-devel] RTSP server in multicast: livenessTimeoutTask API In-Reply-To: References: Message-ID: >why multicast checking removed from livenessTimeoutTask API??? Because there was no longer any need to exclude multicast sessions from the normal client liveness checking. I.e., as with all RTSP/RTP streams, the server will timeout the stream if it doesn't receive any indication of 'liveness' (e.g., a RTCP packet, or a RTSP command) from a client within the timeout period. (Note that all clients - whether unicast or multicast - are required to send back RTCP "RR" packets.) In any case, as always, you can disable the server's liveness checking by starting the server with the "reclamationTestSeconds" parameter set to 0. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From maratshch at gmail.com Sun Mar 6 03:29:35 2011 From: maratshch at gmail.com (Marat Shchuchinsky) Date: Sun, 6 Mar 2011 13:29:35 +0200 Subject: [Live-devel] RTSP server in multicast: livenessTimeoutTask API In-Reply-To: References: Message-ID: Mr. Ross, Thank you very much for quick answer. Am I understood correctly: client session object deleted in multicast mode, even one client from multi has a timeout???? ThanX again. On Sun, Mar 6, 2011 at 12:33 PM, Ross Finlayson wrote: > why multicast checking removed from livenessTimeoutTask API??? >> > > Because there was no longer any need to exclude multicast sessions from the > normal client liveness checking. > > I.e., as with all RTSP/RTP streams, the server will timeout the stream if > it doesn't receive any indication of 'liveness' (e.g., a RTCP packet, or a > RTSP command) from a client within the timeout period. > > (Note that all clients - whether unicast or multicast - are required to > send back RTCP "RR" packets.) > > In any case, as always, you can disable the server's liveness checking by > starting the server with the "reclamationTestSeconds" parameter set to 0. > -- > > 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 6 08:15:00 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 08:15:00 -0800 Subject: [Live-devel] RTSP server in multicast: livenessTimeoutTask API In-Reply-To: References: Message-ID: >Am I understood correctly: client session object deleted in >multicast mode, even one client from multi has a timeout???? Yes, but note that the "RTSPClientSession" object is specific to that particular client (and it's TCP RTSP connection to the server). If that times out, then only that one client's connection to the server is closed. The multicast stream continues as before. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Sun Mar 6 08:25:32 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Sun, 6 Mar 2011 08:25:32 -0800 Subject: [Live-devel] streaming live H263 video Message-ID: Hello, I am trying to make Live555 work with live video source. My H263 encoder writes encoded frames to Unix named pipe (FIFO) with a rate of 15 fps*. *I created a RTSPServer instance, ServerMediaSession and added a H263plusVideoFileServerMediaSubsession (reuseFirstSource=True), passing the FIFO file name as the subsession parameter. VLC and/or QuickTime player start playing the stream, then repeatedly freeze for several seconds, then play again. However, everything works fine if I stream pre-recoded H.263 encoded elementary stream from file (without using named pipe). Is this happening when RTSPServer is getting EOF while trying to read the data from the pipe? Thanks in advance. -------------- next part -------------- An HTML attachment was scrubbed... URL: From tuan at brandaffinity.net Sun Mar 6 10:16:57 2011 From: tuan at brandaffinity.net (Tuan Nguyen) Date: Sun, 6 Mar 2011 10:16:57 -0800 Subject: [Live-devel] Streaming to wowza media server Message-ID: Moderator I'm able to use the darwin test program to stream to a darwin media server, but when trying to stream to a wowza server i with some of the test programs it doesn't see to work. Which test program can i use to get a working audio and video stream. Also how would i change the test samples to stream audio only in an AAC, mp4, or lpcm format? Tuan Nguyen -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 12:56:26 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 12:56:26 -0800 Subject: [Live-devel] Streaming to wowza media server In-Reply-To: References: Message-ID: >I'm able to use the darwin test program to stream to a darwin media >server, but when trying to stream to a wowza server i with some of >the test programs it doesn't see to work. Sorry, no idea. You're going to have to ask 'wowza'. > Which test program can i use to get a working audio and video >stream. Also how would i change the test samples to stream audio >only in an AAC, mp4, or lpcm format? We no longer support the '*ToDarwin" applications (although, as a courtesy, we still make their source code available). Note the comment near the top of the file "testMPEG4VideoToDarwin.cpp": ////////// NOTE ////////// // This demo software is provided only as a courtesy to those developers who - for whatever reason - wish // to send outgoing streams through a separate Darwin Streaming Server. However, it is not necessary to use // a Darwin Streaming Server in order to serve streams using RTP/RTSP. Instead, the "LIVE555 Streaming Media" software // includes its own RTSP/RTP server implementation, which you should use instead. For tips on using our // RTSP/RTP server implementation, see the "testOnDemandRTSPServer" demo application, and/or the // "live555MediaServer" application (in the "mediaServer") directory. ////////////////////////// -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From tuan at brandaffinity.net Sun Mar 6 13:11:45 2011 From: tuan at brandaffinity.net (Tuan Nguyen) Date: Sun, 6 Mar 2011 13:11:45 -0800 Subject: [Live-devel] Streaming to wowza media server In-Reply-To: References: Message-ID: Does this this mean the live555 client is only meant to broadcast the streaming media and not to send the source to another media server to be streamed? Is there a simple way to do that with the current provided live555 library to mimic the darwin injection but to other media servers? On Sun, Mar 6, 2011 at 12:56 PM, Ross Finlayson wrote: > I'm able to use the darwin test program to stream to a darwin media server, >> but when trying to stream to a wowza server i with some of the test programs >> it doesn't see to work. >> > > Sorry, no idea. You're going to have to ask 'wowza'. > > > > Which test program can i use to get a working audio and video stream. >> Also how would i change the test samples to stream audio only in an AAC, >> mp4, or lpcm format? >> > > We no longer support the '*ToDarwin" applications (although, as a courtesy, > we still make their source code available). Note the comment near the top > of the file "testMPEG4VideoToDarwin.cpp": > > ////////// NOTE ////////// > // This demo software is provided only as a courtesy to those developers > who - for whatever reason - wish > // to send outgoing streams through a separate Darwin Streaming Server. > However, it is not necessary to use > // a Darwin Streaming Server in order to serve streams using RTP/RTSP. > Instead, the "LIVE555 Streaming Media" software > // includes its own RTSP/RTP server implementation, which you should use > instead. For tips on using our > // RTSP/RTP server implementation, see the "testOnDemandRTSPServer" demo > application, and/or the > // "live555MediaServer" application (in the "mediaServer") directory. > ////////////////////////// > -- > > 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 6 16:52:10 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 16:52:10 -0800 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >I am trying to make Live555 work with live video source. My H263 >encoder writes encoded frames to Unix named pipe (FIFO) with a rate >of 15 fps. I created a RTSPServer instance, ServerMediaSession and >added a H263plusVideoFileServerMediaSubsession >(reuseFirstSource=True), passing the FIFO file name as the >subsession parameter. > >VLC and/or QuickTime player start playing the stream, then >repeatedly freeze for several seconds, then play again. However, >everything works fine if I stream pre-recoded H.263 encoded >elementary stream from file (without using named pipe). Is this >happening when RTSPServer is getting EOF while trying to read the >data from the pipe? No, it's most likely because the server is trying to read more data from the pipe than is currently available, so the operating system is blocking the reading server until the other end (the encoder) makes enough data available. One way to fix this is to - if you can - increase the internal (i.e., OS) buffering in your named pipe. Our server tries to read up to 150000 bytes at a time (the constant BANK_SIZE in "StreamParser.cpp"), so you should try to make the pipe's buffer at least this large. Alternatively - if you can't increase the amount of buffering in your pipe - you could try reducing the value of the constant BANK_SIZE in "StreamParser.cpp". You should not make this too small, though; it needs to be at least as large as the largest possible H.263 frame that you expect to see. I don't recommend doing this except as a last resort, though, because it requires modifying the supplied source code. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 17:03:32 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 17:03:32 -0800 Subject: [Live-devel] Streaming to wowza media server In-Reply-To: References: Message-ID: >Does this this mean the live555 client is only meant to broadcast >the streaming media and not to send the source to another media >server to be streamed? No, it means that we no longer support clients 'pushing' data to servers at all. This is generally a bad idea, and there's no standard protocol for doing this anyway. (Apple's 'Darwin' servers use a bastardized, non-standard variation of the RTSP protocol.) Instead, our servers 'pull' data from their source. The easiest way to do this is if the source is a file (or a named pipe), but - with a little programming - other kinds of source can also be supported. (See the FAQ.) > Is there a simple way to do that with the current provided live555 >library to mimic the darwin injection but to other media servers? No. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Sun Mar 6 17:28:37 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Sun, 6 Mar 2011 17:28:37 -0800 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Ross, Thank you for the quick response. My encoder produces 1 encoded frame every 1/15 of a second, RTSPServer is reading faster and OS blocks when there is no data available. How the increase of pipe buffer will help if encoder does not produce more data? Will implementing my own "FramedSource" subclass resolve the issue as well? Thanks in advance. On Sun, Mar 6, 2011 at 4:52 PM, Ross Finlayson wrote: > I am trying to make Live555 work with live video source. My H263 encoder > writes encoded frames to Unix named pipe (FIFO) with a rate of 15 fps*.* I > created a RTSPServer instance, ServerMediaSession and added > a H263plusVideoFileServerMediaSubsession (reuseFirstSource=True), passing > the FIFO file name as the subsession parameter. > > > VLC and/or QuickTime player start playing the stream, then repeatedly > freeze for several seconds, then play again. However, everything works fine > if I stream pre-recoded H.263 encoded elementary stream from file (without > using named pipe). Is this happening when RTSPServer is getting EOF while > trying to read the data from the pipe? > > > No, it's most likely because the server is trying to read more data from > the pipe than is currently available, so the operating system is blocking > the reading server until the other end (the encoder) makes enough data > available. > > One way to fix this is to - if you can - increase the internal (i.e., OS) > buffering in your named pipe. Our server tries to read up to 150000 bytes > at a time (the constant BANK_SIZE in "StreamParser.cpp"), so you should try > to make the pipe's buffer at least this large. > > Alternatively - if you can't increase the amount of buffering in your pipe > - you could try reducing the value of the constant BANK_SIZE in > "StreamParser.cpp". You should not make this too small, though; it needs to > be at least as large as the largest possible H.263 frame that you expect to > see. > I don't recommend doing this except as a last resort, though, because it > requires modifying the supplied source 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 > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 19:58:10 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 19:58:10 -0800 Subject: [Live-devel] Several problems with RTP-over-TCP In-Reply-To: References: Message-ID: Thanks for the note. Yes, the implementation of RTP-over-TCP (for both clients and servers, and, in particular, its interaction with RTSP) has been difficult, and in fact there were major changes (improvements and bug fixes) made to the code back in July and August of last year to support this better, especially for servers. Undoubtedly, though, some problems remain - but certainly not enough to require a "major rewrite of the code". The existing code architecture - in which RTP/RTCP sending/receiving over either UDP or TCP (the data delivery protocol) is handled by the "RTPInterface" class, with RTSP (the control protocol) being handled by the "RTSPServer::RTSPClientSession" class - seems appropriate, and will remain, as "data delivery" and "control" are logically separate functions. (Note, for example, that it is possible, in principle, for RTP/RTCP-over-TCP streams to be delivered without using RTSP at all, or by using some different control protocol (other than RTSP) embedded within the RTP/RTCP-over-TCP stream.) Now, to address the specific issues that you raise in your email: >* "No response to TEARDOWN when the source ended" >If the source ends playing (e.g. EOF), StreamState::reclaim will be >called by the afterPlayingStreamState handler. The RTCPInstance and >RTPSink will be deleted, which causes them to de-register the TCP >socket from the RTPInterface. This turns off reading of this socket. >The delete of the RTCPInstance also will send a BYE-Event to the >client. The client will try to TEARDOWN, but as nobody is listening >on the still open TCP socket, it never get's an answer. Yes, it's unfortunate that the server behavior in this case (RTP-over-TCP) is unusual (and different from the server behavior in the normal RTP-over-UDP case). However, this (i.e., clients not receiving a response to a RTSP command) is something that clients need to allow for, as it's always possible for servers to die before they send a response. > VLC (1.1.7) totally locks up in that situation - nice. I doubt that VLC 'totally' locks up (because I think it uses a separate thread for its UI), but, in any case, the real problem here is that VLC is still using the old, now-deprecated synchronous "RTSPClient" interface. (From what I've been told (by the VLC developers), VLC won't start using the new asynchronous "RTSPClient" interface until its 2.* versions.) To help overcome this problem for now, I've released a new version (2011.03.06) of the "LIVE555 Streaming Media" code that changes the implementation of "teardownMediaSession()" and "teardownMediaSubsession()" in the synchronous interface to not handle or wait for reponses to RTSP "TEARDOWN" commands. Now, clients that use the old synchronous interface won't ever block when sending "TEARDOWN" commands, regardless of what the server is doing. Nonetheless, I agree with you that the server's behavior in this case is not ideal, so at some point in the future I may see if I can fix this, by (somehow) having the "RTSPClientSession" object retake control of the TCP socket after the "RTPInterface" object is finished with it. >* "Defective reuseFirstSource when using >OnDemandServerMediaSubsession with RTP-over-TCP" >Again, if the source ends (e.g. EOF) the StreamState will "reclaim", >but the OnDemandServerMediaSubsession will not be informed by that. >So on the next request, it will readily re-use the StreamState that >is already dead, no data at all. This will only be cured if >eventually the RTSPClientSession owning the StreamTokens are garbage >collected by the liveness timeout. Yes, you're right - this is a bug (albeit minor). It's actually independent of RTP-over-TCP streaming (i.e., I think it applies to RTP-over-UDP streams as well). Fortunately it's easy to fix; a fix will probably appear in the next release of the code. >* "RTSP is dead after stopping all RTP-over-TCP streams" >I'm not too sure about that one, as I'm not too deep into RTSP RFC >and I don't have any testcode to prove it. But from what I see, if >within a RTSP session you start RTP-over-TCP streams and stop them >all, also the RTSP session will be dead. It seems to be impossible >to start any other streams now. This is probably a consequence of the first point you noted - i.e., when a RTP-over-TCP stream is closed, the "RTSPClientSession" object doesn't get to handle any more RTSP commands. >* "No error handling on TCP Socket errors" >There are already some posts about this on the list. Personally I >think not doing error handling on serious errors (socket closed => >"Broken pipe") is not good. The server will continue to try to put >packets into a socket that is known closed. So you will have extra >load until some time a liveness check will kill the >RTSPClientSession. I don't see this being a major problem. Note that the same thing happens for RTP-over-UDP streams if the client happens to die (actually RTP-over-UDP streams are worse, because the server can't detect this at all, and you also get network packets being sent). I don't think it's worthwhile adding special-case code just to do a minor optimization of the handling of an error case just for RTP-over-TCP streams. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 20:06:14 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 20:06:14 -0800 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >My encoder produces 1 encoded frame every 1/15 of a second, >RTSPServer is reading faster and OS blocks when there is no data >available. How the increase of pipe buffer will help if encoder does >not produce more data? To be honest, I'm not certain that increasing the pipe's buffering will fix your problem. However, I think it's something that you should try first. >Will implementing my own "FramedSource" subclass resolve the issue as well? Yes, it should, but the 'named pipe' solution is much easier, so you should try to get that working first. (This is all assuming, of course, that your CPU+encoder is powerful enough to generate H.263 frames in 'real time'. If that's not true, then you're screwed no matter what :-) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sumeet.kumar at hcl.com Sun Mar 6 22:39:17 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Mon, 7 Mar 2011 12:09:17 +0530 Subject: [Live-devel] continuous streaming of m4e media file Message-ID: <7F32C6A46402CD49BA87BC5874370F1A25B2342B4E@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi, In my case, the web camera is always generating a single file (test.m4e), which continuously grows in size (w.r.t time). I have tried to use testMPEG4VideoStreamer application on a fixed size test.m4e file. And it works fine. But when this single file (test.m4e) continuously grows in size, the testMPEG4VideoStreamer application fails to stream the constantly growing test.m4e file. My server and client resides on the same LAN. Regards, Sumeet ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Sun Mar 6 22:52:49 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 6 Mar 2011 22:52:49 -0800 Subject: [Live-devel] continuous streaming of m4e media file In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A25B2342B4E@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A25B2342B4E@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >In my case, the web camera is always generating a single file >(test.m4e), which continuously grows in size (w.r.t time). >I have tried to use testMPEG4VideoStreamer application on a fixed >size test.m4e file. And it works fine. But when this single file >(test.m4e) continuously grows in size, the testMPEG4VideoStreamer >application fails to stream the constantly growing test.m4e file. Something (I'm not sure what) is apparently getting confused by the fact that you have a named file whose size isn't constant. Instead, I recommend changing "inputFileName" (in "testMPEG4VideoStreamer.cpp") to "stdin", and then running testMPEG4VideoStreamer < test.m4e -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From Ritun.Palit at hcl.com Mon Mar 7 01:21:54 2011 From: Ritun.Palit at hcl.com (Ritun Palit) Date: Mon, 7 Mar 2011 14:51:54 +0530 Subject: [Live-devel] Query regarding multithreading Message-ID: <5F9A1BA455104A428B008F9E96382E1D38451B001D@NDA-HCLT-EVS04.HCLT.CORP.HCL.IN> Hi All, I have read the faq, and got to know that multithreading is a tricky thing to do in Live555 but in my requirement it is needed to do multithreading of Live 555. So, I'm trying to implement multithreading in one of the test programs named "testMPEG4VideoStreamer". I have done the following code changes Main() { Starting rtsp server; Calling a custom Startplay method();//input parameters are stream name,filename,rtspserver } Startplay() { Starting thread t1 T1->play(); } In the thread Play Method { Creating new objects of UsageEnvironment,taskscheduler, Groupsock, VideoSink and executing videoSink->startPlaying(*videoSource, afterPlaying, videoSink); env ->taskScheduler().doEventLoop(); } After that compiling and running it. It is generating a url and when I'm trying to run it from vlc media player it is showing nothing! Though in the console of the program it is showing.. "Streaming, Reading.. Done reading from the file.." I'm really not getting where the problem is!Please let me know where I'm going wrong! Thanks & Regards, Ritun ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 7 02:10:47 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 7 Mar 2011 02:10:47 -0800 Subject: [Live-devel] Query regarding multithreading In-Reply-To: <5F9A1BA455104A428B008F9E96382E1D38451B001D@NDA-HCLT-EVS04.HCLT.CORP.HCL.I N> References: <5F9A1BA455104A428B008F9E96382E1D38451B001D@NDA-HCLT-EVS04.HCLT.CORP.HCL.I N> Message-ID: >I have read the faq, and got to know that multithreading is a tricky >thing to do in Live555 but in my requirement it is needed to do >multithreading of Live 555. You are mistaken. LIVE555 applications use an event loop - rather than multiple threads - to provide concurrency. If you don't understand what this means, then you should not be using this software. >I have done the following code changes I have therefore ignored the rest of your message. You can expect no support from me. Sorry. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From dbeal at cardinalpeak.com Mon Mar 7 08:31:04 2011 From: dbeal at cardinalpeak.com (Dave Beal) Date: Mon, 07 Mar 2011 09:31:04 -0700 Subject: [Live-devel] AAC packaging for "mpeg4-generic" stream? In-Reply-To: References: <20110305194028.88608425@smtp.cardinalpeak.com> Message-ID: <1299515464.21220.3.camel@dave-beal-ubuntu.cardinalpeak.com> Thank you for the prompt reply, Ross. So I take it from your response that the Live555 library is agnostic about how the AAC is packaged. - Dave -----Original Message----- From: Ross Finlayson Reply-to: LIVE555 Streaming Media - development & use To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] AAC packaging for "mpeg4-generic" stream? Date: Sat, 5 Mar 2011 21:38:04 -0800 >I'm trying to code a server to stream live video and audio over >RTSP/RTP to VLC. The video stream plays fine, but I'm having trouble >with the audio stream; the VLC's faad module continuously complains >about problems in the bitstream. Your message didn't make it clear whether or not your server is implemented using our libraries, but if it's not, then we can't really help you here, because the VLC media player is not our software. (VLC does use our libraries for the RTSP/RTP protocol, but not for decoding at all.) Instead, you should begin by using our "openRTSP" client (see ) to make sure that it receives your stream OK (and writes a non-empty file for the incoming audio stream). I also suggest that you take a look at how our RTSP server implementation (e.g, our "testOnDemandRTSPServer" demo application) streams from an ADTS-format aac file. (For an example ADTS-format AAC file, you can use the file "test.aac" from .) Dave Beal Cardinal Peak (303) 665-3962 x124 | Email | vCard | Web | Company Blog | LinkedIn -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 7 09:43:33 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 7 Mar 2011 09:43:33 -0800 Subject: [Live-devel] AAC packaging for "mpeg4-generic" stream? In-Reply-To: <1299515464.21220.3.camel@dave-beal-ubuntu.cardinalpeak.com> References: <20110305194028.88608425@smtp.cardinalpeak.com> <1299515464.21220.3.camel@dave-beal-ubuntu.cardinalpeak.com> Message-ID: >Thank you for the prompt reply, Ross. So I take it from your >response that the Live555 library is agnostic about how the AAC is >packaged. The RTP packets must - in this case - be packaged according to the RTP payload format described in RFC 3640, but because the LIVE555 library doesn't do any decoding, it doesn't care about what's in the AAC frames that are inside these packets. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From tuan at brandaffinity.net Mon Mar 7 11:42:04 2011 From: tuan at brandaffinity.net (Tuan Nguyen) Date: Mon, 7 Mar 2011 11:42:04 -0800 Subject: [Live-devel] Streaming to wowza media server In-Reply-To: References: Message-ID: What i'm trying to do is broadcast from an IOS device but only aac, lpcm, u-law, and a-law are supported. What would i need to do to stream/broadcast either of these formats from an IOS device without additional codecs. On Sun, Mar 6, 2011 at 5:03 PM, Ross Finlayson wrote: > Does this this mean the live555 client is only meant to broadcast the >> streaming media and not to send the source to another media server to be >> streamed? >> > > No, it means that we no longer support clients 'pushing' data to servers at > all. This is generally a bad idea, and there's no standard protocol for > doing this anyway. (Apple's 'Darwin' servers use a bastardized, > non-standard variation of the RTSP protocol.) > > Instead, our servers 'pull' data from their source. The easiest way to do > this is if the source is a file (or a named pipe), but - with a little > programming - other kinds of source can also be supported. (See the FAQ.) > > > > Is there a simple way to do that with the current provided live555 >> library to mimic the darwin injection but to other media servers? >> > > No. > > -- > > 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 Mon Mar 7 12:35:30 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 7 Mar 2011 12:35:30 -0800 Subject: [Live-devel] Streaming to wowza media server In-Reply-To: References: Message-ID: >What i'm trying to do is broadcast from an IOS device but only aac, >lpcm, u-law, and a-law are supported. What would i need to do to >stream/broadcast either of these formats from an IOS device without >additional codecs. First, get our software running on iOS. Then, use our RTSP server implementation (you could use the "testOnDemandRTSPServer" demo application as a model) to stream your input media. (See the FAQ for how to adapt the "testOnDemandRTSPServer" code to use a live input source.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From dbeal at cardinalpeak.com Mon Mar 7 17:48:47 2011 From: dbeal at cardinalpeak.com (Dave Beal) Date: Mon, 07 Mar 2011 18:48:47 -0700 Subject: [Live-devel] =?iso-8859-1?q?AAC_packaging_for_=22mpeg4-generic=22?= =?iso-8859-1?q?_stream=3F?= In-Reply-To: Message-ID: <20110308014847.b1d99475@smtp.cardinalpeak.com> Thanks again, Ross. I got it working. I just had two fields of RTP's AU Header in the wrong order. BTW, VLC accepts AAC over RTP with no packaging at all - neither ADTS or ADIF, just the raw AAC data. - Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: From 44072429 at qq.com Mon Mar 7 19:29:35 2011 From: 44072429 at qq.com (=?ISO-8859-1?B?NDQwNzI0Mjk=?=) Date: Tue, 8 Mar 2011 11:29:35 +0800 Subject: [Live-devel] compile warning Message-ID: compile warning D:\DEVELOP\DEVELOP\OPENSOURCE\LIVE555\GROUPSOCK\INCLUDE\NetCommon.h(40) : warning C4005: 'EAGAIN' : macro redefinition C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\errno.h(83) : see previous definition of 'EAGAIN' -------------- next part -------------- An HTML attachment was scrubbed... URL: From sumeet.kumar at hcl.com Tue Mar 8 01:49:08 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Tue, 8 Mar 2011 15:19:08 +0530 Subject: [Live-devel] continuous streaming of m4e media file Message-ID: <7F32C6A46402CD49BA87BC5874370F1A25B234325C@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi, Thanks a lot for your suggestions. It works great. I need another suggestion from you. I have multiple files which needs to be streamed sequentially. So how do I redirect these multiple files instead of only a single file (as suggested by you - "testMPEG4VideoStreamer < test.m4e", will stream only a single file). Regards, Sumeet Kumar ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From ajaykashyap87 at gmail.com Tue Mar 8 02:01:47 2011 From: ajaykashyap87 at gmail.com (ajay kashyap) Date: Tue, 8 Mar 2011 15:31:47 +0530 Subject: [Live-devel] Compilation Problem Message-ID: hi, am a newbie using this wonderful library. i tried to edit few programs and recomplied them, then i got these errors H264VideoStreamFramer.hh: No such file or directory. .... few others headers were missing i checked all files some of the headers were missing . From finlayson at live555.com Tue Mar 8 05:20:08 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 8 Mar 2011 05:20:08 -0800 Subject: [Live-devel] Compilation Problem In-Reply-To: References: Message-ID: >am a newbie using this wonderful library. >i tried to edit few programs and recomplied them, then i got these errors >H264VideoStreamFramer.hh: No such file or directory. >.... few others headers were missing >i checked all files some of the headers were missing . You must not have downloaded/unpacked a complete archive. (The file "H264VideoStreamFramer.hh" should be in the "liveMedia/include" directory.) The source code archive can be downloaded from http://www.live555.com/liveMedia/public/live555-latest.tar.gz -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Tue Mar 8 05:23:32 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 8 Mar 2011 05:23:32 -0800 Subject: [Live-devel] continuous streaming of m4e media file In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A25B234325C@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A25B234325C@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >I need another suggestion from you. I have multiple files which >needs to be streamed sequentially. >So how do I redirect these multiple files instead of only a single >file (as suggested by you - "testMPEG4VideoStreamer < test.m4e", >will stream only a single file). Yes, you can use the "ByteStreamMultiFileSource" class in place of "ByteStreamFileSource". "ByteStreamMultiFileSource" allows you to read multiple files - one at a time - as if they were a single file. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From kaan.turkyilmaz at birtel.com.tr Tue Mar 8 05:45:29 2011 From: kaan.turkyilmaz at birtel.com.tr (Kaan Turkyilmaz) Date: Tue, 08 Mar 2011 15:45:29 +0200 Subject: [Live-devel] Mpeg2 stream Message-ID: <4D7632F9.3040901@birtel.com.tr> Mpeg2 encoded stream Mpeg2 instead of H.264. Which stream server? (live555 works?) Thanks for your help, -- Kaan -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 8 17:10:37 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 8 Mar 2011 17:10:37 -0800 Subject: [Live-devel] Mpeg2 stream In-Reply-To: <4D7632F9.3040901@birtel.com.tr> References: <4D7632F9.3040901@birtel.com.tr> Message-ID: >Mpeg2 encoded stream Mpeg2 instead of H.264. > >Which stream server? Is this a MPEG-2 Program Stream, a MPEG-2 Transport Stream, a MPEG-2 Video Elementary Stream, or a MPEG-2 Audio Elementary Stream? >(live555 works?) Yes. The details depend upon the type of stream (see above). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sumeet.kumar at hcl.com Tue Mar 8 19:53:02 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Wed, 9 Mar 2011 09:23:02 +0530 Subject: [Live-devel] continuous streaming of m4e media file Message-ID: <7F32C6A46402CD49BA87BC5874370F1A25B23BE02E@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi Ross, In that case do I need to use the redirection operator ("<"). Or should I run the exe, without using the redirection operator. Also I assume that I need to change the "inputFileName" variable to "stdin". Regards, Sumeet Kumar ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 8 20:01:15 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 8 Mar 2011 20:01:15 -0800 Subject: [Live-devel] continuous streaming of m4e media file In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A25B23BE02E@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A25B23BE02E@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >In that case do I need to use the redirection operator ("<") No, the redirection operator names a single file. If you decide to use "ByteStreamMultiFileSource" - which names several files - then you don't use this (or "stdin") at all. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sumeet.kumar at hcl.com Tue Mar 8 20:38:23 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Wed, 9 Mar 2011 10:08:23 +0530 Subject: [Live-devel] continuous streaming of m4e media file Message-ID: <7F32C6A46402CD49BA87BC5874370F1A25B23BE076@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi Ross, My initial problem was that I had to stream a file, which is continuously growing in size. To solve this problem, I had used the redirection operator (testMPEG4VideoStreamer < test.m4e) and changed "inputFileName" (in "testMPEG4VideoStreamer.cpp") to "stdin". But if I have multiple files which are constantly growing in size, then how do I use ByteStreamMultiFileSource class to stream all those files without using the redirection operator? Regards, Sumeet ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Tue Mar 8 20:47:28 2011 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 8 Mar 2011 20:47:28 -0800 Subject: [Live-devel] continuous streaming of m4e media file In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A25B23BE076@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A25B23BE076@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >But if I have multiple files which are constantly growing in size OK, I think I misunderstood your question. I originally thought you were talking about reading from multiple files as if they were concatenated together into a single file. That's what "ByteStreamMultiFileSource" is for. I now realize that you are, instead, talking about having a server that serves multiple streams - each from a separate file that's growing in size. Sorry, but if that's not already working for you, then I don't know how to make it work. Sorry. [This will be my last posting on this topic.] -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From manamgautam at gmail.com Tue Mar 8 21:59:36 2011 From: manamgautam at gmail.com (gautam manam) Date: Wed, 9 Mar 2011 11:29:36 +0530 Subject: [Live-devel] Regarding openRTSP Message-ID: Hi Ross, Does openRTSP support receiving RTP/H264 packets ? If it is ,will it group all NAL units and complete one frame ? And can you help me with the file which recieves and groups all NAL units and completes one H264 frame .. I want to get the grouped H264 frame in a buffer Regards, Gautam. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ajaykashyap87 at gmail.com Tue Mar 8 23:10:28 2011 From: ajaykashyap87 at gmail.com (ajay kashyap) Date: Wed, 9 Mar 2011 12:40:28 +0530 Subject: [Live-devel] Regarding Compilation Message-ID: Hi, This is my second post, am very thankful for the valuable suggestion provided to my first post. I have built the latest version of the live555, i was able to check the test programs which played on vlc. now am not able to edit these programs , Tough all the headers are present in include folders am not able to compile the edited programs. i have pasted the errors here, Pls check and help me. [root at caserver testProgs]# g++ testMP3Streamer.cpp testMP3Streamer.cpp:20:24: liveMedia.hh: No such file or directory testMP3Streamer.cpp:21:30: GroupsockHelper.hh: No such file or directory testMP3Streamer.cpp:23:36: BasicUsageEnvironment.hh: No such file or directory testMP3Streamer.cpp:37: error: expected constructor, destructor, or type conversion before "const" testMP3Streamer.cpp:48: error: expected constructor, destructor, or type conversion before '*' token testMP3Streamer.cpp:53: error: ISO C++ forbids declaration of `FramedSource' with no type testMP3Streamer.cpp:53: error: expected `;' before '*' token testMP3Streamer.cpp:54: error: ISO C++ forbids declaration of `RTPSink' with no type testMP3Streamer.cpp:54: error: expected `;' before '*' token testMP3Streamer.cpp:55: error: ISO C++ forbids declaration of `RTCPInstance' with no type testMP3Streamer.cpp:55: error: expected `;' before '*' token testMP3Streamer.cpp:56: error: ISO C++ forbids declaration of `Groupsock' with no type testMP3Streamer.cpp:56: error: expected `;' before '*' token testMP3Streamer.cpp:57: error: ISO C++ forbids declaration of `Groupsock' with no type testMP3Streamer.cpp:57: error: expected `;' before '*' token testMP3Streamer.cpp: In function `int main(int, char**)': testMP3Streamer.cpp:66: error: `TaskScheduler' was not declared in this scope testMP3Streamer.cpp:66: error: `scheduler' was not declared in this scope testMP3Streamer.cpp:66: error: `BasicTaskScheduler' has not been declared testMP3Streamer.cpp:66: error: `createNew' was not declared in this scope testMP3Streamer.cpp:67: error: `env' was not declared in this scope testMP3Streamer.cpp:67: error: `BasicUsageEnvironment' has not been declared testMP3Streamer.cpp:84: error: aggregate `in_addr destinationAddress' has incomplete type and cannot be defined testMP3Streamer.cpp:85: error: `our_inet_addr' was not declared in this scope testMP3Streamer.cpp:86: error: `Port' does not name a type testMP3Streamer.cpp:87: error: `Port' does not name a type testMP3Streamer.cpp:89: error: 'struct sessionState_t' has no member named 'rtpGroupsock' testMP3Streamer.cpp:90: error: `Groupsock' has not been declared testMP3Streamer.cpp:90: error: `rtpPort' was not declared in this scope testMP3Streamer.cpp:91: error: 'struct sessionState_t' has no member named 'rtcpGroupsock' testMP3Streamer.cpp:92: error: `Groupsock' has not been declared testMP3Streamer.cpp:92: error: `rtcpPort' was not declared in this scope testMP3Streamer.cpp:105: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:106: error: `MPEG1or2AudioRTPSink' has not been declared testMP3Streamer.cpp:106: error: 'struct sessionState_t' has no member named 'rtpGroupsock' testMP3Streamer.cpp:113: error: `gethostname' was not declared in this scope testMP3Streamer.cpp:115: error: 'struct sessionState_t' has no member named 'rtcpInstance' testMP3Streamer.cpp:116: error: `RTCPInstance' has not been declared testMP3Streamer.cpp:116: error: 'struct sessionState_t' has no member named 'rtcpGroupsock' testMP3Streamer.cpp:118: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:118: error: `NULL' was not declared in this scope testMP3Streamer.cpp:119: error: `isSSM' was not declared in this scope testMP3Streamer.cpp: In function `void play()': testMP3Streamer.cpp:152: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:152: error: `MP3FileSource' has not been declared testMP3Streamer.cpp:152: error: `env' was not declared in this scope testMP3Streamer.cpp:152: error: `createNew' was not declared in this scope testMP3Streamer.cpp:153: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:153: error: `NULL' was not declared in this scope testMP3Streamer.cpp:156: error: `exit' was not declared in this scope testMP3Streamer.cpp:185: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:185: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:185: error: `NULL' was not declared in this scope testMP3Streamer.cpp: In function `void afterPlaying(void*)': testMP3Streamer.cpp:190: error: `env' was not declared in this scope testMP3Streamer.cpp:193: error: `Medium' has not been declared testMP3Streamer.cpp:193: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:193: error: `close' was not declared in this scope [root at caserver testProgs] From Bruno.Basilio at brisa.pt Wed Mar 9 01:30:32 2011 From: Bruno.Basilio at brisa.pt (Bruno Filipe Basilio) Date: Wed, 9 Mar 2011 09:30:32 +0000 Subject: [Live-devel] Regarding Compilation Message-ID: <3EC6EEDBCBD4AC4A9FBE5F1F5EEA8619038338@SRVBRIEXC012.brisa.pt> > now am not able to edit these programs , Tough all the headers are > present in include folders am not able to compile the edited programs. > i have pasted the errors here, Pls check and help me. > [root at caserver testProgs]# g++ testMP3Streamer.cpp > testMP3Streamer.cpp:20:24: liveMedia.hh: No such file or directory > testMP3Streamer.cpp:21:30: GroupsockHelper.hh: No such file or directory > testMP3Streamer.cpp:23:36: BasicUsageEnvironment.hh: No such file or directory Bruno Basilio -------------------------------------------------------------------------------- Declara??o: A informa??o contida nesta mensagem, e os ficheiros anexos, ? privilegiada e confidencial, destinando-se exclusivamente ao(s) destinat?rio(s).Se n?o ? o destinat?rio (ou o respons?vel pela sua entrega ao destinat?rio) e recebeu a mesma por engano, fica notificado que ? estritamente proibido reproduzir, guardar ou distribuir toda ou qualquer parte desta mensagem e ficheiros anexos.Por favor reencaminhe a mensagem para o respons?vel pelo seu envio ou contacte-nos por telefone e elimine a mensagem e ficheiros anexos do seu computador,sem os reproduzir. Disclaimer: The information contained in this message, and any files attached, is privileged and confidential, and intended exclusively for the included addresses.If you are not the intended recipient (or the person responsible for delivering to the intended recipient) and received this message by mistake, be aware that copy, storage, distribution or any other use of all or part of this message and the files attached is strictly prohibited. Please notify the sender by reply e-mail or contact us by telephone and delete this message and the files attached, without retaining a copy. -------------------------------------------------------------------------------- From Bruno.Basilio at brisa.pt Wed Mar 9 01:38:00 2011 From: Bruno.Basilio at brisa.pt (Bruno Filipe Basilio) Date: Wed, 9 Mar 2011 09:38:00 +0000 Subject: [Live-devel] Regarding Compilation In-Reply-To: <3EC6EEDBCBD4AC4A9FBE5F1F5EEA8619038338@SRVBRIEXC012.brisa.pt> References: <3EC6EEDBCBD4AC4A9FBE5F1F5EEA8619038338@SRVBRIEXC012.brisa.pt> Message-ID: <3EC6EEDBCBD4AC4A9FBE5F1F5EEA8619038344@SRVBRIEXC012.brisa.pt> Hi, > now am not able to edit these programs , Tough all the headers are > present in include folders am not able to compile the edited programs. > i have pasted the errors here, Pls check and help me. > [root at caserver testProgs]# g++ testMP3Streamer.cpp > testMP3Streamer.cpp:20:24: liveMedia.hh: No such file or directory > testMP3Streamer.cpp:21:30: GroupsockHelper.hh: No such file or directory > testMP3Streamer.cpp:23:36: BasicUsageEnvironment.hh: No such file or directory Have you tried to follow the instructions available in the Live555 site. Please follow one of the examples bellow depending on your platform: http://www.live555.com/liveMedia/#config-unix http://www.live555.com/liveMedia/#config-windows Note the following lines issued by the make command because it's similar to what you need to do/see: c++ -c -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 testMP3Streamer.cpp c++ -otestMP3Streamer -L. testMP3Streamer.o ../liveMedia/libliveMedia.a ../groupsock/libgroupsock.a ../BasicUsageEnvironment/libBasicUsageEnvironment.a ../UsageEnvironment/libUsageEnvironment.a Best regards, Bruno Basilio Sorry for my previous empty response message. -------------------------------------------------------------------------------- Declara??o: A informa??o contida nesta mensagem, e os ficheiros anexos, ? privilegiada e confidencial, destinando-se exclusivamente ao(s) destinat?rio(s).Se n?o ? o destinat?rio (ou o respons?vel pela sua entrega ao destinat?rio) e recebeu a mesma por engano, fica notificado que ? estritamente proibido reproduzir, guardar ou distribuir toda ou qualquer parte desta mensagem e ficheiros anexos.Por favor reencaminhe a mensagem para o respons?vel pelo seu envio ou contacte-nos por telefone e elimine a mensagem e ficheiros anexos do seu computador,sem os reproduzir. Disclaimer: The information contained in this message, and any files attached, is privileged and confidential, and intended exclusively for the included addresses.If you are not the intended recipient (or the person responsible for delivering to the intended recipient) and received this message by mistake, be aware that copy, storage, distribution or any other use of all or part of this message and the files attached is strictly prohibited. Please notify the sender by reply e-mail or contact us by telephone and delete this message and the files attached, without retaining a copy. -------------------------------------------------------------------------------- From satram at juniper.net Wed Mar 9 01:52:56 2011 From: satram at juniper.net (satheesh Ramalingam) Date: Wed, 9 Mar 2011 15:22:56 +0530 Subject: [Live-devel] Regarding Compilation In-Reply-To: References: Message-ID: Hi, Have you read the how-to compile guide ? http://www.live555.com/liveMedia/#config-unix -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of ajay kashyap Sent: Wednesday, March 09, 2011 12:40 PM To: live-devel Subject: [Live-devel] Regarding Compilation Hi, This is my second post, am very thankful for the valuable suggestion provided to my first post. I have built the latest version of the live555, i was able to check the test programs which played on vlc. now am not able to edit these programs , Tough all the headers are present in include folders am not able to compile the edited programs. i have pasted the errors here, Pls check and help me. [root at caserver testProgs]# g++ testMP3Streamer.cpp testMP3Streamer.cpp:20:24: liveMedia.hh: No such file or directory testMP3Streamer.cpp:21:30: GroupsockHelper.hh: No such file or directory testMP3Streamer.cpp:23:36: BasicUsageEnvironment.hh: No such file or directory testMP3Streamer.cpp:37: error: expected constructor, destructor, or type conversion before "const" testMP3Streamer.cpp:48: error: expected constructor, destructor, or type conversion before '*' token testMP3Streamer.cpp:53: error: ISO C++ forbids declaration of `FramedSource' with no type testMP3Streamer.cpp:53: error: expected `;' before '*' token testMP3Streamer.cpp:54: error: ISO C++ forbids declaration of `RTPSink' with no type testMP3Streamer.cpp:54: error: expected `;' before '*' token testMP3Streamer.cpp:55: error: ISO C++ forbids declaration of `RTCPInstance' with no type testMP3Streamer.cpp:55: error: expected `;' before '*' token testMP3Streamer.cpp:56: error: ISO C++ forbids declaration of `Groupsock' with no type testMP3Streamer.cpp:56: error: expected `;' before '*' token testMP3Streamer.cpp:57: error: ISO C++ forbids declaration of `Groupsock' with no type testMP3Streamer.cpp:57: error: expected `;' before '*' token testMP3Streamer.cpp: In function `int main(int, char**)': testMP3Streamer.cpp:66: error: `TaskScheduler' was not declared in this scope testMP3Streamer.cpp:66: error: `scheduler' was not declared in this scope testMP3Streamer.cpp:66: error: `BasicTaskScheduler' has not been declared testMP3Streamer.cpp:66: error: `createNew' was not declared in this scope testMP3Streamer.cpp:67: error: `env' was not declared in this scope testMP3Streamer.cpp:67: error: `BasicUsageEnvironment' has not been declared testMP3Streamer.cpp:84: error: aggregate `in_addr destinationAddress' has incomplete type and cannot be defined testMP3Streamer.cpp:85: error: `our_inet_addr' was not declared in this scope testMP3Streamer.cpp:86: error: `Port' does not name a type testMP3Streamer.cpp:87: error: `Port' does not name a type testMP3Streamer.cpp:89: error: 'struct sessionState_t' has no member named 'rtpGroupsock' testMP3Streamer.cpp:90: error: `Groupsock' has not been declared testMP3Streamer.cpp:90: error: `rtpPort' was not declared in this scope testMP3Streamer.cpp:91: error: 'struct sessionState_t' has no member named 'rtcpGroupsock' testMP3Streamer.cpp:92: error: `Groupsock' has not been declared testMP3Streamer.cpp:92: error: `rtcpPort' was not declared in this scope testMP3Streamer.cpp:105: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:106: error: `MPEG1or2AudioRTPSink' has not been declared testMP3Streamer.cpp:106: error: 'struct sessionState_t' has no member named 'rtpGroupsock' testMP3Streamer.cpp:113: error: `gethostname' was not declared in this scope testMP3Streamer.cpp:115: error: 'struct sessionState_t' has no member named 'rtcpInstance' testMP3Streamer.cpp:116: error: `RTCPInstance' has not been declared testMP3Streamer.cpp:116: error: 'struct sessionState_t' has no member named 'rtcpGroupsock' testMP3Streamer.cpp:118: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:118: error: `NULL' was not declared in this scope testMP3Streamer.cpp:119: error: `isSSM' was not declared in this scope testMP3Streamer.cpp: In function `void play()': testMP3Streamer.cpp:152: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:152: error: `MP3FileSource' has not been declared testMP3Streamer.cpp:152: error: `env' was not declared in this scope testMP3Streamer.cpp:152: error: `createNew' was not declared in this scope testMP3Streamer.cpp:153: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:153: error: `NULL' was not declared in this scope testMP3Streamer.cpp:156: error: `exit' was not declared in this scope testMP3Streamer.cpp:185: error: 'struct sessionState_t' has no member named 'sink' testMP3Streamer.cpp:185: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:185: error: `NULL' was not declared in this scope testMP3Streamer.cpp: In function `void afterPlaying(void*)': testMP3Streamer.cpp:190: error: `env' was not declared in this scope testMP3Streamer.cpp:193: error: `Medium' has not been declared testMP3Streamer.cpp:193: error: 'struct sessionState_t' has no member named 'source' testMP3Streamer.cpp:193: error: `close' was not declared in this scope [root at caserver testProgs] _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From manamgautam at gmail.com Thu Mar 10 04:15:13 2011 From: manamgautam at gmail.com (gautam manam) Date: Thu, 10 Mar 2011 17:45:13 +0530 Subject: [Live-devel] Live555 + H264 receiving Message-ID: Hi, Does openRTSP can give h264 frames into buffer instead of writing into files. Can live555 groups NAL packets from rtp and make complete H264 frame or it just removes rtp header and gives h264 slices What exactly is it doing in H264VideoRTPSource.cpp ? And can any one explain me the data flow once rtsp client starts recieving data My understanding openRTSP -> MultiframedSource[removes RTP header] -> FramedSource [dont know ]-> H264VideoRTPSource[dont know ] -> H264FileSink[Adds start code ,SPS,PPS ] -> FileSink Waiting for Reply ....... Thnx Gautam -------------- next part -------------- An HTML attachment was scrubbed... URL: From qlscdsl at gmail.com Thu Mar 10 04:40:58 2011 From: qlscdsl at gmail.com (tcdsl tcdsl) Date: Thu, 10 Mar 2011 20:40:58 +0800 Subject: [Live-devel] Does live555 support MVC stream? Message-ID: Hello everyone. I have seen lots of files in liveMedia. If I want to transport a MVC stream, which class can I use? Does live555 support MVC stream? And AVC stream? -------------- next part -------------- An HTML attachment was scrubbed... URL: From Sebastiaan.Heunis at uec.co.za Thu Mar 10 04:45:39 2011 From: Sebastiaan.Heunis at uec.co.za (Sebastiaan Heunis) Date: Thu, 10 Mar 2011 14:45:39 +0200 Subject: [Live-devel] RTSP client on STB. Message-ID: <3D449D873A728A4BB0FA28943BB1FA6C8CF08B23F7@ueczaex01.uectech.net> Good day everyone. I'm trying to get RTSP going on a set-top box using the liveMedia libraries. What I've so far managed to do is the following: -Using one PC with VLC as an RTSP server, I have managed to open and play an RTSP H264 video stream on another PC. -Using one PC with VLC as an RTSP server, I have managed to issue the sendOptionsCmd() and describeURL() commands from the STB. I have also successfully read the replies from the server and everything seems correct. Now I need access to the H264 stream sent via RTP. I then need to pass this stream (after stripping off the RTP header) to a decoder on the STB. How do I do this? From my understanding, I should be able to read from the RTP groupsock to a buffer? I have tried doing this after issuing rtspClient->playMediaSession(*rtspMediaSession) (this command returned successfully). I used rtpGroupsock->handleRead() to attempt to do this, but no data is read. Can anyone please point me in the right direction. Thank you in advance. Regards, Sebastiaan Sebastiaan Heunis Research & Development - Platforms UEC Cape Town Design Centre Altech UEC (Pty) Ltd 8th Floor, LG Building, 1 Thibault Square Cape Town, South Africa +27 (0) 21 425 5700 (direct) +27 (0) 72 950 9370 (mobile) +27 (0) 21 425 5688 (fax) sebastiaan.heunis at uec.co.za www.uec.co.za Leading Technologies: Touching Lives -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 10 06:58:55 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 10 Mar 2011 06:58:55 -0800 Subject: [Live-devel] RTSP client on STB. In-Reply-To: <3D449D873A728A4BB0FA28943BB1FA6C8CF08B23F7@ueczaex01.uectech.net> References: <3D449D873A728A4BB0FA28943BB1FA6C8CF08B23F7@ueczaex01.uectech.net> Message-ID: >-Using one PC with VLC as an RTSP server, I have managed to open and >play an RTSP H264 video stream on another PC. >-Using one PC with VLC as an RTSP server, I have managed to issue >the sendOptionsCmd() and describeURL() commands from the STB. I have >also successfully read the replies from the server and everything >seems correct. > >Now I need access to the H264 stream sent via RTP. I then need to >pass this stream (after stripping off the RTP header) to a decoder >on the STB. How do I do this? Look at the "openRTSP" code (in "testProgs/playCommon.cpp" and "testProgs/openRTSP.cpp") as a model. First, you should really be using the asynchronous "RTSPClient" interface, rather than the old, deprecated synchronous interface. I.e., you should really be calling "sendOptionsCommand()" (not "sendOptionsCmd()") and "sendDescribeCommand()" (not "describeURL()"). Then, after you have a SDP description (from calling "sendDescribeCommand()"), you use this to create a "MediaSession" object, then iterate through its subsessions, calling "MediaSubsession::initiate()" on each. (This creates the "*RTPSource" objects that will receive network data.) You then send the RTSP "SETUP" and "PLAY" commands, by calling "sendSetupCommand()" and "sendPlayCommand()". Now you're ready to start receiving data. You do this by 1/ Creating a 'sink' object (a subclass of "MediaSink") that will receive and process the data. (Unless you simply want to write the data into a file, this is something that you would write yourself.) Then, 2/ Call yourSinkObject->startPlaying(*(subsession->readSource()), ...); to begin the flow of data within your application. (Once again, I suggest using the "openRTSP" code as a model.) Note, by the way, that you should *not* access the "Groupsock" objects directly. (They objects are used behind the scenes.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From chris at kwista.com Thu Mar 10 11:12:05 2011 From: chris at kwista.com (Chris London) Date: Thu, 10 Mar 2011 12:12:05 -0700 Subject: [Live-devel] Including Live555 in iPhone app Message-ID: Hey All, This is my first time posting. I'm trying to include Live555 in an iPhone app. Firstly I compiled Live555 using the config.iphoneos. I then created an Xcode project and the ONLY thing I did was to #import . Here's the .h file: #import #import @interface NimbusAppDelegate : NSObject { UIWindow *window; } @property (nonatomic, retain) IBOutlet UIWindow *window; @end I believe I have included all the dependencies correctly. The problem is I'm getting this error: error: conflicting types for 'Boolean' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/include/MacTypes.h:300: error: previous declaration of 'Boolean' was here I'm not sure how to overcome this error. The following is the full build log: Build Nimbus of project Nimbus with configuration Debug ProcessPCH /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Nimbus_Prefix-ggklyssfzzzjmrbvxmtxfaibnrpq/Nimbus_Prefix.pch.gch Nimbus_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 cd "/Users/chrislondon/iPhone Apps/Nimbus" setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=4.2 -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-generated-files.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-own-target-headers.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-all-target-headers.hmap" -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-project-headers.hmap" "-F/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphoneos" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphoneos/include" -I/usr/lib/live/UsageEnvironment/include -I/usr/lib/live/groupsock/include -I/usr/lib/live/liveMedia/include -I/usr/lib/live/BasicUsageEnvironment/include "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/DerivedSources/armv6" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/DerivedSources" -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -I. -DBSD=1 -O2 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fPIC -arch armv7 --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -c "/Users/chrislondon/iPhone Apps/Nimbus/Nimbus_Prefix.pch" -o /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Nimbus_Prefix-ggklyssfzzzjmrbvxmtxfaibnrpq/Nimbus_Prefix.pch.gch lipo: can't figure out the architecture type of: /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Tmp-//ccbh49Wc.out Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1 CompileC build/Nimbus.build/Debug-iphoneos/Nimbus.build/Objects-normal/armv7/NimbusAppDelegate.o Classes/NimbusAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 cd "/Users/chrislondon/iPhone Apps/Nimbus" setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=4.2 -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-generated-files.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-own-target-headers.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-all-target-headers.hmap" -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Nimbus-project-headers.hmap" "-F/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphoneos" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphoneos/include" -I/usr/lib/live/UsageEnvironment/include -I/usr/lib/live/groupsock/include -I/usr/lib/live/liveMedia/include -I/usr/lib/live/BasicUsageEnvironment/include "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/DerivedSources/armv7" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/DerivedSources" -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -I. -DBSD=1 -O2 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fPIC -arch armv7 --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -include /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Nimbus_Prefix-gqqzrudfjslypwfeqsxwxqrzpcbm/Nimbus_Prefix.pch -c "/Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m" -o "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphoneos/Nimbus.build/Objects-normal/armv7/NimbusAppDelegate.o" In file included from /usr/lib/live/liveMedia/include/Media.hh:29, from /usr/lib/live/liveMedia/include/MediaSource.hh:25, from /usr/lib/live/liveMedia/include/FramedSource.hh:28, from /usr/lib/live/liveMedia/include/MediaSink.hh:25, from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/UsageEnvironment/include/Boolean.hh:24: error: conflicting types for 'Boolean' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/include/MacTypes.h:300: error: previous declaration of 'Boolean' was here In file included from /usr/lib/live/liveMedia/include/Media.hh:33, from /usr/lib/live/liveMedia/include/MediaSource.hh:25, from /usr/lib/live/liveMedia/include/FramedSource.hh:28, from /usr/lib/live/liveMedia/include/MediaSink.hh:25, from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/UsageEnvironment/include/UsageEnvironment.hh:49: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TaskScheduler' /usr/lib/live/UsageEnvironment/include/UsageEnvironment.hh:53: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'UsageEnvironment' /usr/lib/live/UsageEnvironment/include/UsageEnvironment.hh:105: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TaskScheduler' In file included from /usr/lib/live/liveMedia/include/MediaSource.hh:25, from /usr/lib/live/liveMedia/include/FramedSource.hh:28, from /usr/lib/live/liveMedia/include/MediaSink.hh:25, from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/Media.hh:50: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Medium' /usr/lib/live/liveMedia/include/Media.hh:89: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_Tables' In file included from /usr/lib/live/liveMedia/include/FramedSource.hh:28, from /usr/lib/live/liveMedia/include/MediaSink.hh:25, from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MediaSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSource' In file included from /usr/lib/live/liveMedia/include/MediaSink.hh:25, from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/FramedSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'FramedSource' In file included from /usr/lib/live/liveMedia/include/RTPSink.hh:25, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MediaSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSink' /usr/lib/live/liveMedia/include/MediaSink.hh:70: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OutPacketBuffer' In file included from /usr/lib/live/groupsock/include/NetAddress.hh:25, from /usr/lib/live/groupsock/include/NetInterface.hh:25, from /usr/lib/live/groupsock/include/Groupsock.hh:29, from /usr/lib/live/liveMedia/include/RTPInterface.hh:30, from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/UsageEnvironment/include/HashTable.hh:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'HashTable' In file included from /usr/lib/live/groupsock/include/NetInterface.hh:25, from /usr/lib/live/groupsock/include/Groupsock.hh:29, from /usr/lib/live/liveMedia/include/RTPInterface.hh:30, from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/groupsock/include/NetAddress.hh:41: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NetAddress' /usr/lib/live/groupsock/include/NetAddress.hh:62: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NetAddressList' /usr/lib/live/groupsock/include/NetAddress.hh:94: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Port' /usr/lib/live/groupsock/include/NetAddress.hh:108: error: expected '=', ',', ';', 'asm' or '__attribute__' before '&' token /usr/lib/live/groupsock/include/NetAddress.hh:112: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AddressPortLookupTable' In file included from /usr/lib/live/groupsock/include/Groupsock.hh:29, from /usr/lib/live/liveMedia/include/RTPInterface.hh:30, from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/groupsock/include/NetInterface.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NetInterface' /usr/lib/live/groupsock/include/NetInterface.hh:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DirectedNetInterface' /usr/lib/live/groupsock/include/NetInterface.hh:52: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DirectedNetInterfaceSet' /usr/lib/live/groupsock/include/NetInterface.hh:80: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Socket' /usr/lib/live/groupsock/include/NetInterface.hh:110: error: expected '=', ',', ';', 'asm' or '__attribute__' before '&' token /usr/lib/live/groupsock/include/NetInterface.hh:114: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SocketLookupTable' /usr/lib/live/groupsock/include/NetInterface.hh:132: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NetInterfaceTrafficStats' In file included from /usr/lib/live/groupsock/include/Groupsock.hh:33, from /usr/lib/live/liveMedia/include/RTPInterface.hh:30, from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/groupsock/include/GroupEId.hh:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Scope' /usr/lib/live/groupsock/include/GroupEId.hh:56: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'GroupEId' In file included from /usr/lib/live/liveMedia/include/RTPInterface.hh:30, from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/groupsock/include/Groupsock.hh:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OutputSocket' /usr/lib/live/groupsock/include/Groupsock.hh:62: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'destRecord' /usr/lib/live/groupsock/include/Groupsock.hh:78: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Groupsock' /usr/lib/live/groupsock/include/Groupsock.hh:158: error: expected '=', ',', ';', 'asm' or '__attribute__' before '&' token /usr/lib/live/groupsock/include/Groupsock.hh:162: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'GroupsockLookupTable' In file included from /usr/lib/live/liveMedia/include/RTPSink.hh:28, from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTPInterface.hh:43: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'tcpStreamRecord' /usr/lib/live/liveMedia/include/RTPInterface.hh:55: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPInterface' In file included from /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:26, from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTPSink.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPTransmissionStatsDB' /usr/lib/live/liveMedia/include/RTPSink.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPSink' /usr/lib/live/liveMedia/include/RTPSink.hh:125: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPTransmissionStats' /usr/lib/live/liveMedia/include/RTPSink.hh:127: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPTransmissionStatsDB' /usr/lib/live/liveMedia/include/RTPSink.hh:168: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPTransmissionStats' In file included from /usr/lib/live/liveMedia/include/AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MultiFramedRTPSink.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MultiFramedRTPSink' In file included from /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AudioRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:27, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2AudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:28, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3ADURTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADURTPSink' In file included from /usr/lib/live/liveMedia/include/MPEG1or2VideoRTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:29, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/VideoRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'VideoRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:29, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:30, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4ESVideoRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4ESVideoRTPSink' In file included from /usr/lib/live/liveMedia/include/AMRAudioFileSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:31, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/FileSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'FileSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:31, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioFileSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioFileSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:32, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoFileSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoFileSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:33, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/BasicUDPSink.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BasicUDPSink' In file included from /usr/lib/live/liveMedia/include/MPEG1or2VideoHTTPSink.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:34, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/HTTPSink.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'HTTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:34, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoHTTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoHTTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:35, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/GSMAudioRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'GSMAudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:36, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H263plusVideoRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H263plusVideoRTPSink' In file included from /usr/lib/live/liveMedia/include/H264VideoRTPSink.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:37, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/FramedFilter.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'FramedFilter' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:37, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoRTPSink.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264FUAFragmenter' /usr/lib/live/liveMedia/include/H264VideoRTPSink.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoRTPSink' /usr/lib/live/liveMedia/include/H264VideoRTPSink.hh:78: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264FUAFragmenter' In file included from /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:26, from /usr/lib/live/liveMedia/include/DVVideoRTPSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:38, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTPSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPReceptionStatsDB' /usr/lib/live/liveMedia/include/RTPSource.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPSource' /usr/lib/live/liveMedia/include/RTPSource.hh:110: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPReceptionStats' /usr/lib/live/liveMedia/include/RTPSource.hh:112: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPReceptionStatsDB' /usr/lib/live/liveMedia/include/RTPSource.hh:171: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTPReceptionStats' In file included from /usr/lib/live/liveMedia/include/DVVideoRTPSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:38, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BufferedPacket' /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BufferedPacketFactory' /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MultiFramedRTPSource' /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:86: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BufferedPacket' /usr/lib/live/liveMedia/include/MultiFramedRTPSource.hh:150: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BufferedPacketFactory' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:38, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DVVideoRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DVVideoRTPSource' In file included from /usr/lib/live/liveMedia/include/DVVideoRTPSink.hh:29, from /usr/lib/live/liveMedia/include/liveMedia.hh:39, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DVVideoStreamFramer.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DVVideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:39, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DVVideoRTPSink.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DVVideoRTPSink' In file included from /usr/lib/live/liveMedia/include/H264VideoStreamFramer.hh:25, from /usr/lib/live/liveMedia/include/H264VideoStreamDiscreteFramer.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:41, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEGVideoStreamFramer.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TimeCode' /usr/lib/live/liveMedia/include/MPEGVideoStreamFramer.hh:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEGVideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/H264VideoStreamDiscreteFramer.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:41, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoStreamFramer.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:41, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoStreamDiscreteFramer.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoStreamDiscreteFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:42, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/JPEGVideoRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'JPEGVideoRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:43, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/SimpleRTPSink.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SimpleRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:44, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/uLawAudioFilter.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'uLawFromPCMAudioSource' /usr/lib/live/liveMedia/include/uLawAudioFilter.hh:68: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PCMFromuLawAudioSource' /usr/lib/live/liveMedia/include/uLawAudioFilter.hh:101: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NetworkFromHostOrder16' /usr/lib/live/liveMedia/include/uLawAudioFilter.hh:129: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'HostFromNetworkOrder16' /usr/lib/live/liveMedia/include/uLawAudioFilter.hh:157: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'EndianSwap16' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:45, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2IndexFromTransportStream.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'IndexRecord' /usr/lib/live/liveMedia/include/MPEG2IndexFromTransportStream.hh:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2IFrameIndexFromTransportStream' In file included from /usr/lib/live/liveMedia/include/MPEG2TransportStreamTrickModeFilter.hh:31, from /usr/lib/live/liveMedia/include/liveMedia.hh:46, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamIndexFile.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamIndexFile' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:46, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamTrickModeFilter.hh:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamTrickModeFilter' In file included from /usr/lib/live/liveMedia/include/ByteStreamFileSource.hh:25, from /usr/lib/live/liveMedia/include/ByteStreamMultiFileSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:47, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/FramedFileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'FramedFileSource' In file included from /usr/lib/live/liveMedia/include/ByteStreamMultiFileSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:47, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/ByteStreamFileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ByteStreamFileSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:47, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/ByteStreamMultiFileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ByteStreamMultiFileSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:48, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/BasicUDPSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BasicUDPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:49, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/SimpleRTPSource.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SimpleRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:50, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2AudioRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2AudioRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:51, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4LATMAudioRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4LATMAudioRTPSource' /usr/lib/live/liveMedia/include/MPEG4LATMAudioRTPSource.hh:65: error: expected ';', ',' or ')' before '&' token /usr/lib/live/liveMedia/include/MPEG4LATMAudioRTPSource.hh:90: error: expected ';', ',' or ')' before '&' token /usr/lib/live/liveMedia/include/MPEG4LATMAudioRTPSource.hh:97: error: expected ';', ',' or ')' before '&' token In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:52, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4LATMAudioRTPSink.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4LATMAudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:53, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4ESVideoRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4ESVideoRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:54, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4GenericRTPSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4GenericRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:55, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3ADURTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADURTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:56, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/QCELPAudioRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'QCELPAudioRTPSource' In file included from /usr/lib/live/liveMedia/include/AMRAudioRTPSource.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:57, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:57, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioRTPSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:58, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/JPEGVideoRTPSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'JPEGVideoRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:59, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/JPEGVideoSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'JPEGVideoSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:60, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoRTPSource' In file included from /usr/lib/live/liveMedia/include/MPEG2TransportStreamMultiplexor.hh:29, from /usr/lib/live/liveMedia/include/MPEG2TransportStreamFromPESSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:61, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2Demux.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2DemuxedElementaryStream' /usr/lib/live/liveMedia/include/MPEG1or2Demux.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2Demux' In file included from /usr/lib/live/liveMedia/include/MPEG2TransportStreamFromPESSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:61, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamMultiplexor.hh:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamMultiplexor' In file included from /usr/lib/live/liveMedia/include/MPEG2TransportStreamFromPESSource.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:61, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2DemuxedElementaryStream.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2DemuxedElementaryStream' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:61, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamFromPESSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamFromPESSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:62, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamFromESSource.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamFromESSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:63, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportStreamFramer.hh:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:64, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/ADTSAudioFileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ADTSAudioFileSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:65, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H261VideoRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H261VideoRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:66, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H263plusVideoRTPSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H263plusVideoRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:67, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoRTPSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoRTPSource' /usr/lib/live/liveMedia/include/H264VideoRTPSource.hh:56: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SPropRecord' /usr/lib/live/liveMedia/include/H264VideoRTPSource.hh:64: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token In file included from /usr/lib/live/liveMedia/include/MP3HTTPSource.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:68, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3FileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3StreamState' /usr/lib/live/liveMedia/include/MP3FileSource.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3FileSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:68, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3HTTPSource.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3HTTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:69, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3ADU.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ADUFromMP3Source' /usr/lib/live/liveMedia/include/MP3ADU.hh:66: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3FromADUSource' /usr/lib/live/liveMedia/include/MP3ADU.hh:96: error: expected identifier or '(' before string constant In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:70, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3ADUinterleaving.hh:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Interleaving' /usr/lib/live/liveMedia/include/MP3ADUinterleaving.hh:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADUinterleaverBase' /usr/lib/live/liveMedia/include/MP3ADUinterleaving.hh:69: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADUinterleaver' /usr/lib/live/liveMedia/include/MP3ADUinterleaving.hh:102: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADUdeinterleaver' In file included from /usr/lib/live/liveMedia/include/MP3Transcoder.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:71, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3ADUTranscoder.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3ADUTranscoder' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:71, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3Transcoder.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3Transcoder' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:73, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2AudioStreamFramer.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2AudioStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:74, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H263plusVideoStreamFramer.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H263plusVideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:75, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AC3AudioStreamFramer.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AC3AudioStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:76, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AC3AudioRTPSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AC3AudioRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:77, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AC3AudioRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AC3AudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:78, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4GenericRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4GenericRTPSink' In file included from /usr/lib/live/liveMedia/include/MPEG1or2VideoStreamDiscreteFramer.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:79, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoStreamFramer.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:79, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoStreamDiscreteFramer.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoStreamDiscreteFramer' In file included from /usr/lib/live/liveMedia/include/MPEG4VideoStreamDiscreteFramer.hh:28, from /usr/lib/live/liveMedia/include/liveMedia.hh:80, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4VideoStreamFramer.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4VideoStreamFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:80, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4VideoStreamDiscreteFramer.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4VideoStreamDiscreteFramer' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:81, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DeviceSource.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DeviceParameters' /usr/lib/live/liveMedia/include/DeviceSource.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DeviceSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:82, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AudioInputDevice.hh:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AudioPortNames' /usr/lib/live/liveMedia/include/AudioInputDevice.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AudioInputDevice' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:83, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/WAVAudioFileSource.hh:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'WAVAudioFileSource' In file included from /usr/lib/live/liveMedia/include/RTSPServer.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:84, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/ServerMediaSession.hh:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ServerMediaSubsession' /usr/lib/live/liveMedia/include/ServerMediaSession.hh:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ServerMediaSession' /usr/lib/live/liveMedia/include/ServerMediaSession.hh:100: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ServerMediaSubsessionIterator' /usr/lib/live/liveMedia/include/ServerMediaSession.hh:114: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/RTSPServer.hh:31, from /usr/lib/live/liveMedia/include/liveMedia.hh:84, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DigestAuthentication.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Authenticator' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:84, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTSPServer.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'UserAuthenticationDatabase' /usr/lib/live/liveMedia/include/RTSPServer.hh:62: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTSPServer' In file included from /usr/lib/live/liveMedia/include/MediaSession.hh:28, from /usr/lib/live/liveMedia/include/RTSPClient.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:85, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTCP.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SDESItem' /usr/lib/live/liveMedia/include/RTCP.hh:42: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTCPMemberDatabase' /usr/lib/live/liveMedia/include/RTCP.hh:44: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTCPInstance' In file included from /usr/lib/live/liveMedia/include/RTSPClient.hh:25, from /usr/lib/live/liveMedia/include/liveMedia.hh:85, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MediaSession.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSubsession' /usr/lib/live/liveMedia/include/MediaSession.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSession' /usr/lib/live/liveMedia/include/MediaSession.hh:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSubsessionIterator' /usr/lib/live/liveMedia/include/MediaSession.hh:118: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:85, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/RTSPClient.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RTSPClient' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:86, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/SIPClient.hh:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SIPClient' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:87, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/QuickTimeFileSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'QuickTimeFileSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:88, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/QuickTimeGenericRTPSource.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'QuickTimeGenericRTPSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:89, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AVIFileSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AVIFileSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:90, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/PassiveServerMediaSubsession.hh:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PassiveServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/FileServerMediaSubsession.hh:26, from /usr/lib/live/liveMedia/include/MPEG4VideoFileServerMediaSubsession.hh:26, from /usr/lib/live/liveMedia/include/liveMedia.hh:91, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/OnDemandServerMediaSubsession.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OnDemandServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/MPEG4VideoFileServerMediaSubsession.hh:26, from /usr/lib/live/liveMedia/include/liveMedia.hh:91, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/FileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'FileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:91, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG4VideoFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG4VideoFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:92, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H264VideoFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H264VideoFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:93, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/WAVAudioFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'WAVAudioFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:94, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:95, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioFileSource.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioFileSource' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:96, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/AMRAudioRTPSink.hh:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'AMRAudioRTPSink' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:97, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MP3AudioFileServerMediaSubsession.hh:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MP3AudioFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:98, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2VideoFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2VideoFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:99, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG1or2FileServerDemux.hh:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG1or2FileServerDemux' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:100, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/MPEG2TransportFileServerMediaSubsession.hh:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ClientTrickPlayState' /usr/lib/live/liveMedia/include/MPEG2TransportFileServerMediaSubsession.hh:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MPEG2TransportFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:101, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/H263plusVideoFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'H263plusVideoFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:102, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/ADTSAudioFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ADTSAudioFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:103, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DVVideoFileServerMediaSubsession.hh:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DVVideoFileServerMediaSubsession' In file included from /usr/lib/live/liveMedia/include/liveMedia.hh:104, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.h:11, from /Users/chrislondon/iPhone Apps/Nimbus/Classes/NimbusAppDelegate.m:9: /usr/lib/live/liveMedia/include/DarwinInjector.hh:55: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SubstreamDescriptor' /usr/lib/live/liveMedia/include/DarwinInjector.hh:57: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'DarwinInjector' Also a side question. Is it possible to run on the simulator? It looks like the simulator is missing: /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1 Build Nimbus of project Nimbus with configuration Debug ProcessPCH /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Nimbus_Prefix-edvduwufmzqnpcdqsurpsipmmtqn/Nimbus_Prefix.pch.gch Nimbus_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 cd "/Users/chrislondon/iPhone Apps/Nimbus" setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/Nimbus-generated-files.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/Nimbus-own-target-headers.hmap" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/Nimbus-all-target-headers.hmap" -iquote "/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/Nimbus-project-headers.hmap" "-F/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphonesimulator" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Debug-iphonesimulator/include" -I/usr/lib/live/UsageEnvironment/include -I/usr/lib/live/groupsock/include -I/usr/lib/live/liveMedia/include -I/usr/lib/live/BasicUsageEnvironment/include "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/DerivedSources/i386" "-I/Users/chrislondon/iPhone Apps/Nimbus/build/Nimbus.build/Debug-iphonesimulator/Nimbus.build/DerivedSources" -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -I. -DBSD=1 -O2 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fPIC -arch armv7 --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -c "/Users/chrislondon/iPhone Apps/Nimbus/Nimbus_Prefix.pch" -o /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Nimbus_Prefix-edvduwufmzqnpcdqsurpsipmmtqn/Nimbus_Prefix.pch.gch gcc-4.2: error trying to exec '/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1': execvp: No such file or directory lipo: can't figure out the architecture type of: /var/folders/3i/3iERWcjYGH8Z4Ss-afA9m++++TI/-Tmp-//ccjls5b0.out Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 failed with exit code 255 Chris London CTO - Kwista, LLC. chris at kwista.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Thu Mar 10 15:03:32 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 10 Mar 2011 15:03:32 -0800 Subject: [Live-devel] Including Live555 in iPhone app In-Reply-To: References: Message-ID: >Hey All, This is my first time posting. I'm trying to include >Live555 in an iPhone app. Firstly I compiled Live555 using the >config.iphoneos. I then created an Xcode project and the ONLY thing >I did was to #import . Can C++ header files (like "liveMedia.hh") even be included in Objective-C projects?? (I'm not personally familiar with iPhone development; I'm just curious about whether/how C++ code (like ours) can be used...) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From matt at schuckmannacres.com Thu Mar 10 15:20:30 2011 From: matt at schuckmannacres.com (Matt Schuckmannn) Date: Thu, 10 Mar 2011 15:20:30 -0800 Subject: [Live-devel] Including Live555 in iPhone app In-Reply-To: References: Message-ID: <4D795CBE.8040904@schuckmannacres.com> FYI it is possible. I've had a demo application using Live555 running on the iPhone and iPad for quite some time. Sadly it's just been a pet project and I haven't had time to release it or even document how I got it all going. As I recall it wasn't that hard, I think I ended up using Objective-C++ classes as an interface between the Live555 C++ interfaces and the rest of the Objective-C COCA stuff. Matt S. On 3/10/2011 3:03 PM, Ross Finlayson wrote: >> Hey All, This is my first time posting. I'm trying to include >> Live555 in an iPhone app. Firstly I compiled Live555 using the >> config.iphoneos. I then created an Xcode project and the ONLY thing >> I did was to #import . > > Can C++ header files (like "liveMedia.hh") even be included in > Objective-C projects?? > > (I'm not personally familiar with iPhone development; I'm just curious > about whether/how C++ code (like ours) can be used...) > From ivan.alen at uclouvain.be Fri Mar 11 06:36:12 2011 From: ivan.alen at uclouvain.be (Ivan Alen Fernandez) Date: Fri, 11 Mar 2011 15:36:12 +0100 Subject: [Live-devel] Streaming multiphe consecutive MPEG-4 files (.m4e) Message-ID: <9dacd238219bfb2202a745e6e88b5d5f.squirrel@mmp.sipr-dc.ucl.ac.be> Hello, i am working in a project with the live555 library and our target is to stablish a rtsp channel with a player that request the video clips asocciated to a playlist. What i want to do is at the very beginning of the communication to process this playlist which includes all the files to be played and include then in the structures of the class ByteStreamMultiFileSource to be played all consecutively in one shot without needing any extra interaction. Can anyone help to me where to implement this code so that reading the file, the videos to play are inserted in the object of this class and they start to be played in order from the first one? Thanks a lot in advance for all your help Best regards, Ivan From finlayson at live555.com Fri Mar 11 14:01:11 2011 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 11 Mar 2011 14:01:11 -0800 Subject: [Live-devel] Streaming multiphe consecutive MPEG-4 files (.m4e) In-Reply-To: <9dacd238219bfb2202a745e6e88b5d5f.squirrel@mmp.sipr-dc.ucl.ac.be> References: <9dacd238219bfb2202a745e6e88b5d5f.squirrel@mmp.sipr-dc.ucl.ac.be> Message-ID: >Hello, i am working in a project with the live555 library and our target >is to stablish a rtsp channel with a player that request the video clips >asocciated to a playlist. >What i want to do is at the very beginning of the communication to process >this playlist which includes all the files to be played and include then >in the structures of the class ByteStreamMultiFileSource to be played all >consecutively in one shot without needing any extra interaction. > >Can anyone help to me where to implement this code so that reading the >file, the videos to play are inserted in the object of this class and they >start to be played in order from the first one? It wasn't totally clear from your question, but I'm assuming that you're asking how to implement a RTSP *server* that reads from multiple files, while streaming to clients as if the data came from a single source. To do this, you will need to write your own "ServerMediaSubsession" subclass - similar to the existing "MPEG4VideoFileServerMediaSubsession" class - that implements the "createNewStreamSource()" virtual function by creating a "ByteStreamMultiFileSource" instead of a "ByteStreamFileSource". To create a "ByteStreamMultiFileSource", you call "ByteStreamMultiFileSource::createNew()", passing it a parameter "char const** fileNameArray". (See "liveMedia/include/ByteStreamMultiFileSource.hh") The "fileNameArray" parameter is a pointer to an array of file names, ending with NULL. For example, if you have a playlist "filename1","filename2","filename3", you'd create "fileNameArray" as follows: char const** fileNameArray = new char const*[4]; fileNameArray[0] = "filename1"; fileNameArray[1] = "filename2"; fileNameArray[2] = "filename3"; fileNameArray[3] = NULL; -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From manukranthk at gmail.com Fri Mar 11 22:37:21 2011 From: manukranthk at gmail.com (Manu Kranth Chary) Date: Sat, 12 Mar 2011 12:07:21 +0530 Subject: [Live-devel] Need Help regarding RTSP interface In-Reply-To: References: Message-ID: Hello, I am an undergrad doing a course in Computer Networks . As a part of the project we are supposed to implement a simple VOD system for MPEG file format. We planned to use RTSP for this purpose. I found that live555 has implemented RTSP also. I tried to read the documentation on the site, but got lost in it. Could you please help me how I could use the RTSP interface implemented in your library. Or give a direction how I could start understanding your library. Thanking you. Manukranth, 3rd year, B.E.(Hons.) CSE, BITS-Pilani. -- Manukranth, 3rd year, B.E.(Hons.) CSE, BITS-Pilani. From finlayson at live555.com Sat Mar 12 00:36:34 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 12 Mar 2011 00:36:34 -0800 Subject: [Live-devel] Need Help regarding RTSP interface In-Reply-To: References: Message-ID: At 12:07 PM +0530 3/12/11, manukranthk at gmail.com wrote: >I am an undergrad doing a course in Computer Networks . Does your school not have its own domain name? :-) >As a part of the project we are supposed to implement a simple VOD >system for MPEG file format. >We planned to use RTSP for this purpose. >I found that live555 has implemented RTSP also. >I tried to read the documentation on the site, but got lost in it. >Could you please help me how I could use the RTSP interface >implemented in your library. >Or give a direction how I could start understanding your library. You should start by reading the FAQ: http://www.live555.com/liveMedia/faq.html To help understand how RTSP clients are implemented, look at the "openRTSP" source code (in "testProgs/playCommon.cpp" and "testProgs/openRTSP.cpp"). To help understand how RTSP servers are implemented, look at the code for the "testOnDemandRTSPServer" demo application. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Sun Mar 13 23:34:56 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Sun, 13 Mar 2011 23:34:56 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: I can't change the size of the named pipe buffer since my app runs on iPhone iOS. Changing BANK_SIZE makes no difference - VLC player starts playing the stream, then pauses for 3-5 seconds, then plays again and the pattern continuous. What else would you recommend? Thanks. On Sun, Mar 6, 2011 at 4:52 PM, Ross Finlayson wrote: > I am trying to make Live555 work with live video source. My H263 encoder > writes encoded frames to Unix named pipe (FIFO) with a rate of 15 fps*.* I > created a RTSPServer instance, ServerMediaSession and added > a H263plusVideoFileServerMediaSubsession (reuseFirstSource=True), passing > the FIFO file name as the subsession parameter. > > > VLC and/or QuickTime player start playing the stream, then repeatedly > freeze for several seconds, then play again. However, everything works fine > if I stream pre-recoded H.263 encoded elementary stream from file (without > using named pipe). Is this happening when RTSPServer is getting EOF while > trying to read the data from the pipe? > > > No, it's most likely because the server is trying to read more data from > the pipe than is currently available, so the operating system is blocking > the reading server until the other end (the encoder) makes enough data > available. > > One way to fix this is to - if you can - increase the internal (i.e., OS) > buffering in your named pipe. Our server tries to read up to 150000 bytes > at a time (the constant BANK_SIZE in "StreamParser.cpp"), so you should try > to make the pipe's buffer at least this large. > > Alternatively - if you can't increase the amount of buffering in your pipe > - you could try reducing the value of the constant BANK_SIZE in > "StreamParser.cpp". You should not make this too small, though; it needs to > be at least as large as the largest possible H.263 frame that you expect to > see. > I don't recommend doing this except as a last resort, though, because it > requires modifying the supplied source 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 > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 14 00:03:39 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 00:03:39 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >I can't change the size of the named pipe buffer since my app runs >on iPhone iOS. > >Changing BANK_SIZE makes no difference - VLC player starts playing >the stream, then pauses for 3-5 seconds, then plays again and the >pattern continuous. > >What else would you recommend? Implement your own "FramedSource" subclass to encapsulate your H.263 encoder, and use this (instead of a "ByteStreamFileSource") to deliver H.263 video data into your "H263plusVideoStreamFramer" object. For a model of how to do this, see the "DeviceSource" code. (Once again, this is assuming that your CPU+encoder is powerful enough to generate H.263 frames in 'real time'. If that's not true, then you're screwed no matter what :-) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Mon Mar 14 10:19:04 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Mon, 14 Mar 2011 10:19:04 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Ross, My encoder outputs one encoded frame at a time and I need to pass this data to H263plusVideoRTPSink. Do I need to use H263plusVideoStreamFramer? Thanks. On Mon, Mar 14, 2011 at 12:03 AM, Ross Finlayson wrote: > I can't change the size of the named pipe buffer since my app runs on >> iPhone iOS. >> >> Changing BANK_SIZE makes no difference - VLC player starts playing the >> stream, then pauses for 3-5 seconds, then plays again and the pattern >> continuous. >> >> What else would you recommend? >> > > Implement your own "FramedSource" subclass to encapsulate your H.263 > encoder, and use this (instead of a "ByteStreamFileSource") to deliver H.263 > video data into your "H263plusVideoStreamFramer" object. > > For a model of how to do this, see the "DeviceSource" code. > > (Once again, this is assuming that your CPU+encoder is powerful enough to > generate H.263 frames in 'real time'. If that's not true, then you're > screwed no matter what :-) > > -- > > 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 arkady at etring.com Mon Mar 14 12:41:42 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Mon, 14 Mar 2011 12:41:42 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Ross, I am trying to run testH263VideoStreamer (modified testH264VideoStreamer for H263 stream) on iOS and I am getting the following error when it tries to read from the existing file (named pipes are not used): BasicTaskScheduler::SingleStep(): select() fails: Bad file descriptor What am I doing wrong? On Mon, Mar 14, 2011 at 12:03 AM, Ross Finlayson wrote: > I can't change the size of the named pipe buffer since my app runs on >> iPhone iOS. >> >> Changing BANK_SIZE makes no difference - VLC player starts playing the >> stream, then pauses for 3-5 seconds, then plays again and the pattern >> continuous. >> >> What else would you recommend? >> > > Implement your own "FramedSource" subclass to encapsulate your H.263 > encoder, and use this (instead of a "ByteStreamFileSource") to deliver H.263 > video data into your "H263plusVideoStreamFramer" object. > > For a model of how to do this, see the "DeviceSource" code. > > (Once again, this is assuming that your CPU+encoder is powerful enough to > generate H.263 frames in 'real time'. If that's not true, then you're > screwed no matter what :-) > > -- > > 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 rafael.madeira at idea-ip.com Mon Mar 14 15:59:12 2011 From: rafael.madeira at idea-ip.com (Rafael Madeira) Date: Mon, 14 Mar 2011 19:59:12 -0300 Subject: [Live-devel] Replacing reading from file by reading from buffer Message-ID: Hi, I'm achieving some level of success in using LIVE555 as a library for my C application until now. The goal is live streaming TS (Transport Stream with H264 video and AAC audio) direct from my application to VLC client. But i believe some changes must be done because the program i'm using as example (testMPEG2TransportStreamer.cpp) read the TS from a file and now the data which must be streamed will arrive by internal buffers. How tell to live 555 library to read from some buffer directly instead from a file? Reagards, -- Att, Rafael Madeira Idea! Electronic Systems www.idea-ip.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From Eric.Bopp at schneider-electric.com Mon Mar 14 10:02:10 2011 From: Eric.Bopp at schneider-electric.com (Bopp, Eric) Date: Mon, 14 Mar 2011 10:02:10 -0700 Subject: [Live-devel] "/" not allowed in streamName? Message-ID: Hello, In a message to this list from about 5 years ago it is stated that forward slashes are not allowed in the streamName name because they are used for selecting individual substreams. I am interested to know if this is still the case. Also it if it is, I would like to know where I can find more information about how forward slashes are used to select individual substreams. Here's a link to the message I am referring to: http://lists.live555.com/pipermail/live-devel/2006-September/005062.html Thank you, Eric Bopp ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 14 16:53:49 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 16:53:49 -0700 Subject: [Live-devel] "/" not allowed in streamName? In-Reply-To: References: Message-ID: >In a message to this list from about 5 years ago it is stated that >forward slashes are not allowed in the streamName name because they >are used for selecting individual substreams. I am interested to >know if this is still the case. Yes I think so. The "streamName" parameter in "ServerMediaSession::createNew()" should not contain a "/" character. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren at etr-usa.com Mon Mar 14 17:16:30 2011 From: warren at etr-usa.com (Warren Young) Date: Mon, 14 Mar 2011 18:16:30 -0600 Subject: [Live-devel] "/" not allowed in streamName? In-Reply-To: References: Message-ID: <4D7EAFDE.5080905@etr-usa.com> On 3/14/2011 11:02 AM, Bopp, Eric wrote: > > I am interested to know if > this is still the case. Yes. > I would like to know where I > can find more information about how forward slashes are used to select > individual substreams. parseRTSPRequestString() in liveMedia/RTSPCommon.cpp I happen to know this because deep down on my wishlist is factoring RTSP URL parsing out into a class that a liblivemedia user could override to change this behavior. The RTSP RFC doesn't tell you what anything past the slash separating the host parts from the path parts means. So, the current behavior is correct, and the behavior you desire instead is correct, too. There just needs to be a way to have it both ways. From finlayson at live555.com Mon Mar 14 17:30:44 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 17:30:44 -0700 Subject: [Live-devel] Replacing reading from file by reading from buffer In-Reply-To: References: Message-ID: >I'm achieving some level of success in using LIVE555 as a library >for my C application until now. The goal is live streaming TS >(Transport Stream with H264 video and AAC audio) direct from my >application to VLC client. > >But i believe some changes must be done because the program i'm >using as example (testMPEG2TransportStreamer.cpp) read the TS from a >file and now the data which must be streamed will arrive by internal >buffers. > >How tell to live 555 library to read from some buffer directly >instead from a file? See http://www.live555.com/liveMedia/faq.html#liveInput -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Mon Mar 14 17:37:13 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 17:37:13 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >My encoder outputs one encoded frame at a time and I need to pass >this data to H263plusVideoRTPSink. Do I need to use >H263plusVideoStreamFramer? No, in this case you should be able to feed your encoder object directly into your "H263plusVideoRTPSink". Note, however, that your encoder object *must* set proper "fPresentationTime" and "fDurationInMicroseconds" values for each frame that you deliver. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Mon Mar 14 17:39:11 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 17:39:11 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >BasicTaskScheduler::SingleStep(): select() fails: Bad file descriptor That error usually means that you've closed a socket (or open file, which is a socket in Unix) inappropriately. I.e., you've closed a socket, without deleting the "groupsock" or "ByteStreamFileSource" (e.g.) object that encapsulates it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Mon Mar 14 19:59:13 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Mon, 14 Mar 2011 19:59:13 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Thanks. Do I need to return "new" H263plusVideoRTPSink instance (instead of framer) from createNewStreamSource? How do I create it? FramedSource* MyH263plusVideoMediaSubsession ::createNewStreamSource(unsigned /*clientSessionId*/, unsigned& estBitrate) { estBitrate = 500; // kbps, estimate ?? // Create the video source: mySource = DeviceSource::createNew(envir(), this); if (mySource == NULL) return NULL; // Create a framer for the Video Elementary Stream: return H263plusVideoStreamFramer::createNew(envir(), mySource); } On Mon, Mar 14, 2011 at 5:37 PM, Ross Finlayson wrote: > My encoder outputs one encoded frame at a time and I need to pass this data >> to H263plusVideoRTPSink. Do I need to use H263plusVideoStreamFramer? >> > > No, in this case you should be able to feed your encoder object directly > into your "H263plusVideoRTPSink". Note, however, that your encoder object > *must* set proper "fPresentationTime" and "fDurationInMicroseconds" values > for each frame that you deliver. > > -- > > 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 Mon Mar 14 20:39:34 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 20:39:34 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >Thanks. Do I need to return "new" H263plusVideoRTPSink instance >(instead of framer) from createNewStreamSource? No, your implementation of the "createNewStreamSource()" virtual function would return an instance of your 'encoder' class. Your implementation of the "createNewRTPSink()" virtual function would return an instance of "H263plusVideoRTPSink", just by calling H263plusVideoRTPSink::createNew( ... ); As I noted earlier, you should not need to deal with "H263plusVideoStreamFramer" at all. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Mon Mar 14 22:18:34 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Mon, 14 Mar 2011 22:18:34 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Is this correct that my 'encoder' class must implement the following functions: // redefined virtual functions: virtual void doGetNextFrame(); virtual void doStopGettingFrames(); On Mon, Mar 14, 2011 at 8:39 PM, Ross Finlayson wrote: > Thanks. Do I need to return "new" H263plusVideoRTPSink instance (instead of >> framer) from createNewStreamSource? >> > > No, your implementation of the "createNewStreamSource()" virtual function > would return an instance of your 'encoder' class. > > Your implementation of the "createNewRTPSink()" virtual function would > return an instance of "H263plusVideoRTPSink", just by calling > H263plusVideoRTPSink::createNew( ... ); > > As I noted earlier, you should not need to deal with > "H263plusVideoStreamFramer" at all. > > -- > > 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 Mon Mar 14 22:40:38 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 14 Mar 2011 22:40:38 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >Is this correct that my 'encoder' class must implement the following >functions: > > // redefined virtual functions: > virtual void doGetNextFrame(); > virtual void doStopGettingFrames(); Your encoder class must implement "doGetNextFrame()" (note that this is a pure virtual function in "FramedSource"); see "DeviceSource.cpp" for a model of how to do this. It may also, but does not need to, implement "doStopGettingFrames()". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From arkady at etring.com Tue Mar 15 21:25:55 2011 From: arkady at etring.com (Arkady Erlikhman) Date: Tue, 15 Mar 2011 21:25:55 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: Ross, I made some progress with the DeviceSource but run into the following problem: Everything seems to be working if in doGetNextFrame() there is a new encoded data that is fed to H263plusVideoRTPSink. But, once there is no data available, then isCurrentlyAwaitingData() always returns FALSE. As a result, no frames a being delivered after doGetNextFrame() doesn't deliver any data. What is the way to resolve this? Regards. On Mon, Mar 14, 2011 at 10:40 PM, Ross Finlayson wrote: > Is this correct that my 'encoder' class must implement the following >> functions: >> >> // redefined virtual functions: >> virtual void doGetNextFrame(); >> virtual void doStopGettingFrames(); >> > > Your encoder class must implement "doGetNextFrame()" (note that this is a > pure virtual function in "FramedSource"); see "DeviceSource.cpp" for a model > of how to do this. It may also, but does not need to, implement > "doStopGettingFrames()". > > -- > > 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 realjobe2000 at yahoo.com Tue Mar 15 23:45:20 2011 From: realjobe2000 at yahoo.com (Jobe Lawn) Date: Tue, 15 Mar 2011 23:45:20 -0700 (PDT) Subject: [Live-devel] LIVE555 Media Server Message-ID: <155883.39268.qm@web161708.mail.bf1.yahoo.com> Hi there. (I just want to make my bid / suggestion about LIVE555 Media Server). ? Server work great, no problem there. The point is how can I change the port? Now it seems to be 8544 or similar. ? - Can the port be altered as user wants? - Can rtsp be focred to use TCP (firewalls prevents a lot udp...), because client does not request it. - Can in later release this be used in conjuction with VLC so that VLC transcodes and published the output to locahost: rtp stream, LIVE555 Media Server reads that soceket and produces the proper RTSP (tcp) stream in wanted port.. ? That would be a great resolver.. ? thank you. ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren at etr-usa.com Wed Mar 16 04:48:42 2011 From: warren at etr-usa.com (Warren Young) Date: Wed, 16 Mar 2011 05:48:42 -0600 Subject: [Live-devel] LIVE555 Media Server In-Reply-To: <155883.39268.qm@web161708.mail.bf1.yahoo.com> References: <155883.39268.qm@web161708.mail.bf1.yahoo.com> Message-ID: <4D80A39A.2040206@etr-usa.com> On 3/16/2011 12:45 AM, Jobe Lawn wrote: > how can I change the port? Change the code. It's about a dozen lines down in the main() function of the live555MediaServer program. > - Can in later release this be used in conjuction with VLC so that VLC > transcodes and published the output to locahost: rtp stream, LIVE555 > Media Server reads that soceket and produces the proper RTSP (tcp) > stream in wanted port.. If you're happy using VLC in a server role, why not just use VLM? From rafael.madeira at idea-ip.com Wed Mar 16 10:19:38 2011 From: rafael.madeira at idea-ip.com (Rafael Madeira) Date: Wed, 16 Mar 2011 14:19:38 -0300 Subject: [Live-devel] Replacing reading from file by reading from buffer In-Reply-To: References: Message-ID: Hi, Ross maybe i was unclear about my point. Until now, i can compile my application with C and C++ sources. So, i'm able to copy the "testOnDemandRTSPServer.cpp" code to my application. I want do that to turn the thread responsible for send the TS generated data (in mu app) in a RTSP server and avoid using unamed pipes ( which are very little robust and controled by SO). My sender thread receives in a "infinite" loop data being generated by other thread (capture, video, audio, etc...) and my goal is make the server read this data and send to the RTSP client (VLC). I notice the server reads from a open (by fopen) file and i think i should change this to read direct from the buffers my sender thread constanlty receives. I'm right?? Tanks, On Mon, Mar 14, 2011 at 9:30 PM, Ross Finlayson wrote: > I'm achieving some level of success in using LIVE555 as a library for my C >> application until now. The goal is live streaming TS (Transport Stream with >> H264 video and AAC audio) direct from my application to VLC client. >> >> But i believe some changes must be done because the program i'm using as >> example (testMPEG2TransportStreamer.cpp) read the TS from a file and now the >> data which must be streamed will arrive by internal buffers. >> >> How tell to live 555 library to read from some buffer directly instead >> from a file? >> > > See http://www.live555.com/liveMedia/faq.html#liveInput > -- > > 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 > -- Att, Rafael Madeira Idea! Electronic Systems www.idea-ip.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From rafael.madeira at idea-ip.com Wed Mar 16 11:03:55 2011 From: rafael.madeira at idea-ip.com (Rafael Madeira) Date: Wed, 16 Mar 2011 15:03:55 -0300 Subject: [Live-devel] Replacing reading from file by reading from buffer In-Reply-To: References: Message-ID: Other point, Is imperative have the line "env->taskScheduler().doEventLoop();" enabled to keep server streaming? Apparently this avoid start the server and keep processing the resto of the source code. Without this line, VLC returns "main input error: open of 'rtsp:// 10.0.0.49:8554/mpeg2TransportStreamTest' failed: (null) " It's possible starts the server and keep processing? Tanks, On Wed, Mar 16, 2011 at 2:19 PM, Rafael Madeira wrote: > Hi, Ross > > maybe i was unclear about my point. > > Until now, i can compile my application with C and C++ sources. So, i'm > able to copy the "testOnDemandRTSPServer.cpp" code to my application. > > I want do that to turn the thread responsible for send the TS generated > data (in mu app) in a RTSP server and avoid using unamed pipes ( which are > very little robust and controled by SO). > > My sender thread receives in a "infinite" loop data being generated by > other thread (capture, video, audio, etc...) and my goal is make the server > read this data and send to the RTSP client (VLC). > > I notice the server reads from a open (by fopen) file and i think i should > change this to read direct from the buffers my sender thread constanlty > receives. > > I'm right?? > > Tanks, > > On Mon, Mar 14, 2011 at 9:30 PM, Ross Finlayson wrote: > >> I'm achieving some level of success in using LIVE555 as a library for my >>> C application until now. The goal is live streaming TS (Transport Stream >>> with H264 video and AAC audio) direct from my application to VLC client. >>> >>> But i believe some changes must be done because the program i'm using as >>> example (testMPEG2TransportStreamer.cpp) read the TS from a file and now the >>> data which must be streamed will arrive by internal buffers. >>> >>> How tell to live 555 library to read from some buffer directly instead >>> from a file? >>> >> >> See http://www.live555.com/liveMedia/faq.html#liveInput >> -- >> >> 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 >> > > > > -- > Att, > > Rafael Madeira > Idea! Electronic Systems > www.idea-ip.com > -- Att, Rafael Madeira Idea! Electronic Systems www.idea-ip.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From realjobe2000 at yahoo.com Wed Mar 16 05:56:34 2011 From: realjobe2000 at yahoo.com (Jobe Lawn) Date: Wed, 16 Mar 2011 05:56:34 -0700 (PDT) Subject: [Live-devel] LIVE555 Media Server In-Reply-To: <4D80A39A.2040206@etr-usa.com> Message-ID: <620435.75646.qm@web161714.mail.bf1.yahoo.com> Hi there. Thanx for the reply... well,, I'm just plain user not a coder, so I was wondering if there is some commandLine params to alter the behivour... ? VLC can't produce good RTSP output that's why I'm seeking alternative solution to publish h264 livestream to Mobile phone thgough various networks.? server - 3G - phone works with VLC because UDP will go through. Server (lan) - WAN - LAN (phone) does not. Therefore RTSP inside TCP is needed. :) VLM? ? --- On Wed, 3/16/11, Warren Young wrote: From: Warren Young Subject: Re: [Live-devel] LIVE555 Media Server To: "LIVE555 Streaming Media - development & use" Date: Wednesday, March 16, 2011, 12:48 PM On 3/16/2011 12:45 AM, Jobe Lawn wrote: > how can I change the port? Change the code.? It's about a dozen lines down in the main() function of the live555MediaServer program. > - Can in later release this be used in conjuction with VLC so that VLC > transcodes and published the output to locahost: rtp stream, LIVE555 > Media Server reads that soceket and produces the proper RTSP (tcp) > stream in wanted port.. If you're happy using VLC in a server role, why not just use VLM? _______________________________________________ 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 16 18:32:20 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 16 Mar 2011 18:32:20 -0700 Subject: [Live-devel] LIVE555 Media Server In-Reply-To: <155883.39268.qm@web161708.mail.bf1.yahoo.com> References: <155883.39268.qm@web161708.mail.bf1.yahoo.com> Message-ID: >Hi there. (I just want to make my bid / suggestion about LIVE555 >Media Server). > >Server work great, no problem there. The point is how can I change >the port? Now it seems to be 8544 or similar. The only way to change the port number is to modify and recompile the application's source code. Note, however, that the current code first tries to use port number 554 (the default port number for RTSP, meaning that it can be omitted from "rtsp://" URLs), and then - only if that fails - uses port number 8554. On Unix systems (including Linux), port number 554 (being less than 1024) can be used only by applications running as "root". Therefore, if you want the existing "LIVE555 Media Server" application to use port number 554, then you can do so by running it as "root". >- Can rtsp be focred to use TCP (firewalls prevents a lot udp...), >because client does not request it. No. In the RTSP protocol it is up to the client to choose what kind of streaming (UDP or TCP) is requested. The server can only deliver what the client requests. However, many media players - including VLC - will automatically 'fall back' to requesting TCP streaming if no response is heard from UDP streaming within a short period of time. >- Can in later release this be used in conjuction with VLC so that >VLC transcodes and published the output to locahost: rtp stream, >LIVE555 Media Server reads that soceket and produces the proper RTSP >(tcp) stream in wanted port.. I don't really understand this question, unfortunately - but I suspect that the answer is "no", because VLC is not our software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 17 01:29:28 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 17 Mar 2011 01:29:28 -0700 Subject: [Live-devel] Replacing reading from file by reading from buffer In-Reply-To: References: Message-ID: >I notice the server reads from a open (by fopen) file and i think i >should change this to read direct from the buffers my sender thread >constanlty receives. > >I'm right?? Yes, that should work. As I said before, see http://www.live555.com/liveMedia/faq.html#liveInput for guidance. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 17 01:31:18 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 17 Mar 2011 01:31:18 -0700 Subject: [Live-devel] Replacing reading from file by reading from buffer In-Reply-To: References: Message-ID: >Is imperative have the line "env->taskScheduler().doEventLoop();" >enabled to keep server streaming? Yes! LIVE555 applications use an event loop, and operate in response to events that are handled within the loop. To write such an application, you need to be familiar with the concept of event-driven programming. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Thu Mar 17 01:50:15 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 17 Mar 2011 01:50:15 -0700 Subject: [Live-devel] streaming live H263 video In-Reply-To: References: Message-ID: >I made some progress with the DeviceSource but run into the following problem: > >Everything seems to be working if in doGetNextFrame() there is a new >encoded data that is fed to H263plusVideoRTPSink. But, once there is >no data available, then isCurrentlyAwaitingData() always returns >FALSE. That makes no sense, because (in the "DeviceSource" code) "isCurrentlyAwaitingData()" is called from the "deliverFrame()" function, and that function should be called only when new data *is* available. >What is the way to resolve this? I suggest reviewing the "DeviceSource" code once again, to better understand how it works. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From warren at etr-usa.com Thu Mar 17 07:48:28 2011 From: warren at etr-usa.com (Warren Young) Date: Thu, 17 Mar 2011 08:48:28 -0600 Subject: [Live-devel] LIVE555 Media Server In-Reply-To: <620435.75646.qm@web161714.mail.bf1.yahoo.com> References: <620435.75646.qm@web161714.mail.bf1.yahoo.com> Message-ID: <4D821F3C.9090806@etr-usa.com> On 3/16/2011 6:56 AM, Jobe Lawn wrote: > > well,, I'm just plain user not a coder, Live555 is a C++ code library first and foremost. > I was wondering if there is > some commandLine params to alter the behivour... Nope. live555MediaServer totally ignores parameters passed on the command line currently. One could change it, if one were a programmer. There's no better way to learn how to program than having a project that forces you to learn in order to complete it. Live555 is a very deep pool to dive into, but adding a command line parser to live555MediaServer would be a fine first project. man 3 getopt. > VLC can't produce good RTSP output VLC relies on Live555 to do RTSP, so if VLC can't do a thing, Live555 probably can't do it either, out of the box at least. > VLM? http://www.videolan.org/doc/streaming-howto/en/ch05.html From finlayson at live555.com Thu Mar 17 21:06:59 2011 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 17 Mar 2011 21:06:59 -0700 Subject: [Live-devel] LIVE555 Media Server In-Reply-To: <4D821F3C.9090806@etr-usa.com> References: <620435.75646.qm@web161714.mail.bf1.yahoo.com> <4D821F3C.9090806@etr-usa.com> Message-ID: >>VLC can't produce good RTSP output > >VLC relies on Live555 to do RTSP FYI, VLC uses the "LIVE555 Streaming Media" code only when it's a RTSP *client*. Its RTSP server implementation uses its own, built-in server code. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From ee05154 at fe.up.pt Fri Mar 18 17:37:51 2011 From: ee05154 at fe.up.pt (ee05154) Date: Sat, 19 Mar 2011 00:37:51 +0000 Subject: [Live-devel] Media Server Message-ID: <628531b10a03b46abfb84b9e8d1929c5@fe.up.pt> Hi, i've been developing a media server using live555 media server. I'm using two threads now, one running the media server the other running a SSL server. I'm a little bit confused. I added a ServerMediaSession(with lookupServerMediaSession) with the test.ts file and later removed it. For some reason when i test this url again, the server runs createNewSMS again, and creates the mediasession! Is this me or is it checking again if there's any file with that name? Maybe this is how it is supposed to be. But i thougth i had to load with lookup and remove and it would work. Can anyone point out where i can turn off this behaviour so only i can control this!? Regards, Nuno Mota From kevin631012 at yahoo.com.tw Fri Mar 18 23:50:03 2011 From: kevin631012 at yahoo.com.tw (kevin631012) Date: Sat, 19 Mar 2011 14:50:03 +0800 (CST) Subject: [Live-devel] use openRTSP to record stream Message-ID: <406854.51061.qm@web74219.mail.tp2.yahoo.com> Hi All, I find a RTSP stream over internet as following rtsp://64.202.98.91:554/sa.sdp so , I use openRTSP to record stream . openRTSP rtsp://64.202.98.91:554/sa.sdp file audio-MP4A-LATM-1 is created but doesn't receive any date from RTSP server . do I do anything wrong ? following is log message ... Created receiver for "audio/MP4A-LATM" subsession (client ports 39958-39959) Sending request: SETUP rtsp://64.202.98.91:554/sa.sdp/trackID=1 RTSP/1.0 CSeq: 4 User-Agent: ./openRTSP (LIVE555 Streaming Media v2011.03.14) Transport: RTP/AVP;unicast;client_port=39958-39959 Received 319 new bytes of response data. Received a complete SETUP response: RTSP/1.0 200 OK Server: DSS/5.5 (Build/489.7; Platform/Linux; Release/Darwin; ) Cseq: 4 Cache-Control: no-cache Session: 3737394569345844655 Date: Sat, 19 Mar 2011 06:31:50 GMT Expires: Sat, 19 Mar 2011 06:31:50 GMT Transport: RTP/AVP;unicast;source=64.202.98.91;client_port=39958-39959;server_po rt=6970-6971 Setup "audio/MP4A-LATM" subsession (client ports 39958-39959) Created output file: "audio-MP4A-LATM-1" Sending request: PLAY rtsp://64.202.98.91:554/sa.sdp/ RTSP/1.0 CSeq: 5 User-Agent: ./openRTSP (LIVE555 Streaming Media v2011.03.14) Session: 3737394569345844655 Range: npt=0.000- Received 196 new bytes of response data. Received a complete PLAY response: RTSP/1.0 200 OK Server: DSS/5.5 (Build/489.7; Platform/Linux; Release/Darwin; ) Cseq: 5 Session: 3737394569345844655 Range: npt=now- RTP-Info: url=rtsp://64.202.98.91:554/sa.sdp/trackID=1 Started playing session Receiving streamed data (signal with "kill -HUP 26314" or "kill -USR1 26314" to terminate)... ... Thanks Kevin ... From finlayson at live555.com Sat Mar 19 15:22:24 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 19 Mar 2011 15:22:24 -0700 Subject: [Live-devel] Media Server In-Reply-To: <628531b10a03b46abfb84b9e8d1929c5@fe.up.pt> References: <628531b10a03b46abfb84b9e8d1929c5@fe.up.pt> Message-ID: >i've been developing a media server using live555 media server. I'm >using two threads now, one running the media server the other >running a SSL server. I'm a little bit confused. I added a >ServerMediaSession(with lookupServerMediaSession) with the test.ts >file and later removed it. For some reason when i test this url >again, the server runs createNewSMS again, and creates the >mediasession! Is this me or is it checking again if there's any file >with that name? Yes, that's the way that the "LIVE555 Media Server" is supposed to work: It automatically allows clients to stream from any file that's present in the same directory as the server, regardless of whether or not a "ServerMediaSession" object has already been created for the file. (If no such "ServerMediaSession" object already exists, then the server will automatically create one.) That's why the "LIVE555 Media Server" uses the "DynamicRTSPServer" class (which is a subclass of the regular "RTSPServer" class that has been programmed specifically for this behavior). Instead, if you want direct control over which streams can be played (by controlling which "ServerMediaSession" objects are present in the server), then you should use the "RTSPServer" class, rather than the "DynamicRTSPServer" class. Note, for example, the "testOnDemandRTSPServer" demo application. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Sat Mar 19 15:34:47 2011 From: finlayson at live555.com (Ross Finlayson) Date: Sat, 19 Mar 2011 15:34:47 -0700 Subject: [Live-devel] use openRTSP to record stream In-Reply-To: <406854.51061.qm@web74219.mail.tp2.yahoo.com> References: <406854.51061.qm@web74219.mail.tp2.yahoo.com> Message-ID: >Hi All, >I find a RTSP stream over internet as following >rtsp://64.202.98.91:554/sa.sdp >so , I use openRTSP to record stream . >openRTSP rtsp://64.202.98.91:554/sa.sdp >file audio-MP4A-LATM-1 is created but doesn't receive any date from >RTSP server . >do I do anything wrong ? Yes, you didn't read the FAQ (which you were asked to do before posting to the mailing list :-) See http://www.live555.com/liveMedia/faq.html#openRTSP-empty-files -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From ee05154 at fe.up.pt Sat Mar 19 16:12:15 2011 From: ee05154 at fe.up.pt (ee05154) Date: Sat, 19 Mar 2011 23:12:15 +0000 Subject: [Live-devel] Media Server Message-ID: <7ff07ea76e0de3301f6171ff464fb9ba@fe.up.pt> I'll use RTSPServer instead. As it says MediaServer i thought it was a good startup Server implementation, but this dynamic behavior is not exactly what i want. Thanks for the input. Keep up the great work with the liveMedia. Best Regards, Nuno Mota From live555 at timshackleton.com Mon Mar 21 16:04:30 2011 From: live555 at timshackleton.com (Tim J Shackleton) Date: Tue, 22 Mar 2011 12:04:30 +1300 Subject: [Live-devel] Play out PCR from gettimeofday rather than source stream? Message-ID: <2CC0ABCE10BB4046BAF801CC32CDA66F@telstraclear.tclad> Hi, I have created a modified version of testMPEG2TransportStreamer which will play out a carousel of SPTS files to a multicast address - and it works extremely well.... except.. The problem that I have encountered is that the output stream contains PCR information from the input source source files, so when one file closes and the next starts playout, PCR does a time-warp back to zero. The net effect of this is attached set-top boxes attempt to adapt however (and I'm guessing here) they pixellate a second or two after the transition and I assume this is because they are playing out their buffer and then briefly panic because something weird has happened to the PCR. So my bright idea was to rather than play out the PCR from the source file, replace it with a PCR derived from gettimeofday. I realise the PCR playout timing might be a little bumpy at transition from one source file to another, however so long as the PCR isn't time warping, I think the mux chain and STBs will cope. I see that timeNow is already stood up in in MPEG2TransportStreamFramer.cpp - is there a quick and dirty way to insert PCR based on this time, at time of playout, rather than pass through the source PCR? Thanks and regards, Tim Shackleton -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Mon Mar 21 17:00:29 2011 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 21 Mar 2011 17:00:29 -0700 Subject: [Live-devel] Play out PCR from gettimeofday rather than source stream? In-Reply-To: <2CC0ABCE10BB4046BAF801CC32CDA66F@telstraclear.tclad> References: <2CC0ABCE10BB4046BAF801CC32CDA66F@telstraclear.tclad> Message-ID: >I see that timeNow is already stood up in in >MPEG2TransportStreamFramer.cpp - is there a quick and dirty way >to insert PCR based on this time, at time of playout, rather than >pass through the source PCR? No, not really, and this is a bad idea anyway. The PCR values that were inserted in the files at the time that they were encoded will always be more accurate (and better for decoders to use) than values derived from 'gettimeofday()'. Instead, you should make sure that your TS files have the 'discontinuity_indicator' flag set at the start. Our "MPEG2TransportStreamFramer" code recognizes this flag, as should the decoder in your STB. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From sumeet.kumar at hcl.com Tue Mar 22 22:35:01 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Wed, 23 Mar 2011 11:05:01 +0530 Subject: [Live-devel] testMPEG1or2AudioVideoStreamer Muticasting with server and client on internet Message-ID: <7F32C6A46402CD49BA87BC5874370F1A29FE63426C@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi, Is it possible that I can perform multicasting with testMPEG1or2AudioVideoStreamer with my client and streaming server on internet (i.e. on different networks) Regards, Sumeet Kumar ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From sumeet.kumar at hcl.com Wed Mar 23 00:19:39 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Wed, 23 Mar 2011 12:49:39 +0530 Subject: [Live-devel] Modifying the test*Streamer program to use unicast Message-ID: <7F32C6A46402CD49BA87BC5874370F1A29FE5A83D6@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> An HTML attachment was scrubbed... URL: From kevin631012 at yahoo.com.tw Wed Mar 23 00:12:51 2011 From: kevin631012 at yahoo.com.tw (kevin631012) Date: Wed, 23 Mar 2011 15:12:51 +0800 (CST) Subject: [Live-devel] particular implementation (subclass) Message-ID: <746286.35980.qm@web74203.mail.tp2.yahoo.com> Hi All, when I study live555 , I have some questions . some classes like Hashtable be defined in HashTable.hh as following . class HashTable { public: virtual ~HashTable(); // The following must be implemented by a particular // implementation (subclass): static HashTable* create(int keyType); .. class Iterator { public: // The following must be implemented by a particular // implementation (subclass): static Iterator* create(HashTable& hashTable); }; .. protected: HashTable(); // abstract base class }; where functions , " static HashTable* create(int keyType) and static Iterator* create(HashTable& hashTable) " are implemented ? I am not familiar with CPP . it looks like constructor but Im not sure and I can't find it in any cpp code . please tell me what these are ? any hints will be helpful ~ Thanks Kevin ... From finlayson at live555.com Wed Mar 23 00:36:38 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 00:36:38 -0700 Subject: [Live-devel] Modifying the test*Streamer program to use unicast In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A29FE5A83D6@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A29FE5A83D6@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >As per the FAQ, to modify the test*Streamer program to use unicast, >it has been mentioned that "In "test*Streamer.cpp", change >"destinationAddressStr" to the (unicast) IP address of the intended >destination". >Please tell me what exactly should be the IP address of the >destination ? Is my destination same as the server which performs >the streaming ? No, the "destination" is the destination of the unicast transmission - i.e., the computer that is intended to receive the stream. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 23 01:09:31 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 01:09:31 -0700 Subject: [Live-devel] particular implementation (subclass) In-Reply-To: <746286.35980.qm@web74203.mail.tp2.yahoo.com> References: <746286.35980.qm@web74203.mail.tp2.yahoo.com> Message-ID: >where functions , " static HashTable* create(int keyType) and static >Iterator* create(HashTable& hashTable) " are implemented ? They are implemented by subclasses of the (virtual base class) "HashTable". See, for example, "BasicUsageEnvironment/BasicHashTable.cpp", which defines the subclass "BasicHashTable". >I am not familiar with CPP Because the "LIVE555 Streaming Media" libraries are mostly written in C++, using them requires expertise in the C++ language. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From sumeet.kumar at hcl.com Wed Mar 23 01:17:21 2011 From: sumeet.kumar at hcl.com (Sumeet Kumar - ERS, HCL Tech) Date: Wed, 23 Mar 2011 13:47:21 +0530 Subject: [Live-devel] Modifying the test*Streamer program to use unicast Message-ID: <7F32C6A46402CD49BA87BC5874370F1A29FE634405@NDA-HCLT-EVS05.HCLT.CORP.HCL.IN> Hi Ross, As per my understanding, the destination is the IP address of the client, which is trying to play the RTSP stream ? Please confirm. I am using the testMPEG1or2AudioVideoStreamer. And I have made changes only in the testMPEG1or2AudioVideoStreamer.cpp (changing the "destinationAddressStr" value from "239.255.42.42" to ). Do I need to make any other changes ? Even after making the above mentioned changes in testMPEG1or2AudioVideoStreamer.cpp , I am not able to view the stream using VLC player ________________________________ ::DISCLAIMER:: ----------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. It shall not attach any liability on the originator or HCL or its affiliates. Any views or opinions presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of the author of this e-mail is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any mail and attachments please check them for viruses and defect. ----------------------------------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From finlayson at live555.com Wed Mar 23 01:21:55 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 01:21:55 -0700 Subject: [Live-devel] Modifying the test*Streamer program to use unicast In-Reply-To: <7F32C6A46402CD49BA87BC5874370F1A29FE634405@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> References: <7F32C6A46402CD49BA87BC5874370F1A29FE634405@NDA-HCLT-EVS05.HCLT.CORP.HCL.I N> Message-ID: >As per my understanding, the destination is the IP address of the >client, which is trying to play the RTSP stream ? Yes. What else could "destination" possibly mean? (This will be my last posting on this topic.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From kevin631012 at yahoo.com.tw Wed Mar 23 02:08:04 2011 From: kevin631012 at yahoo.com.tw (kevin631012) Date: Wed, 23 Mar 2011 17:08:04 +0800 (CST) Subject: [Live-devel] particular implementation (subclass) In-Reply-To: Message-ID: <403332.74960.qm@web74219.mail.tp2.yahoo.com> > > where functions , " static > HashTable* create(int keyType) and static Iterator* > create(HashTable& hashTable) " are implemented ? > > They are implemented by subclasses of the (virtual base > class) "HashTable". > > See, for example, > "BasicUsageEnvironment/BasicHashTable.cpp", which defines > the subclass "BasicHashTable". > > > > I am not familiar with CPP > > Because the "LIVE555 Streaming Media" libraries are mostly > written in C++, using them requires expertise in the C++ > language. Thanks Ross Actually , I am facing compile issue . when I write my own Makefile in different platform and try to link testProgram . it turns out some "undefined reference" come out . I found the order of libraries will make link phase error .this is interesting . I have never met before . From ashwani.grps at gmail.com Wed Mar 23 03:23:07 2011 From: ashwani.grps at gmail.com (Ashwani Kathuria) Date: Wed, 23 Mar 2011 15:53:07 +0530 Subject: [Live-devel] streaming AC3 over RTP using LIve555 Message-ID: Hi, I am trying to stream AC3 audio format file using Live555. For that I have implemented a new class AC3AudioFileServerMediaSubsession. However if I compile the code without NODEBUG=1 flag than the server crashes with stack trace mentioned below in mail. With NODEBG=1 flag nothing happens at server and no packets are shown on network. Please suggest if I am doing somethijg wrong here? The enclosures are: 1. AC3AudioFileServerMediaSubsession.hh 2. AC3AudioFileServerMediaSubsession.cpp 3. stack traces of crashes 4. Debug traces at server 5. Changes in testOnDemandRTSPServer.cpp for AC3 Regards, Ashwani Kathuria --------------------------------------------------------------------------------------------------------------------------------------- 1. -- AC3AudioFileServerMediaSubsession.hh ------------------------------------------------------------------------ --------------------------------------------------------------------------------------------------------------------------------------- class AC3AudioFileServerMediaSubsession: public FileServerMediaSubsession{ public: static AC3AudioFileServerMediaSubsession* createNew(UsageEnvironment& env, char const* fileName, Boolean reuseFirstSource); private: AC3AudioFileServerMediaSubsession(UsageEnvironment& env, char const* fileName, Boolean reuseFirstSource); // called only by createNew(); virtual ~AC3AudioFileServerMediaSubsession(); private: // redefined virtual functions virtual FramedSource* createNewStreamSource(unsigned clientSessionId, unsigned& estBitrate); virtual RTPSink* createNewRTPSink(Groupsock* rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource* inputSource); }; --------------------------------------------------------------------------------------------------------------------------------------- 2. ----------AC3AudioFileServerMediaSubsession.cpp ------------------------------------------------ --------------------------------------------------------------------------------------------------------------------------------------- AC3AudioFileServerMediaSubsession* AC3AudioFileServerMediaSubsession::createNew(UsageEnvironment& env, char const* fileName, Boolean reuseFirstSource) { return new AC3AudioFileServerMediaSubsession(env, fileName, reuseFirstSource); } AC3AudioFileServerMediaSubsession ::AC3AudioFileServerMediaSubsession(UsageEnvironment& env, char const* fileName, Boolean reuseFirstSource) : FileServerMediaSubsession(env, fileName, reuseFirstSource) { } AC3AudioFileServerMediaSubsession ::~AC3AudioFileServerMediaSubsession() { } FramedSource* AC3AudioFileServerMediaSubsession ::createNewStreamSource(unsigned /*clientSessionId*/, unsigned& estBitrate) { estBitrate = 48; // kbps, estimate ByteStreamFileSource* fSource = ByteStreamFileSource::createNew(envir(), fFileName); AC3AudioStreamFramer* source = AC3AudioStreamFramer::createNew(envir(),fSource); return source; } RTPSink* AC3AudioFileServerMediaSubsession ::createNewRTPSink(Groupsock* rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource* inputSource) { AC3AudioStreamFramer* audioSource = (AC3AudioStreamFramer*)inputSource; return AC3AudioRTPSink::createNew(envir(), rtpGroupsock, rtpPayloadTypeIfDynamic, audioSource->samplingRate()); } --------------------------------------------------------------------------------------------------------------------------------------- 3. Crash stack Traces --------------------------------------------------------------------------------------------------------------------------------------- However if I compile the code without NODEBUG=1 flag than the server crashes with following stack trace: irst chance exceptions are reported before any exception handling. This exception may be expected and handled. eax=feeefeee ebx=00000000 ecx=feeefeee edx=024c98e8 esi=00000000 edi=00000000 eip=00405c5a esp=0012eca8 ebp=0012ecac iopl=0 nv up ei pl nz na po nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010202 *** WARNING: Unable to verify checksum for testOnDemandRTSPServer.exe testOnDemandRTSPServer!Medium::envir+0xa: 00405c5a 8b4004 mov eax,dword ptr [eax+4] ds:0023:feeefef2=???????? 0:000> kp ChildEBP RetAddr 0012ecac 0040a468 testOnDemandRTSPServer!Medium::envir(void)+0xa [e:\officialdata\rtp\live\live-latest\livemedia\include\media.hh @ 59] 0012f3bc 00409feb testOnDemandRTSPServer!AC3AudioStreamParser::parseFrame(unsigned int * numTruncatedBytes = 0x024c97e0)+0x1b8 [e:\officialdata\rtp\live\live-latest\livemedia\ac3audiostreamframer.cpp @ 306] 0012f3d8 00409ed8 testOnDemandRTSPServer!AC3AudioStreamFramer::parseNextFrame(void)+0x1b [e:\officialdata\rtp\live\live-latest\livemedia\ac3audiostreamframer.cpp @ 165] 0012f3e4 004131d1 testOnDemandRTSPServer!AC3AudioStreamFramer::doGetNextFrame(void)+0x28 [e:\officialdata\rtp\live\live-latest\livemedia\ac3audiostreamframer.cpp @ 126] 0012f400 00414375 testOnDemandRTSPServer!FramedSource::getNextFrame(unsigned char * to = 0x024ba516 "--- memory read error at address 0x024ba516 ---", unsigned int maxSize = 0xed82, * afterGettingFunc = 0x00414380, void * afterGettingClientData = 0x024c9dd8, * onCloseFunc = 0x00414a20, void * onCloseClientData = 0x024c9dd8)+0xd1 [e:\officialdata\rtp\live\live-latest\livemedia\framedsource.cpp @ 79] 0012f434 0041423d testOnDemandRTSPServer!MultiFramedRTPSink::packFrame(void)+0x125 [e:\officialdata\rtp\live\live-latest\livemedia\multiframedrtpsink.cpp @ 217] 0012f444 004140f1 testOnDemandRTSPServer!MultiFramedRTPSink::buildAndSendPacket(unsigned int isFirstPacket = 1)+0xfd [e:\officialdata\rtp\live\live-latest\livemedia\multiframedrtpsink.cpp @ 191] 0012f454 0040b071 testOnDemandRTSPServer!MultiFramedRTPSink::continuePlaying(void)+0x11 [e:\officialdata\rtp\live\live-latest\livemedia\multiframedrtpsink.cpp @ 152] 0012f468 00409784 testOnDemandRTSPServer!MediaSink::startPlaying(class MediaSource * source = 0x024c97a8, * afterFunc = 0x004097d0, void * afterClientData = 0x024c9d30)+0x91 [e:\officialdata\rtp\live\live-latest\livemedia\mediasink.cpp @ 79] 0012f484 004090ab testOnDemandRTSPServer!StreamState::startPlaying(class Destinations * dests = 0x024c9b30, * rtcpRRHandler = 0x004057e0, void * rtcpRRHandlerClientData = 0x00625630, * serverRequestAlternativeByteHandler = 0x00402880, void * serverRequestAlternativeByteHandlerClientData = 0x00625630)+0x1a4 [e:\officialdata\rtp\live\live-latest\livemedia\ondemandservermediasubsession.cpp @ 481] 0012f4ac 004048ff testOnDemandRTSPServer!OnDemandServerMediaSubsession::startStream(unsigned int clientSessionId = 0x29, void * streamToken = 0x024c9d30, * rtcpRRHandler = 0x004057e0, void * rtcpRRHandlerClientData = 0x00625630, unsigned short * rtpSeqNum = 0x0012f510, unsigned int * rtpTimestamp = 0x0012f50c, * serverRequestAlternativeByteHandler = 0x00402880, void * serverRequestAlternativeByteHandlerClientData = 0x00625630)+0x4b [e:\officialdata\rtp\live\live-latest\livemedia\ondemandservermediasubsession.cpp @ 272] 0012f5c4 004043b5 testOnDemandRTSPServer!RTSPServer::RTSPClientSession::handleCmd_PLAY(class ServerMediaSubsession * subsession = 0x00000000, char * cseq = 0x0012f8b8 "5", char * fullRequestStr = 0x00625660 "PLAY rtsp://107.108.199.135:8554/AC3AudioTest/ RTSP/1.0..CSeq: 5..User-Agent: LibVLC/1.1.7 (LIVE555 Streaming Media v2011.01.06)..Session: 00000029..Range: npt=0.000-....")+0x45f [e:\officialdata\rtp\live\live-latest\livemedia\rtspserver.cpp @ 1150] 0012f5ec 00402f21 testOnDemandRTSPServer!RTSPServer::RTSPClientSession::handleCmd_withinSession(char * cmdName = 0x0012fa50 "PLAY", char * urlPreSuffix = 0x0012f988 "AC3AudioTest", char * urlSuffix = 0x0012f7f0 "", char * cseq = 0x0012f8b8 "5", char * fullRequestStr = 0x00625660 "PLAY rtsp://107.108.199.135:8554/AC3AudioTest/ RTSP/1.0..CSeq: 5..User-Agent: LibVLC/1.1.7 (LIVE555 Streaming Media v2011.01.06)..Session: 00000029..Range: npt=0.000-....")+0x215 [e:\officialdata\rtp\live\live-latest\livemedia\rtspserver.cpp @ 1011] 0012fb20 00402869 testOnDemandRTSPServer!RTSPServer::RTSPClientSession::handleRequestBytes(int newBytesRead = 0n170)+0x631 [e:\officialdata\rtp\live\live-latest\livemedia\rtspserver.cpp @ 468] 0012fb48 00402802 testOnDemandRTSPServer!RTSPServer::RTSPClientSession::incomingRequestHandler1(void)+0x59 [e:\officialdata\rtp\live\live-latest\livemedia\rtspserver.cpp @ 357] 0012fb54 0041c93b testOnDemandRTSPServer!RTSPServer::RTSPClientSession::incomingRequestHandler(void * instance = 0x00625630, int __formal = 0n2)+0x12 [e:\officialdata\rtp\live\live-latest\livemedia\rtspserver.cpp @ 350] 0012fedc 0041ed71 testOnDemandRTSPServer!BasicTaskScheduler::SingleStep(unsigned int maxDelayTime = 0)+0x55b [e:\officialdata\rtp\live\live-latest\basicusageenvironment\basictaskscheduler.cpp @ 130] 0012feec 00401265 testOnDemandRTSPServer!BasicTaskScheduler0::doEventLoop(char * watchVariable = 0x00000000 "")+0x31 [e:\officialdata\rtp\live\live-latest\basicusageenvironment\basictaskscheduler0.cpp @ 81] 0012ff44 004013f9 testOnDemandRTSPServer!main(int argc = 0n1, char ** argv = 0x00232e80)+0x265 [e:\officialdata\rtp\live\live-latest\testprogs\testondemandrtspserver.cpp @ 283] --------------------------------------------------------------------------------------------------------------------------------------- 4. Debug prints on Server --------------------------------------------------------------------------------------------------------------------------------------- AC3AudioStreamParser::parseFrame() EXCEPTION (This is normal behavior - *not* an error) AC3AudioStreamParser::parseFrame() EXCEPTION (This is normal behavior - *not* an error) AC3AudioStreamParser::parseFrame() EXCEPTION (This is normal behavior - *not* an error) sending response: RTSP/1.0 200 OK CSeq: 4 Date: Wed, Mar 23 2011 10:09:55 GMT Transport: RTP/AVP;unicast;destination=107.108.199.135;source=107.108.199.135;cl ient_port=49412-49413;server_port=6970-6971 Session: 00000029 Liveness indication from client at 107.108.199.135 RTSPClientSession[0266E888]::handleRequestBytes() read 170 new bytes:PLAY rtsp:/ /107.108.199.135:8554/AC3AudioTest/ RTSP/1.0 CSeq: 5 User-Agent: LibVLC/1.1.7 (LIVE555 Streaming Media v2011.01.06) Session: 00000029 Range: npt=0.000- parseRTSPRequestString() succeeded, returning cmdName "PLAY", urlPreSuffix "AC3A udioTest", urlSuffix "" RTCPInstance[00363038]::RTCPInstance() schedule(1.026029->1300874996.567368) RTCPInstance[00363038]::~RTCPInstance() sending BYE sending RTCP packet 80c80006 800000f3 d1344573 8aa3cea7 000046c8 00000000 00000000 81cb0001 800000f 3 --------------------------------------------------------------------------------------------------------------------------------------- 5. ------ Changes in testOnDemandRTSPServer.cpp for AC3 --------------------------------------------------------------------------------------------------------------------------------------- // A AC3 video elementary stream: { char const* streamName = "AC3AudioTest"; char const* inputFileName = "test.ac3"; ServerMediaSession* sms = ServerMediaSession::createNew(*env, streamName, streamName, descriptionString); sms->addSubsession(AC3AudioFileServerMediaSubsession ::createNew(*env, inputFileName, reuseFirstSource)); rtspServer->addServerMediaSession(sms); announceStream(rtspServer, sms, streamName, inputFileName); } From kevin631012 at yahoo.com.tw Wed Mar 23 05:06:02 2011 From: kevin631012 at yahoo.com.tw (kevin631012) Date: Wed, 23 Mar 2011 20:06:02 +0800 (CST) Subject: [Live-devel] receive a stream using the "openRTSP" but stream can not be played . Message-ID: <438747.76084.qm@web74208.mail.tp2.yahoo.com> Hi All , I use -t option to record two streams . one is audio stream and the otherone is video stream . but I try to playback using VLC or other Player . two stream can not be played . do I do something wrong ? following is my log openRTSP -t rtsp://10.0.0.2/live.sdp ... Setup "audio/MPEG4-GENERIC" subsession (client ports 58900-58901) Created output file: "video-MP4V-ES-1" Created output file: "audio-MPEG4-GENERIC-2" Sending request: PLAY rtsp://10.0.0.2/live.sdp/ RTSP/1.0 Received a complete PLAY response: RTSP/1.0 200 OK CSeq: 6 Date: Wed, 16 Mar 2011 14:50:8 GMT Session: 269613;timeout=80 RTP-Info: url=rtsp://10.0.0.2/live.sdp/trackID=1;seq=0;rtptime=0,url=rtsp://10.0.0.2/live.sdp/trackID=4;seq=0;rtptime=0 Range: npt=0- RTCP-Interval: 250 Started playing session Kevin ... From finlayson at live555.com Wed Mar 23 05:27:40 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 05:27:40 -0700 Subject: [Live-devel] streaming AC3 over RTP using LIve555 In-Reply-To: References: Message-ID: Thanks for the note. Please send us a link to your "test.ac3" file (or send the file itself if it is small), so we can try to replicate this crash ourselves. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Mar 23 05:42:13 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 05:42:13 -0700 Subject: [Live-devel] receive a stream using the "openRTSP" but stream can not be played . In-Reply-To: <438747.76084.qm@web74208.mail.tp2.yahoo.com> References: <438747.76084.qm@web74208.mail.tp2.yahoo.com> Message-ID: > I use -t option to record two streams . one is audio stream and >the otherone is video stream . > > but I try to playback using VLC or other Player . two stream can >not be played . do I do something wrong ? No, you did nothing wrong. The problem is simply that VLC cannot play these 'raw' data files, because it does not know their media types. (Yet again, I remind everyone that VLC is not our software.) You should, however, be able to use VLC (and perhaps QuickTime Player) to play this stream directly, from its "rtsp://" URL, because - in this case - the media player client will know the type of the media that it's playing. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From kevin631012 at yahoo.com.tw Wed Mar 23 07:21:46 2011 From: kevin631012 at yahoo.com.tw (kevin631012) Date: Wed, 23 Mar 2011 22:21:46 +0800 (CST) Subject: [Live-devel] receive a stream using the "openRTSP" but stream can not be played . In-Reply-To: Message-ID: <640740.28156.qm@web74219.mail.tp2.yahoo.com> > You should, however, be able to use VLC (and perhaps > QuickTime Player) to play this stream directly, from its > "rtsp://" URL, because - in this case - the media player Hi Ross, How can I record a stream whcih can be played directly by QuickTime or VLC ? is it possible to do this in those testProgram ? Thanks Kevin ... From finlayson at live555.com Wed Mar 23 09:34:51 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 09:34:51 -0700 Subject: [Live-devel] receive a stream using the "openRTSP" but stream can not be played . In-Reply-To: <640740.28156.qm@web74219.mail.tp2.yahoo.com> References: <640740.28156.qm@web74219.mail.tp2.yahoo.com> Message-ID: >How can I record a stream whcih can be played directly by QuickTime or VLC ? You could try recording ".mp4", ".mov" or ".avi"-format files. See http://www.live555.com/openRTSP/#quicktime However, there's no guarantee that this will work (so please don't complain if they don't :-) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From manuel.carrizo at intraway.com Wed Mar 23 11:38:05 2011 From: manuel.carrizo at intraway.com (Manuel) Date: Wed, 23 Mar 2011 15:38:05 -0300 Subject: [Live-devel] Can't detect resolution of video recorderd with openRTSP Message-ID: Hi, I'm recording videos of an Axis M 1031 camera with openRTSP, saving the output to a mov file, in some cases I can't play the video with mplayer or VLC, or convert it with ffmpeg, because none of them can get the resolution of the mov file. openRTSP syntax used is ./openRTSP -q -w 320 -h 240 -f 10 -d N -u UUUU PPPP rtsp:///mpeg4/media.amp?videocodec=h264 Checked video information with mplayer $ mplayer -identify video.mov -ao null -vo null -frames 0 2>&1 | grep ^ID_ ID_AUDIO_ID=0 ID_AID_0_LANG=eng ID_VIDEO_ID=0 ID_FILENAME=video.mov ID_DEMUXER=lavfpref ID_VIDEO_FORMAT=MP4V ID_VIDEO_BITRATE=0 *ID_VIDEO_WIDTH=0 ID_VIDEO_HEIGHT=0* ID_VIDEO_FPS=600.000 ID_VIDEO_ASPECT=-nan ID_AUDIO_FORMAT=MP4A ID_AUDIO_BITRATE=15560 ID_AUDIO_RATE=8000 ID_AUDIO_NCH=1 ID_START_TIME=0.00 ID_LENGTH=12.16 ID_SEEKABLE=1 ID_CHAPTERS=0 ID_VIDEO_CODEC=ffodivx ID_AUDIO_BITRATE=15560 ID_AUDIO_RATE=16000 ID_AUDIO_NCH=2 ID_AUDIO_CODEC=faad ID_EXIT=EOF I check the code of QuickTimeFileSink.cpp, and compared what addAtom(mp4v) should write with the file in an hex editor, and found that 0x 01 40 00 F0 was before 0x 00 48 00 00 00 48 00 00, just as expected: QuickTimeFileSink.cpp line 1915 unsigned const widthAndHeight = (fMovieWidth<<16)|fMovieHeight; size += addWord(widthAndHeight); // Width+height size += addWord(0x00480000); // Horizontal resolution size += addWord(0x00480000); // Vertical resolution The same for the code generated by addAtom(tkhd) The video in question can be found in http://dl.dropbox.com/u/23705394/video.mov Thanks in advance. Regards, Manuel -------------- next part -------------- An HTML attachment was scrubbed... URL: From edi87 at fibertel.com.ar Wed Mar 23 12:16:07 2011 From: edi87 at fibertel.com.ar (edi87 at fibertel.com.ar) Date: Wed, 23 Mar 2011 16:16:07 -0300 Subject: [Live-devel] Problem making a proxy Message-ID: <73c66a8da357.4d8a1cc7@fibertel.com.ar> Hello, I'm trying to do some type of proxy with live555. I have an IP camera that stream video+audio and I want to create a proxy that stream the camera stream to multiple clients because the camera only accepts one client online. What I did is create a RTSPClient to get the SDP from the camera and then create a MediaSession with that SDP. Later I create a ServerMediaSession and add the subsessions (audio and video) from the MediaSession (camera). I created a subclass of ServerMediaSubsession so it creates the Sinks as I needed (codecs). It works fine, I open the stream with multiple VLC and I can see the stream (audio + video). Now I want to add a feature to only receive video, I mean to open the camera stream (audio+video) but only re-stream the video to the clients, so I tried just adding the subsession for video but then when I open the proxy stream with VLC it works only for a few seconds and then close. What I really need is to offer both things, so a client can connect to my proxy as: rtsp:///streamwithaudio to get audio+video stream or rtsp:///streamwithoutaudio to get only video. Is that possible using only one client to the camera? or I need to create 2 MediaSessions to the camera? Can anybody point me a bit on it? Thanks in advance From finlayson at live555.com Wed Mar 23 12:20:54 2011 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 23 Mar 2011 12:20:54 -0700 Subject: [Live-devel] Can't detect resolution of video recorderd with openRTSP In-Reply-To: References: Message-ID: >Hi, I'm recording videos of an Axis M 1031 camera with openRTSP, >saving the output to a mov file, in some cases I can't play the >video with mplayer or VLC, or convert it with ffmpeg, because none >of them can get the resolution of the mov file. I'm not an expert on the "mov" format, so I suggest that you ask the developers of one of these clients (MPlayer, VLC, or FFMPEG), asking them what they think is wrong with your file. Depending on what you find, it's quite likely that our "QuickTimeFileSink" code could be improved/fixed to overcome this problem. Please let us know what you find. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From manuel.carrizo at intraway.com Wed Mar 23 12:52:56 2011 From: manuel.carrizo at intraway.com (Manuel) Date: Wed, 23 Mar 2011 16:52:56 -0300 Subject: [Live-devel] Can't detect resolution of video recorderd with openRTSP In-Reply-To: References: Message-ID: On Wed, Mar 23, 2011 at 16:20, Ross Finlayson wrote: > Hi, I'm recording videos of an Axis M 1031 camera with openRTSP, saving >> the output to a mov file, in some cases I can't play the video with mplayer >> or VLC, or convert it with ffmpeg, because none of them can get the >> resolution of the mov file. >> > > I'm not an expert on the "mov" format, so I suggest that you ask the > developers of one of these clients (MPlayer, VLC, or FFMPEG), asking them > what they think is wrong with your file. > > Depending on what you find, it's quite likely that our "QuickTimeFileSink" > code could be improved/fixed to overcome this problem. Please let us know > what you find. > Thank you, I will ask to the developers of ffmpeg and come back here. The implementation of QuickTimeFileSink is based only in the documentation of Apple available at [1] or there are other documents that I should read? [1] http://developer.apple.com/library/mac/#documentation/QuickTime/QTFF/QTFFChap2/qtff2.html Manuel -------------- next part -------------- An HTML attachment was scrubbed... URL: From live555 at timshackleton.com Wed Mar 23 17:04:55 2011 From: live555 at timshackleton.com (Tim J Shackleton) Date: Thu, 24 Mar 2011 13:04:55 +1300 Subject: [Live-devel] Play out PCR from gettimeofday rather than source stream? References: <2CC0ABCE10BB4046BAF801CC32CDA66F@telstraclear.tclad> Message-ID: <6253F2EF16204A689A292806E8205D19@telstraclear.tclad> Re: [Live-devel] Play out PCR from gettimeofday rather thaHi Ross, Thanks for your reply. You are quite right, the PCR is always more accurate straight out of an encoder, so I have shelved that desperate idea which as it turns out wasn't a problem anyway. I have been inspecting the clips produced by our Bitpack encoder and they do indeed have the discontinuity_indicator set on the first video packet, so there are no CC errors or PCR problems on our PID273, being video. However, when we change clips, we are registering CC errors on PID 0, 64 and 40, being PAT, PMT and Audio respectively. Should the first packet in the clips for these pids contain an adaptation field with discontinuity_indicator true also? Incidentally, when I was chasing the PCR accuracy 'problem', I have noted that under default settings for MAX_PLAYOUT_BUFFER_DURATION (being 0.1s) the PCR jitter is seen at about 35ns, and we do from time to time experience pixellation at broadcast output, however when I reduce this buffer to 0.01s, the jitter is reduced to 16ns and any pixellation during clip playout is gone. I don't understand why that setting should affect the packet presentation timing as the naming of that var would imply to me the length of a FIFO more than anything else. To solve this clip change problem I am now leaning toward the idea of keeping an array of incrementing CC per PID, and playing that out - OR, if the non-PCR carrying PIDs should have the discontinuity_indicator flag when they first occur in a clip, inspecting the clips and adjusting them accordingly. Looking forward to your comments, Thanks, -Tim ----- Original Message ----- From: Ross Finlayson To: LIVE555 Streaming Media - development & use Sent: Tuesday, March 22, 2011 1:00 PM Subject: Re: [Live-devel] Play out PCR from gettimeofday rather than source stream? I see that timeNow is already stood up in in MPEG2TransportStreamFramer.cpp - is there a quick and dirty way to insert PCR based on this time, at time of playout, rather than pass through the source PCR? No, not really, and this is a bad idea anyway. The PCR values that were inserted in the files at the time that they were encoded will always be more accurate (and better for decoders to use) than values derived from 'gettimeofday()'. Instead, you should make sure that your TS files have the 'discontinuity_indicator' flag set at the start. Our "MPEG2TransportStreamFramer" code recognizes this flag, as should the decoder in your STB. -- 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 ashwani.grps at gmail.com Wed Mar 23 20:54:18 2011 From: ashwani.grps at gmail.com (Ashwani Kathuria) Date: Thu, 24 Mar 2011 09:24:18 +0530 Subject: [Live-devel] streaming AC3 over RTP using LIve555 In-Reply-To: References: Message-ID: Hi Ross, Thanks for the reply. I used the following file as test.ac3: http://www.lynnemusic.com/surround/Bjorn_Lynne-Joolis-Song-surround.ac3 Apart from this on network I saw RTCP-GOODBYE from server in reply to RTSP-PLAY from client. The corresponding wireshark traces [CRASH_traces.txt] are attached with this mail. Please check if AC3AudioFileServerMediaSubsession.hh and AC3AudioFileServerMediaSubsession.cpp are correctly implemented as I am new to live555 and AC3 formats. It will help me debug the issue further at my end also. Regards, Ashwani Kathuria On Wed, Mar 23, 2011 at 5:57 PM, Ross Finlayson wrote: > Thanks for the note. > > Please send us a link to your "test.ac3" file (or send the file itself if it > is small), so we can try to replicate this crash ourselves. > -- > > 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 -------------- No. Time Source Destination Protocol Info 76 4.604701 107.108.199.106 107.108.199.135 TCP samd > rtsp-alt [SYN] Seq=0 Win=65535 Len=0 MSS=1460 SACK_PERM=1 Frame 76: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 0, Len: 0 No. Time Source Destination Protocol Info 77 4.604907 107.108.199.135 107.108.199.106 TCP rtsp-alt > samd [SYN, ACK] Seq=0 Ack=1 Win=8192 Len=0 MSS=1460 SACK_PERM=1 Frame 77: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 0, Ack: 1, Len: 0 No. Time Source Destination Protocol Info 78 4.605310 107.108.199.106 107.108.199.135 TCP samd > rtsp-alt [ACK] Seq=1 Ack=1 Win=65535 Len=0 Frame 78: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 1, Ack: 1, Len: 0 No. Time Source Destination Protocol Info 79 4.615330 107.108.199.106 107.108.199.135 RTSP OPTIONS rtsp://107.108.199.135:8554/AC3AudioTest RTSP/1.0 Frame 79: 188 bytes on wire (1504 bits), 188 bytes captured (1504 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 1, Ack: 1, Len: 134 Real Time Streaming Protocol No. Time Source Destination Protocol Info 80 4.623230 107.108.199.135 107.108.199.106 RTSP Reply: RTSP/1.0 200 OK Frame 80: 206 bytes on wire (1648 bits), 206 bytes captured (1648 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 1, Ack: 135, Len: 152 Real Time Streaming Protocol No. Time Source Destination Protocol Info 81 4.623859 107.108.199.106 107.108.199.135 RTSP DESCRIBE rtsp://107.108.199.135:8554/AC3AudioTest RTSP/1.0 Frame 81: 214 bytes on wire (1712 bits), 214 bytes captured (1712 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 135, Ack: 153, Len: 160 Real Time Streaming Protocol No. Time Source Destination Protocol Info 82 4.629112 107.108.199.135 107.108.199.106 RTSP/SDP Reply: RTSP/1.0 200 OK, with session description Frame 82: 620 bytes on wire (4960 bits), 620 bytes captured (4960 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 153, Ack: 295, Len: 566 Real Time Streaming Protocol No. Time Source Destination Protocol Info 83 4.631602 107.108.199.106 107.108.199.135 RTSP SETUP rtsp://107.108.199.135:8554/AC3AudioTest/track1 RTSP/1.0 Frame 83: 243 bytes on wire (1944 bits), 243 bytes captured (1944 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 295, Ack: 719, Len: 189 Real Time Streaming Protocol No. Time Source Destination Protocol Info 84 4.710063 107.108.199.135 107.108.199.106 RTSP Reply: RTSP/1.0 200 OK Frame 84: 261 bytes on wire (2088 bits), 261 bytes captured (2088 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 719, Ack: 484, Len: 207 Real Time Streaming Protocol No. Time Source Destination Protocol Info 85 4.711020 107.108.199.106 107.108.199.135 RTSP PLAY rtsp://107.108.199.135:8554/AC3AudioTest/ RTSP/1.0 Frame 85: 224 bytes on wire (1792 bits), 224 bytes captured (1792 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 484, Ack: 926, Len: 170 Real Time Streaming Protocol No. Time Source Destination Protocol Info 86 4.728169 107.108.199.135 107.108.199.106 RTCP Sender Report Goodbye Frame 86: 78 bytes on wire (624 bits), 78 bytes captured (624 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) User Datagram Protocol, Src Port: 6971 (6971), Dst Port: awg-proxy (3277) Real-time Transport Control Protocol (Sender Report) Real-time Transport Control Protocol (Goodbye) [RTCP frame length check: OK - 36 bytes] No. Time Source Destination Protocol Info 87 4.730836 107.108.199.135 107.108.199.106 RTSP Reply: RTSP/1.0 200 OK Frame 87: 236 bytes on wire (1888 bits), 236 bytes captured (1888 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 926, Ack: 654, Len: 182 Real Time Streaming Protocol No. Time Source Destination Protocol Info 88 4.733166 107.108.199.106 107.108.199.135 RTSP GET_PARAMETER rtsp://107.108.199.135:8554/AC3AudioTest/ RTSP/1.0 Frame 88: 214 bytes on wire (1712 bits), 214 bytes captured (1712 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 654, Ack: 1108, Len: 160 Real Time Streaming Protocol No. Time Source Destination Protocol Info 89 4.739304 107.108.199.135 107.108.199.106 RTSP Reply: RTSP/1.0 200 OK Frame 89: 138 bytes on wire (1104 bits), 138 bytes captured (1104 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 1108, Ack: 814, Len: 84 Real Time Streaming Protocol No. Time Source Destination Protocol Info 90 4.763704 107.108.199.2 224.0.0.2 HSRP Hello (state Active) Frame 90: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) Ethernet II, Src: All-HSRP-routers_c7 (00:00:0c:07:ac:c7), Dst: IPv4mcast_00:00:02 (01:00:5e:00:00:02) Internet Protocol, Src: 107.108.199.2 (107.108.199.2), Dst: 224.0.0.2 (224.0.0.2) User Datagram Protocol, Src Port: hsrp (1985), Dst Port: hsrp (1985) Cisco Hot Standby Router Protocol No. Time Source Destination Protocol Info 91 4.912020 107.108.199.106 107.108.199.135 TCP samd > rtsp-alt [ACK] Seq=814 Ack=1192 Win=64344 Len=0 Frame 91: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 814, Ack: 1192, Len: 0 No. Time Source Destination Protocol Info 92 5.040571 107.108.199.106 107.108.199.135 RTSP TEARDOWN rtsp://107.108.199.135:8554/AC3AudioTest/ RTSP/1.0 Frame 92: 209 bytes on wire (1672 bits), 209 bytes captured (1672 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 814, Ack: 1192, Len: 155 Real Time Streaming Protocol No. Time Source Destination Protocol Info 93 5.045143 107.108.199.135 107.108.199.106 RTSP Reply: RTSP/1.0 200 OK Frame 93: 119 bytes on wire (952 bits), 119 bytes captured (952 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 1192, Ack: 969, Len: 65 Real Time Streaming Protocol No. Time Source Destination Protocol Info 94 5.045241 107.108.199.135 107.108.199.106 TCP rtsp-alt > samd [FIN, ACK] Seq=1257 Ack=969 Win=63406 Len=0 Frame 94: 54 bytes on wire (432 bits), 54 bytes captured (432 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 1257, Ack: 969, Len: 0 No. Time Source Destination Protocol Info 95 5.045638 107.108.199.106 107.108.199.135 TCP samd > rtsp-alt [ACK] Seq=969 Ack=1258 Win=64279 Len=0 Frame 95: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 969, Ack: 1258, Len: 0 No. Time Source Destination Protocol Info 96 5.045639 107.108.199.106 107.108.199.135 RTCP Receiver Report Goodbye Frame 96: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) User Datagram Protocol, Src Port: awg-proxy (3277), Dst Port: 6971 (6971) Real-time Transport Control Protocol (Receiver Report) Real-time Transport Control Protocol (Goodbye) [RTCP frame length check: OK - 16 bytes] No. Time Source Destination Protocol Info 97 5.045639 107.108.199.106 107.108.199.135 TCP samd > rtsp-alt [FIN, ACK] Seq=969 Ack=1258 Win=64279 Len=0 Frame 97: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d), Dst: SamsungE_fb:74:b1 (00:24:54:fb:74:b1) Internet Protocol, Src: 107.108.199.106 (107.108.199.106), Dst: 107.108.199.135 (107.108.199.135) Transmission Control Protocol, Src Port: samd (3275), Dst Port: rtsp-alt (8554), Seq: 969, Ack: 1258, Len: 0 No. Time Source Destination Protocol Info 98 5.045724 107.108.199.135 107.108.199.106 TCP rtsp-alt > samd [ACK] Seq=1258 Ack=970 Win=63406 Len=0 Frame 98: 54 bytes on wire (432 bits), 54 bytes captured (432 bits) Ethernet II, Src: SamsungE_fb:74:b1 (00:24:54:fb:74:b1), Dst: Micro-St_f4:a9:3d (40:61:86:f4:a9:3d) Internet Protocol, Src: 107.108.199.135 (107.108.199.135), Dst: 107.108.199.106 (107.108.199.106) Transmission Control Protocol, Src Port: rtsp-alt (8554), Dst Port: samd (3275), Seq: 1258, Ack: 970, Len: 0 From steve at stevemcfarlin.com Sun Mar 27 20:12:00 2011 From: steve at stevemcfarlin.com (Steve McFarlin) Date: Sun, 27 Mar 2011 20:12:00 -0700 Subject: [Live-devel] AAC Streaming Jitter Message-ID: Hello - I am evaluating Live555 for a project of mine. I am currently trying to stream AAC. I am using the unsupported 'publish' to darwin class, so I understand if there is no help on this. My problem is the stream is very jittery. There is a pause at regular intervals between the playing back of the stream. This could very well be with my server. I just wanted to know if I am setting up my test correctly on the Live555 side. ADTSAudioFileSource* adtsSource = ADTSAudioFileSource::createNew(*env, inputFileName); RTPSink *audioSink = MPEG4GenericRTPSink::createNew(*env, &rtpGroupsockAudio, false, adtsSource->samplingFrequency(), "audio", "AAC-hbr", adtsSource->configStr(), adtsSource->numChannels()); *env << "Beginning to read from file...\n"; audioSink->startPlaying(*adtsSource, afterPlaying, audioSink); If it makes any difference my server is reporting an invalid time scale value of 0. Does anyone have any suggestions on where to look? Thanks, Steve From steve at stevemcfarlin.com Sun Mar 27 20:51:57 2011 From: steve at stevemcfarlin.com (Steve McFarlin) Date: Sun, 27 Mar 2011 20:51:57 -0700 Subject: [Live-devel] AAC Streaming Jitter Message-ID: It was my bone headed mistake. audioSink = MPEG4GenericRTPSink::createNew(*env, &rtpGroupsockAudio, false, adtsSource->samplingFrequency(), "audio", "AAC-hbr", adtsSource->configStr(), adtsSource->numChannels()); should be audioSink = MPEG4GenericRTPSink::createNew(*env, &rtpGroupsockAudio, 96, adtsSource->samplingFrequency(), "audio", "AAC-hbr", adtsSource->configStr(), adtsSource->numChannels()); How I mistook a u_int8_t for a bool type I don't know. Thanks, Steve From manuel.carrizo at intraway.com Mon Mar 28 11:29:25 2011 From: manuel.carrizo at intraway.com (Manuel) Date: Mon, 28 Mar 2011 15:29:25 -0300 Subject: [Live-devel] Can't detect resolution of video recorderd with openRTSP In-Reply-To: References: Message-ID: Hi, I asked in the ffmpeg list but I don't get a response yet. I compared the hexdumps of the video that I can't play with other that I can play, and found that it seems that the video that I can't play lacks some bytes. It seems that QuickTimeFileSink::completeOutputFile() crashed writing to the file. Here is a diff of the hexdumps, http://dl.dropbox.com/u/23705394/incomplete_vs_complete_mov.png I will continue investigating what happened. Regards, Manuel -------------- next part -------------- An HTML attachment was scrubbed... URL: From nouri at soroush.net Sun Mar 27 23:47:28 2011 From: nouri at soroush.net (Mojtaba Nouri) Date: Mon, 28 Mar 2011 11:17:28 +0430 Subject: [Live-devel] stream time when fast forwarding Message-ID: Hi Is it possible to track the stream time when fast forward or rewind it. Also after resuming to normal play, the client (vlc) does not show the time correctly. How could it be fixed? Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From Diogo.Andrade at divitel.com Mon Mar 28 09:38:06 2011 From: Diogo.Andrade at divitel.com (Diogo Andrade) Date: Mon, 28 Mar 2011 16:38:06 +0000 Subject: [Live-devel] Raw-UDP streaming Message-ID: <142FE324CEB6FF4488AA78A18F701B7017F160@exchange.divitelmail.local> Hi everyone... I've been trying to "twist" Live555 to work as a simple VOD server for some tests I'm running on some other applications... That VOD server has to send out a raw-UDP multicast to a specific port, and so far I've managed to get that up and running ok. This multicast stream then goes into a multiplexer, and then to a QAMM modulator for cable broadcast. Problem I'm having is with the trick-play component of this: 1) When I pause the stream (through pauseStream), the stream stops altogether... what I want is for the frame to "freeze", so no new frames, just keep streaming the same one, until unpaused. From what I could gather from some web searches, this is by design and the RTSP streaming doesn't have this behavior, so my question is how to modify this behavior so it will freeze the frame instead of stopping the streaming altogether (so the STBs won't give out a "no signal" warning) 2) When I go into trick play (setting setStreamScale to -2 or 2), my stream's structure (which had PAT on PID 0, PMT on PID 66, Audio on PID 68 and Video on PID 69) changes, and video starts streaming on PID 224... Is there some way to fix this, so that video continues being played out on PID 69? When I go back to a scale of 1, the video goes back to PID 69... If I can just fix this, I'll be a very happy man and I can move on to the real project (since I'm just using this for testing purposes)... Thanks in advance, best regards, Diogo de Andrade -------------- next part -------------- An HTML attachment was scrubbed... URL: From rafael.madeira at idea-ip.com Tue Mar 29 07:57:33 2011 From: rafael.madeira at idea-ip.com (Rafael Madeira) Date: Tue, 29 Mar 2011 11:57:33 -0300 Subject: [Live-devel] DeviceSource.cpp impacts on sockets Message-ID: Hi, I'm adapting live555 to stream from a live source and using testMPEG2TransportStreamer.cpp and http://www.live555.com/liveMedia/faq.html#liveInput as reference. I got all necessary code to startup a RTP server and start playing and put on my source code. As explained on the FAQ, i substitue *ByteStreamFileSource and ** MPEG2TransportStreamFramer* layers by the DeviceSource one. Using DDD to degub a segmentation fault bug, i found thats is caused by a call to socketErr() made by writeSocket() ( more precisely, "*if (setsockopt(socket, IPPROTO_IP, IP_MULTICAST_TTL,(const char*)&ttl, sizeof ttl) < 0)" *line call). The only two functions my app call by DeviceSource class are DeviceSource::doGetNextFrame() and DeviceSource::deliverFrame(), as i can see in DDD backtace feture. In the first one i get news buffers with TS data to be streamed. At the second i set pointers to data content and buffer size (as required by template). How could DeviceSource changes impact on socket issues?? Thanks, -- Att, Rafael Madeira Idea! Electronic Systems www.idea-ip.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren at etr-usa.com Tue Mar 29 15:05:03 2011 From: warren at etr-usa.com (Warren Young) Date: Tue, 29 Mar 2011 16:05:03 -0600 Subject: [Live-devel] Raw-UDP streaming In-Reply-To: <142FE324CEB6FF4488AA78A18F701B7017F160@exchange.divitelmail.local> References: <142FE324CEB6FF4488AA78A18F701B7017F160@exchange.divitelmail.local> Message-ID: <4D92578F.9040203@etr-usa.com> On 3/28/2011 10:38 AM, Diogo Andrade wrote: > > how to modify this > behavior so it will freeze the frame instead of stopping the streaming The muxer is expecting a constant stream of data, because digital cable TV (QAM) is a CBR system. Ideally, a QAM muxer wants CBR streams. Your particular muxer may have some limited ability to cope with VBR codecs by padding its output, but that doesn't extend quite to the point of handling 0 bps gracefully. For the muxer to do that, it would have to be decoding the video on the fly, then when it sees the video stream disappear, it would have to start re-encoding the last frame at the same bit rate it used to get from the stream and sending that out instead. Surely it is clear to you already that this would be a very stupid way to design a muxer. Adding real-time decoding and re-encoding would increase its cost quite a lot. I point it out despite this hope that it is already obvious to you because the next step is to start tracing things back up the stack to find a piece that *could* do such a thing. That next step is Live555. Do you see MPEG decoding and encoding in the library? No? So, not on topic here, yes? One possible way to get the behavior you ask for is at your encoder. Instead of telling Live555 to pause the stream, you should be asking your encoder to freeze-frame. If you are trying to build DVR-like functionality where un-pausing the stream resumes it at the pause point instead of re-joining the live stream, you need to build a layer between Live555 and the encoder which does the store-and-forward. But this is also not on-topic here. From edi87 at fibertel.com.ar Thu Mar 31 07:18:11 2011 From: edi87 at fibertel.com.ar (edi87 at fibertel.com.ar) Date: Thu, 31 Mar 2011 11:18:11 -0300 Subject: [Live-devel] Sending BYE question Message-ID: <2e1d09d515ac1.4d9462f3@fibertel.com.ar> Hello, I continued working on my proxy and I found something that I can't found an explanation. If I open a connection to a stream and then start re streaming it without audio, it only works for ~15 seconds, then it send a "BYE" to the client. It suggest me that there should be some type of timeout on background that found no activity on audio channel and then close the connection. Does it sounds possible? Is there anything running on background that check channel activity? Thanks in advance, Jonathan -------------- next part -------------- An embedded message was scrubbed... From: Subject: Problem making a proxy Date: Wed, 23 Mar 2011 16:16:07 -0300 Size: 1897 URL: From roy.daklon at gmail.com Mon Mar 28 04:42:29 2011 From: roy.daklon at gmail.com (Roy Dekel) Date: Mon, 28 Mar 2011 11:42:29 -0000 Subject: [Live-devel] How to enter arguments on playCommon.cpp? Message-ID: Hi, I'm working on my final project in Software Engineering, which its purpose is to stream rtsp unicast broadcast from digital intercom to another end station that using the same intercom. My renewal idea is not using the VLC player, but to create a simple media player, based on C# programming, which will improve the reloading time of the stream and etc. Anyway, I'm having a trouble with the file playCommon.cpp. I'm trying to broadcast from some test program of yours, called testMPEG4VideoStreamer.cpp. When I run it, I get the output message that says: "Play this stream using the URL 'rtsp://192.168.2.103:8554/testStream' " "Beginning streaming..." "Beginning to read from file..." So, my problem is when I'm compiling playCommon.cpp (while broadcast testMPEG4VideoStreamer.cpp) I get the usage message from the playCommon.cpp, which indicates I neeed to enter a list of arguments, and I'm really confused which arguments should I use, and which arguments I shall not use? Hope to get a solution as soon as possible. Regards, Roy Dekel -------------- next part -------------- An HTML attachment was scrubbed... URL: From vipin.aricent at gmail.com Mon Mar 28 02:14:44 2011 From: vipin.aricent at gmail.com (bipin kumar) Date: Mon, 28 Mar 2011 09:14:44 -0000 Subject: [Live-devel] Regarding live555 streaming Message-ID: Hi! I want to know that at present the openRTSP application is used to receive the live rtsp streams ,and dump it into separate audio and video files.Is there any mechanism or option to dump the data into a buffer,or to take the output as stream and give it to any player. Regards, vipin -------------- next part -------------- An HTML attachment was scrubbed... URL: