Re: [Live-devel] LIVE555 Media Server and Windows Media Player

2008-04-11 Thread Luca Abeni
Artem Goryunov wrote:
> Hello All!
> 
> Please help
> I don't understand why the stream (rtsp://xx.xx.xx.xx/test.mpg) from 
> LIVE555 Media Server does not open by Windows Media Player?
Because Windows Media Player does not support MPEG over RTP?

> How it is possible to repair it?
Fix Windows Media Player (or switch to vlc)


Luca
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] LIVE555 Media Server and Windows Media Player

2008-04-11 Thread fay
在 Friday 11 April 2008 14:48:11,Artem Goryunov 写道:
> Hello All!
>
> Please help
> I don't understand why the stream (rtsp://xx.xx.xx.xx/test.mpg) from
> LIVE555 Media Server does not open by Windows Media Player?
> How it is possible to repair it?
>
> 
> Artem

hi, try real player first


___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] rtsp server

2008-04-11 Thread Ross Finlayson

Hi Ross,
We are taking TV channel signal into Capture card and output of capture
card is fed into Helix mobile Producer.
Instead of Helix Mobile Producer can we use RTSP Server of Live555 
to Process the TV channel Data.


You will need an encoder to compress the software (e.g., into MPEG-4 
or H.264) before you feed it into the server.


But once you've done that, it's possible - with a little extra coding 
- to stream such data using our server.  For some more details, see 
the FAQ.

--

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] LIVE555 Media Server and Windows Media Player

2008-04-11 Thread Ross Finlayson
>I don't understand why the stream (rtsp://xx.xx.xx.xx/test.mpg) from 
>LIVE555 Media Server does not open by Windows Media Player?

It's because Windows Media Player is not standards-compliant.  Use VLC instead.

-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] rtsp server

2008-04-11 Thread rajesh
Re: [Live-devel] rtsp serverHi Ross,
Can U suggest me any encoder for H.263 + AMR , must be compatible with Live555.


Thanks and Regards
Rajesh Kumar
Sr. Software Engineer
R & D - Network Group 
+91 40 23555945 - 235
+91 99084 00027
www.imimobile.com 


  - Original Message - 
  From: Ross Finlayson 
  To: LIVE555 Streaming Media - development & use 
  Sent: Friday, April 11, 2008 11:54 AM
  Subject: Re: [Live-devel] rtsp server


Hi Ross,
We are taking TV channel signal into Capture card and output of capture
card is fed into Helix mobile Producer.
Instead of Helix Mobile Producer can we use RTSP Server of Live555 to 
Process the TV channel Data.


  You will need an encoder to compress the software (e.g., into MPEG-4 or 
H.264) before you feed it into the server.


  But once you've done that, it's possible - with a little extra coding - to 
stream such data using our server.  For some more details, see the FAQ.
-- 

  Ross Finlayson
  Live Networks, Inc.
  http://www.live555.com/


--


  ___
  live-devel mailing list
  live-devel@lists.live555.com
  http://lists.live555.com/mailman/listinfo/live-devel
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Visual 2005

2008-04-11 Thread Eric Flickner
Ross,

Both of these versions of Visual Studio are free are compatible with the
"full" Visual Studio versions.  Therefore you can use one of these provided
below to maintain and test with.

Visual Studio 2008 C++ Express
http://www.microsoft.com/express/vc

Visual Studio 2005 C++ Express
http://www.microsoft.com/express/2005/download/default.aspx

Thanks,

Eric Flickner

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Ross Finlayson
Sent: Thursday, April 10, 2008 8:37 AM
To: LIVE555 Streaming Media - development & use
Subject: Re: [Live-devel] Visual 2005

>I have seen a few request asking how to compile the LiveMedia library for
>Microsoft Visual 2005. I know the FAQ provides a link for this purpose. But
>you have to go through many steps. I have a Visual 2005 solution file
(.sln)
>as well as the associated project files (.vcproj) for visual 2005 that
>compiles the whole LiveMedia library as well as the associated
applications.
>I keep these project files in a separate folder in the tree folders of the
>library. I use these projects files to compile each LiveMedia source code
>release with Visual Studio 2005.
>
>Are you interested to integrate these projects file into the library?

No, because I don't want to include something that I don't use (and 
therefore can't test, or upgrade) myself.  However, if you have 
something that's available on a web site, then I would be happy to 
add a link to this under 
 (e.g., there's 
already a 'hints' link there.)
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Visual 2005

2008-04-11 Thread Andreas Färber

Am 11.04.2008 um 13:40 schrieb Eric Flickner:

> Ross,
>
> Both of these versions of Visual Studio are free are compatible with  
> the
> "full" Visual Studio versions.  Therefore you can use one of these  
> provided
> below to maintain and test with.

No, only when running Windows. And he mentioned OSX recently.

> Visual Studio 2008 C++ Express
> http://www.microsoft.com/express/vc
>
> Visual Studio 2005 C++ Express
> http://www.microsoft.com/express/2005/download/default.aspx

Regards,

Andreas
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Visual 2005

2008-04-11 Thread Ross Finlayson
>No, only when running Windows. And he mentioned OSX recently.

No, noone mentioned building for Windows on OS X.  When I build the 
code for Windows, I do so on Windows (XP), using a version of "Visual 
Studio" that understands Makefiles - which has been the standard 
mechanism for specifying software build rules for more than 25 years 
now.  If - for whatever reason - Microsoft chooses not to support 
Makefiles in their newer versions of "Visual Studio", then that's 
their problem, not mine.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


[Live-devel] Remove a session...

2008-04-11 Thread Raphaël KINDT
Hello Ross,

What are the situations where DynamicRTSPServer is usefull to use?

How to wake upenv->taskScheduler().doEventLoop(&watch_scheduler)   when
no server media session is added?
The loop is waiting at a 'select()' call and thus doesn't check my
watch_scheduler.
To do that I must be able to wake this 'select()' instruction...
In short, how to stop the server gracefully when no streaming has been
performed?

I've some difficulty to add and remove session properly.  Sometimes the
server crashes because I've a memory violation.
I can show remote video with VLC. But when I remove a session, the server
crashes (sometimes, with or without a connected VLC client)...

I do my best to understand the LIVE library but it's not very easy...
Below I send you a part of my test code.

The class SeldesJPEGVideoSource is derived from JPEGVideoSource.
This class reads some JPEG files to simulate video (all JPEG files are saved
into the RAM for the video simulation).




The struct I used for my test:
typedef struct _sessionState_t
{
FramedSource* source;
RTPSink* sink;
RTCPInstance* rtcpInstance;
Groupsock* rtpGroupsock;
Groupsock* rtcpGroupsock;
ServerMediaSession * sms;
} sessionState_t;

typedef std::map sessions_map_t;
typedef sessions_map_t::iterator sessions_map_it;
sessions_map_t sessionMap;
... and some other global variable ...


The thread that executes the scheduler:
DWORD WINAPI Scheduler(LPVOID pParam)
{
// Begin by setting up our usage environment:
TaskScheduler* scheduler = BasicTaskScheduler::createNew();
env = BasicUsageEnvironment::createNew(*scheduler);
// Allow for up to 100 RTP packets per JPEG frame
//OutPacketBuffer::numPacketsLimit = 100;
OutPacketBuffer::maxSize = MAX_BUFFER_SIZE;

timePerFrame = 100 / fps; // microseconds
averageFrameSizeInBytes = 35000; // estimate
totalSessionBandwidth = (8 * 1000 * averageFrameSizeInBytes) /
timePerFrame; // in kbps
//gethostname((char*)CNAME, maxCNAMElen);
sprintf((char*)CNAME, "Seldes camera"); // "gethostname()" isn't
supported
CNAME[maxCNAMElen] = '\0'; // just in case

rtpPortNum = ;
rtcpPortNum = rtpPortNum+1;
ttl = 255; // time to live (for client buffer)

// Create and start a RTSP server to serve this stream:
UserAuthenticationDatabase* authDB = NULL;
rtspServer = RTSPServer::createNew(*env, 7070, authDB);
if (rtspServer == NULL)
{
*env << "Failed to create RTSP server: " << env->getResultMsg() <<
"\n";
exit(1);
}

//---
env->taskScheduler().doEventLoop(&watch_scheduler);
//---

sessions_map_it it;
for(it = sessionMap.begin(); it != sessionMap.end(); ++it)
{
RemoveSession(it->first);
sessionMap.erase(it++);
}
Medium::close(rtspServer);
delete scheduler;
env->reclaim();

return true;
}




To add a session (called by another thread):
bool AddSession(const std::string & _session_name)
{
// verifie si la session existe deja
sessions_map_it it;
for(it = sessionMap.begin(); it != sessionMap.end(); ++it)
{
if(it->first == _session_name)
{
std::cout << "This session already exist...\n";
return false;
}
}

// Create 'groupsocks' for RTP and RTCP:
struct in_addr destinationAddress;
destinationAddress.s_addr = chooseRandomIPv4SSMAddress(*env);

const Port rtpPort(rtpPortNum);
const Port rtcpPort(rtcpPortNum);
sessionMap[_session_name].rtpGroupsock = new Groupsock(*env,
destinationAddress, rtpPort, ttl);
sessionMap[_session_name].rtpGroupsock->multicastSendOnly();
sessionMap[_session_name].rtcpGroupsock = new Groupsock(*env,
destinationAddress, rtcpPort, ttl);
sessionMap[_session_name].rtcpGroupsock->multicastSendOnly();

// Create an appropriate RTP sink from the RTP 'groupsock':
sessionMap[_session_name].sink = JPEGVideoRTPSink::createNew(*env,
sessionMap[_session_name].rtpGroupsock);

// Create (and start) a 'RTCP instance' for this RTP sink:
sessionMap[_session_name].rtcpInstance = RTCPInstance::createNew(
*env,
sessionMap[_session_name].rtcpGroupsock,
  totalSessionBandwidth,
CNAME,
  sessionMap[_session_name].sink,
NULL /* we're a server */,
  True /* we're a SSM source*/);
// Note: This starts RTCP running automatically
sessionMap[_session_name].sms = ServerMediaSession::createNew(
  *env,
  _session_name.c_str(),
  progName,
  "Session streamed by the Seldes camera 1",
  True/*SSM*/);

sessionMap[_session_name].sms->addSubsession(PassiveServerMediaSubsession::c
reateNew

[Live-devel] how do we run a live MPEG4 (aud/vid) RTP-over-http stream in VLC (live555)?

2008-04-11 Thread s s
Hi,

 We are trying to run a live MPEG4 (aud/vid) stream in VLC (0.8.6) but have
not had success.
The stream is in RTP-over-http format. I understand VLC uses the live555
library.

 Upon seeing a RTP stream, does live555 get invoked properly in VLC? or are
there additional steps?
Please advise what are the proper steps/parameters to use.

The packets from the stream are listed below

Thank you very much.

Regards


 This is some of the info from the RTP stream -


Audio is G.726

Media description - audio 0 RTP/AVP 99
Bandwidth information - AS:32.00
Media attribute - rtpmap:99 G726-32/8000/1
Media attribute - control:rtpoverHttp:// ...

Media description - video 0 RTP/AVP 96
Bandwidth information - AS:3000.0
Media attribute - rtpmap:96 MP4V-ES/9 0
Media attribute - control:rtpoverhttp:// ...

Media attribute - fmtp:96 profile-level-id-1;cpresent=0;config=...

then

GET http
...
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Visual 2005

2008-04-11 Thread Andreas Färber

Am 11.04.2008 um 14:34 schrieb Ross Finlayson:

>> No, only when running Windows. And he mentioned OSX recently.
>
> No, noone mentioned building for Windows on OS X.  When I build the
> code for Windows, I do so on Windows (XP), using a version of "Visual
> Studio" that understands Makefiles

You did mention testing the previous bugfix on OSX.

And my point is, just because Microsoft makes something available free- 
as-in-beer it's no compelling reason for everyone to actually use it,  
especially not in a multi-platform environment, such as yours  
apparently.

Rather than running Visual Studio 2005 Express and maintaining  
separate project files here or elsewhere, it might work better to  
generate the project files from the Makefiles. The Mono project does  
that with a shell script.

Andreas
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


[Live-devel] Live555 about ServerMediaSession

2008-04-11 Thread cheung bonheur
Hello Ross,

I use Live555 to stream mjpeg from camera live.
I wish add and remove dynamically a ServerMediaSession but usually during 
remove a ServerMediaSession from a rtspserver , I found some bugs exception 
memory. 

I read previous mail where you say it is possible. So i think the trouble is 
how i delete my Object Medium.

The instance before the exception, is the state where i remove a MediaSession 
and i proceed like that:

Firstly, i stop the sink by a sink->stopPlaying(), and the i can remove the 
source media 
source->stopGettingFrames().

Secondly, i remove fthe mediasession by invoke rtspserver method 
"removeServerMediaSession" and then i close the sink, the source,the 
rtcpInstance and all groupsock.

Can you help me about the order of remove Element (Medium) and how ( because 
there are a lot of manner to remove a Medium...) . 

If there are existing replys , forward me.

Thank you very much.BEGIN:VCARD
VERSION:2.1
N:bonheur;Cheung
FN:Cheung bonheur
EMAIL;PREF;INTERNET:[EMAIL PROTECTED]
REV:20080411T154706Z
END:VCARD
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] (no subject)

2008-04-11 Thread Tonje Fredrikson
Thank you for the reply!

>>Is it possible for live555 to seek to an arbitrary point in an MPEG2
>>Program file, find the next GOP in the file, and stream from there?
>
> Yes, this is already implemented (but doesn't work particularly well,
> because the resulting presentation timestamps (from the audio and
> video substreams) aren't always in sync).

Is it possible to do this with a Transport File instead, and stream it
with multicast using an rtsp server (hence not implementing the trick play
features, but starting the file at a given offset) ?

-- 
Tonje


___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] (no subject)

2008-04-11 Thread Ross Finlayson
>Is it possible to do this with a Transport File instead, and stream it
>with multicast using an rtsp server (hence not implementing the trick play
>features, but starting the file at a given offset) ?

Sure - see 
. 
First, you will need to create an index file for the Transport Stream 
file - using our "MPEG2TransportStreamIndexer" tool.  Then run
testMPEG2TransportStreamTrickPlay 
  1 

to generate a new Transport Stream file that's at the given offset 
() from the original.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] how do we run a live MPEG4 (aud/vid) RTP-over-http stream in VLC (live555)?

2008-04-11 Thread Ross Finlayson

At 7:24 AM -0700 4/11/08, "s s" <[EMAIL PROTECTED]> wrote

We are trying to run a live MPEG4 (aud/vid) stream in VLC (0.8.6)


Who's "we"?  GMail?  I don't think so.  Your use of a "@gmail.com" 
email address tells me that you're a casual hobbyist rather than a 
serious professional.  That's OK, but be warned that people who use 
unprofessional email addresses (e.g., "@gmail.com", "@yahoo.com", 
"@hotmail.com") are less likely to be supported on this mailing list.



but have not had success.
The stream is in RTP-over-http format. I understand VLC uses the 
live555 library.


Upon seeing a RTP stream, does live555 get invoked properly in VLC?


Yes, provided, of course that you're using the RTSP protocol.


Media attribute - control:rtpoverHttp:// ...


This is not a standard.  In VLC, if you want to use RTP-over-HTTP 
streaming, then you must explicitly configure it:

Preferences... -> Input/Codecs -> Demuxers ->  RTP/RTSP
Then click the "Advanced" check box
Then click the "Tunnel RTSP and RTP over HTTP" check box

If this doesn't work, then please post the (publically-accessible) 
"rtsp://" URL of the stream, so I can test this myself.

--

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Live555 about ServerMediaSession

2008-04-11 Thread Ross Finlayson
Can you help me about the order of remove Element (Medium) and how ( 
because there are a lot of manner to remove a Medium...) .


In general, it's safest to remove/delete objects in the reverse order 
to the order in which they were created.

--

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] Remove a session...

2008-04-11 Thread Ross Finlayson
>What are the situations where DynamicRTSPServer is usefull to use?

 From the header file: "DynamicRTSPServer" is
// A subclass of "RTSPServer" that creates "ServerMediaSession"s on demand,
// based on whether or not the specified stream name exists as a file

I.e., instead of creating, in advance, a set of "ServerMediaSession"s 
for a particular set of files (as is done in the 
"testOnDemandRTSPServer" demo application, for example), a 
"DynamicRTSPServer" creates a "ServerMediaSession" for a file only 
when that file is specifically requested to be streamed (by a RTSP 
client).


>How to wake upenv->taskScheduler().doEventLoop(&watch_scheduler)   when
>no server media session is added?
>The loop is waiting at a 'select()' call and thus doesn't check my
>watch_scheduler.

I'm not totally sure I udnerstand the question, but I suspect it's 
related to this point:
http://lists.live555.com/pipermail/live-devel/2006-March/004192.html
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


[Live-devel] how do we run run a live MPEG4 (aud/vid) RTP-over-http stream in VLC (live555)

2008-04-11 Thread s s
(I may not be posting this correctly. Hopefully it goes in the same thread)

Sorry for the gmail address. I only use gmail.
This is for serious work not casual dabbling.

With the RTSP/RTP settings (as you mentioned) also, the stream plays
only very briefly and then freezes.
Increasing the caching value allows the stream to play a little longer.
(Windows-XP version of VLC player)

The camera URL is http://66.92.219.93/
username - user31
password - user32

This is the command used in VLC
'open network stream' and then 'http' command line

http/m4v://user31:[EMAIL PROTECTED]/rtpOverHttp?Url=nphMpeg4/g726-320x240

A wireshark capture of the packets coming from the camera show that it
is sending the proper RTP headers.
(info posted in the previous posting)

The browser can be pointed directly to the camera for the audio/video.
This works fine.
(in IE it will prompt for an ActiveX download)
I believe the audio works only with Internet Explorer.

Regards
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel


Re: [Live-devel] how do we run run a live MPEG4 (aud/vid) RTP-over-http stream in VLC (live555)

2008-04-11 Thread Ross Finlayson
>Sorry for the gmail address. I only use gmail.
>This is for serious work not casual dabbling.

Serious professionals do not use "@gmail.com" email addresses.

>The camera URL is http://66.92.219.93/

This will give you HTTP streaming, *not* RTSP.

Note that this URL works (with the given username, password) in 
Firefox, and probably other web browsers also - when I click on the 
"Single" tab.

>This is the command used in VLC
>'open network stream' and then 'http' command line
>
>http/m4v://user31:[EMAIL PROTECTED]/rtpOverHttp?Url=nphMpeg4/g726-320x240

That will never work, because "http/m4v::// is not a valid URL prefix.

Note  that the "LIVE555 Streaming Media" libraries in VLC are used 
only if a "rtsp://" URL is given.  Therefore, because you're using 
HTTP, and not RTSP (not even RTSP-over-HTTP), this is not the right 
mailing list for your question.  I don't know whether or not VLC will 
be able to play your stream, but you will need to ask a VLC-specific 
mailing list about this.

-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
___
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel