From xcsmith at rockwellcollins.com Wed Nov 1 08:10:14 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Wed, 1 Nov 2006 10:10:14 -0600 Subject: [Live-devel] FramedSource vs. FramedFilter Message-ID: Can you tell me if there are guidelines about when I should inherit from FramedFilter vs. FramedSource? I've looked at the Doxygen for these classes, but I can't decide. When I look at MPEG2TransportStreamMultiplexor, I think it should be inherited from FramedFilter because it changes the data that passes through it. But since it is not, I think there must be some other guideline for picking which class to inherit from. Thanks! ~Medra From finlayson at live555.com Wed Nov 1 11:05:00 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 1 Nov 2006 11:05:00 -0800 Subject: [Live-devel] FramedSource vs. FramedFilter In-Reply-To: References: Message-ID: >Can you tell me if there are guidelines about when I should inherit from >FramedFilter vs. FramedSource? A "FramedFilter" must 1/ be a "FramedSource" - i.e., an object that produces a single output stream (by implementing "doGetNextFrame()"), and 2/ process data that comes from a second "FramedSource" (the "inputSource" parameter) >When I look at >MPEG2TransportStreamMultiplexor, I think it should be inherited from >FramedFilter because it changes the data that passes through it. No, "MPEG2TransportStreamMultiplexor" is a "FramedSource", but not a "FramedFilter", because it doesn't have a *single* input source. (Instead, it can have multiple input sources, which are added using member functions, rather than as parameters during the object's creation.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From riwanda at yahoo.com Thu Nov 2 00:11:53 2006 From: riwanda at yahoo.com (Gunar Riwanda) Date: Thu, 2 Nov 2006 00:11:53 -0800 (PST) Subject: [Live-devel] can't decode file that is received by opentrsp Message-ID: <20061102081153.27647.qmail@web54612.mail.yahoo.com> >No, that won't work. >To create an output file in "AVI" format, you must use the "-i" >option. See . > >Note also that the "-i" option causes "openRTSP" to output to >'stdout'. (If 'stdout' means nothing to you, then you should not be >using "openRTSP" :-) Yes, i have also tried the "-i" option. And i change the output from "stdout" to an output file (named "received.avi"). But this "received.avi" file can't be played by any player even VLC. without "-i" option, and adding extension manually from "video-MP4V-ES-1" to "video-MP4V-ES-1.avi", it works. I can play it using any kind of player. >This is because it contains raw elementary stream data only. is there any way to stream the whole properties of the video file too? My whole plan is actually to pipe the received frame from the openRTSP to the ffmpeg decoder directly without any output file from openrtsp I'd really apreciate any hint to my plan. thank you for the reply. Regards, Gunar -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/3ca8ab35/attachment.html From 1049588 at aruba.it Thu Nov 2 03:52:58 2006 From: 1049588 at aruba.it (wisem) Date: Thu, 2 Nov 2006 12:52:58 +0100 Subject: [Live-devel] It compiles, but it doesn't work... :-( Message-ID: <001c01c6fe75$71384660$0201a8c0@ibookgray> Hi, I'm new to the streaming world and I would like to learn how to use this streaming library. I'm using Visual C++ 2005 Express Edition and I have compiled "UsageEnvironment", "groupsock", "liveMedia", and "BasicUsageEnvironment" each one in a separate solution to create the .lib static libraries. Until now it's all right. Well, then I have created a solution for the "testMPEG1or2VideoStreamer.cpp" file, linked all the necessary libs created before and compiled. It was all right: the exe was generated without problems, aside from this warning message in the linking process: 1>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/LTCG' specification Now I have the .exe file. I have inserted a test.mpg file in the same dir of the exe and then I have executed it, but... It keeps to give me this message, then exits: Beginning streaming... Beginning to read from file... BasicTaskScheduler::SingleStep(): select() fails: No error In the debugger I have discovered that the error comes from this instruction in 'basictaskscheduler.cpp': int selectResult = select(fMaxNumSockets, &readSet, NULL, NULL, &tv_timeToDelay); when it reach this instruction, the select returns -1 and the WSAGetLastError gives the "WSAENOTSOCK - Error 10038" that should means: 'Socket operation on non-socket'... What can it be? What should I do? In the test program I have not modified nothing... I have to modify some address or some port? Thanks in advance, Wisem -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/dba30fa2/attachment.html From riwanda at yahoo.com Thu Nov 2 04:47:42 2006 From: riwanda at yahoo.com (Gunar Riwanda) Date: Thu, 2 Nov 2006 04:47:42 -0800 (PST) Subject: [Live-devel] It compiles, but it doesn't work... :-( Message-ID: <20061102124743.14338.qmail@web54612.mail.yahoo.com> ----- Original Message ---- From: wisem <1049588 at aruba.it> To: live-devel at ns.live555.com Sent: Thursday, November 2, 2006 12:52:58 PM Subject: [Live-devel] It compiles, but it doesn't work... :-( Now I have the .exe file. I have inserted a test.mpg file in the same dir of the exe and then I have executed it, but... It keeps to give me this message, then exits: Beginning streaming... Beginning to read from file... BasicTaskScheduler::SingleStep(): select() fails: No error In the debugger I have discovered that the error comes from this instruction in 'basictaskscheduler.cpp': int selectResult = select(fMaxNumSockets, &readSet, NULL, NULL, &tv_timeToDelay); when it reach this instruction, the select returns -1 and the WSAGetLastError gives the "WSAENOTSOCK - Error 10038" that should means: 'Socket operation on non-socket'... What can it be? What should I do? In the test program I have not modified nothing... I have to modify some address or some port? Thanks in advance, Wisem _______________________________________________ quite confusing that the program has an error, but it says "no error", isn't it? That was exactly my problem. But i'm not sure now how i solved it. Sorry. One thing i can remember: i followed the instruction on how to build the code in windows once again. Built it with nmake on command prompt. linked all the necessary include & lib files plus "ws2_32.lib" (maybe you can try to link this "ws2_32.lib" too. and tell us whether it works or not.) and that's just it actually. good luck. ps:The test programs work just fine without any additional change. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/9651ffe0/attachment.html From finlayson at live555.com Thu Nov 2 05:45:33 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 2 Nov 2006 05:45:33 -0800 Subject: [Live-devel] It compiles, but it doesn't work... :-( In-Reply-To: <001c01c6fe75$71384660$0201a8c0@ibookgray> References: <001c01c6fe75$71384660$0201a8c0@ibookgray> Message-ID: >BasicTaskScheduler::SingleStep(): select() fails: No error Are you running an old version of Windows (prior to XP)? If so, try adding #define READ_FROM_FILES_SYNCHRONOUSLY 1 to the start of "liveMedia/ByteStreamFileSource.cpp", and recompile. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/5bcecc31/attachment.html From e.beckers at gmail.com Thu Nov 2 05:56:15 2006 From: e.beckers at gmail.com (Erwin Beckers) Date: Thu, 2 Nov 2006 14:56:15 +0100 Subject: [Live-devel] How to retrieve statistics? Message-ID: Hi, I'm currently using the livemedia library in a streaming tv-server (see www.team-mediaportal.com) Now all works fine, but i want to add a management console to the server where i can see - which files are being streamed - which protocol is used for each stream - which clients (ip adresses) are watching the stream Can anybody help me a bit how to retrieve this information from the livemedia library ?? Erwin Beckers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/55f4206a/attachment.html From 1049588 at aruba.it Thu Nov 2 06:31:48 2006 From: 1049588 at aruba.it (wisem) Date: Thu, 2 Nov 2006 15:31:48 +0100 Subject: [Live-devel] It compiles, but it doesn't work... :-( References: <20061102124743.14338.qmail@web54612.mail.yahoo.com> Message-ID: <008001c6fe8b$a18f9a50$0201a8c0@ibookgray> ----- Original Message ----- From: Gunar Riwanda To: LIVE555 Streaming Media - development & use Sent: Thursday, November 02, 2006 1:47 PM Subject: Re: [Live-devel] It compiles, but it doesn't work... :-( quite confusing that the program has an error, but it says "no error", isn't it? That was exactly my problem. But i'm not sure now how i solved it. Sorry. One thing i can remember: i followed the instruction on how to build the code in windows once again. Built it with nmake on command prompt. linked all the necessary include & lib files plus "ws2_32.lib" (maybe you can try to link this "ws2_32.lib" too. and tell us whether it works or not.) and that's just it actually. good luck. ps:The test programs work just fine without any additional change. Thank you for the suggestions. Anyway I don't understand why I should have to link another library... The code already compiles without problems! However, I have tried to link that "ws2_32.lib" too, but the problem remains... For the 'nmake' compiling... I don't know how to use this command. I have tried to execute the genWindowsMakeFiles that creates a .mak in each directory of the live library. Then, when I import these makefiles in the Visual C++ 2005, the ide asks to me to convert it in a Visual C++ 2005 solution, but then, after I accept the conversion, it gives to me: "Operation could not be completed. The project file '....\groupsock.mak' cannot be converted. See the conversion report for details." And in the report: "Conversion Issues - groupsock: Cannot load the project due to a corrupt project file." I'm lost... -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/35b1f4ed/attachment-0001.html From 1049588 at aruba.it Thu Nov 2 06:55:30 2006 From: 1049588 at aruba.it (wisem) Date: Thu, 2 Nov 2006 15:55:30 +0100 Subject: [Live-devel] It compiles, but it doesn't work... :-( References: <001c01c6fe75$71384660$0201a8c0@ibookgray> Message-ID: <009701c6fe8e$f1401e00$0201a8c0@ibookgray> Re: [Live-devel] It compiles, but it doesn't work... :-(----- Original Message ----- From: Ross Finlayson To: LIVE555 Streaming Media - development & use Sent: Thursday, November 02, 2006 2:45 PM Subject: Re: [Live-devel] It compiles, but it doesn't work... :-( BasicTaskScheduler::SingleStep(): select() fails: No error Are you running an old version of Windows (prior to XP)? If so, try adding #define READ_FROM_FILES_SYNCHRONOUSLY 1 to the start of "liveMedia/ByteStreamFileSource.cpp", and recompile. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ I'm running Windows XP Media Center Edition with SP2. I have DEP (Data Execution Prevention bit)hardware enabled... Maybe this is a problem? Anyway, I have added that define you have suggest to me before, and now that error doesn't appear. Instead it appears another error continuosly: MPEG1or2VideoStreamParser::parseSlice(): Saw unexpected code 000001C0 From finlayson at live555.com Thu Nov 2 07:06:34 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 2 Nov 2006 07:06:34 -0800 Subject: [Live-devel] It compiles, but it doesn't work... :-( In-Reply-To: <009701c6fe8e$f1401e00$0201a8c0@ibookgray> References: <001c01c6fe75$71384660$0201a8c0@ibookgray> <009701c6fe8e$f1401e00$0201a8c0@ibookgray> Message-ID: >Anyway, I have added that define you have suggest to me before, and now that >error doesn't appear. Instead it appears another error continuosly: > >MPEG1or2VideoStreamParser::parseSlice(): Saw unexpected code 000001C0 See http://www.live555.com/liveMedia/faq.html#mpeg-program-stream -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061102/77634f62/attachment.html From xcsmith at rockwellcollins.com Thu Nov 2 07:20:25 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Thu, 2 Nov 2006 09:20:25 -0600 Subject: [Live-devel] It compiles, but it doesn't work... :-( Message-ID: >MPEG1or2VideoStreamParser::parseSlice(): Saw unexpected code 000001C0 Your file contains audio data. testMPGE1or2VideoStreamer is expecting a file with only video in it. Try using testMPEG1or2AudioVideoStreamer instead. ~Medra From 1049588 at aruba.it Thu Nov 2 07:38:02 2006 From: 1049588 at aruba.it (wisem) Date: Thu, 2 Nov 2006 16:38:02 +0100 Subject: [Live-devel] It compiles, but it doesn't work... :-( References: <001c01c6fe75$71384660$0201a8c0@ibookgray><009701c6fe8e$f1401e00$0201a8c0@ibookgray> Message-ID: <00d501c6fe94$e2174ab0$0201a8c0@ibookgray> Re: [Live-devel] It compiles, but it doesn't work... :-(----- Original Message ----- From: Ross Finlayson To: LIVE555 Streaming Media - development & use Sent: Thursday, November 02, 2006 4:06 PM Subject: Re: [Live-devel] It compiles, but it doesn't work... :-( See http://www.live555.com/liveMedia/faq.html#mpeg-program-stream -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ ____________________________________________ Thank you very much!! With the SOURCE_IS_PROGRAM_STREAM define set to 1, now is working perfectly (I have tried to read the RTP stream with VLC and it works!). Last question: why I had to define READ_FROM_FILES_SYNCHRONOUSLY 1, if I'm using Windows XP (Media Center Edition with SP2) ?? From 1049588 at aruba.it Thu Nov 2 07:49:09 2006 From: 1049588 at aruba.it (wisem) Date: Thu, 2 Nov 2006 16:49:09 +0100 Subject: [Live-devel] It compiles, but it doesn't work... :-( References: Message-ID: <00ec01c6fe96$6fdbe7b0$0201a8c0@ibookgray> > Your file contains audio data. testMPGE1or2VideoStreamer is expecting a > file with only video in it. > Try using testMPEG1or2AudioVideoStreamer instead. > > ~Medra > Thank you! I have already resolved uncommenting this line in testMPEG1or2VideoStreamer.cpp: #define SOURCE_IS_PROGRAM_STREAM 1 :-) ------ wisem From xcsmith at rockwellcollins.com Thu Nov 2 08:33:18 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Thu, 2 Nov 2006 10:33:18 -0600 Subject: [Live-devel] It compiles, but it doesn't work... :-( In-Reply-To: <00ec01c6fe96$6fdbe7b0$0201a8c0@ibookgray> Message-ID: >Thank you! I have already resolved uncommenting this line in >testMPEG1or2VideoStreamer.cpp: >#define SOURCE_IS_PROGRAM_STREAM 1 >:-) >------ >wisem Yea, I saw Ross answered a few minutes after I tried to send my message. Sometimes my outgoing email is delayed for hours. Enjoy your video! :) ~Medra From glen at lincor.com Thu Nov 2 08:49:30 2006 From: glen at lincor.com (Glen Gray) Date: Thu, 02 Nov 2006 16:49:30 +0000 Subject: [Live-devel] TaskScheduler and doEventsLoop Message-ID: <454A219A.8070006@lincor.com> Hey Guys, I just wanted to confirm something. Does the doEventsLoop need to be called repeatedly to eventually trigger a scheduled function ? -- Glen Gray Digital Depot, Thomas Street Senior Software Engineer Dublin 8, Ireland Lincor Solutions Ltd. Ph: +353 (0) 1 4893682 From jmbaio at gmail.com Thu Nov 2 09:05:09 2006 From: jmbaio at gmail.com (Juan Manuel Lopez Baio) Date: Thu, 2 Nov 2006 14:05:09 -0300 Subject: [Live-devel] TaskScheduler and doEventsLoop In-Reply-To: <454A219A.8070006@lincor.com> References: <454A219A.8070006@lincor.com> Message-ID: On 11/2/06, Glen Gray wrote: > Hey Guys, > > I just wanted to confirm something. Does the doEventsLoop need to be > called repeatedly to eventually trigger a scheduled function ? No, but the function does have to reschedule itself (or someone do it for it) if you want it to be periodical. Given that, doEventLoop will loop (blocking) forever or until the flag you might've passed it when calling it is set to true. I think... > -- > Glen Gray Digital Depot, Thomas Street > Senior Software Engineer Dublin 8, Ireland > Lincor Solutions Ltd. Ph: +353 (0) 1 4893682 > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > From glen at lincor.com Thu Nov 2 09:25:55 2006 From: glen at lincor.com (Glen Gray) Date: Thu, 02 Nov 2006 17:25:55 +0000 Subject: [Live-devel] TaskScheduler and doEventsLoop In-Reply-To: References: <454A219A.8070006@lincor.com> Message-ID: <454A2A23.5080005@lincor.com> Juan Manuel Lopez Baio wrote: > No, but the function does have to reschedule itself (or someone do it > for it) if you want it to be periodical. > Given that, doEventLoop will loop (blocking) forever or until the flag > you might've passed it when calling it is set to true. > > I think... > Hmm, well, my function does reschedule itself, but it doesn't seem to get called at all unless the doEventsLoop is called, and yes, my doEventLoop is watching a variable so it doesn't loop forever. Do basically, have doEventLoop run (blocking) or repeatedly call it so that it breaks out based on the watchvariable != NULL. -- Glen Gray Digital Depot, Thomas Street Senior Software Engineer Dublin 8, Ireland Lincor Solutions Ltd. Ph: +353 (0) 1 4893682 From jmbaio at gmail.com Thu Nov 2 10:01:07 2006 From: jmbaio at gmail.com (Juan Manuel Lopez Baio) Date: Thu, 2 Nov 2006 15:01:07 -0300 Subject: [Live-devel] TaskScheduler and doEventsLoop In-Reply-To: <454A2A23.5080005@lincor.com> References: <454A219A.8070006@lincor.com> <454A2A23.5080005@lincor.com> Message-ID: On 11/2/06, Glen Gray wrote: > Hmm, well, my function does reschedule itself, but it doesn't seem to > get called at all unless the doEventsLoop is called, sorry, what I meant to say is that you don't need to call it _repeatedly_, but you do need to call it once, and I think it's supposed to be used that way, i.e.: schedule tasks, call once, watch it roll. From finlayson at live555.com Thu Nov 2 10:43:43 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 2 Nov 2006 10:43:43 -0800 Subject: [Live-devel] TaskScheduler and doEventsLoop In-Reply-To: <454A219A.8070006@lincor.com> References: <454A219A.8070006@lincor.com> Message-ID: >Hey Guys, > >I just wanted to confirm something. Does the doEventsLoop need to be >called repeatedly to eventually trigger a scheduled function ? No, "doEventLoop()" - by default - does not return, and therefore needs to be called exactly once - after you've run your code that sets up events to be handled (e.g., by calling "RTPSink::startPlaying(), "TaskScheduler::scheduleDelayedTask()", etc.). (See the various demo applications for examples of this.) Note, however, that if you use "TaskScheduler::scheduleDelayedTask()" to set up a task to be performed later, then this task will end up getting once only. If you want the task to be performed periodically, then you need to call "TaskScheduler::scheduleDelayedTask()" again, at the end of the task function. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From yunjnz at yahoo.com Fri Nov 3 02:48:54 2006 From: yunjnz at yahoo.com (yj) Date: Fri, 3 Nov 2006 02:48:54 -0800 (PST) Subject: [Live-devel] About WMV support Message-ID: <20061103104854.75990.qmail@web35812.mail.mud.yahoo.com> Hi, Does there any plan for supporting WMV streaming? __________________________________________________________________________________________ Check out the New Yahoo! Mail - Fire up a more powerful email and get things done faster. (http://advision.webevents.yahoo.com/mailbeta) From marthi at graphics.cs.uni-sb.de Fri Nov 3 03:17:30 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Fri, 03 Nov 2006 12:17:30 +0100 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> Message-ID: <454B254A.4040804@graphics.cs.uni-sb.de> Hi, Ross Finlayson wrote: >>So as you suggested I looked into the wis-streamer code as well and >>included the part for the AMR-header: >> >>enum Mode ourAMRMode = MR122; // the only mode that we support >>fLastFrameHeader = toc_byte[ourAMRMode]; >>fNumTruncatedBytes = 0; >> >>But on the receiver side the frame is still to short: >> >>[amr_nb @ 0xb45fc008]amr frame too short (31, should be 32) >> >>Maybe I'm still missing something? > > > You're probably forgetting - in your encoder - to adjust the returned > frame size to allow for the extra 1-byte header. Search for > "EncoderIncludeHeaderByte" in "AMREncoder/interf_enc.c" in the > "wis-streamer" code, to see where I had to modify the existing FFMPEG > code to do this. thanks for uour help so far! I looked at the "wis-streamer" code but I don't really understand what you changed: Your code: int EncoderIncludeHeaderByte = 1; static int EncoderMMS( enum Mode mode, Word16 *param, UWord8 *stream, enum TXFrameType frame_type, enum Mode speech_mode ) { Word32 j = 0, k; Word16 *mask; int resultFrameSize = block_size[mode] - !EncoderIncludeHeaderByte; memset(stream, 0, resultFrameSize); if (EncoderIncludeHeaderByte) { *stream = toc_byte[mode]; stream++; } [...] return resultFrameSize; If I'm getting it right, the resultFrameSize is evaluated to block_size[mode] (because !EncoderIncludeHeaderByte = 0). So the code is the same as before: static int EncoderMMS( enum Mode mode, Word16 *param, UWord8 *stream, enum TXFrameType frame_type, enum Mode speech_mode ) { memset(stream, 0, block_size[mode]); *stream = toc_byte[mode]; stream++; [...] return block_size[mode]; It would be great if you could give me some further explanation. Probably I don't see the obvious point... Moreover, I want to leave the ffmpeg-code as is (if possible) and include the header after the encoding step of ffmpeg: avcodec_encode_audio(...,&buffer,...) shift buffer 1 position to the right buffer[0] = header. Or do I completely misunderstand the "header-thing"? Thanks in advance! Martin From finlayson at live555.com Fri Nov 3 07:24:20 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 3 Nov 2006 07:24:20 -0800 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: <454B254A.4040804@graphics.cs.uni-sb.de> References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> <454B254A.4040804@graphics.cs.uni-sb.de> Message-ID: >thanks for uour help so far! I looked at the "wis-streamer" code but I >don't really understand what you changed: > >Your code: > >int EncoderIncludeHeaderByte = 1; >static int EncoderMMS( enum Mode mode, Word16 *param, UWord8 *stream, enum > TXFrameType frame_type, enum Mode speech_mode ) >{ > Word32 j = 0, k; > Word16 *mask; > int resultFrameSize = block_size[mode] - !EncoderIncludeHeaderByte; > > memset(stream, 0, resultFrameSize); > > if (EncoderIncludeHeaderByte) { > *stream = toc_byte[mode]; > stream++; > } > >[...] > >return resultFrameSize; > >If I'm getting it right, the resultFrameSize is evaluated to >block_size[mode] (because !EncoderIncludeHeaderByte = 0). >So the code is the same as before: > >static int EncoderMMS( enum Mode mode, Word16 *param, UWord8 *stream, enum > TXFrameType frame_type, enum Mode speech_mode ) >{ > memset(stream, 0, block_size[mode]); > > *stream = toc_byte[mode]; > stream++; > >[...] > >return block_size[mode]; Sorry - my mistake. I had forgotten how the FFMPEG encoder works, and what "AMRAudioRTPSink"s requirements are. I had it all backwards. In fact, when delivering AMR frames to "AMRAudioRTPSink", we *don't* want to include the 1-byte header in each frame (because it instead gets included in a special RTP header). However, the FFMPEG encoder, by default, *does* include the 1-byte header in each frame, so we had to change the FFMPEG code, and, in the code that calls the FFMPEG code, do: extern int EncoderIncludeHeaderByte; EncoderIncludeHeaderByte = 0; and, for each frame fLastFrameHeader = toc_byte[ourAMRMode]; See "AMRAudioEncoder.cpp" in the "wis-streamer" code. Note that the change that I made to FFMPEG's "interf_enc.c" means that - by default - it works the same way as it did before (as you noted). It's only when the calling code sets EncoderIncludeHeaderByte = 0; that it behaves differently. I hope that clears things up. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Nov 3 07:39:25 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 3 Nov 2006 07:39:25 -0800 Subject: [Live-devel] About WMV support In-Reply-To: <20061103104854.75990.qmail@web35812.mail.mud.yahoo.com> References: <20061103104854.75990.qmail@web35812.mail.mud.yahoo.com> Message-ID: >Does there any plan for supporting WMV streaming? There's no current plan to support this. However, it could be done, because a RTP payload format for SVC video (the video codec now used for WMV) is currently being standardized by the IETF. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From darnold at futurec.net Fri Nov 3 12:30:54 2006 From: darnold at futurec.net (David Arnold) Date: Fri, 3 Nov 2006 12:30:54 -0800 Subject: [Live-devel] QuickTimeFileSink support for H.264/AVC In-Reply-To: Message-ID: I have added support for H.264/AVC to QuickTimeFileSink. The ultimate goal of this was to be able to capture a stream with two tracks (H.264 and PCMU audio) into a single container. It kinda/sortof works--well, not really. See below for issues. The files (QuickTimeFileSink.cpp,QuickTimeFileSink.hh) can be found here: http://homepage.mac.com/mukilteo/ I added the "avc1" and "avcC" atoms. Also, apparently for H.264 track data, a 32-bit frame size must precede the frame, so I had to hack the code to prepend this frame size. I'm not sure I did this correctly. The fmtp_spropparametersets() function is used to retrieve the H.264 parameter sets for use in the avcC atom. Issues: 1) This doesn't work when syncStreams=true, such as when the "-y" option is specified to openRTSP. I have spent several hours trying to debug this problem and I don't believe it was caused by my change. I suspect it existed before. When "-y" is passed to openRTSP and the resulting file is played in QuickTime, QuickTime crashes with a buffer overrun error. The file can be played in VLC, but the audio is intermitent and it isn't sync'd. 2) I believe there might be an existing bug in the stsz (sample sizes) atom. When the atom is a single entry table, the sample count is not zero, but the table is empty. I am using QTAtomizer found here (http://homepage.mac.com/ridgeworks/QTatomizer/index.htm) to debug this. I found this to be a very useful tool. Do you have any ideas as to why this won't work when trying to sync the streams? Thank you, Dave Arnold Future Concepts, La Verne The information contained in this electronic mail transmission is intended only for the use of the individual or entity named above and is privileged and confidential. If you are not the intended recipient, please do not read, copy, use or disclose this communication to others. Any dissemination, distribution or copying of this communication other than to the person or entity named above is strictly prohibited. If you have received this communication in error, please immediately delete it from your system. From 1049588 at aruba.it Sun Nov 5 07:30:16 2006 From: 1049588 at aruba.it (wisem) Date: Sun, 5 Nov 2006 16:30:16 +0100 Subject: [Live-devel] How to encode and stream from a raw RGB data source? Message-ID: <002b01c700ef$4be151f0$0201a8c0@ibookgray> Hi, I have written an OpenGL application that renders a 3D animation in a window. Now I would like to encode this animation and stream it using liveMedia library... But for this I think I have to encode my RGB raw frames (output from my OpenGL app) in a format suitable for the liveMedia streaming library. What format (and what library) I can use for encode my raw RGB frames (I would like a format that can support strange resolutions too, not only the standard ones)? Can you suggest to me an encoding format that is perfectly suitable for liveMedia library? For now, my app renders to an '.avi' file with 'Video for Windows' library and the video stream is encoded with MS-MPEG4 codec, but I would like to render, encode and stream in real-time. Do you think it's possible? Can liveMedia library reads directly from an AVI source? Any info or suggestion will be very appreciated... Thank you in advance, Wisem -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061105/c7bfefa0/attachment.html From dweber at robotics.net Sun Nov 5 10:41:58 2006 From: dweber at robotics.net (Dan Weber) Date: Sun, 5 Nov 2006 13:41:58 -0500 Subject: [Live-devel] Streaming H.264/RTP Message-ID: <20061105184158.GB22782@Barney.robotics.net> Hi there, I've noticed there are no examples of streaming h.264 video (over RTP) with liveMedia and I would like to use it as a library for my work. I think I have done the grunt work as far demuxing and transcoding with another application I've written that will output to a two fifo buffers. PCMu --> /tmp/ulaw_input0 H.264 --> /tmp/h264_input0 Is the easiest way to accomplish my task similar to the MPEG1or2 streaming example with H264 instead? Thanks for any suggestions, Dan From finlayson at live555.com Sun Nov 5 20:37:12 2006 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 5 Nov 2006 20:37:12 -0800 Subject: [Live-devel] Streaming H.264/RTP In-Reply-To: <20061105184158.GB22782@Barney.robotics.net> References: <20061105184158.GB22782@Barney.robotics.net> Message-ID: >I've noticed there are no examples of streaming h.264 video (over RTP) with >liveMedia and I would like to use it as a library for my work. Because this is a frequently-asked question, I have now included it in the FAQ: http://www.live555.com/liveMedia/faq.html#h264-streaming >I think I have done the grunt work as far demuxing and transcoding with >another application I've written that will output to a two fifo >buffers. > >PCMu --> /tmp/ulaw_input0 >H.264 --> /tmp/h264_input0 > >Is the easiest way to accomplish my task similar to the MPEG1or2 >streaming example with H264 instead? Yes, sort of. However, because you already have separate audio and video streams, you won't need to do any 'demultiplexing'. (And because your audio is u-law rather than MPEG, you should look to the WAV audio streaming demo apps for guidance on how to stream it.) Also, of course, both your audio and video streams will need to deliver accurate presentation timestamps, otherwise you have no hope of every synchronizing audio and video at the receiver end. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061105/80fcab15/attachment.html From shaswata at alumnux.com Sun Nov 5 23:04:07 2006 From: shaswata at alumnux.com (Shaswata Jash) Date: Mon, 6 Nov 2006 12:34:07 +0530 Subject: [Live-devel] How to encode and stream from a raw RGB data source? References: <002b01c700ef$4be151f0$0201a8c0@ibookgray> Message-ID: <002e01c70171$c0c7cbc0$2e0aa8c0@NITU> Hi Wisem, Indeed this is possible using live library. You have to encode your raw RGB frames to MPEG4 (ISO) video using some third party encoding library (e.g. open source ffmpeg). Then these encoded frames have to be fed to live library. To know about how to use these encoded frames in live, you could check out my replies to a topic named "Problem trying to use libavcodec and live555" in live mailing list. Also, i think there should not be any problem regarding resolution in ISO-MPEG4. With regards, Shaswata Jash --------------------------------------- Alumnus Software Ltd. Infinity, Tower II, 2nd Floor Plot A3, Block GP, Sector - V, Salt Lake City, Kolkata - 700 091, India Phone: (+91 33) 2357 5626/5627/5628 www.alumnux.com ----- Original Message ----- From: wisem To: LIVE555 Streaming Media - development & use Sent: Sunday, November 05, 2006 9:00 PM Subject: [Live-devel] How to encode and stream from a raw RGB data source? Hi, I have written an OpenGL application that renders a 3D animation in a window. Now I would like to encode this animation and stream it using liveMedia library... But for this I think I have to encode my RGB raw frames (output from my OpenGL app) in a format suitable for the liveMedia streaming library. What format (and what library) I can use for encode my raw RGB frames (I would like a format that can support strange resolutions too, not only the standard ones)? Can you suggest to me an encoding format that is perfectly suitable for liveMedia library? For now, my app renders to an '.avi' file with 'Video for Windows' library and the video stream is encoded with MS-MPEG4 codec, but I would like to render, encode and stream in real-time. Do you think it's possible? Can liveMedia library reads directly from an AVI source? Any info or suggestion will be very appreciated... Thank you in advance, Wisem ------------------------------------------------------------------------------ _______________________________________________ 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: http://lists.live555.com/pipermail/live-devel/attachments/20061105/e009794d/attachment-0001.html From marthi at graphics.cs.uni-sb.de Mon Nov 6 02:47:26 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Mon, 06 Nov 2006 11:47:26 +0100 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> <454B254A.4040804@graphics.cs.uni-sb.de> Message-ID: <454F12BE.4050009@graphics.cs.uni-sb.de> Hi Ross, thank you for your help so far, I really appreciate it! > Sorry - my mistake. I had forgotten how the FFMPEG encoder works, > and what "AMRAudioRTPSink"s requirements are. I had it all > backwards. In fact, when delivering AMR frames to "AMRAudioRTPSink", > we *don't* want to include the 1-byte header in each frame (because > it instead gets included in a special RTP header). However, the > FFMPEG encoder, by default, *does* include the 1-byte header in each > frame, so we had to change the FFMPEG code, and, in the code that > calls the FFMPEG code, do: > > extern int EncoderIncludeHeaderByte; > EncoderIncludeHeaderByte = 0; > and, for each frame > fLastFrameHeader = toc_byte[ourAMRMode]; > See "AMRAudioEncoder.cpp" in the "wis-streamer" code. > > Note that the change that I made to FFMPEG's "interf_enc.c" means > that - by default - it works the same way as it did before (as you > noted). It's only when the calling code sets > EncoderIncludeHeaderByte = 0; > that it behaves differently. > > I hope that clears things up. ok, that definitely cleared thinks up :) Anyway, its still not working...I changed the ffmpeg code and included fLastFrameHeader = toc_byte[ourAMRMode]; for every frame. Is the frame header restored after streaming over RTP? If not, I suppose ffmpeg expects the header in every frame and therefore the decoding is not working...if that's the case, do you have an example code for this, as well? Martin From finlayson at live555.com Mon Nov 6 04:11:23 2006 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 6 Nov 2006 04:11:23 -0800 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: <454F12BE.4050009@graphics.cs.uni-sb.de> References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> <454B254A.4040804@graphics.cs.uni-sb.de> <454F12BE.4050009@graphics.cs.uni-sb.de> Message-ID: >Is the frame header restored after streaming over RTP? No, not by default. However, the frame header byte is available - from the "AMRAudioRTPSource" - using the "lastFrameHeader()" member function. See, for example, the code for "AMRAudioFileSink". If you feed your incoming data (from "AMRAudioRTPSource" into an "AMRAudioFileSink", you'll end up with an AMR-format data file that you should be able to play using QuickTime Player (for example). > If not, I suppose >ffmpeg expects the header in every frame That's a FFMPEG-related question; you're going to have to figure that out yourself from looking at the code. I haven't yet used FFMPEG at all to *decode* AMR audio. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From 1049588 at aruba.it Mon Nov 6 04:36:35 2006 From: 1049588 at aruba.it (wisem) Date: Mon, 6 Nov 2006 13:36:35 +0100 Subject: [Live-devel] How to encode and stream from a raw RGB datasource? References: <002b01c700ef$4be151f0$0201a8c0@ibookgray> <002e01c70171$c0c7cbc0$2e0aa8c0@NITU> Message-ID: <010501c701a0$32a1d410$0201a8c0@ibookgray> Thank you very much. I will check that topic in the mailing list... Wisem ----- Original Message ----- From: Shaswata Jash To: LIVE555 Streaming Media - development & use Sent: Monday, November 06, 2006 8:04 AM Subject: Re: [Live-devel] How to encode and stream from a raw RGB datasource? Hi Wisem, Indeed this is possible using live library. You have to encode your raw RGB frames to MPEG4 (ISO) video using some third party encoding library (e.g. open source ffmpeg). Then these encoded frames have to be fed to live library. To know about how to use these encoded frames in live, you could check out my replies to a topic named "Problem trying to use libavcodec and live555" in live mailing list. Also, i think there should not be any problem regarding resolution in ISO-MPEG4. With regards, Shaswata Jash --------------------------------------- Alumnus Software Ltd. Infinity, Tower II, 2nd Floor Plot A3, Block GP, Sector - V, Salt Lake City, Kolkata - 700 091, India Phone: (+91 33) 2357 5626/5627/5628 www.alumnux.com ----- Original Message ----- From: wisem To: LIVE555 Streaming Media - development & use Sent: Sunday, November 05, 2006 9:00 PM Subject: [Live-devel] How to encode and stream from a raw RGB data source? Hi, I have written an OpenGL application that renders a 3D animation in a window. Now I would like to encode this animation and stream it using liveMedia library... But for this I think I have to encode my RGB raw frames (output from my OpenGL app) in a format suitable for the liveMedia streaming library. What format (and what library) I can use for encode my raw RGB frames (I would like a format that can support strange resolutions too, not only the standard ones)? Can you suggest to me an encoding format that is perfectly suitable for liveMedia library? For now, my app renders to an '.avi' file with 'Video for Windows' library and the video stream is encoded with MS-MPEG4 codec, but I would like to render, encode and stream in real-time. Do you think it's possible? Can liveMedia library reads directly from an AVI source? Any info or suggestion will be very appreciated... Thank you in advance, Wisem ---------------------------------------------------------------------------- _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel ------------------------------------------------------------------------------ _______________________________________________ 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: http://lists.live555.com/pipermail/live-devel/attachments/20061106/9facb736/attachment.html From victor_l2000 at hotmail.com Mon Nov 6 15:19:53 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Mon, 06 Nov 2006 15:19:53 -0800 Subject: [Live-devel] problem with testMPEG1or2VideoStreamer Message-ID: Hello, I am just began to use the liveMedia library. I am trying to use the testProgs, but i got error when i use testMPEG1or2VideoStreamer with an MPEG file: Elementary Video Stream file. The error info is: BasicTaskScheduler::SingleStep(): select() fails: No error I did not change the code in testMPEG1or2VideoStreamer. Could anyone tell me what the problem is? Thanks in advance. Vic _________________________________________________________________ Try the next generation of search with Windows Live Search today! http://imagine-windowslive.com/minisites/searchlaunch/?locale=en-us&source=hmtagline From finlayson at live555.com Mon Nov 6 15:29:17 2006 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 6 Nov 2006 15:29:17 -0800 Subject: [Live-devel] problem with testMPEG1or2VideoStreamer In-Reply-To: References: Message-ID: >Hello, > >I am just began to use the liveMedia library. I am trying to use the >testProgs, but i got error when i use testMPEG1or2VideoStreamer with an MPEG >file: Elementary Video Stream file. The error info is: > BasicTaskScheduler::SingleStep(): select() fails: No error >I did not change the code in testMPEG1or2VideoStreamer. Are you running an old version of Windows (prior to XP)? If so (or perhaps even if not), try adding #define READ_FROM_FILES_SYNCHRONOUSLY 1 to the start of "liveMedia/ByteStreamFileSource.cpp", and recompile. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From victor_l2000 at hotmail.com Mon Nov 6 15:35:34 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Mon, 06 Nov 2006 15:35:34 -0800 Subject: [Live-devel] problem with testMPEG1or2VideoStreamer In-Reply-To: Message-ID: Hello, I am just began to use the liveMedia library. I am trying to use the testProgs, but i got error when i use testMPEG1or2VideoStreamer with an MPEG file: Elementary Video Stream file. The error info is: BasicTaskScheduler::SingleStep(): select() fails: No error I did not change the code in testMPEG1or2VideoStreamer, except the input file name. and seems the problem appeared at the end of main(): env->taskScheduler().doEventLoop(); // does not return Work environment: Visual Studio .Net 2003 Many thanks, Vic _________________________________________________________________ Stay in touch with old friends and meet new ones with Windows Live Spaces http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us From victor_l2000 at hotmail.com Mon Nov 6 17:46:22 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Mon, 06 Nov 2006 17:46:22 -0800 Subject: [Live-devel] problem with testMPEG1or2VideoStreamer In-Reply-To: Message-ID: Thanks Ross! The problem was solved according to your suggestion. Cheers! Vic >From: Ross Finlayson >Reply-To: LIVE555 Streaming Media - development & >use >To: LIVE555 Streaming Media - development & use > >Subject: Re: [Live-devel] problem with testMPEG1or2VideoStreamer >Date: Mon, 6 Nov 2006 15:29:17 -0800 > > >Hello, > > > >I am just began to use the liveMedia library. I am trying to use the > >testProgs, but i got error when i use testMPEG1or2VideoStreamer with an >MPEG > >file: Elementary Video Stream file. The error info is: > > BasicTaskScheduler::SingleStep(): select() fails: No error > >I did not change the code in testMPEG1or2VideoStreamer. > >Are you running an old version of Windows (prior to XP)? If so (or >perhaps even if not), try adding > >#define READ_FROM_FILES_SYNCHRONOUSLY 1 > >to the start of "liveMedia/ByteStreamFileSource.cpp", and recompile. >-- > >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 _________________________________________________________________ Stay in touch with old friends and meet new ones with Windows Live Spaces http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us From lucabe72 at email.it Tue Nov 7 02:46:16 2006 From: lucabe72 at email.it (Luca Abeni) Date: Tue, 07 Nov 2006 11:46:16 +0100 Subject: [Live-devel] Using an SDP file to receive an RTP stream Message-ID: <1162896376.1470.18.camel@labeni.mm.mbigroup.it> Hi all, I have a pcap file containing an RTP stream (well, it is really 2 streams - audio and video - plus the RTCP SR packets), and an SDP file describing the stream. If I use "tcpreplay ", the resulting stream plays fine with "vlc file.sdp", so I think the live555 libraries can correctly receive it. Now, I'd like to save it in a .mp4 file, by using openrtsp or a similar program. But openrtsp expects an RTSP server, that I currently do not have... I tried to modify it to read the SDP from a file (instead of using the rtso describe command, but it fails when trying to issue the rtsp setup command. So, I am wondering if anyone has suggestions or hints about how to hack openrtsp for directly using an SDP file (instead of an rtsp:// url). Or maybe it would be easier to write a "fake" rtsp server that only answers the commands issued by openrtsp and returns my SDP, without really streaming any audio and video? Ideas are welcome. Thanks, Luca -- _____________________________________________________________________________ Copy this in your signature, if you think it is important: N O W A R ! ! ! From finlayson at live555.com Tue Nov 7 05:20:27 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 7 Nov 2006 05:20:27 -0800 Subject: [Live-devel] Using an SDP file to receive an RTP stream In-Reply-To: <1162896376.1470.18.camel@labeni.mm.mbigroup.it> References: <1162896376.1470.18.camel@labeni.mm.mbigroup.it> Message-ID: >So, I am wondering if anyone has suggestions or hints about how to hack >openrtsp for directly using an SDP file (instead of an rtsp:// url). First, I presume that this is a multicast stream, rather than a unicast stream. (A unicast stream cannot be received using a SDP description alone, because - for unicast streams - you need aditional port number information that can be determined only using the RTSP protocol (SETUP and PLAY).) Receiving a multicast stream from a SDP description is easy. Don't "hack openRTSP"; instead, just write your own application that: 1/ Creates a "MediaSession" object, using MediaSession* mediaSession = MediaSession::createNew(*env, sdpDescription); 2/ Iterate through each of the session's "MediaSubsession" objects, 'initiating' each one. (This creates "RTPSource" and "RTCPInstance" objects for each.) subsession->initiate(); 3/ Then, for each "MediaSubsession", create a 'sink' object, and start playing it, to receive the stream: sink->startPlaying(*(subsession->readSource()), ...); -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Tue Nov 7 09:57:02 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 7 Nov 2006 09:57:02 -0800 Subject: [Live-devel] QuickTimeFileSink support for H.264/AVC In-Reply-To: References: Message-ID: >I have added support for H.264/AVC to QuickTimeFileSink. Thanks. This will get included in the next release of the software. >Do you have any ideas as to why this won't work when trying to sync the >streams? I'm not sure. Unfortunately - by storing sample durations rather than absolute sample timestamps - the ".mov"/".mp4" file format is poorly designed for ensuring proper a/v synchronization, especially for an application like this (where we're trying to store data from an incoming RTP/RTCP stream). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From victor_l2000 at hotmail.com Tue Nov 7 15:31:40 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Tue, 07 Nov 2006 15:31:40 -0800 Subject: [Live-devel] info about: RTSP server monitoring and handle the request of one RTSP client Message-ID: Hello, I need more info about the RTSP server monitoring and handle the request of one RTSP client. Is there any examples or detail documentation about this part? Thank you very much! Vic _________________________________________________________________ Stay in touch with old friends and meet new ones with Windows Live Spaces http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us From jers at inwind.it Wed Nov 8 01:44:06 2006 From: jers at inwind.it (jers at inwind.it) Date: Wed, 8 Nov 2006 10:44:06 +0100 Subject: [Live-devel] Setting StreamState referenceCount Message-ID: Hi all, I?m carrying out a streaming server based on the ?Live? library. My media subsession is similar to the MPEG4VideoFileServerMediaSubsession but my source implements an onClosure method that informs the subsession about the end of the playing and causes the closure of RTP and RTCP connections with the client. Moreover, the reuse flag is set, so a single source is used for more RTSP clients. Suppose we have two clients streaming the same source, i.e. StreamState::fReferenceCount defined in OnDemandServerMediaSubsession file is 2. If the source ends, the static afterPlayingStreamState function (defined in the same file) calls the StreamState::reclaim() which sets to zero the fReferenceCount, although 2 clients still have an active RTSP connection. At this state, the players show a fix image. When these RTSP clients send their teardowns to the server, the RTSP server goes in fault. In particular, the first teardown is normally managed. - The RTSPServer::RTSPClientSession::handleCmd_TEARDOWN sets the RTSPClientSession::fSessionIsActive to false. - So, the RTSPServer::RTSPClientSession::incomingRequestHandler1 deletes theRTSPClientSession. - The RTSPClientSession destructor leads to the OnDemandServerMediaSubsession::deleteStream which finds that fReferenceCount is zero, and so deletes the streamState In the same way, when the second teardown is received, the OnDemandServerMediaSubsession::deleteStream try to delete the streamState that is already deleted, and so it goes in segmentation fault. To fix this problem I suggest to remove the line 501 in file OnDemandServerMediaSubsession.cpp that sets to zero the StreamState::fReferenceCount. What do you think about that? Thanks. Bye Jers ------------------------------------------------------ Scopri il nuovo MOTOROLA K1, il cellulare con superficie frontale a specchio. Se sarai fortunato potrai anche vincerne uno! Clicca e vinci ! http://click.libero.it/motorola8nov From finlayson at live555.com Wed Nov 8 15:49:50 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 8 Nov 2006 15:49:50 -0800 Subject: [Live-devel] Setting StreamState referenceCount In-Reply-To: References: Message-ID: >To fix this problem I suggest to remove the line 501 in file >OnDemandServerMediaSubsession.cpp that sets to zero the >StreamState::fReferenceCount. > >What do you think about that? Yes, I think you're right. This will be fixed in the next release of the software. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From rmpg2001 at gmail.com Thu Nov 9 02:52:18 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Thu, 9 Nov 2006 11:52:18 +0100 Subject: [Live-devel] Streaming H.264 Message-ID: <389189e20611090252p49ccc9batec89215dd3cb076c@mail.gmail.com> Hi! I just began to use the live library. I want to stream a multicast h.264video (only video, not audio) and I've seen that there isn't any application because it's not totally standardized yet. I have another application decoding the video and that will output NAL units. If I want to modify one of the test programs to stream that data that I have where can I began doing this? Thanks for any suggestions, Ramon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061109/443f48f4/attachment.html From jers at inwind.it Thu Nov 9 03:34:35 2006 From: jers at inwind.it (jers at inwind.it) Date: Thu, 9 Nov 2006 12:34:35 +0100 Subject: [Live-devel] Setting StreamState referenceCount Message-ID: Hi, thanks for your feedback! Now I'd like to close automatically all the open RTSPClientSessions referred to a subsession when its source communicates the end of playing. I thought a solution which I don't like so much. I'm creating a queue of RTSPClientsSession's pointers in my subsession. Therefore, the subsession is able to close all its RTSPClientSessions after the source announce. What do you think about my idea. Is there a better way to solve the issue? bye. Jers > >To fix this problem I suggest to remove the line 501 in file > >OnDemandServerMediaSubsession.cpp that sets to zero the > >StreamState::fReferenceCount. > > > >What do you think about that? > > Yes, I think you're right. This will be fixed in the next release of > the software. > -- > > 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 > ------------------------------------------------------ Nuovo MOTOROLA MOTOKRZR K1. Superficie a specchio, fotocamera da 2 Megapixel e lettore MP3 integrato.Clicca e vinci ! http://click.libero.it/motorola9nov From finlayson at live555.com Thu Nov 9 04:56:33 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 9 Nov 2006 04:56:33 -0800 Subject: [Live-devel] Setting StreamState referenceCount In-Reply-To: References: Message-ID: >Now I'd like to close automatically all the open RTSPClientSessions >referred to a subsession when its source communicates the end of >playing. This should happen automatically, due to the RTSP server's normal 'client liveness' mechanism (by default, within 45 seconds). You don't need to modify the code at all to make this happen. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From naskel at gmail.com Fri Nov 10 07:22:30 2006 From: naskel at gmail.com (Naskel) Date: Fri, 10 Nov 2006 16:22:30 +0100 Subject: [Live-devel] Project for streaming audio and video with MPEGTS/UDP unicast Message-ID: Hello all, Im new to this memberlist, i first would like to say thank you for your nice library, it given me alot of chance to realise my project ! Well, now i have a some problem to resolve : I would like to stream my data encoded from ffmpeg (Audio in mp2, and Video in MPEGTS) over UDP (in unicast mode) with a package format of MPEG2 TS, so i watched the whole mailing to see if any project like that already exist (i do not want to rewrite the wheel), i found someone who wanted to stream OpenGL video data over network, and someone else pointed him to a discution with a source code ( live555 wis-streamer ), so i looked around the source code, to see how i can implement my projet (without too much Headach ). I figured out (i think, that's why I am here to get a proper point of view from experts like you all) how to implement my needs : 1) create a subclass of ByteStreamFimeSource for audio, and another one for the video (with the derived function doGetNextFrame) 2) create a subclass of MPEG2TransportStreamMultiplexor (like MPEG2TransportStreamFromESSource) to import the needed source : addSourceVideo and addSourceAudio 3) create my BasicUDPSink and stream that Can you please tell me if I am on the good way to do my projet ? And, if any other solution already exist, can you point me on ? Thank you in advance, Best regards, Olivier -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061110/0960ccd8/attachment.html From lucabe72 at email.it Fri Nov 10 07:35:59 2006 From: lucabe72 at email.it (Luca Abeni) Date: Fri, 10 Nov 2006 16:35:59 +0100 Subject: [Live-devel] Using an SDP file to receive an RTP stream In-Reply-To: References: <1162896376.1470.18.camel@labeni.mm.mbigroup.it> Message-ID: <1163172959.1610.75.camel@labeni.mm.mbigroup.it> Hi Ross, On Tue, 2006-11-07 at 05:20 -0800, Ross Finlayson wrote: > >So, I am wondering if anyone has suggestions or hints about how to hack > >openrtsp for directly using an SDP file (instead of an rtsp:// url). > > First, I presume that this is a multicast stream, rather than a > unicast stream. Yes, sorry... I forgot to say that I am using multicast [...] > Receiving a multicast stream from a SDP description is easy. Don't > "hack openRTSP"; instead, just write your own application that: > 1/ Creates a "MediaSession" object, using > MediaSession* mediaSession = MediaSession::createNew(*env, > sdpDescription); > 2/ Iterate through each of the session's "MediaSubsession" objects, > 'initiating' each one. (This creates "RTPSource" and "RTCPInstance" > objects for each.) > subsession->initiate(); > 3/ Then, for each "MediaSubsession", create a 'sink' object, and > start playing it, to receive the stream: > sink->startPlaying(*(subsession->readSource()), ...); This worked perfectly, thanks for the explaination! Thanks, Luca -- _____________________________________________________________________________ Copy this in your signature, if you think it is important: N O W A R ! ! ! From marthi at graphics.cs.uni-sb.de Fri Nov 10 08:08:52 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Fri, 10 Nov 2006 17:08:52 +0100 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> <454B254A.4040804@graphics.cs.uni-sb.de> <454F12BE.4050009@graphics.cs.uni-sb.de> Message-ID: <4554A414.7020307@graphics.cs.uni-sb.de> Hi Ross, Ross Finlayson wrote: >>Is the frame header restored after streaming over RTP? > > > No, not by default. However, the frame header byte is available - > from the "AMRAudioRTPSource" - using the "lastFrameHeader()" member > function. > > See, for example, the code for "AMRAudioFileSink". If you feed your > incoming data (from "AMRAudioRTPSource" into an "AMRAudioFileSink", > you'll end up with an AMR-format data file that you should be able to > play using QuickTime Player (for example). > > >> If not, I suppose >>ffmpeg expects the header in every frame > > > That's a FFMPEG-related question; you're going to have to figure that > out yourself from looking at the code. I haven't yet used FFMPEG at > all to *decode* AMR audio. its working now, thanks a lot for your help! The ffmpeg decoder expects the header in every frame so one has to restore it before decoding. I still have a small problem: I have noticed regular cracks when streaming AMR over RTP. I tracked it down to a timestamp problem. As I understand it, I have to increase the fPresentationTime by 20 ms for every frame, because AMR_NB and AMR_WB contain 20 ms of sound data. Is that right? Martin From finlayson at live555.com Fri Nov 10 11:20:02 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 10 Nov 2006 11:20:02 -0800 Subject: [Live-devel] Problems with Streaming of AMR In-Reply-To: <4554A414.7020307@graphics.cs.uni-sb.de> References: <454640F1.9040904@graphics.cs.uni-sb.de> <45477275.5070500@graphics.cs.uni-sb.de> <454B254A.4040804@graphics.cs.uni-sb.de> <454F12BE.4050009@graphics.cs.uni-sb.de> <4554A414.7020307@graphics.cs.uni-sb.de> Message-ID: >I still have a small problem: I have noticed regular cracks when >streaming AMR over RTP. I tracked it down to a timestamp problem. As I >understand it, I have to increase the fPresentationTime by 20 ms for >every frame, because AMR_NB and AMR_WB contain 20 ms of sound data. Is >that right? I don't know - are you talking about the sender or the receiver? Anyway, at the sender end, your source object (i.e., from your FFMPEG encoder) must generate accurate presentation times (and assign them to the "fPresentationTime" member variable when implementing "doGetNextFrame()". That's true, in general, for every type of data source. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From xcsmith at rockwellcollins.com Sun Nov 12 15:31:17 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Sun, 12 Nov 2006 17:31:17 -0600 Subject: [Live-devel] Cannot inherit from RTSPClient Message-ID: I recall an update notice saying that some class destructors were made virtual to allow for inheritance. I thought RTSPClient was mentioned as one of these classes. However, in the last build of the library, I cannot inherit from RTSPClient. I think this is because the constructor is private? ~Medra From finlayson at live555.com Sun Nov 12 16:37:16 2006 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 12 Nov 2006 16:37:16 -0800 Subject: [Live-devel] Cannot inherit from RTSPClient In-Reply-To: References: Message-ID: >I recall an update notice saying that some class destructors were made >virtual to allow for inheritance. I thought RTSPClient was mentioned as >one of these classes. However, in the last build of the library, I cannot >inherit from RTSPClient. I think this is because the constructor is >private? OK, I've now changed it to "protected:". (This will be included in the next release of the software.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From rajeshkumar.r at imimobile.com Mon Nov 13 04:17:46 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Mon, 13 Nov 2006 17:47:46 +0530 Subject: [Live-devel] How to seperate Audio and video Data in RTP format Message-ID: <032c01c7071d$ba3092e0$f801000a@imidomain.com> Hi all I am recving Audio and video Data through RTP headers.I have to seperate audio and video Data seperately to play the information using 3G-H324M on a mobile Handset. with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061113/a16e0945/attachment.html From slist at lilotux.net Mon Nov 13 07:30:19 2006 From: slist at lilotux.net (Stephane List) Date: Mon, 13 Nov 2006 16:30:19 +0100 Subject: [Live-devel] How to seperate Audio and video Data in RTP format In-Reply-To: <032c01c7071d$ba3092e0$f801000a@imidomain.com> References: <032c01c7071d$ba3092e0$f801000a@imidomain.com> Message-ID: <45588F8B.1060508@lilotux.net> Use RTP payload field in RTP header, they should differ in audio and video. Regards Rajesh wrote: > *Hi all* > *I am recving Audio and video Data through RTP headers.I have to > seperate audio and video Data seperately to play the information using > 3G-H324M on a mobile Handset.* > ** > *with Regards* > *Rajesh* > > > > ------------------------------------------------------------------------ > > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel -------------- next part -------------- A non-text attachment was scrubbed... Name: slist.vcf Type: text/x-vcard Size: 236 bytes Desc: not available Url : http://lists.live555.com/pipermail/live-devel/attachments/20061113/2549b181/attachment.vcf From finlayson at live555.com Mon Nov 13 16:37:56 2006 From: finlayson at live555.com (Ross Finlayson) Date: Mon, 13 Nov 2006 16:37:56 -0800 Subject: [Live-devel] How to seperate Audio and video Data in RTP format In-Reply-To: <45588F8B.1060508@lilotux.net> References: <032c01c7071d$ba3092e0$f801000a@imidomain.com> <45588F8B.1060508@lilotux.net> Message-ID: >Use RTP payload field in RTP header, they should differ in audio and video. The various "RTPSource" classes already look for specific RTP payload type numbers; you don't need to do this yourself. Just create appropriate "RTPSource" classes for each media type, and read from them. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From phujka at gmail.com Tue Nov 14 04:48:13 2006 From: phujka at gmail.com (Hujka Petr) Date: Tue, 14 Nov 2006 13:48:13 +0100 Subject: [Live-devel] Media position seeking Message-ID: <88b09ad40611140448r5134ca96md7b293509b0f9222@mail.gmail.com> Hi all, is there any possibility of seeking in media file and start streaming from this position? I need to stream very large multimedia files (coming out from video-conference). Because of this, i don't want to stream whole data, but only part of it (from time to time). Is there any possibility how to do it? Thx for response. Petr -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061114/1066b13a/attachment.html From lkovacs at xperts.hu Tue Nov 14 06:35:30 2006 From: lkovacs at xperts.hu (Levente Kovacs) Date: Tue, 14 Nov 2006 15:35:30 +0100 Subject: [Live-devel] stream stops Message-ID: <20061114153530.028ecde1.lkovacs@xperts.hu> Hi all, I have a great problem I can't track. An IP camera with LIVE555 version 2004.12.28 is streaming to an application with LIVE555 version 2006.10.27. The problem is that after a half an hour, the camera stops the stream. The application is waiting for the stream. Moreover, if I start the stream with the openRTSP test program it seems to work just fine. Note that the camera can be accessed after a power cycle after the half an hour period. Could anyone tell me what can cause the trouble? I am totally stuck. The openRTSP and the application code is almost the same. Levente From marthi at graphics.cs.uni-sb.de Tue Nov 14 06:44:16 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Tue, 14 Nov 2006 15:44:16 +0100 Subject: [Live-devel] Problems with receiving reports on sender side Message-ID: <4559D640.409@graphics.cs.uni-sb.de> Hello Ross, I have the following Problem: If I access the the transmissionStatsDB on the sender side, I only get 0 for Jitter and so on. However, on the receiver side the access to the receptionStatsDB works fine. I searched the faq and the mailing-list archive and found that I have to use changeDestinationParameters() on the receiver side after creating the groupsocks: Groupsock* rtcp_socket = new Groupsock(getUsageEnvironment(), ip->getINetAddr(), rtcp_port,TTL) rtcp_socket->changeDestinationParameters(ip->getINetAddr(), rtcp_port, 255); Unfortunately the result is still the same. Might this problem somehow be related to unicast or multicast streaming? Thanks for helping in advance! Martin From finlayson at live555.com Tue Nov 14 10:19:17 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 14 Nov 2006 10:19:17 -0800 Subject: [Live-devel] Problems with receiving reports on sender side In-Reply-To: <4559D640.409@graphics.cs.uni-sb.de> References: <4559D640.409@graphics.cs.uni-sb.de> Message-ID: >I have the following Problem: >If I access the the transmissionStatsDB on the sender side, I only get 0 >for Jitter and so on. However, on the receiver side the access to the >receptionStatsDB works fine. [...] > Might this problem somehow >be related to unicast or multicast streaming? Without knowing more about your application, it's difficult to say. Note that if you run one of the demo server applications (e.g., "testOnDemandRTSPServer" or "test*Streamer"), it should be receiving RTCP "Reception Report" (RR) packets from clients (and thus updating stats) just fine. So you may wish to use these as a starting point. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From marthi at graphics.cs.uni-sb.de Wed Nov 15 05:11:34 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Wed, 15 Nov 2006 14:11:34 +0100 Subject: [Live-devel] Problems with receiving reports on sender side In-Reply-To: References: <4559D640.409@graphics.cs.uni-sb.de> Message-ID: <455B1206.2050106@graphics.cs.uni-sb.de> Hi Ross, Ross Finlayson wrote: >>I have the following Problem: >>If I access the the transmissionStatsDB on the sender side, I only get 0 >>for Jitter and so on. However, on the receiver side the access to the >>receptionStatsDB works fine. > > > [...] > > >> Might this problem somehow >>be related to unicast or multicast streaming? > > > > Without knowing more about your application, it's difficult to say. > Note that if you run one of the demo server applications (e.g., > "testOnDemandRTSPServer" or "test*Streamer"), it should be receiving > RTCP "Reception Report" (RR) packets from clients (and thus updating > stats) just fine. So you may wish to use these as a starting point. > thanks for your answer. As you suggested I started with testMP3Streamer. I added these to functions just above main() in testMP3Streamer: void handleRR(void* clientData) { std::cerr << "Received ReceiverReport" << std::endl; } void handleSR(void* clientData) { std::cerr << "Received SenderReport" << std::endl; } and after sessionState.rtcpInstance = RTCPInstance::createNew(...) I added: sessionState.rtcpInstance->setRRHandler(handleRR,sessionState.sink); sessionState.rtcpInstance->setSRHandler(handleSR,sessionState.sink); In my opinion, only the setRRHandler() is relevant for the Sender because its for receiving the RR packets, and I could use the transmissionStatsDB for accessing the RR packets, right? Anyhow, just in case I misunderstood something I added both. If I start the streamer and use vlc for playback, I hear the music, but I don't get any output from the handle*() methods. Did I use them incorrectly or what is the problem here? Thanks, Martin From finlayson at live555.com Wed Nov 15 11:08:42 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 15 Nov 2006 11:08:42 -0800 Subject: [Live-devel] Problems with receiving reports on sender side In-Reply-To: <455B1206.2050106@graphics.cs.uni-sb.de> References: <4559D640.409@graphics.cs.uni-sb.de> <455B1206.2050106@graphics.cs.uni-sb.de> Message-ID: > > Without knowing more about your application, it's difficult to say. >> Note that if you run one of the demo server applications (e.g., >> "testOnDemandRTSPServer" or "test*Streamer"), it should be receiving >> RTCP "Reception Report" (RR) packets from clients (and thus updating >> stats) just fine. So you may wish to use these as a starting point. >> > >thanks for your answer. As you suggested I started with testMP3Streamer. >I added these to functions just above main() in testMP3Streamer: > > void handleRR(void* clientData) { > std::cerr << "Received ReceiverReport" << std::endl; > } > > void handleSR(void* clientData) { > std::cerr << "Received SenderReport" << std::endl; > } > >and after sessionState.rtcpInstance = RTCPInstance::createNew(...) I added: > >sessionState.rtcpInstance->setRRHandler(handleRR,sessionState.sink); >sessionState.rtcpInstance->setSRHandler(handleSR,sessionState.sink); Another thing you could do is add #define DEBUG 1 to the start of "RTCP.cpp", and recompile. This will tell you if you receive any RTCP (RR) reports. >If I start the streamer and use vlc for playback, I hear the music, but >I don't get any output from the handle*() methods. Did I use them >incorrectly or what is the problem here? I don't know - it's possible that VLC is the problem, and that (for some reason) it's not sending RTCP reports. Alternatively, you could try running the "testMP3Receiver" demo application, which should send RTCP reports OK. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From rajeshkumar.r at imimobile.com Thu Nov 16 01:26:31 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Thu, 16 Nov 2006 14:56:31 +0530 Subject: [Live-devel] Audio and video RTP packets Message-ID: <021801c70961$4cfff8f0$f801000a@imidomain.com> Hi All Audio and Video Data comes on one port or uses different port.For Session we are using RTSP.I am unable to distinguish audio and video RTP packets seperately. with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/e642c64a/attachment.html From Fabrice.Aeschbacher at siemens.com Thu Nov 16 03:00:23 2006 From: Fabrice.Aeschbacher at siemens.com (Aeschbacher, Fabrice) Date: Thu, 16 Nov 2006 12:00:23 +0100 Subject: [Live-devel] G 711 In-Reply-To: <021801c70961$4cfff8f0$f801000a@imidomain.com> Message-ID: Hi, Does the Streaming Media library support the Audio-Codec G.711 (A-law or mu-law)? Best regards, Fabrice Aeschbacher -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/5875bcba/attachment.html From rmpg2001 at gmail.com Thu Nov 16 03:09:54 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Thu, 16 Nov 2006 12:09:54 +0100 Subject: [Live-devel] H.264 Streaming Message-ID: <389189e20611160309k5a93d5eaybd880389403392e0@mail.gmail.com> Hi, I'm a little new with live library and streamig. I am trying to adapt a testProg to stream .h264. I am modifying testMPEG4VideoStreamer. I change the videoSource pointer to my own class OurH264VideoStreamFramer pointer, and then I change testMPEG4VideoStreamer line 57 to: videoSink = H264VideoRTPSink::createNew(*env, &rtpGroupsock, 97,90000,"H264") ; and line 120 to: videoSource = OurH264VideoStreamFramer::createNew(*env, videoES); but I have this errors: testH264VideoStreamer.cpp(102) : error C2243: 'type cast' : conversion from 'class OurH264VideoStreamFramer *' to 'class Medium *' exists, but is inaccessible testH264VideoStreamer.cpp(126) : error C2243: 'type cast' : conversion from 'class OurH264VideoStreamFramer *' to 'class MediaSource &' exists, but is inaccessible ?Why is it inaccessible to cast my new class? It's no different from testMPEG4VideoStreamer, is it? I derived my class from H264VideoStreamer and this class derives from FramedFilter as similar as MPEG4VideoStreamer does. Could anyone tell me what the problem is? Thanks in advance. Ramon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/477270bb/attachment.html From finlayson at live555.com Thu Nov 16 05:39:28 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 16 Nov 2006 05:39:28 -0800 Subject: [Live-devel] G 711 In-Reply-To: References: Message-ID: >Does the Streaming Media library support the Audio-Codec >G.711 (A-law or mu-law)? Conversion of PCM<->uLaw is supported (see "uLawAudioFilter.hh,cpp" and its use in, e.g., "testWAVAudioStreamer"). Conversion of PCM<->aLaw is not currently supported, but could easily be added, using code similar to the existing "uLawFromPCMAudioSource" and "PCMFromuLawAudioSource" classes. Feel free to add this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/1e7f512a/attachment.html From hartman at videolan.org Thu Nov 16 11:36:04 2006 From: hartman at videolan.org (Derk-Jan Hartman) Date: Thu, 16 Nov 2006 20:36:04 +0100 Subject: [Live-devel] compilation problem Message-ID: I get the following with gcc 4 on my macs: cd mediaServer ; make c++ -c -I../UsageEnvironment/include -I../groupsock/include -I../ liveMedia/include -I../BasicUsageEnvironment/include -I. - march=pentium-m -mtune=prescott -DBSD=1 -O -DSOCKLEN_T=socklen_t - DUSE_LOCALE -DHAVE_SOCKADDR_LEN=1 -Wall live555MediaServer.cpp c++ -c -I../UsageEnvironment/include -I../groupsock/include -I../ liveMedia/include -I../BasicUsageEnvironment/include -I. - march=pentium-m -mtune=prescott -DBSD=1 -O -DSOCKLEN_T=socklen_t - DUSE_LOCALE -DHAVE_SOCKADDR_LEN=1 -Wall DynamicRTSPServer.cpp c++ -o live555MediaServer -L. live555MediaServer.o DynamicRTSPServer.o ../liveMedia/libliveMedia.a ../groupsock/ libgroupsock.a ../UsageEnvironment/libUsageEnvironment.a ../ BasicUsageEnvironment/libBasicUsageEnvironment.a /usr/bin/ld: Undefined symbols: TaskScheduler::rescheduleDelayedTask(void*&, long long, void (*) (void*), void*) UsageEnvironment::UsageEnvironment(TaskScheduler&) UsageEnvironment::~UsageEnvironment() typeinfo for UsageEnvironment TaskScheduler::TaskScheduler() TaskScheduler::~TaskScheduler() typeinfo for TaskScheduler collect2: ld returned 1 exit status make[3]: *** [live555MediaServer] Error 1 make[2]: *** [mediaServer/mediaServer] Error 2 make[1]: *** [.live] Error 2 make: *** [src] Error 2 DJ From finlayson at live555.com Thu Nov 16 13:37:04 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 16 Nov 2006 13:37:04 -0800 Subject: [Live-devel] compilation problem In-Reply-To: References: Message-ID: It works OK for me. Try doing make clean ./genMakefiles macosx make -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From binli1115 at 163.com Thu Nov 16 17:25:32 2006 From: binli1115 at 163.com (binli1115) Date: Fri, 17 Nov 2006 09:25:32 +0800 (CST) Subject: [Live-devel] I can't accept the others letters Message-ID: <455D0F8C.000013.15450@bj163app9.163.com> hellow all: I have accept the letter of the mail list that I have been accepted,but I can't accept the others letters .What should I do? Good luck! yours bin lee -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/d7fc721d/attachment.html From binli1115 at 163.com Thu Nov 16 19:23:23 2006 From: binli1115 at 163.com (binli1115) Date: Fri, 17 Nov 2006 11:23:23 +0800 (CST) Subject: [Live-devel] The mean of this sentence Message-ID: <455D2B2B.00011D.15745@bj163app9.163.com> hellow all: In the message of VLC media player?what's the mean of this sentence "mp4 warning: DEMUX_GET_FPS unimplemented !!" Good luck!! yours binli -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/9ca1ab34/attachment-0001.html From finlayson at live555.com Thu Nov 16 21:54:34 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 16 Nov 2006 21:54:34 -0800 Subject: [Live-devel] The mean of this sentence In-Reply-To: <455D2B2B.00011D.15745@bj163app9.163.com> References: <455D2B2B.00011D.15745@bj163app9.163.com> Message-ID: > >hellow all: > > In the message of VLC media player?Cwhat's the mean of this sentence >"mp4 warning: DEMUX_GET_FPS unimplemented !!" That message is not printed by the "LIVE555 Streaming Media" code; it is printed somewhere in the rest of VLC. You should ask a VLC mailing list about this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/5f580d82/attachment.html From rajeshkumar.r at imimobile.com Thu Nov 16 23:06:18 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Fri, 17 Nov 2006 12:36:18 +0530 Subject: [Live-devel] unabke to get audio and video port Message-ID: <009501c70a16$e13650e0$f801000a@imidomain.com> Hi All I am using liveMedia "TestDemandOnRTSPServer" as Server.I have made a client. Client is successfully connecting with client. client is issuing "DESCRIBE" command and sdp response is also recvd. I must get audio and video for the below. but I am getting only for video with No port specified. m=video 0 RTP/AVP 96 with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/4f4c120e/attachment.html From rajeshkumar.r at imimobile.com Thu Nov 16 23:28:32 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Fri, 17 Nov 2006 12:58:32 +0530 Subject: [Live-devel] doubt => Transport: RTP/AVP; unicast; client_port=4588-4589; server_port=6256-6257 Message-ID: <012301c70a19$fc5900e0$f801000a@imidomain.com> Hi All, Transport: RTP/AVP;unicast;client_port=4588-4589;server_port=6256-6257 whether 6256 --- audio and 6257--video.need confirmation,then what is the port need to be used for RTCP. with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061116/0b17315d/attachment.html From finlayson at live555.com Fri Nov 17 00:01:09 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 00:01:09 -0800 Subject: [Live-devel] unabke to get audio and video port In-Reply-To: <009501c70a16$e13650e0$f801000a@imidomain.com> References: <009501c70a16$e13650e0$f801000a@imidomain.com> Message-ID: >I am using liveMedia "TestDemandOnRTSPServer" as Server.I have made a client. Why are you not using our library to implement your client? If you used our "openRTSP" demo application (that uses our "RTSPClient" class), you would already have an example of a working client. >Client is successfully connecting with client. >client is issuing "DESCRIBE" command and sdp response is also recvd. >I must get audio and video for the below. >but I am getting only for video with No port specified. > >m=video 0 RTP/AVP 96 Because the stream is unicast, the port numbers (at both ends) are set up later, using the RTSP "SETUP" command. See the RTSP specification. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/6d8096d5/attachment.html From finlayson at live555.com Fri Nov 17 00:02:18 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 00:02:18 -0800 Subject: [Live-devel] doubt => Transport: RTP/AVP; unicast; client_port=4588-4589; server_port=6256-6257 In-Reply-To: <012301c70a19$fc5900e0$f801000a@imidomain.com> References: <012301c70a19$fc5900e0$f801000a@imidomain.com> Message-ID: >Hi All, > >Transport: RTP/AVP;unicast;client_port=4588-4589;server_port=6256-6257 > >whether 6256 --- audio and 6257--video.need confirmation,then what >is the port need to be used for RTCP. The second (odd) port number in each pair is used for RTCP. Again, our RTSP implementation already handles this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/9f63db3f/attachment.html From nitin.e at gmail.com Fri Nov 17 00:43:50 2006 From: nitin.e at gmail.com (nitin jain) Date: Fri, 17 Nov 2006 14:13:50 +0530 Subject: [Live-devel] Multiple streams to multiple clients using testMPEG1or2VideoStreamer.cpp program Message-ID: Hello everyone, I am using testMPEG1or2VideoStreamer.cpp and testMPEG1or2VideoReceiver.cpp test programs to send and receive MPEG2 video clips between single server and client program. Presently in the server side i have to give client IP address and port no to enable RTP/RTCP transmission. I wanted to send multiple MPEG2 streams to multiple clients using same server program ( testMPEG1or2VideoStreamer.cpp ) at the same time. What changes i need to do in the LIVE555 codebase to do this? Does LIVE555 support multiple clients in this way ? if yes ,how many clients it supports? Please provide your inputs. Regards Nitin Jain -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/e5b9e2c3/attachment.html From rajeshkumar.r at imimobile.com Fri Nov 17 00:52:44 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Fri, 17 Nov 2006 14:22:44 +0530 Subject: [Live-devel] doubt => Transport: RTP/AVP; unicast; client_port=4588-4589; server_port=6256-6257 References: <012301c70a19$fc5900e0$f801000a@imidomain.com> Message-ID: <017801c70a25$bf7d8310$f801000a@imidomain.com> Re: [Live-devel] doubt => Transport: RTP/AVP; unicast; clHi Ross Thanks for the reply. one more doubt is The even port number is used for the audio and video data.I will recv audio and video on one port.if it is then plz tell me in "live media" exactly where we are differentiating between Audio and video Packets. I have to send audio and video Packets on two different port to play on mobile Handset THANKS IN ADVANCE. with Regards Rajesh ----- Original Message ----- From: Ross Finlayson To: LIVE555 Streaming Media - development & use Sent: Friday, November 17, 2006 1:32 PM Subject: Re: [Live-devel] doubt => Transport: RTP/AVP; unicast; client_port=4588-4589; server_port=6256-6257 Hi All, Transport: RTP/AVP;unicast;client_port=4588-4589;server_port=6256-6257 whether 6256 --- audio and 6257--video.need confirmation,then what is the port need to be used for RTCP. The second (odd) port number in each pair is used for RTCP. Again, our RTSP implementation already handles 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/8d68b3a6/attachment.html From marthi at graphics.cs.uni-sb.de Fri Nov 17 00:49:33 2006 From: marthi at graphics.cs.uni-sb.de (Martin) Date: Fri, 17 Nov 2006 09:49:33 +0100 Subject: [Live-devel] Problems with receiving reports on sender side In-Reply-To: References: <4559D640.409@graphics.cs.uni-sb.de> <455B1206.2050106@graphics.cs.uni-sb.de> Message-ID: <455D779D.2060303@graphics.cs.uni-sb.de> Hi Ross, Ross Finlayson wrote: >>If I start the streamer and use vlc for playback, I hear the music, but >>I don't get any output from the handle*() methods. Did I use them >>incorrectly or what is the problem here? > > > I don't know - it's possible that VLC is the problem, and that (for > some reason) it's not sending RTCP reports. Alternatively, you could > try running the "testMP3Receiver" demo application, which should send > RTCP reports OK. with the testMP3Receiver it's working. It really seems to ve a vlc problem. Thanks for your help! Martin From jacob83 at gmail.com Fri Nov 17 00:51:59 2006 From: jacob83 at gmail.com (jacob) Date: Fri, 17 Nov 2006 09:51:59 +0100 Subject: [Live-devel] Incorrect DESCRIBE response In-Reply-To: References: Message-ID: I'm using mplayer with live555, my problem is that the streaming server used has a bad RTSP implementation. In the DESCRIBE response it says that the traffic will be RTP/AVP but then in the SETUP it says MP2T/UDP. The problem is that Mplayer is not able to choose the correct demuxer and also it begins to throw away the packets (Mplayer is able to play a mpeg-ts in local file) . My question is how can I modify live555 code to force to always decide that the traffic will be mpeg2-ts (MP2T). Thanks for your time PD: I'm beginning collaborating in this topics so sorry for my mistakes and my English. From bidibulle at operamail.com Fri Nov 17 01:23:42 2006 From: bidibulle at operamail.com (David Betrand) Date: Fri, 17 Nov 2006 10:23:42 +0100 Subject: [Live-devel] AMR and QuicktimeFileSink Message-ID: <20061117092342.B608F43D8F@ws5-1.us4.outblaze.com> Hello Ross, Looking at the code, it seems that it is not possible to record an AMR stream in a MP4 file using QuicktimeFileSink. Correct ? Is there any reason for this ? David -- _______________________________________________ Surf the Web in a faster, safer and easier way: Download Opera 9 at http://www.opera.com Powered by Outblaze From dbaeyens at warp.es Fri Nov 17 02:12:41 2006 From: dbaeyens at warp.es (Dani Baeyens) Date: Fri, 17 Nov 2006 11:12:41 +0100 Subject: [Live-devel] Can't read from a MPEG4 unicast stream? Message-ID: <1163758361.5502.22.camel@localhost.localdomain> Hi, This is my first contact with the library and the mpeg4 world. I'm trying to fetch a mpeg4 RTP unicast video stream from a sony snc-rz25p IP network camera. My RTCP instance keeps the connection alive (so I have some working code snips :) ), but i'm trying to dump the stream to a file, and I always get a 0 byte file. RTP Payload type is 96. I'm using a MPEG4VideoStreamFramer as source (getting the stream from a MPEG4ESVideoRTPSource) and a FileSink to write it to disk... My affected code is: struct in_addr serverAddress; serverAddress.s_addr = our_inet_addr ("192.168.2.10"); Groupsock rtpGroupsockVideo (*env, serverAddress, 50000, 255); videoSource = MPEG4ESVideoRTPSource::createNew (*env, &rtpGroupsockVideo, 96, 0); videoFramedSource = MPEG4VideoStreamFramer::createNew (*env, videoSource); fileSink = FileSink::createNew(*env, outputFilename); fileSink->startPlaying (*videoFramedSource, afterPlaying, NULL); env->taskScheduler().doEventLoop(); The afterPlaying function is just empty. What I am doing wrong? Thanks for your help, -- Daniel Baeyens Warp Networks S.L. http://www.warp.es - http://www.ebox-platform.com http://people.warp.es/~dani/blog From finlayson at live555.com Fri Nov 17 02:18:18 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 02:18:18 -0800 Subject: [Live-devel] AMR and QuicktimeFileSink In-Reply-To: <20061117092342.B608F43D8F@ws5-1.us4.outblaze.com> References: <20061117092342.B608F43D8F@ws5-1.us4.outblaze.com> Message-ID: >Looking at the code, it seems that it is not possible to record an >AMR stream in a MP4 file using QuicktimeFileSink. Correct ? Is there >any reason for this ? The only reason is that noone has written code for this yet. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Nov 17 02:25:31 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 02:25:31 -0800 Subject: [Live-devel] Can't read from a MPEG4 unicast stream? In-Reply-To: <1163758361.5502.22.camel@localhost.localdomain> References: <1163758361.5502.22.camel@localhost.localdomain> Message-ID: >Hi, > > This is my first contact with the library and the mpeg4 world. I'm >trying to fetch a mpeg4 RTP unicast video stream from a sony snc-rz25p >IP network camera. My RTCP instance keeps the connection alive (so I >have some working code snips :) ), but i'm trying to dump the stream to >a file, and I always get a 0 byte file. > > RTP Payload type is 96. I'm using a MPEG4VideoStreamFramer as source >(getting the stream from a MPEG4ESVideoRTPSource) and a FileSink to >write it to disk... > >My affected code is: > >struct in_addr serverAddress; >serverAddress.s_addr = our_inet_addr ("192.168.2.10"); >Groupsock rtpGroupsockVideo (*env, serverAddress, 50000, 255); > >videoSource = MPEG4ESVideoRTPSource::createNew (*env, > &rtpGroupsockVideo, > 96, > 0); >videoFramedSource = MPEG4VideoStreamFramer::createNew (*env, > videoSource); > >fileSink = FileSink::createNew(*env, outputFilename); >fileSink->startPlaying (*videoFramedSource, afterPlaying, NULL); > >env->taskScheduler().doEventLoop(); > >The afterPlaying function is just empty. > >What I am doing wrong? I'm not sure, but try replacing "192.168.2.10" with "0.0.0.0". (See ) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/b15680ec/attachment.html From finlayson at live555.com Fri Nov 17 02:30:20 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 02:30:20 -0800 Subject: [Live-devel] Incorrect DESCRIBE response In-Reply-To: References: Message-ID: >I'm using mplayer with live555, my problem is that the streaming >server used has a bad RTSP implementation. > >In the DESCRIBE response it says that the traffic will be RTP/AVP but >then in the SETUP it says MP2T/UDP. The problem is that Mplayer is not >able to choose the correct demuxer and also it begins to throw away >the packets (Mplayer is able to play a mpeg-ts in local file) . > >My question is how can I modify live555 code to force to always decide >that the traffic will be mpeg2-ts (MP2T). As a general rule, I prefer not to add hacks to the "LIVE555 Streaming Media" code to support broken, non-standard servers (or clients). However, please try running openRTSP -V on the server's "rtsp://" URL, and post the output to the list, so I can see exactly what the server is doing. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From dbaeyens at warp.es Fri Nov 17 04:03:47 2006 From: dbaeyens at warp.es (Dani Baeyens) Date: Fri, 17 Nov 2006 13:03:47 +0100 Subject: [Live-devel] Can't read from a MPEG4 unicast stream? In-Reply-To: References: <1163758361.5502.22.camel@localhost.localdomain> Message-ID: <1163765027.5502.39.camel@localhost.localdomain> El vie, 17-11-2006 a las 02:25 -0800, Ross Finlayson escribi?: > > Hi, > > > > This is my first contact with the library and the mpeg4 world. I'm > > My affected code is: > > > > struct in_addr serverAddress; > > serverAddress.s_addr = our_inet_addr ("192.168.2.10"); > > Groupsock rtpGroupsockVideo (*env, serverAddress, 50000, 255); > > > > videoSource = MPEG4ESVideoRTPSource::createNew (*env, > > &rtpGroupsockVideo, > > 96, > > 0); > > videoFramedSource = MPEG4VideoStreamFramer::createNew (*env, > > videoSource); > > > > fileSink = FileSink::createNew(*env, outputFilename); > > fileSink->startPlaying (*videoFramedSource, afterPlaying, NULL); > > > > env->taskScheduler().doEventLoop(); > > > > The afterPlaying function is just empty. > > What I am doing wrong? > > > I'm not sure, but try replacing "192.168.2.10" with "0.0.0.0". > > > (See ) D'oh! I had read the FAQ (too fast) and I understood to write the IP instead of "0.0.0.0". Anyway, changing that line, it doesn't work yet. If I enable debug messages I get: -------------- starts here ---------- parsing VisualObjectSequence MPEG4VideoStreamParser::parse() EXCEPTION (This is normal behavior - *not* an error) -------------- ends here --------- The exception is thrown when MPEG4VideoStreamParser::parseVisualObjectSequence tries to do: while ((first4Bytes = test4Bytes()) != VISUAL_OBJECT_SEQUENCE_START_CODE) { I've tried to print the test4Bytes() result, but the string is not printed at all. So I'm thinking I could be having problems receiving the stream, but I don't know where. Could it be related to a problem with the stream MPEG4 format? Thanks for your help, -- Daniel Baeyens Warp Networks S.L. http://www.warp.es - http://www.ebox-platform.com http://people.warp.es/~dani/blog From vlcplayer at gmail.com Fri Nov 17 05:14:42 2006 From: vlcplayer at gmail.com (Lukasz Kondrad) Date: Fri, 17 Nov 2006 15:14:42 +0200 Subject: [Live-devel] RTP packets source Message-ID: Hi Ross, I wanna implement a simply FEC algorithm on RTP packets. The algorithm will work before the packet will be deployed. May you give me a hint from where can I take the packet to process it. I am thinking to put a function before a RTP packet is pass to deploying. Where should I look for that kind of function. Best Regards, Lukasz -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061117/d8e2ed14/attachment.html From victor_l2000 at hotmail.com Fri Nov 17 13:13:06 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Fri, 17 Nov 2006 13:13:06 -0800 Subject: [Live-devel] RTSP server to handle receiving data from other Sockets and the RTSP clients Message-ID: Hi All, I am new with liveMedia. I am trying to implement a RTSP server using LiveMedia library. I think the application is similar to the example testOnDemandRTSPServer, except that i want to accept data from another Socket server.After i receive a block of data, I want to process the data and then pass the processed data to the RTSP clients. Now my problem is: how can i accept the data continuously and pass it to multiple RTSP clients (when more than one RTSP clients are requesting same data source). In the testOnDemandRTSPServer example, it loads the files, and after these settings are done, and the requests from the RTSP clients are received, the data from the files will be passed automatically, after the call: env->taskScheduler().doEventLoop(); // does not return. how can my data receiving part be handled? For my case, i need to continuously receive the socket data. could you please give me some suggestions on how can i follow your example using liveMedia and implement my function? Thanks in advance! Vic _________________________________________________________________ Share your latest news with your friends with the Windows Live Spaces friends module. http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mk From finlayson at live555.com Fri Nov 17 15:00:30 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 17 Nov 2006 15:00:30 -0800 Subject: [Live-devel] RTSP server to handle receiving data from other Sockets and the RTSP clients In-Reply-To: References: Message-ID: >Now my problem is: how can i accept the data continuously and pass it to >multiple RTSP clients (when more than one RTSP clients are requesting same >data source). Set the "reuseFirstSource" Boolean parameter to True. It was designed for exactly this purpose. >how can my data receiving part be handled? > >For my case, i need to continuously receive the socket data. Because a 'socket' is just an open file (on sensible operating systems, at least), you can read it using the "ByteStreamFileSource". I.e., using the "testOnDemandRTSPServer" code as an example, just change the file name from "test." to the name of your socket in the file system (or "stdin" if you're reading from standard input). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From victor_l2000 at hotmail.com Fri Nov 17 23:00:01 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Fri, 17 Nov 2006 23:00:01 -0800 Subject: [Live-devel] RTSP server to handle receiving data from other Sockets and the RTSP clients Message-ID: Hi Ross, Thank you very much for your suggestion. I am not clear with the 2nd part of your suggestion. Could you please tell me a little bit more about this? What is "the name of the socket in the file system"? I am implementing the application in windows environment. The socket servers are running on one computer, each socket sending a stream in a loop using: bytesSent = send(serverSocket, sendBuf, DataBlockSize, 0); For each socket server, i need a corresponding socket client to receive the stream data, also in a loop using: bytesRecved = recv(ClientSocket, recvBuf, DataBlockSize, 0); How can i pass the data received in recvBuf to RTSP server? Should the part implementing the Socket Client to receive the data in testOnDemandRTSPServer? I have no idea on how to deal with the loop to receive the Socket data and the doEventLoop() in testOnDemandRTSPServer in one process. I tried to modify ByteStreamFileSource, and then pass the data in recvBuf to fTo, but there are problems: cannot support multiple RTSP Clients, and data received cannot be controled as reading from file (where fMaxSize is changed each time reading from the file). I appreciate your help! Many thanks! Vic >From: Ross Finlayson >Reply-To: LIVE555 Streaming Media - development & >use >To: LIVE555 Streaming Media - development & use > >Subject: Re: [Live-devel] RTSP server to handle receiving data from other >Sockets and the RTSP clients >Date: Fri, 17 Nov 2006 15:00:30 -0800 > > >Now my problem is: how can i accept the data continuously and pass it to > >multiple RTSP clients (when more than one RTSP clients are requesting >same > >data source). > >Set the "reuseFirstSource" Boolean parameter to True. It was >designed for exactly this purpose. > > >how can my data receiving part be handled? > > > >For my case, i need to continuously receive the socket data. > >Because a 'socket' is just an open file (on sensible operating >systems, at least), you can read it using the "ByteStreamFileSource". >I.e., using the "testOnDemandRTSPServer" code as an example, just >change the file name from "test." to the name of your >socket in the file system (or "stdin" if you're reading from standard >input). >-- > >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 _________________________________________________________________ Talk now to your Hotmail contacts with Windows Live Messenger. http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview From stas at mer.co.il Sat Nov 18 23:57:16 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Sun, 19 Nov 2006 09:57:16 +0200 Subject: [Live-devel] 2 live loops in 1 process Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F18337@fs1.mertree.mer.co.il> Hi All, I have two static libs each initializing live with its usage environment, task scheduler and all. That way I have 2 threads running live in a single process. After some time, when both threads are active I have heap corruption. If I prevent 2 threads running concurrently everything's fine. Is there a way to make it work? Regards, Stas -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061118/cdea4df8/attachment.html From finlayson at live555.com Sun Nov 19 10:14:36 2006 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 19 Nov 2006 10:14:36 -0800 Subject: [Live-devel] 2 live loops in 1 process In-Reply-To: <8F5A28107CB68247BB8E3D3EE626F54F01F18337@fs1.mertree.mer.co.il> References: <8F5A28107CB68247BB8E3D3EE626F54F01F18337@fs1.mertree.mer.co.il> Message-ID: >I have two static libs each initializing live with its usage >environment, task scheduler and all. > >That way I have 2 threads running live in a single process. After >some time, when both threads are active I have heap corruption. I'm not sure why this would be happening - what you are doing should work, provided that each thread is not referencing objects created by the other thread. Without knowing exactly how/why your heap is getting corrupted, it's hard to say more. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061119/8936e724/attachment.html From xcsmith at rockwellcollins.com Sun Nov 19 20:04:10 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Sun, 19 Nov 2006 22:04:10 -0600 Subject: [Live-devel] Advice on per-message connection in RTSPClient & RTSPServer? Message-ID: Hello! My colleagues have implemented an RTSP client which makes one TCP connection per request/response transaction. This client is the same as your RTSPClient, except that it calls openConnectionFromURL() at the start of each request and resetTCPSockets() at the end of each request. The client was tested against testOnDemandRTSPServer first with LIVE 2006.8.26 and then with LIVE 2006.11.16.a and received the same output. When a PLAY message is sent, the server responds with 405 "Method Not Allowed." However, the server response says that PLAY is allowed. Does the LIVE RTSPServer assume that a TCP disconnect means the client is gone? If so, do you have any advice on how to change the server so that it will destroy the session only when the client sends TEARDOWN or fails to note liveness with OPTIONS? Also I've noted in RFC2326 page 27: For the scheme "rtsp", a persistent connection is assumed, while the scheme "rtspu" calls for RTSP requests to be sent without setting up a connection. So, is it correct to use "rtsp" (and not "rtspu") for this? I've included debug messages from the older version of LIVE. Sorry I was not sent the messages from the newer one, but I'm assured the result is the same. Thanks! ~Medra ** TCP Connect ** OPTIONS rtsp://192.168.1.100:8554/mpeg2TransportStreamTest RTSP/1.0 CSeq: 1 User-Agent: M:\openRTSP.exe (LIVE555 Streaming Media v2006.08.26) RTSP/1.0 200 OK CSeq: 1 Date: Thu, Nov 16 2006 09:22:32 GMT Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE ** TCP Disconnect ** ** TCP Connect ** DESCRIBE rtsp://192.168.1.100:8554/mpeg2TransportStreamTest RTSP/1.0 CSeq: 2 Accept: application/sdp User-Agent: M:\openRTSP.exe (LIVE555 Streaming Media v2006.08.26) RTSP/1.0 200 OK CSeq: 2 Date: Thu, Nov 16 2006 09:22:32 GMT Content-Base: rtsp://192.168.1.100:8554/mpeg2TransportStreamTest/ Content-Type: application/sdp Content-Length: 393 o=- 1163668227008757 1 IN IP4 192.168.1.100 s=Session streamed by "testOnDemandRTSPServer" i=mpeg2TransportStreamTest t=0 0 a=tool:LIVE555 Streaming Media v2006.08.26 a=type:broadcast a=control:* a=range:npt=0- a=x-qt-text-nam:Session streamed by "testOnDemandRTSPServer" a=x-qt-text-inf:mpeg2TransportStreamTest m=video 5900 RTP/AVP 33 c=IN IP4 192.168.1.100 a=control:track1 ** TCP Disconnect ** ** TCP Connect ** SETUP rtsp://192.168.1.100:8554/mpeg2TransportStreamTest/track1 RTSP/1.0 CSeq: 3 Transport: RTP/AVP;unicast;client_port=5900-5901 User-Agent: M:\openRTSP.exe (LIVE555 Streaming Media v2006.08.26) RTSP/1.0 200 OK CSeq: 3 Date: Thu, Nov 16 2006 09:22:32 GMT Transport: RTP/AVP;unicast;destination=192.168.1.104;client_port=5900-5901;server_p ort=6970-6971 Session: 11 ** TCP Disconnect ** ** TCP Connect ** PLAY rtsp://192.168.1.100:8554/mpeg2TransportStreamTest RTSP/1.0 CSeq: 4 Session: 11 Range: npt=0.000- User-Agent: M:\openRTSP.exe (LIVE555 Streaming Media v2006.08.26) RTSP/1.0 405 Method Not Allowed CSeq: 4 Date: Thu, Nov 16 2006 09:22:32 GMT Allow: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE ** TCP Disconnect ** ** TCP Connect ** TEARDOWN rtsp://192.168.1.100:8554/mpeg2TransportStreamTest RTSP/1.0 CSeq: 5 Session: 11 User-Agent: M:\openRTSP.exe (LIVE555 Streaming Media v2006.08.26) RTSP/1.0 405 Method Not Allowed CSeq: 5 Date: Thu, Nov 16 2006 09:22:32 GMT Allow: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE ** TCP Disconnect ** From stas at mer.co.il Mon Nov 20 00:10:52 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Mon, 20 Nov 2006 10:10:52 +0200 Subject: [Live-devel] 2 live loops in 1 process Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F18496@fs1.mertree.mer.co.il> Live uses static variables in its implementation. I guess its some sort race condition. I will rewrite my code the way it'll use only single instance of live. Another question: I have a class derived from MultiframedRTPSink. I need to call stopPlaying on that sink. The MultiframedRTPSink class overrides stopPlaying and makes it protected. Can I just override it in my sink and make it public, so I can call it? Regards, Stas. _____ From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Sunday, November 19, 2006 8:15 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] 2 live loops in 1 process I have two static libs each initializing live with its usage environment, task scheduler and all. That way I have 2 threads running live in a single process. After some time, when both threads are active I have heap corruption. I'm not sure why this would be happening - what you are doing should work, provided that each thread is not referencing objects created by the other thread. Without knowing exactly how/why your heap is getting corrupted, it's hard to say more. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061120/be0f6ee4/attachment-0001.html From nagyz at nefty.hu Mon Nov 20 02:31:37 2006 From: nagyz at nefty.hu (Zoltan NAGY) Date: Mon, 20 Nov 2006 11:31:37 +0100 Subject: [Live-devel] passing data to ffmpeg? Message-ID: <45618409.4050207@nefty.hu> Hello list, I'm wondering if it's possible for an application to "feed" ffmpeg from data read by live555's rtsp client code? for example, to extend the openRTSP client to play the received video file with ffmpeg without having a intermediate file? any ideas? :-) Thanks in advance, Zoltan NAGY, Software Engineer From lucabe72 at email.it Mon Nov 20 03:00:20 2006 From: lucabe72 at email.it (Luca Abeni) Date: Mon, 20 Nov 2006 12:00:20 +0100 Subject: [Live-devel] passing data to ffmpeg? In-Reply-To: <45618409.4050207@nefty.hu> References: <45618409.4050207@nefty.hu> Message-ID: <1164020420.1343.6.camel@labeni.mm.mbigroup.it> Hello, On Mon, 2006-11-20 at 11:31 +0100, Zoltan NAGY wrote: > I'm wondering if it's possible for an application to "feed" ffmpeg > from data read by live555's rtsp client code? > > for example, to extend the openRTSP client to play the received > video file with ffmpeg without having a intermediate file? I think the simplest thing to do is to write something like a "TSFileSink" and to feed its output in ffmpeg through a pipe (maybe a fifo), assuming the data you receive can be muxed in a transport stream (this includes all the MPEG* audio and video, plus H.264). Luca -- _____________________________________________________________________________ Copy this in your signature, if you think it is important: N O W A R ! ! ! From nagyz at nefty.hu Mon Nov 20 03:23:43 2006 From: nagyz at nefty.hu (Zoltan NAGY) Date: Mon, 20 Nov 2006 12:23:43 +0100 Subject: [Live-devel] passing data to ffmpeg? In-Reply-To: <1164020420.1343.6.camel@labeni.mm.mbigroup.it> References: <45618409.4050207@nefty.hu> <1164020420.1343.6.camel@labeni.mm.mbigroup.it> Message-ID: <4561903F.8040701@nefty.hu> Luca Abeni wrote: > Hello, > > On Mon, 2006-11-20 at 11:31 +0100, Zoltan NAGY wrote: > >> I'm wondering if it's possible for an application to "feed" ffmpeg >> from data read by live555's rtsp client code? >> >> for example, to extend the openRTSP client to play the received >> video file with ffmpeg without having a intermediate file? >> > I think the simplest thing to do is to write something like a > "TSFileSink" and to feed its output in ffmpeg through a pipe (maybe a > fifo), assuming the data you receive can be muxed in a transport stream > (this includes all the MPEG* audio and video, plus H.264). > > what about H.263? Thanks in advance, Zoltan NAGY, Software Engineer From lucabe72 at email.it Mon Nov 20 03:48:34 2006 From: lucabe72 at email.it (Luca Abeni) Date: Mon, 20 Nov 2006 12:48:34 +0100 Subject: [Live-devel] passing data to ffmpeg? In-Reply-To: <4561903F.8040701@nefty.hu> References: <45618409.4050207@nefty.hu><1164020420.1343.6.camel@labeni.mm.mbigroup.it> <4561903F.8040701@nefty.hu> Message-ID: <1164023314.1358.9.camel@labeni.mm.mbigroup.it> Hello, On Mon, 2006-11-20 at 12:23 +0100, Zoltan NAGY wrote: > > assuming the data you receive can be muxed in a transport stream > > (this includes all the MPEG* audio and video, plus H.264). > > > > > what about H.263? I do not know. Maybe you can try asking on an ffmpeg mailing list if H.263 in MPEG2 TS is possible or not. Luca -- _____________________________________________________________________________ Copy this in your signature, if you think it is important: N O W A R ! ! ! From ymreddy at ssdi.sharp.co.in Mon Nov 20 05:27:35 2006 From: ymreddy at ssdi.sharp.co.in (Mallikharjuna Reddy (NAVT)) Date: Mon, 20 Nov 2006 18:57:35 +0530 Subject: [Live-devel] Multiple Client Support Message-ID: <7FB4685EA93D014C8E30AA087B66E7520337D09C@ssdimailsrvnt01.ssdi.sharp.co.in> Hi Everybody, We would like to know how many clients the simple RTP server supports. This RTP server is running stand alone without RTSP support. Right now, we need to mention the client IP address in the RTP server test program. Without mentioning client IP address in the RTP server, can we stream to multiple clients using multi-unicast. Thanks and Regards Y. Mallikharjuna Reddy From kurutepe at nue.tu-berlin.de Mon Nov 20 06:11:31 2006 From: kurutepe at nue.tu-berlin.de (Engin Kurutepe) Date: Mon, 20 Nov 2006 15:11:31 +0100 Subject: [Live-devel] building under visual studio 2005 In-Reply-To: <7FB4685EA93D014C8E30AA087B66E7520337D09C@ssdimailsrvnt01.ssdi.sharp.co.in> References: <7FB4685EA93D014C8E30AA087B66E7520337D09C@ssdimailsrvnt01.ssdi.sharp.co.in> Message-ID: <4561B793.5030901@nue.tu-berlin.de> Hello All, I am new to this groups. I'm pretty sure this has been discussed before but could not find it. I'd really appreciate if somebody could provide me some pointers. How do you build the LIVE555 Streaming Media under Visual Studio 2005? I have downloaded the latest sources. They build perfectly under linux but when I try to import the .mak files generated by genWindowsMakefiles as suggested by the webpage, I get conversion failed error from VS. Any ideas? Thanks, Engin. Mallikharjuna Reddy (NAVT) wrote: > Hi Everybody, > > We would like to know how many clients the simple RTP server supports. This > RTP server is running stand alone without RTSP support. Right now, we need > to mention the client IP address in the RTP server test program. Without > mentioning client IP address in the RTP server, can we stream to multiple > clients using multi-unicast. > > Thanks and Regards > Y. Mallikharjuna Reddy > > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > > From vkozhuhov at gmx.net Mon Nov 20 14:13:10 2006 From: vkozhuhov at gmx.net (Victor Kozhuhov) Date: Tue, 21 Nov 2006 00:13:10 +0200 Subject: [Live-devel] IP_ADD_MEMBERSHIP error in test programs Message-ID: <001401c70cf1$15835a50$0100a8c0@sleepy> Hello, I am building a multicast-enabled RTSP server based on liveMedia library. Following all instructions (FAQ, archives and sample programs) I have to use PassiveServerMediaSubsession. No problem with this, except that I can not open a socket for multicast - it always fails joining multicast group. I tried to build and run the testWAVAudioStreamer.cpp sample, and here is the output: Audio source parameters: 44100 Hz, 16 bits-per-sample, 1 channels => 705600 bits-per-second Converting to network byte order for streaming 03:49:05 Groupsock(2964: 232.85.88.236, 2222, 255): failed to join group: setsockopt(IP_ADD_MEMBERSHIP) error: Unknown error 03:49:05 Groupsock(2788: 232.85.88.236, 2223, 255): failed to join group: setsockopt(IP_ADD_MEMBERSHIP) error: Unknown error Play this stream using the URL "rtsp://192.168.0.1:8554/testStream" Beginning streaming... ...done streaming Press any key to continue socket(...) is OK, bind(...) also. Seems that something is wrong the call to setsockopt(IP_ADD_MEMBERSHIP). I compared the call flow with MS SDK sample - looks the same, but MS sample works just great. Any ideas? My environment: Win2000 SP 4, VC6.0, PlatformSDK 2002 Thank you in advance, Victor. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061120/156f5968/attachment.html From finlayson at live555.com Sun Nov 19 23:08:19 2006 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 19 Nov 2006 23:08:19 -0800 Subject: [Live-devel] Advice on per-message connection in RTSPClient & RTSPServer? In-Reply-To: References: Message-ID: >Does the LIVE >RTSPServer assume that a TCP disconnect means the client is gone? At present, yes. Unfortunately there are no near-term plans to fix this. Sorry. I suggest modifying your client to not tear down the TCP connection between RTSP commands (for the same session). >Also I've noted in RFC2326 page 27: > >For the scheme "rtsp", a persistent connection is assumed, > while the scheme "rtspu" calls for RTSP requests to be sent without > setting up a connection. > >So, is it correct to use "rtsp" (and not "rtspu") for this? No, this is a red herring. "rtspu" was intended to specify RTSP (control) over UDP, rather than TCP. However, this was not really fully defined in RFC 2326, and noone ever implemented it. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From weiyutao36 at 163.com Mon Nov 20 23:32:53 2006 From: weiyutao36 at 163.com (weiyutao36) Date: Tue, 21 Nov 2006 15:32:53 +0800 (CST) Subject: [Live-devel] IP_ADD_MEMBERSHIP error in test progr ams-I have the same case, do not know how to In-Reply-To: <001401c70cf1$15835a50$0100a8c0@sleepy> References: <001401c70cf1$15835a50$0100a8c0@sleepy> Message-ID: <4562ABA5.000015.23974@bj163app43.163.com> I have the same error information when I use the testMPEG4VideoStreamer test program and do not know how to solve it. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061120/20331476/attachment.html From finlayson at live555.com Tue Nov 21 00:37:43 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 21 Nov 2006 00:37:43 -0800 Subject: [Live-devel] Multiple Client Support In-Reply-To: <7FB4685EA93D014C8E30AA087B66E7520337D09C@ssdimailsrvnt01.ssdi.sharp.co.in > References: <7FB4685EA93D014C8E30AA087B66E7520337D09C@ssdimailsrvnt01.ssdi.sharp.co.in > Message-ID: Yes, our RTSP server implementation supports multiple concurrent unicast clients. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Tue Nov 21 00:38:59 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 21 Nov 2006 00:38:59 -0800 Subject: [Live-devel] passing data to ffmpeg? In-Reply-To: <45618409.4050207@nefty.hu> References: <45618409.4050207@nefty.hu> Message-ID: >I'm wondering if it's possible for an application to "feed" ffmpeg >from data read by live555's rtsp client code? > >for example, to extend the openRTSP client to play the received >video file with ffmpeg without having a intermediate file? > >any ideas? :-) You could look at the VLC code, which does exactly this (use the "LIVE555 Streaming Media" code for a RTSP client, and feed the incoming data through FFMPEG). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jacob83 at gmail.com Tue Nov 21 00:39:44 2006 From: jacob83 at gmail.com (jacob) Date: Tue, 21 Nov 2006 09:39:44 +0100 Subject: [Live-devel] Incorrect DESCRIBE response In-Reply-To: References: Message-ID: I tried the testProgs tools, and i have seen that the server is a non-standard one. So I will try to modify the server, for this my question is: My server will send MP2T over UDP, what tag is correct to send in the DESCRIBE response to handle correct this?. Now in one field it sends: m=video 0 RTP/AVP 33 Thanks From stas at mer.co.il Tue Nov 21 00:49:27 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Tue, 21 Nov 2006 10:49:27 +0200 Subject: [Live-devel] building under visual studio 2005 Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F66FFE@fs1.mertree.mer.co.il> Email me directly at stas at mer.co.il and I'll send you my workspace for livestreamer. -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Engin Kurutepe Sent: Monday, November 20, 2006 4:12 PM To: LIVE555 Streaming Media - development & use Subject: [Live-devel] building under visual studio 2005 Hello All, I am new to this groups. I'm pretty sure this has been discussed before but could not find it. I'd really appreciate if somebody could provide me some pointers. How do you build the LIVE555 Streaming Media under Visual Studio 2005? I have downloaded the latest sources. They build perfectly under linux but when I try to import the .mak files generated by genWindowsMakefiles as suggested by the webpage, I get conversion failed error from VS. Any ideas? Thanks, Engin. Mallikharjuna Reddy (NAVT) wrote: > Hi Everybody, > > We would like to know how many clients the simple RTP server supports. This > RTP server is running stand alone without RTSP support. Right now, we need > to mention the client IP address in the RTP server test program. Without > mentioning client IP address in the RTP server, can we stream to multiple > clients using multi-unicast. > > Thanks and Regards > Y. Mallikharjuna Reddy > > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > > _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel From stas at mer.co.il Tue Nov 21 00:52:06 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Tue, 21 Nov 2006 10:52:06 +0200 Subject: [Live-devel] IP_ADD_MEMBERSHIP error in test programs Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F67000@fs1.mertree.mer.co.il> Change ReceivingInterfaceAddr variable to point to the Ethernet adapter you trying to use for multicast. _____ From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Victor Kozhuhov Sent: Tuesday, November 21, 2006 12:13 AM To: live-devel at ns.live555.com Subject: [Live-devel] IP_ADD_MEMBERSHIP error in test programs Hello, I am building a multicast-enabled RTSP server based on liveMedia library. Following all instructions (FAQ, archives and sample programs) I have to use PassiveServerMediaSubsession. No problem with this, except that I can not open a socket for multicast - it always fails joining multicast group. I tried to build and run the testWAVAudioStreamer.cpp sample, and here is the output: Audio source parameters: 44100 Hz, 16 bits-per-sample, 1 channels => 705600 bits-per-second Converting to network byte order for streaming 03:49:05 Groupsock(2964: 232.85.88.236, 2222, 255): failed to join group: setsockopt(IP_ADD_MEMBERSHIP) error: Unknown error 03:49:05 Groupsock(2788: 232.85.88.236, 2223, 255): failed to join group: setsockopt(IP_ADD_MEMBERSHIP) error: Unknown error Play this stream using the URL "rtsp://192.168.0.1:8554/testStream" Beginning streaming... ...done streaming Press any key to continue socket(...) is OK, bind(...) also. Seems that something is wrong the call to setsockopt(IP_ADD_MEMBERSHIP). I compared the call flow with MS SDK sample - looks the same, but MS sample works just great. Any ideas? My environment: Win2000 SP 4, VC6.0, PlatformSDK 2002 Thank you in advance, Victor. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061121/4572b12c/attachment-0001.html From stas at mer.co.il Tue Nov 21 00:54:47 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Tue, 21 Nov 2006 10:54:47 +0200 Subject: [Live-devel] Advice on per-message connection in RTSPClient & RTSPServer? Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F67003@fs1.mertree.mer.co.il> Oops, its early bad news. I was planning to use RTSP server for one of my projects but my clients are cellular handhelds and I can't change their code. So if RTSP server does not support TCP tear down it just won't fly. Ross, can you please describe steps required to implement tear down support? -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Monday, November 20, 2006 9:08 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] Advice on per-message connection in RTSPClient & RTSPServer? >Does the LIVE >RTSPServer assume that a TCP disconnect means the client is gone? At present, yes. Unfortunately there are no near-term plans to fix this. Sorry. I suggest modifying your client to not tear down the TCP connection between RTSP commands (for the same session). >Also I've noted in RFC2326 page 27: > >For the scheme "rtsp", a persistent connection is assumed, > while the scheme "rtspu" calls for RTSP requests to be sent without > setting up a connection. > >So, is it correct to use "rtsp" (and not "rtspu") for this? No, this is a red herring. "rtspu" was intended to specify RTSP (control) over UDP, rather than TCP. However, this was not really fully defined in RFC 2326, and noone ever implemented it. -- 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 stas at mer.co.il Tue Nov 21 00:56:15 2006 From: stas at mer.co.il (Stas Desyatnlkov) Date: Tue, 21 Nov 2006 10:56:15 +0200 Subject: [Live-devel] 2 live loops in 1 process Message-ID: <8F5A28107CB68247BB8E3D3EE626F54F01F67004@fs1.mertree.mer.co.il> Yep, making a single loop fixes things. _____ From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson Sent: Sunday, November 19, 2006 8:15 PM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] 2 live loops in 1 process I have two static libs each initializing live with its usage environment, task scheduler and all. That way I have 2 threads running live in a single process. After some time, when both threads are active I have heap corruption. I'm not sure why this would be happening - what you are doing should work, provided that each thread is not referencing objects created by the other thread. Without knowing exactly how/why your heap is getting corrupted, it's hard to say more. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061121/fe3669b6/attachment-0001.html From julius at zgod.cjb.net Tue Nov 21 06:40:34 2006 From: julius at zgod.cjb.net (Julius Schwartzenberg) Date: Tue, 21 Nov 2006 15:40:34 +0100 Subject: [Live-devel] Compilation trouble with Solaris 10 Message-ID: <45630FE2.1060001@zgod.cjb.net> Hi, I'm trying to compile the current version (20061116a) of the live libraries on my Solaris 10 system. It seems to go well at first, but later on it stops with an error: c++ -otestMP3Streamer -L. testMP3Streamer.o ../liveMedia/libliveMedia.a ../groupsock/libgroupsock.a ../UsageEnvironment/libUsageEnvironment.a ../BasicUsageEnvironment/libBasicUsageEnvironment.a -lsocket -lnsl ld: fatal: relocation error: R_SPARC_UA32: file .rela.eh_frame: section: ../liveMedia/libliveMedia.a: offset: 0x1700: relocation requires reference symbol Running c++ --version gives me: c++ (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath) Any idea what's going on here and what I might be able to do to fix this? Thanks in advance, Julius From finlayson at live555.com Tue Nov 21 08:49:20 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 21 Nov 2006 08:49:20 -0800 Subject: [Live-devel] Advice on per-message connection in RTSPClient & RTSPServer? In-Reply-To: <8F5A28107CB68247BB8E3D3EE626F54F01F67003@fs1.mertree.mer.co.il> References: <8F5A28107CB68247BB8E3D3EE626F54F01F67003@fs1.mertree.mer.co.il> Message-ID: >Oops, its early bad news. I was planning to use RTSP server for one of >my projects but my clients are cellular handhelds and I can't change >their code. So if RTSP server does not support TCP tear down it just >won't fly. > >Ross, can you please describe steps required to implement tear down >support? It will be complex - basically, the management of "RTSPServer::RTSPClientSession" objects will need to change. (in particular, there will need to be a new hash table for looking up these objects based on the clients' "Session:" id strings. This is the first time I have heard of a client that behaves like yours. At some point I'll modify the RTSP server code to support this, but this probably won't happen before the New Year. (Right now, server 'trick play' support for MPEG Transport Stream files takes priority; lots of people have been asking for this.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From vkozhuhov at gmx.net Tue Nov 21 09:59:33 2006 From: vkozhuhov at gmx.net (Victor Kozhuhov) Date: Tue, 21 Nov 2006 19:59:33 +0200 Subject: [Live-devel] IP_ADD_MEMBERSHIP error in test programs References: <8F5A28107CB68247BB8E3D3EE626F54F01F67000@fs1.mertree.mer.co.il> Message-ID: <012301c70d96$d3f36e30$1500a8c0@radview.inobject.com> ManualIt does not affect multicast feature. There is no limitation for Winsock regarding multicast interface, and in general case it can be INADDR_ANY. (Consider, that MS sample works fine, however it uses INADDR_ANY as a multicast interface). The proper answer is a bit more sophisticated, but very short: All you have to do is to specify _WINNT compiler directive (or other suitable). The following code is in the NetCommon.h #if defined(WINNT) || defined(_WINNT) || defined(__BORLANDC__) || defined(__MINGW32__) || defined(_WIN32_WCE) #define _MSWSOCK_ #include #include #endif #include #include .... #endif So by default live library includes winsock.h through windows.h instead of winsock2.h, but requires Winsock 2 in initializeWinsockIfNecessary(...) function. IP_ADD_MEMBERSHIP value for Winsock1 is 5, and for Winsock 2 is 12. Therefore socketJoinGroup(...) function is trying to call setsockopt(IP_ADD_MEMBERSHIP) from Winsock 2 with optname from Winsock 1. There is the confusion between Winsock versions. Had no time to find out why it happens - actually windows makefile includes NTWIN32.MAK / WIN32.MAK (from VC and/or SDK) that adds WINNT directive to $(cflags), but not in my case. Regards, Victor. ----- Original Message ----- From: Stas Desyatnlkov To: LIVE555 Streaming Media - development & use Sent: Tuesday, November 21, 2006 10:52 AM Subject: Re: [Live-devel] IP_ADD_MEMBERSHIP error in test programs Change ReceivingInterfaceAddr variable to point to the Ethernet adapter you trying to use for multicast. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061121/e737f93c/attachment-0001.html From vlcplayer at gmail.com Wed Nov 22 00:20:42 2006 From: vlcplayer at gmail.com (Lukasz Kondrad) Date: Wed, 22 Nov 2006 10:20:42 +0200 Subject: [Live-devel] Compilation on Windows Message-ID: Hello all, I have a question regarding compilation live library on windows. I was fallowing the instruction from the web ( http://www.live555.com/liveMedia/#config-windows) however a problem appear. I change TOOLS32 to C:\Program Files\Microsoft Visual Studio 8\VC and when I run genWindowsMakefiles. C:\USERS\Maemo\live>genWindowsMakefiles Makefile.head ..\win32config Makefile.tail Could Not Find C:\USERS\Maemo\live\groupsock\Makefile Makefile.head ..\win32config so I could not open the mak file in Visual Studio because it was corrupted. I am using Microsoft Visual Studio 2005, version 8. Any suggestion what may be wrong ?? BR, Lukasz -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061122/4fafecac/attachment.html From vlcplayer at gmail.com Wed Nov 22 05:19:33 2006 From: vlcplayer at gmail.com (Lukasz Kondrad) Date: Wed, 22 Nov 2006 15:19:33 +0200 Subject: [Live-devel] [Live-dev] test program compiling errors. Message-ID: Hello all, When I trie compile the test programs I have errors regarding 'timeval' and 'in_addr'. uses undefined struct 'timeval' uses undefined struct 'in_addr' any ide what is wrong.?? The libryries compile fine. I am using Visual Studio 2005 BR, Lukasz -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061122/97a44250/attachment.html From phujka at gmail.com Wed Nov 22 07:17:05 2006 From: phujka at gmail.com (Hujka Petr) Date: Wed, 22 Nov 2006 16:17:05 +0100 Subject: [Live-devel] testondemandrtspserver and client Message-ID: <88b09ad40611220717g49f9b919vb7517c2c15e5a46d@mail.gmail.com> Hi everyone! I would like to make client for testondemandrtspserver example application. Is there anyone, who has this experience? Can anyone give me some hint? Thx for resp. Petr -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061122/a99849fe/attachment.html From vlcplayer at gmail.com Wed Nov 22 08:55:34 2006 From: vlcplayer at gmail.com (Lukasz Kondrad) Date: Wed, 22 Nov 2006 18:55:34 +0200 Subject: [Live-devel] linking problem with H263 Message-ID: Hello again, I have again question. When I wanna create new MediaSubsession I got a error error LNK2019: unresolved external symbol "public: static class H263plusVideoRTPSource * __cdecl H263plusVideoRTPSource::createNew(class UsageEnvironment &,class Groupsock *,unsigned char,unsigned int)" (?createNew at H263plusVideoRTPSource@@SAPAV1 at AAVUsageEnvironment @@PAVGroupsock@@EI at Z) referenced in function "public: unsigned int __thiscall MediaSubsession::initiate(int)" (?initiate at MediaSubsession@@ QAEIH at Z) 1>C:\USERS\Visual Studio 2005\Projects\live\testProgs\Receiver\Debug\Receiver.exe : fatal error LNK1120: 1 unresolved externals does anybody know what am I missing? which library should I link with my test program. BR, Lukasz -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061122/8c08fb12/attachment.html From jers at inwind.it Wed Nov 22 10:36:45 2006 From: jers at inwind.it (jers at inwind.it) Date: Wed, 22 Nov 2006 19:36:45 +0100 Subject: [Live-devel] Setting StreamState referenceCount Message-ID: Dear Ross, I?ve implemented a software based on the ?Live? library. It is a RTSP server able to play several video sources (coming from a grabber) I noticed that in the library the RTSPServer as well as the RTPSink makes use of only blocking read/write system calls. This means that, for example, if a RTSPClientSession is blocked on a write on its TCP socket, all the other sessions and rtp/rtcp stream are blocked too. I looked into the Live sources and I haven't been able to find a valid solution to this problem. It seems that, if I want to stream each source without reciprocal interference, I should rewrite a lot of files. Have you ever met a problem like this? Do you have any suggestion to solve the issue? Thanks in advance. Bye Jers ------------------------------------------------------ Scopri il nuovo MOTOROLA K1, il cellulare con superficie frontale a specchio. Se sarai fortunato potrai anche vincerne uno! Clicca e vinci ! http://click.libero.it/motorola22nov From victor_l2000 at hotmail.com Wed Nov 22 16:02:13 2006 From: victor_l2000 at hotmail.com (Victor Lee) Date: Wed, 22 Nov 2006 16:02:13 -0800 Subject: [Live-devel] StreamParser::afterGettingBytes() warning: read 30000 bytes; expected no more .. Message-ID: Hi Ross, When using the the RTSP server (based on the testOnDemandRTSPServer), i redirected the original reading from a file to reading from my source. Currently, i can only read in a almost fixed size of block of data. I got the following warning: StreamParser::afterGettingBytes() warning: read 30000 bytes; expected no more than 1145 And it is found than the stream being received at the RTSP client side has some problems, the quality is not as good as the original one. Is this caused by the above warning? At the RTSP Client side, i sometimes have the following message: MultiFramedRTPSource::doGetNextFrame1(): The total received frame size exceeds the client's buffer size (20000). 48 bytes of trailing data will be dropped! Could you please explain to me why these happened and how can i solve these problems? Thanks in advance! Have a great Thanksgivings Day! Vic _________________________________________________________________ All-in-one security and maintenance for your PC.  Get a free 90-day trial! http://clk.atdmt.com/MSN/go/msnnkwlo0050000002msn/direct/01/?href=http://clk.atdmt.com/MSN/go/msnnkwlo0050000001msn/direct/01/?href=http://www.windowsonecare.com/?sc_cid=msn_hotmail From finlayson at live555.com Wed Nov 22 08:23:37 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 22 Nov 2006 08:23:37 -0800 Subject: [Live-devel] testondemandrtspserver and client In-Reply-To: <88b09ad40611220717g49f9b919vb7517c2c15e5a46d@mail.gmail.com> References: <88b09ad40611220717g49f9b919vb7517c2c15e5a46d@mail.gmail.com> Message-ID: >I would like to make client for testondemandrtspserver example >application. Is there anyone, who has this experience? Can anyone >give me some hint? Any standard RTSP client will work - for example, VLC or QuickTime Player. (VLC can also be built from source code.) You can also use our command-line RTSP client "openRTSP" -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Nov 22 20:44:08 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 22 Nov 2006 20:44:08 -0800 Subject: [Live-devel] Setting StreamState referenceCount In-Reply-To: References: Message-ID: Your Subject: line has nothing to do with the topic of your message! >I noticed that in the library the RTSPServer as well as the RTPSink >makes use of only blocking read/write system calls. That's not true. Both the TCP sockets (for RTSP control) and UDP sockets (for RTP) are set up as non-blocking. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Nov 22 20:58:49 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 22 Nov 2006 20:58:49 -0800 Subject: [Live-devel] StreamParser::afterGettingBytes() warning: read 30000 bytes; expected no more .. In-Reply-To: References: Message-ID: >When using the the RTSP server (based on the >testOnDemandRTSPServer), i redirected the original reading from a >file to reading from my source. Don't forget to also change "reuseFirstSource" to "True". You didn't say what kind of data you are streaming. However, if you are able to stream your data as a file stored on disk, then you should also be able to stream it from a device 'file'; the code in each case is the same. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From jers at inwind.it Thu Nov 23 00:33:44 2006 From: jers at inwind.it (jers at inwind.it) Date: Thu, 23 Nov 2006 09:33:44 +0100 Subject: [Live-devel] non blocking sockets Message-ID: Sorry for the previous subject > >I noticed that in the library the RTSPServer as well as the RTPSink > >makes use of only blocking read/write system calls. > > That's not true. Both the TCP sockets (for RTSP control) and UDP > sockets (for RTP) are set up as non-blocking. you are right, they are setup as default non-blocking, anyway the real use seems to be blocking. I mean: The RTSPClientSession receives from the RTSPServer a non blocking TCP socket. Then in the incomingRequestHandler1() it calls the readSocket (with NULL timeout parameter). The readSocket calls the blockUntilReadable() and this function does a select() with a single file descriptor (the socket) in its fdset. I think that this blocks the process. Do you agree? ------------------------------------------------------ Scopri subito RAS FullCasa: vinci 500? di buoni Mediaworld a settimana ed un viaggio Expedia! http://click.libero.it/ras23nov06 From bruno.morabito at mail.crim.sssup.it Thu Nov 23 00:58:51 2006 From: bruno.morabito at mail.crim.sssup.it (Bruno Morabito) Date: Thu, 23 Nov 2006 09:58:51 +0100 Subject: [Live-devel] Directshow RTP filters with live555 Message-ID: <001e01c70edd$98c13a70$046c7283@Bruno> Dear All, I have to develop a couple of RTPSink/Source Filter that works with H263 or H264 codec. Could someone give me some hints on this topic? In particular how to adapt the live555 filters architecture to the one of Directshow. Thank You Bruno -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061123/13300cbb/attachment-0001.html From finlayson at live555.com Thu Nov 23 02:26:30 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 23 Nov 2006 02:26:30 -0800 Subject: [Live-devel] non blocking sockets In-Reply-To: References: Message-ID: > > >I noticed that in the library the RTSPServer as well as the RTPSink >> >makes use of only blocking read/write system calls. >> >> That's not true. Both the TCP sockets (for RTSP control) and UDP >> sockets (for RTP) are set up as non-blocking. > >you are right, they are setup as default non-blocking, >anyway the real use seems to be blocking. >I mean: >The RTSPClientSession receives from the RTSPServer a non blocking >TCP socket. Then in the incomingRequestHandler1() >it calls the readSocket (with NULL timeout parameter). >The readSocket calls the blockUntilReadable() and this function does >a select() with a single file descriptor (the socket) in its fdset. >I think that this blocks the process. >Do you agree? No, because the sockets get read only when new readable data becomes available (within the event loop). (This is what the calls to "TaskScheduler::turnOnBackgroundReadHandling()" do.) Because of this, the socket reads end up being non-blocking, because they are called only when new data is available. (In this case, the "blockUntilReadable()" call doesn't actually 'block'; blocking happens only if a socket is read when no incoming data is actually available (but the RTSP server code never does that).) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From cnwanghw at yahoo.com.cn Thu Nov 23 03:52:52 2006 From: cnwanghw at yahoo.com.cn (HuWen wang) Date: Thu, 23 Nov 2006 19:52:52 +0800 (CST) Subject: [Live-devel] testOnDemandRTSPServer problem Message-ID: <20061123115252.60593.qmail@web92013.mail.cnb.yahoo.com> Hi, I encounter a problem during I stream mpeg1 movie through the testOnDemandRTSPServer.after I start streaming for about 10 seconds, the program prompts a lot of warning, then client stops. MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60708). 808 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 61516, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 1379 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 62171, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 1750 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 62542, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 913 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 61705, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 963 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 61755, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 192 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 60982, *before* creating this 'RTPSink'. (Current value is 60000.) MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer size (60792). 542 bytes of trailing data was dropped! Correct this by increasing "OutPacketBuffer::maxSize" to at least 61334, *before* creating this 'RTPSink'. (Current value is 60000.) The Movie format is: MPEG-1 video , 576x240, 25 fps, CBR (Constant bitrate), 4000 Kb/s MPEG-1 Audio Layer II, 48000 Hz, Stereo, 128 kbps Is the problem caused by the movie content type? ___________________________________________________________ ??????-3.5G???20M?? http://cn.mail.yahoo.com/ From hemwire at gmail.com Thu Nov 23 05:55:03 2006 From: hemwire at gmail.com (Hemanth Kumar) Date: Thu, 23 Nov 2006 13:55:03 +0000 Subject: [Live-devel] list of file Message-ID: Hi All, I am new to RTSP , i just setup the drawin stream server and live , on fedora-4 , 1) Is it possible to get full list of files from a rtsp server through openRTSP , if so what is command to get complete list from rtsp server or does i need to change cpp files for this? Regards, Hemanth -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061123/510414bb/attachment.html From yunjnz at yahoo.com Thu Nov 23 17:40:08 2006 From: yunjnz at yahoo.com (yj) Date: Thu, 23 Nov 2006 17:40:08 -0800 (PST) Subject: [Live-devel] How to download MPEG2PS stream via RTSPClient Message-ID: <720743.23805.qm@web35815.mail.mud.yahoo.com> Greetings, I want to download a MPEG2PS stream from RTSP Server and save to a file, But it seems that the result file can't be played on VLC or other players. after comparing the original file and the downloaded file, it seems that the Global Header is missing, and there are still som other differences. can anyone give me some help on this issue? I've tried to downloade the MPEG2TS stream via RTSPClient of Live555 library and it's OK. Appreciate for your help. ____________________________________________________________________________________ Do you Yahoo!? Everyone is raving about the all-new Yahoo! Mail beta. http://new.mail.yahoo.com From rmpg2001 at gmail.com Fri Nov 24 02:38:04 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Fri, 24 Nov 2006 11:38:04 +0100 Subject: [Live-devel] 2 sessions over diferent 2 source IP Message-ID: <389189e20611240238l630ebf23i986679c1069bebd4@mail.gmail.com> Hi all! I have two network cards each one with its IP. I want to stream one multicast session over one IP and another over the other IP. Where could I select the source IP of each session? Appreciate for your help. Ramon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061124/04c37414/attachment.html From nagyz at nefty.hu Fri Nov 24 06:57:54 2006 From: nagyz at nefty.hu (Zoltan NAGY) Date: Fri, 24 Nov 2006 15:57:54 +0100 Subject: [Live-devel] live h263 from helix... Message-ID: <45670872.1030806@nefty.hu> Hello list! I've experiencing a strange issue: if I try to play a local file (h263, no audio) from the helix server with openRTSP, then later play the received video output, then it's played fine with ffmpeg. However, if I try to play back the received data when opening a live stream again from helix, I only have garbage. Or at least, ffmpeg does not recognize it. Any ideas? I guess some headers are missing or something, but how could I find out which ones? Thanks in advance, Zoltan NAGY, Software Engineer From dsusa at cestel.es Fri Nov 24 12:47:44 2006 From: dsusa at cestel.es (Diego Susa) Date: Fri, 24 Nov 2006 17:47:44 -0300 Subject: [Live-devel] supported formats in testOnDemandRtspServer Message-ID: <45675A70.1080102@cestel.es> Hi I'm trying some "proof of concept" using the example app mentioned in the subject. What I need is to stream an AVI file, in the same way that example app is doing with the MPEG2 audio+video file. I specifically need to have an H263 video stream and an PCMU (8 or 16 Khz) audio stream together. I mentioned the AVI file format because I think it is the only one that allows such a combination of audio and video codecs, but you can suggest any other container format if you think it fits better. Is this possible using the code patterns in that example ? Is there any particular class I should try to use ? thanks in advance for any hint, Diego Susa From finlayson at live555.com Thu Nov 23 08:11:39 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 23 Nov 2006 08:11:39 -0800 Subject: [Live-devel] list of file In-Reply-To: References: Message-ID: > 1) Is it possible to get full list of files from a rtsp server No. There's nothing in the RTSP protocol that lets you do this. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Fri Nov 24 17:04:52 2006 From: finlayson at live555.com (Ross Finlayson) Date: Fri, 24 Nov 2006 17:04:52 -0800 Subject: [Live-devel] How to download MPEG2PS stream via RTSPClient In-Reply-To: <720743.23805.qm@web35815.mail.mud.yahoo.com> References: <720743.23805.qm@web35815.mail.mud.yahoo.com> Message-ID: >I want to download a MPEG2PS stream from RTSP Server >and save to a file, >But it seems that the result file can't be played on >VLC or other players. Note that almost all MPEG RTSP/RTP streams consist of separate streams for audio and video (even if the input source, on the server, is a MPEG Program Stream). Therefore, "openRTSP" will save these streams as separate files: one for (Elementary Stream) audio; the other for (Elementary Stream) video. VLC should play either of these files, but you may have to rename them with appropriate file name suffixes (e.g., ".mp3" and ".mpg", respectively), first. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From kurutepe at nue.tu-berlin.de Fri Nov 24 17:50:38 2006 From: kurutepe at nue.tu-berlin.de (Engin Kurutepe) Date: Sat, 25 Nov 2006 02:50:38 +0100 Subject: [Live-devel] list of file In-Reply-To: References: Message-ID: <49F57C20-6690-4595-A0B6-F4DB206B07F9@nue.tu-berlin.de> What you could do is to list all the files on the server as sub- presentations within a presentation in an SDP file. After the client gets the SDP file it could request one or more of these sub- presentations using RTSP from the server. This would be a non-standard and very inelegant way of using SDP, but I guess it would probably float your boat. Engin. On 23.11.2006, at 17:11, Ross Finlayson wrote: >> 1) Is it possible to get full list of files from a rtsp server > > No. There's nothing in the RTSP protocol that lets you do 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 yunjnz at yahoo.com Sat Nov 25 21:15:06 2006 From: yunjnz at yahoo.com (yj) Date: Sat, 25 Nov 2006 21:15:06 -0800 (PST) Subject: [Live-devel] How to download MPEG2PS stream via RTSPClient In-Reply-To: Message-ID: <395612.92557.qm@web35813.mail.mud.yahoo.com> --- Ross Finlayson wrote: > >I want to download a MPEG2PS stream from RTSP > Server > >and save to a file, > >But it seems that the result file can't be played > on > >VLC or other players. > > Note that almost all MPEG RTSP/RTP streams consist > of separate > streams for audio and video (even if the input > source, on the server, > is a MPEG Program Stream). Therefore, "openRTSP" > will save these > streams as separate files: one for (Elementary > Stream) audio; the > other for (Elementary Stream) video. VLC should > play either of these > files, but you may have to rename them with > appropriate file name > suffixes (e.g., ".mp3" and ".mpg", respectively), > first. Appreciate for your help. I also know that the separated streams can be played by VLC, and I want to get the original integrated stream via RTSP Client, that is, the stream contains the Audio and Video stream and can be played synchronously. is there a way to implement this feature? Thanks a lot. > -- > > 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 > ____________________________________________________________________________________ Do you Yahoo!? Everyone is raving about the all-new Yahoo! Mail beta. http://new.mail.yahoo.com From bruno.morabito at mail.crim.sssup.it Mon Nov 27 03:40:22 2006 From: bruno.morabito at mail.crim.sssup.it (Bruno Morabito) Date: Mon, 27 Nov 2006 12:40:22 +0100 Subject: [Live-devel] RTP filters for real time audio and video Message-ID: <002c01c71218$d5aba720$046c7283@Bruno> I have some legacy code written with Directshow to which I have to add RTP real-time features for my project. Is the Live Media lib is suitable for this task? If yes, I need some hints on how to start developping RTP renderer/source filters. For example what class to derive and how to adapt the live media filter architecture to the Directshow filter architecture. Please, Could someone ask to this simple questions? Thank you. Bruno -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061127/fcaf37e9/attachment.html From yunjnz at yahoo.com Mon Nov 27 16:41:07 2006 From: yunjnz at yahoo.com (yj) Date: Mon, 27 Nov 2006 16:41:07 -0800 (PST) Subject: [Live-devel] How to download MPEG2PS stream via RTSPClient Message-ID: <314438.56221.qm@web35812.mail.mud.yahoo.com> --- yj wrote: > > --- Ross Finlayson wrote: > > > >I want to download a MPEG2PS stream from RTSP > > Server > > >and save to a file, > > >But it seems that the result file can't be played > > on > > >VLC or other players. > > > > Note that almost all MPEG RTSP/RTP streams consist > > of separate > > streams for audio and video (even if the input > > source, on the server, > > is a MPEG Program Stream). Therefore, "openRTSP" > > will save these > > streams as separate files: one for (Elementary > > Stream) audio; the > > other for (Elementary Stream) video. VLC should > > play either of these > > files, but you may have to rename them with > > appropriate file name > > suffixes (e.g., ".mp3" and ".mpg", respectively), > > first. > > Appreciate for your help. > I also know that the separated streams can be played > by VLC, > and I want to get the original integrated stream via > RTSP Client, > that is, the stream contains the Audio and Video > stream and can be played synchronously. > is there a way to implement this feature? > Thanks a lot. > Or how to re-integrate the separated streams into a MPEG2PS stream? Any instructions are highly appreciated. > > > -- > > > > 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 > > > > > > > ____________________________________________________________________________________ > Do you Yahoo!? > Everyone is raving about the all-new Yahoo! Mail > beta. > http://new.mail.yahoo.com > ____________________________________________________________________________________ Want to start your own business? Learn how on Yahoo! Small Business. http://smallbusiness.yahoo.com/r-index From jarod.dong at gmail.com Mon Nov 27 17:48:54 2006 From: jarod.dong at gmail.com (Jarod Dong) Date: Tue, 28 Nov 2006 09:48:54 +0800 Subject: [Live-devel] Which MediaSubmission is for H.264? Message-ID: <3099c0f30611271748r74e5b13bh7531ef02c7197f70@mail.gmail.com> Hi all, The changelog said there is "QuickTimeFileSink" to support H.264 video in ".mov" or ".mp4" output files, but if I want to use them in server, which MediaSubmission class should I use? I don't see any related to H.264. Thanks! Jarod -- Free trade reduces world suffering. From rmpg2001 at gmail.com Tue Nov 28 03:40:35 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Tue, 28 Nov 2006 12:40:35 +0100 Subject: [Live-devel] Error in testMPEG4VideoStreamer Message-ID: <389189e20611280340g2a5d12e1kbc007107e741e6e4@mail.gmail.com> Hi all! I saw that in testMPEG4VideoStreamer, when a RTCP packet there are some problems in next RTP packet sent. SSRC is different and sequence number it's not correct too. The first bytes of the payload are modified when the RTCP packet is sent. I think that it's because RTCP writes in fOutBuf overwriting the data that RTP puts in the buffer. What do you think? Any suggestions to solve this problem? Thanks in advance, Ramon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061128/7ec00bb8/attachment.html From finlayson at live555.com Tue Nov 28 06:42:45 2006 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 28 Nov 2006 06:42:45 -0800 Subject: [Live-devel] Error in testMPEG4VideoStreamer In-Reply-To: <389189e20611280340g2a5d12e1kbc007107e741e6e4@mail.gmail.com> References: <389189e20611280340g2a5d12e1kbc007107e741e6e4@mail.gmail.com> Message-ID: >Hi all! I saw that in testMPEG4VideoStreamer, when a RTCP packet >there are some problems in next RTP packet sent. SSRC is different >and sequence number it's not correct too. The first bytes of the >payload are modified when the RTCP packet is sent. > >I think that it's because RTCP writes in fOutBuf overwriting the >data that RTP puts in the buffer. No, that's nonsense, because "fOutBuf" is a separate member variable (that happens to have the same name), in two different classes. As far as I know, there are no problems with "testMPEG4VideoStreamer". (Note that you can also stream MPEG-4 Elementary Stream Video using the "testOnDemandRTSPServer" application (unicast, rather than multicast).) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From phujka at gmail.com Tue Nov 28 06:56:19 2006 From: phujka at gmail.com (Hujka Petr) Date: Tue, 28 Nov 2006 15:56:19 +0100 Subject: [Live-devel] LIVE555+JMF Message-ID: <88b09ad40611280656y1021f9b5yb7ae0970ce72687f@mail.gmail.com> Hi all, is there anyone, who knows how to make work JMStudio as client and LIVE555 as streaming server? I tried to run testOnDemandRTSPServer.exe with JMstudio, but it's not working. JMStudio says that server is not responding. I was trying to find some solution, but i found none. Is there please anyone, who has some client's implementation using Java applet, which is working with LIVE555? Thanks for response. Petr -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061128/877d889e/attachment.html From bruno.morabito at mail.crim.sssup.it Tue Nov 28 09:51:04 2006 From: bruno.morabito at mail.crim.sssup.it (Bruno Morabito) Date: Tue, 28 Nov 2006 18:51:04 +0100 Subject: [Live-devel] Build Message-ID: <007201c71315$c97de320$046c7283@Bruno> I have a question on how to compile the live library on windows xp with visual studio 2005 version 8. I was fallowing the instructions from the web however a problem appear. I change TOOLS32 to C:\Program Files\Microsoft Visual Studio 8\VC and when I run genWindowsMakefiles that shows me these infos for all the subprojects: C:\USERS\Maemo\live>genWindowsMakefiles Makefile.head ..\win32config Makefile.tail Could Not Find C:\USERS\Maemo\live\groupsock\Makefile Makefile.head ..\win32config Any suggestion on what may be wrong ? Bruno Morabito -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061128/0ce3c6f4/attachment.html From sdhays.neon.com.tw at gmail.com Tue Nov 28 18:15:29 2006 From: sdhays.neon.com.tw at gmail.com (Scott Hays) Date: Wed, 29 Nov 2006 10:15:29 +0800 Subject: [Live-devel] LIVE555+JMF In-Reply-To: <88b09ad40611280656y1021f9b5yb7ae0970ce72687f@mail.gmail.com> References: <88b09ad40611280656y1021f9b5yb7ae0970ce72687f@mail.gmail.com> Message-ID: <9866ce4f0611281815x18c808f3k3daa74034bb79336@mail.gmail.com> JMF's RTSP implementation is buggy and does not support the SDP format generated by LIVE555. Its RTP implementation has bugs too. I hacked the RTSP code with Sun's I was pretty disappointed with it when I was evaluating it last year, and it hasn't been updated since. There is an opensource project whose goal is to replace Sun's JMF reference implementation with an opensource implementation: http://fmj.sourceforge.net/ . I don't know about their support for RTP/RTSP, but I'd recommend taking a look. Hopefully their implementation will be much better than Sun's. Scott On 11/28/06, Hujka Petr wrote: > > Hi all, > is there anyone, who knows how to make work JMStudio as client and LIVE555 > as streaming server? I tried to run testOnDemandRTSPServer.exe with > JMstudio, but it's not working. JMStudio says that server is not responding. > I was trying to find some solution, but i found none. Is there please > anyone, who has some client's implementation using Java applet, which is > working with LIVE555? > Thanks for response. > Petr > > _______________________________________________ > 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: http://lists.live555.com/pipermail/live-devel/attachments/20061128/e24c7c56/attachment.html From rmpg2001 at gmail.com Wed Nov 29 01:16:53 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Wed, 29 Nov 2006 10:16:53 +0100 Subject: [Live-devel] Error in testMPEG4VideoStreamer In-Reply-To: References: <389189e20611280340g2a5d12e1kbc007107e741e6e4@mail.gmail.com> Message-ID: <389189e20611290116o6a1a800eja530672cc452a726@mail.gmail.com> Sorry, it was a modification that I made that provokes this error. I've already fixed it, thanks Ramon 2006/11/28, Ross Finlayson : > > >Hi all! I saw that in testMPEG4VideoStreamer, when a RTCP packet > >there are some problems in next RTP packet sent. SSRC is different > >and sequence number it's not correct too. The first bytes of the > >payload are modified when the RTCP packet is sent. > > > >I think that it's because RTCP writes in fOutBuf overwriting the > >data that RTP puts in the buffer. > > No, that's nonsense, because "fOutBuf" is a separate member variable > (that happens to have the same name), in two different classes. > > As far as I know, there are no problems with "testMPEG4VideoStreamer". > > (Note that you can also stream MPEG-4 Elementary Stream Video using > the "testOnDemandRTSPServer" application (unicast, rather than > multicast).) > -- > > 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: http://lists.live555.com/pipermail/live-devel/attachments/20061129/98a0386a/attachment-0001.html From dsusa at cestel.es Wed Nov 29 02:42:59 2006 From: dsusa at cestel.es (Diego Susa) Date: Wed, 29 Nov 2006 07:42:59 -0300 Subject: [Live-devel] testOnDemandRtspServer: does it support AVI file format? Message-ID: <456D6433.8060206@cestel.es> Hi, just a simple question: Is it possible to stream an AVI file with this test app ? Which type of ServerMediaSubsession clases should I use for audio and video ? (I have an AVI file with: H263 + linear PCM, 16 bits (little endian), 16KHz sampling, and 2 channels) cheers! Diego Susa From nomelogin2 at yahoo.it Wed Nov 29 06:33:53 2006 From: nomelogin2 at yahoo.it (Guido Cicala) Date: Wed, 29 Nov 2006 15:33:53 +0100 (CET) Subject: [Live-devel] RTSP Redirect Message-ID: <20061129143354.55884.qmail@web28114.mail.ukl.yahoo.com> Hi! I am more intrested to create an "RTSP proxy redirector" transparent to the client, by using live555 lib. This component will have to work in the following way: 1) The Client sends an RSTP request to the Proxy, e.g.: rtsp://:8890/Dragonslayer.ts not knowing that is the Proxy IP Address but thinking that it is the media Server IP Address; 2) The Proxy receives the Client request, coming from , and redirects the request to the Media Server; 3) The Media Server responds to the client request sending the required audio/video streaming (in such case "Dragonslayer.ts"). To how much I have read on Internet, the step #2 could be executed in in two ways: a) By using a REDIRECT request that redirects traffic for this URI to the new server at the given play time, e.g.: REDIRECT rtsp://example.com/fizzle/foo RTSP/ Is this possible by using live555 library? If yes, how can I realize it? b) By enhabling the flag RTSP_ALLOW_CLIENT_DESTINATION_SETTING in the liveMedia/RTSPServer.cpp file and changing RTSPClient's class behavior. How are these changes??? Thank you so much in advance for any help, tip and how much other!!!! Guido __________________________________________________ Do You Yahoo!? Poco spazio e tanto spam? Yahoo! Mail ti protegge dallo spam e ti da tanto spazio gratuito per i tuoi file e i messaggi http://mail.yahoo.it -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061129/7e52b66a/attachment.html From hemwire at gmail.com Wed Nov 29 06:37:47 2006 From: hemwire at gmail.com (Hemanth Kumar) Date: Wed, 29 Nov 2006 14:37:47 +0000 Subject: [Live-devel] getting mutiple files Message-ID: Hi all, Is it possible to retrive multiple files form streaming server (for eg i am using drawing sreamin server mp4player; i use gmp4player rtsp://192.168.1.93/sample_h264_1mbit.mp4 for 1 file) How can retrive mutilple files,Is this possible in OpenRTSP Please rectify if I am wrong , Or is possible with any other Client. Regards, Hemanth -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061129/057ebb33/attachment.html From finlayson at live555.com Wed Nov 29 07:32:42 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 07:32:42 -0800 Subject: [Live-devel] testOnDemandRtspServer: does it support AVI file format? In-Reply-To: <456D6433.8060206@cestel.es> References: <456D6433.8060206@cestel.es> Message-ID: >Hi, >just a simple question: >Is it possible to stream an AVI file with this test app ? No, not at present. (There is currently no "AVI demultiplexor" code in the "LIVE555 Streaming Media" library.) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Nov 29 07:43:02 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 07:43:02 -0800 Subject: [Live-devel] RTSP Redirect In-Reply-To: <20061129143354.55884.qmail@web28114.mail.ukl.yahoo.com> References: <20061129143354.55884.qmail@web28114.mail.ukl.yahoo.com> Message-ID: >2) The Proxy receives the Client request, coming from >, and redirects the request to the Media Server; [...] > >To how much I have read on Internet, the step #2 could be executed >in in two ways: >a) By using a REDIRECT request that redirects traffic for this URI >to the new server at the given play time, e.g.: REDIRECT >rtsp://example.com/fizzle/foo RTSP/ >Is this possible by using live555 library? No - and it would not do what you want anyway. The RTSP "REDIRECT" command (which we don't currently implement anyway) is used for a server to tell a *client* that it should reconnect to a different server. The way to implement a proxy is to make it both a RTSP server (accepting commands from the original client) and a RTSP client (connecting to the back-end server, transparently to the original client) - without any change in the way that the RTSP protocol is used. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061129/8ce3d691/attachment.html From guillaume at maunakeatech.com Wed Nov 29 08:01:36 2006 From: guillaume at maunakeatech.com (Guillaume Schmid) Date: Wed, 29 Nov 2006 17:01:36 +0100 Subject: [Live-devel] Problem with FramedSource and TaskScheduler Message-ID: <1164816096.7584.79.camel@kua.maunakeatech.zone> Hello! I just discovered live and I try to evaluate it to see if it could fit my needs an I have a problem: I have a process that generate MPEG1 frames in row buffer an put them into a queue. I would like to send them using the live library with RTP. I had a look at testMPEG1or2VideoStreamer source code and tried to adapt it to my needs using also informations from the FAQ. I created a FramedSource and re-implemented the 2 method doGetNextFrame and deliverFrame. This method is really simple as it fills the data from the frames in the list and set up the variables fFrameSize, fNumTruncatedBytes fPresentationTime and fDurationInMicroseconds. I re-used the code from testMPEG1or2VideoStreamer, so I have a BasicUsageEnvironment and a BasicSheduler set up as in the example. It seems that the BasicScheduler is periodically locked in the select system call for a short delay and always return 0. By looking into the code of the BasicTaskScheduler::SingleStep method, I saw that the select withs for read event on some file descriptors. I dont anderstant what those file desriptors are supposed to do. If they are a way to wait for information on a source, my FramedSource do not use a FD, so it cannot work. Could someone enlighten me on this ? do I have to provide a FD interface to my FramedSource to notify that a new frame is ready ot something like that ? Do I have ro implement an other kind of Scheduler ? I am really confused on this and I have problem seeing the big picture of all this. Yours, Guillaume. -- Guillaume Schmid - Software Development Supervisor Mauna Kea Technologies - http://www.maunakeatech.com -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://lists.live555.com/pipermail/live-devel/attachments/20061129/1719acd3/attachment.bin From xcsmith at rockwellcollins.com Wed Nov 29 12:22:47 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Wed, 29 Nov 2006 14:22:47 -0600 Subject: [Live-devel] RTSP Redirect Message-ID: The way to implement a proxy is to make it both a RTSP server (accepting commands from the original client) and a RTSP client (connecting to the back-end server, transparently to the original client) - without any change in the way that the RTSP protocol is used. ------------------------------- I have a similar RTSP complexity. My application RTSP client connects to an RTSP Server on an embedded device. The device can receive a multicast TS and decode MPEG video/audio for analog output to monitor and speakers. The device RTSP server is directed to SETUP and PLAY the stream. The device does not have its own storage, so it must connect to a second RTSP server and request the stream. The device does not know where the server with the data is, but the original application RTSP client does. So how should my messages look? Should the original RTSP client perhaps use something like the "content-base" field to tell the device the location of the storage server? (If not, what is the purpose of "content-base"?) Or should the original RTSP client direct the storage server to play the stream and ANNOUNCE the stream to the embedded device? Because we did not know how to solve this problem before, we decided that the RTSP message sent by the original client will contain the RTSP URL of the storage server, even though the message is sent to the embedded device. The device learns the location of the storage server from the RTSP URL in the original message. Not really ideal, but better than anything else we came up with. What do you think of this? When we read the standard, we thought that ANNOUNCE would be deprecated, so we did not try to use ANNOUNCE. Thanks! ~Medra From finlayson at live555.com Wed Nov 29 13:59:29 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 13:59:29 -0800 Subject: [Live-devel] Problem with FramedSource and TaskScheduler In-Reply-To: <1164816096.7584.79.camel@kua.maunakeatech.zone> References: <1164816096.7584.79.camel@kua.maunakeatech.zone> Message-ID: >Could someone enlighten me on this ? >do I have to provide a FD interface to my FramedSource to notify that a >new frame is ready ot something like that ? >Do I have ro implement an other kind of Scheduler ? >I am really confused on this and I have problem seeing the big picture >of all this. The "big picture" is that your input device must generate 'events' that are seen and handled by the event loop. The easiest way to do this - which does not require changing the pre-supplied event loop implementation "BasicTaskScheduler" - is to treat your input device as an open file in the operating system's file system. For most sensible operating systems (not Windows), input devices are already files - so, for example, you could use the existing " testMPEG1or2VideoStreamer" test program by just replacing "test.mpg" with the name of your device file (or "stdin" if you are using a pipe). If your input device is not an open file, then you must either use polling using "scheduleDelayedTask" (which adds latency), or else write a new event loop (a new subclass of "TaskScheduler") that recognizes your device's input frames as events. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From finlayson at live555.com Wed Nov 29 14:16:23 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 14:16:23 -0800 Subject: [Live-devel] RTSP Redirect In-Reply-To: References: Message-ID: >I have a similar RTSP complexity. My application RTSP client connects to >an RTSP Server on an embedded device. The device can receive a multicast >TS and decode MPEG video/audio for analog output to monitor and speakers. Then why is your device a RTSP *server*?? The whole point of RTSP is that the server is the entity that has the media that is to be delivered. Your device doesn't have the media - it *receives* the media. If your device receives and decodes multicast TS/RTP packets, but is not actually in charge of controlling playback, then there is no need for it to be involved in RTSP at all. Instead, just have your separate RTSP client ask to play the stream, from the real RTSP server. The server (assuming that the stream is multicast) will then multicast the stream. All your client then has to do is tell your device the multicast address and port of the incoming multicast stream. Either that, or put the RTSP client functionality on your embedded device rather than keeping it separate... -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From xiaogu at ibr.cs.tu-bs.de Wed Nov 29 14:50:56 2006 From: xiaogu at ibr.cs.tu-bs.de (Xiaoyuan Gu) Date: Wed, 29 Nov 2006 23:50:56 +0100 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer Message-ID: <456E0ED0.9000803@ibr.cs.tu-bs.de> Hi, I am working on a unicast streaming solution for wav/pcm audio files. The streamer is supposed to read from multiple files, depending the requested files by the clients. The features that I plan to have are as follows: The RTSP Server should be able to create severmediasession with multiple mediasubsessions (each corresponding to a wav file), e.g using a playlist. The RTSP Server should be able to announce whatever media it has, e.g. all the wav files exist. The RTSP clients (e.g. quicktime player, vlc) should be able to stream whatever wav files the RTSP server has, independent of whether the server announces them or not. However, I have always got the Disconnected 404 file not found error, even if the file actually physically exist at the server. Does anybody have a hint on what could be the problem? Thanks in advance! Regards, Xiaoyuan Gu From finlayson at live555.com Wed Nov 29 15:18:30 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 15:18:30 -0800 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer In-Reply-To: <456E0ED0.9000803@ibr.cs.tu-bs.de> References: <456E0ED0.9000803@ibr.cs.tu-bs.de> Message-ID: >I am working on a unicast streaming solution for wav/pcm audio files. >The streamer is supposed to read from multiple files, depending the >requested files by the clients. > >The features that I plan to have are as follows: > >The RTSP Server should be able to create severmediasession with multiple >mediasubsessions (each corresponding to a wav file), e.g using a playlist. Playlists are usually (and properly) handled by clients, not servers. Servers should not have to worry about streaming multiple files (one after the other) as if they were a single file. If you really want to do this, create a single file - at the server - that consists of all the original media concatenated together. But anyway, playlists should really be handled by clients, not servers. (All clients that I know about have some sort of 'playlist' feature.) >The RTSP Server should be able to announce whatever media it has, e.g. >all the wav files exist. As I noted earlier in the week (in response to someone else's question), there is nothing in the RTSP protocol that supports this - sorry. From xiaogu at ibr.cs.tu-bs.de Wed Nov 29 15:35:43 2006 From: xiaogu at ibr.cs.tu-bs.de (Xiaoyuan Gu) Date: Thu, 30 Nov 2006 00:35:43 +0100 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer In-Reply-To: References: <456E0ED0.9000803@ibr.cs.tu-bs.de> Message-ID: <456E194F.2010700@ibr.cs.tu-bs.de> Dear Ross, Thank you so much for your prompt reply. Is it possible to have a single server instance running that is able to handle multiple clients that each requests for different clips (with different names)? If yes, where to modify? Thanks! Regards, Xiaoyuan Ross Finlayson wrote: >> I am working on a unicast streaming solution for wav/pcm audio files. >> The streamer is supposed to read from multiple files, depending the >> requested files by the clients. >> >> The features that I plan to have are as follows: >> >> The RTSP Server should be able to create severmediasession with multiple >> mediasubsessions (each corresponding to a wav file), e.g using a playlist. >> > > Playlists are usually (and properly) handled by clients, not servers. > Servers should not have to worry about streaming multiple files (one > after the other) as if they were a single file. If you really want > to do this, create a single file - at the server - that consists of > all the original media concatenated together. > > But anyway, playlists should really be handled by clients, not > servers. (All clients that I know about have some sort of 'playlist' > feature.) > > >> The RTSP Server should be able to announce whatever media it has, e.g. >> all the wav files exist. >> > > As I noted earlier in the week (in response to someone else's > question), there is nothing in the RTSP protocol that supports this - > sorry. > > _______________________________________________ > live-devel mailing list > live-devel at lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel > -- TU Braunschweig, Institute of Operating Systems & Computer Networks M?hlenpfordtstr. 23 Phone: +49 531 391 3265 Braunschweig 38106, Germany Fax: +49 531 391 5936 http://www.ibr.cs.tu-bs.de/~xiaogu E-mail:xiaogu at ibr.cs.tu-bs.de From finlayson at live555.com Wed Nov 29 15:56:25 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 15:56:25 -0800 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer In-Reply-To: <456E194F.2010700@ibr.cs.tu-bs.de> References: <456E0ED0.9000803@ibr.cs.tu-bs.de> <456E194F.2010700@ibr.cs.tu-bs.de> Message-ID: >Is it possible to have a single server instance running that is able to >handle multiple clients that each requests for different clips (with >different names)? Yes, of course. Out RTSP server implementation can handle multiple concurrent clients, and can handle several requests (in succession) from the same client. No modification is needed. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From xcsmith at rockwellcollins.com Wed Nov 29 15:57:34 2006 From: xcsmith at rockwellcollins.com (xcsmith at rockwellcollins.com) Date: Wed, 29 Nov 2006 17:57:34 -0600 Subject: [Live-devel] RTSP Redirect In-Reply-To: Message-ID: > Then why is your device a RTSP *server*?? Because the device can also multicast a TS encoded from video camera and microphone. Therefore the device already has to implement an RTSP server, and the powers-that-be did not want to implement another method for controlling the decoding. Really, i argue this a lot. :) > Either that, or put the RTSP client functionality on your embedded device rather than keeping it separate... The device also has a client, so when my software client connects to the device server, the device client connects to the storage server. But the curiosity was: How should the device learn the location of the storage server? Maybe the answer is just that RTSP is not designed that way. Or as you say, the right way to do that is to have the original client connect to the storage server and then send proprietary message to the device. But that is one reason why I ask you. I mention this curiosity because it seemed related to your suggestion of having a proxy server "seamlessly" connect real RTSP server and RTSP client together by having the proxy with its own client also. ~Medra From mnogales at vdx.es Wed Nov 29 17:00:21 2006 From: mnogales at vdx.es (Manuel Jesus Nogales) Date: Thu, 30 Nov 2006 02:00:21 +0100 Subject: [Live-devel] loosing information when parse a frame and fMaxsize is less than frame size Message-ID: <456E2D25.3020603@vdx.es> Hello I am a newbie working with live555. I have adapted the testOnDemandRTSPServer, and I have developed my own class miVideoServerMediaSubsession (: public OnDemandServerMediaSubsession) and class miStreamBufferSource (: public FramedSource) in order to obtain my source from a camera. It works fine but in the method miVideoServerMediaSubsession::doGetNextFrame(), when I got a frame (stored in my buffer from my MPEG1 encoder) with size bigger that fMaxSize(in that moment) ,then I must to truncate information from that frame in order to could write at the fTo pointer. Is there any way to order the StreamParser to change to the other Bank? I suppouse, it would restore the value of the fMaxSize to 150000 and then I will write all the frame and I will not lose any information. my doGetNextFrame() { ...... num_bytes_codificados = m_video->codifica((char *)g_buffer_imagen,TAMANO_BUFFER_IMAGEN,0); / * my encode method, g_buffer_imagen (global variable buffer, store image at pgm format) -> g_buffer_codificado (global variable buffer, store actual frame of MPEG1 encoding), the method return the number of bytes of the encoded frame = size of g_buffer_codificado */ printf("PUNTO1 num_bytes_codificados: %d, fMaxSize: %d\n",num_bytes_codificados,fMaxSize); if(num_bytes_codificados == -1) { fFrameSize = 0; perror("------------"); return -1; } else fFrameSize = num_bytes_codificados; if (fFrameSize > fMaxSize) { fNumTruncatedBytes = fFrameSize - fMaxSize; fFrameSize = fMaxSize; } memcpy(fTo,g_buffer_codificado,fFrameSize); printf("PUNTO2 fFrameSize: %d , fMaxSize: %d\n",fFrameSize,fMaxSize ); FramedSource::afterGetting(this); return 0; } I know I am loosing information cause when I saw with my cliente "mplayer" the stream sometimes appear a frame with "bad" blocks. I hope anyone could help me, Thanks in advance. /// / From finlayson at live555.com Wed Nov 29 17:59:54 2006 From: finlayson at live555.com (Ross Finlayson) Date: Wed, 29 Nov 2006 17:59:54 -0800 Subject: [Live-devel] loosing information when parse a frame and fMaxsize is less than frame size In-Reply-To: <456E2D25.3020603@vdx.es> References: <456E2D25.3020603@vdx.es> Message-ID: If your encoder delivers discrete MPEG (1 or 2) video frames, rather than an unstructured byte stream, then you should use "MPEG1or2VideoStreamDiscreteFramer" rather than "MPEG1or2VideoStreamFramer". This will be more efficient, because you won't need to parse through the input data. But if you still want to use "MPEG1or2VideoStreamFramer", then you *may* be able to solve your problem by increasing BANK_SIZE in "StreamParser.cpp". -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From nomelogin2 at yahoo.it Thu Nov 30 00:55:51 2006 From: nomelogin2 at yahoo.it (Guido Cicala) Date: Thu, 30 Nov 2006 08:55:51 +0000 (GMT) Subject: [Live-devel] R: RTSP Redirect Message-ID: <20061130085551.65700.qmail@web28104.mail.ukl.yahoo.com> > The way to implement a proxy is to make it both a RTSP server (accepting commands from > the original client) and a RTSP client (connecting to the back-end server, transparently to the > original client) - without any change in the way that the RTSP protocol is used. > > > -- > > > 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 Ok, thanks! Now in my mind is clear that: 1) I can't use RTSP "REDIRECT" command (not implemented in live555). 2) A proxy is constituted by a "server side" and a "client side"... But how can I realize it using live555? I think that I shoud start to modify the RTSPServer (for the "server side") class to intercept the Server IP Address in the client request and modify OpenRTSP implementation (for the "client side") to redirect each command to the server IP Address. But I have not found where the Server Ip Address is used... Is my reasoning wrong? Can someone help me, please? Thanks a lot, Guido __________________________________________________ Do You Yahoo!? Poco spazio e tanto spam? Yahoo! Mail ti protegge dallo spam e ti da tanto spazio gratuito per i tuoi file e i messaggi http://mail.yahoo.it -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/16857136/attachment.html From rmpg2001 at gmail.com Thu Nov 30 01:46:13 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Thu, 30 Nov 2006 10:46:13 +0100 Subject: [Live-devel] Ip source Message-ID: <389189e20611300146m726eaaar64c2bdc9f1a26bf0@mail.gmail.com> Hi! If I have two Network cards with different IP's, is there some way to choose in some testProg server what card and what IP is my ip source for the session that I stream?? If there isn't. What could I modify to implement this? Thanks in advance, Ramon From rmpg2001 at gmail.com Thu Nov 30 01:47:47 2006 From: rmpg2001 at gmail.com (Ramon Martin de Pozuelo) Date: Thu, 30 Nov 2006 10:47:47 +0100 Subject: [Live-devel] Source IP Message-ID: <389189e20611300147v2a47088du282d04cf4a59388e@mail.gmail.com> Hi! If I have two network cards with different ip's, is there some way to choose in some testProg server what card and what ip is my source ip for the session that I stream?? If there isn't. What could I modify to implement this? Thanks in advance, Ramon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/474c15e2/attachment.html From mnogales at vdx.es Thu Nov 30 02:26:14 2006 From: mnogales at vdx.es (Manuel Jesus Nogales) Date: Thu, 30 Nov 2006 11:26:14 +0100 Subject: [Live-devel] loosing information when parse a frame and fMaxsize is less than frame size In-Reply-To: References: <456E2D25.3020603@vdx.es> Message-ID: <456EB1C6.5020306@vdx.es> Ross Finlayson escribi?: > If your encoder delivers discrete MPEG (1 or 2) video frames, rather > than an unstructured byte stream, then you should use > "MPEG1or2VideoStreamDiscreteFramer" rather than > "MPEG1or2VideoStreamFramer". This will be more efficient, because > you won't need to parse through the input data. > > But if you still want to use "MPEG1or2VideoStreamFramer", then you > *may* be able to solve your problem by increasing BANK_SIZE in > "StreamParser.cpp". > Hello I have suppoused that changing the BANK_SIZE is not the way, cause I will have the same problems with 100000 or 150000 or 200000. In my "myByteStreamBufferSource::doGetNextFrame()", I parse to fTo a number of bytes of the encoded frame of that moment (the encoded frame comes from myEncoderMPEG that encode to MPEG1 the live captures of my camera). The number of bytes is different for each frame, but never is greater to 10000 bytes. As I undestand in every call of doGetNextFrame the number of fMaxSize is reduced by fFrameSize every time, and when I have parsed the last bytes to fTo, for the next time is called doGetNextFrame, fMaxSize is reloaded to 150000. I suppouse StreamParser do that, changing fTo to point another buffer ("bank") with size 150000. My question is, How can I force the "reload" of the value of fMaxSize (rewind the fTo) when fFrameSize is gratter than fMaxSize? In case it will does not possible, what can I do with the fNumTruncatedBytes? It will be possible to send it to fTo, in order of does not lose any information? If I use MPEG1or2VideoStreamDiscreteFramer, what must I change on my "class myByteStreamBufferSource: public FramedSource"? Can anybody tell where to find any example? Thanks in advance, From rajeshkumar.r at imimobile.com Thu Nov 30 02:32:09 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Thu, 30 Nov 2006 16:02:09 +0530 Subject: [Live-devel] doubt in port recvd for Audio and Video Data.......plz help Message-ID: <009701c7146a$ca1d5f80$f801000a@imidomain.com> Hi all I am getting the following Data after opening a RTSP server thru "OPENRTSP" client. whether I am correct while Interoreting the below data 1488 ---video RTP Data will be recvd 1489--video RTCP data will be recvd 1490--Audio RTCP data will be recvd 1491--Audio RTCP data will be recvd Created receiver for "video/X-QT" subsession (client ports 1488-1489) Created receiver for "audio/MPEG4-GENERIC" subsession (client ports 1490-1491) plz help me to understand this. with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/76a28f48/attachment.html From finlayson at live555.com Thu Nov 30 02:43:31 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 02:43:31 -0800 Subject: [Live-devel] Source IP In-Reply-To: <389189e20611300147v2a47088du282d04cf4a59388e@mail.gmail.com> References: <389189e20611300147v2a47088du282d04cf4a59388e@mail.gmail.com> Message-ID: >Hi! >If I have two network cards with different ip's, is there some way >to choose in some testProg server what card and what ip is my source >ip for the session that I stream?? Yes, see http://lists.live555.com/pipermail/live-devel/2006-October/005295.html (You'll probably also want to set "SendingInterfaceAddr".) -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/0b39bf5c/attachment.html From guillaume at maunakeatech.com Thu Nov 30 02:52:45 2006 From: guillaume at maunakeatech.com (Guillaume Schmid) Date: Thu, 30 Nov 2006 11:52:45 +0100 Subject: [Live-devel] Problem with FramedSource and TaskScheduler In-Reply-To: References: <1164816096.7584.79.camel@kua.maunakeatech.zone> Message-ID: <1164883965.7584.92.camel@kua.maunakeatech.zone> Thank you for your explanations, I change my design to use pipes, that should ease a lot the integration with live. Thanks again! Yours, Guillaume. On Wed, 2006-11-29 at 13:59 -0800, Ross Finlayson wrote: > >Could someone enlighten me on this ? > >do I have to provide a FD interface to my FramedSource to notify that a > >new frame is ready ot something like that ? > >Do I have ro implement an other kind of Scheduler ? > >I am really confused on this and I have problem seeing the big picture > >of all this. > > The "big picture" is that your input device must generate 'events' > that are seen and handled by the event loop. > > The easiest way to do this - which does not require changing the > pre-supplied event loop implementation "BasicTaskScheduler" - is to > treat your input device as an open file in the operating system's > file system. For most sensible operating systems (not Windows), > input devices are already files - so, for example, you could use the > existing " testMPEG1or2VideoStreamer" test program by just replacing > "test.mpg" with the name of your device file (or "stdin" if you are > using a pipe). > > If your input device is not an open file, then you must either use > polling using "scheduleDelayedTask" (which adds latency), or else > write a new event loop (a new subclass of "TaskScheduler") that > recognizes your device's input frames as events. -- Guillaume Schmid - Software Development Supervisor Mauna Kea Technologies - http://www.maunakeatech.com -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://lists.live555.com/pipermail/live-devel/attachments/20061130/7ccdae37/attachment.bin From finlayson at live555.com Thu Nov 30 02:53:32 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 02:53:32 -0800 Subject: [Live-devel] doubt in port recvd for Audio and Video Data.......plz help In-Reply-To: <009701c7146a$ca1d5f80$f801000a@imidomain.com> References: <009701c7146a$ca1d5f80$f801000a@imidomain.com> Message-ID: > >Hi all >I am getting the following Data after opening a RTSP server thru >"OPENRTSP" client. > >whether I am correct while Interoreting the below data > >1488 ---video RTP Data will be recvd >1489--video RTCP data will be recvd >1490--Audio RTCP data will be recvd >1491--Audio RTCP data will be recvd > >Created receiver for "video/X-QT" subsession (client ports 1488-1489) >Created receiver for "audio/MPEG4-GENERIC" subsession (client ports 1490-1491) Yes, that's correct. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/5e535008/attachment.html From xiaogu at ibr.cs.tu-bs.de Thu Nov 30 03:12:11 2006 From: xiaogu at ibr.cs.tu-bs.de (Xiaoyuan Gu) Date: Thu, 30 Nov 2006 12:12:11 +0100 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer In-Reply-To: References: <456E0ED0.9000803@ibr.cs.tu-bs.de> <456E194F.2010700@ibr.cs.tu-bs.de> Message-ID: <456EBC8B.9080109@ibr.cs.tu-bs.de> Hi, Ross, My concern is: can these requests on different media (clips) be handled by the same server instance? Not requests on the same clip - I know this works, no doubt. By experience is unfortunately not so successful so far.. Xiaoyuan Ross Finlayson wrote: >> Is it possible to have a single server instance running that is able to >> handle multiple clients that each requests for different clips (with >> different names)? >> > > Yes, of course. Out RTSP server implementation can handle multiple > concurrent clients, and can handle several requests (in succession) > from the same client. No modification is needed. > -- TU Braunschweig, Institute of Operating Systems & Computer Networks M?hlenpfordtstr. 23 Phone: +49 531 391 3265 Braunschweig 38106, Germany Fax: +49 531 391 5936 http://www.ibr.cs.tu-bs.de/~xiaogu E-mail:xiaogu at ibr.cs.tu-bs.de From rajeshkumar.r at imimobile.com Thu Nov 30 03:21:01 2006 From: rajeshkumar.r at imimobile.com (Rajesh) Date: Thu, 30 Nov 2006 16:51:01 +0530 Subject: [Live-devel] H263 video codec Message-ID: <017b01c71471$9dbc45d0$f801000a@imidomain.com> Hi all whether Live Media Supports H263 video codec and N_AMR Audio codec for streaming. with Regards Rajesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/1376e8ad/attachment.html From finlayson at live555.com Thu Nov 30 05:05:10 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 05:05:10 -0800 Subject: [Live-devel] H263 video codec In-Reply-To: <017b01c71471$9dbc45d0$f801000a@imidomain.com> References: <017b01c71471$9dbc45d0$f801000a@imidomain.com> Message-ID: >Hi all >whether Live Media Supports H263 video codec and N_AMR Audio codec >for streaming. Yes, of course. You can see this by looking at the code. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/b7a2de3c/attachment.html From finlayson at live555.com Thu Nov 30 05:18:43 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 05:18:43 -0800 Subject: [Live-devel] multiple-file support for on-demand-RTSPStreamer In-Reply-To: <456EBC8B.9080109@ibr.cs.tu-bs.de> References: <456E0ED0.9000803@ibr.cs.tu-bs.de> <456E194F.2010700@ibr.cs.tu-bs.de> <456EBC8B.9080109@ibr.cs.tu-bs.de> Message-ID: >My concern is: can these requests on different media (clips) be handled >by the same server instance? Not requests on the same clip - I know this >works, no doubt. > >By experience is unfortunately not so successful so far.. Then you must not be setting up the "ServerMediaSession"/"ServerMediaSubsession" objects in your "RTSPServer" correctly. Concurrent handling of multiple requests (to the same, or different) media file should work just fine. Another thing you can do is run the new "live555MediaServer" application (which is built in the "mediaServer" subdirectory). This is a complete RTSP server application that will stream (concurrently, if requested) any media file (with an appropriate name suffix) that's located in the current directory. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From riwanda at yahoo.com Thu Nov 30 07:00:36 2006 From: riwanda at yahoo.com (Gunar Riwanda) Date: Thu, 30 Nov 2006 07:00:36 -0800 (PST) Subject: [Live-devel] problem on my "slightly" modified testmpeg4esvideostreamer Message-ID: <20061130150036.79292.qmail@web54611.mail.yahoo.com> i made a little change to testmpeg4videostreamer. i put everything in a class (myServer.h and myServer.cpp) then call everything in my main function (main.cpp) the source code looks like this: this is the myServer class class myServer{ void myServer :: init(){ // i move almost all function to here except the play() and doeventloop. } void myServer::play (){ // still the same "play" function } ... ... ... } and this is the main function #include"myServer.h" int main(){ myServer Sender; Sender.init(); Sender.play(); Sender.env->taskScheduler().doEventLoop(); } it doesn't work.... it gives the message BasicTaskScheduler:SingleStep():Select() fails: no error but if i put the doeventloop in the play function and the play function within the init function then it will work. the working source code is like this: class myServer{ void myServer :: init(){ // i move ALL of the functions here. } void myServer::play (){ // the same "play" function } ... ... ... } #include"myServer.h" int main(){ myServer Sender; Sender.init(); } is it normal? if it is, can you please tell me how to make it works, because i really need to call the init function and the play function (and also the doeventloop) separately in the main function. i would be really grateful for every hint. thank you, Gunar ____________________________________________________________________________________ Do you Yahoo!? Everyone is raving about the all-new Yahoo! Mail beta. http://new.mail.yahoo.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.live555.com/pipermail/live-devel/attachments/20061130/c60644ca/attachment-0001.html From finlayson at live555.com Thu Nov 30 09:52:04 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 09:52:04 -0800 Subject: [Live-devel] problem on my "slightly" modified testmpeg4esvideostreamer In-Reply-To: <20061130150036.79292.qmail@web54611.mail.yahoo.com> References: <20061130150036.79292.qmail@web54611.mail.yahoo.com> Message-ID: >i made a little change to testmpeg4videostreamer. [...] >it doesn't work.... Well, does it work when you use the run the *original, unmodified* "testMPEG4VideoStreamer"? (I suspect not - see below.) This is common sense 101: First see if the original code works, before you try making a modification. >it gives the message BasicTaskScheduler:SingleStep():Select() fails: no error Please read the FAQ!! -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From darnold at futurec.net Thu Nov 30 17:04:43 2006 From: darnold at futurec.net (David Arnold) Date: Thu, 30 Nov 2006 17:04:43 -0800 Subject: [Live-devel] Which MediaSubmission is for H.264? In-Reply-To: <3099c0f30611271748r74e5b13bh7531ef02c7197f70@mail.gmail.com> Message-ID: >The changelog said there is "QuickTimeFileSink" to support H.264 video >in ".mov" or ".mp4" output files, but if I want to use them in server, >which MediaSubmission class should I use? I don't see any related to >H.264. > In not sure why you would want to use QuickTimeFileSink in a server application, but you can use H264VideoRTPSource and QuickTimeFileSink in a client application. Dave -----Original Message----- From: live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com]On Behalf Of Jarod Dong Sent: Monday, November 27, 2006 5:49 PM To: live-devel at ns.live555.com Subject: [Live-devel] Which MediaSubmission is for H.264? Hi all, The changelog said there is "QuickTimeFileSink" to support H.264 video in ".mov" or ".mp4" output files, but if I want to use them in server, which MediaSubmission class should I use? I don't see any related to H.264. Thanks! Jarod -- Free trade reduces world suffering. _______________________________________________ live-devel mailing list live-devel at lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel The information contained in this electronic mail transmission is intended only for the use of the individual or entity named above and is privileged and confidential. If you are not the intended recipient, please do not read, copy, use or disclose this communication to others. Any dissemination, distribution or copying of this communication other than to the person or entity named above is strictly prohibited. If you have received this communication in error, please immediately delete it from your system. From finlayson at live555.com Thu Nov 30 17:09:30 2006 From: finlayson at live555.com (Ross Finlayson) Date: Thu, 30 Nov 2006 17:09:30 -0800 Subject: [Live-devel] Which MediaSubmission is for H.264? In-Reply-To: References: Message-ID: > >The changelog said there is "QuickTimeFileSink" to support H.264 video >>in ".mov" or ".mp4" output files, but if I want to use them in server, >>which MediaSubmission class should I use? I don't see any related to >>H.264. >> > >In not sure why you would want to use QuickTimeFileSink in a server I don't think that's what he was asking. He was noting that there is support in the library for receiving H.264/RTP streams, and wanted to know what to use to *send* H.264/RTP streams. The answer is: Please read the FAQ! -- Ross Finlayson Live Networks, Inc. http://www.live555.com/