남일우 | 28 Nov 10:17 2014

Connection problem to some rtsp server

Hello,


We have been developing the rtsp client using live555. 


At first we developed it with live555 (2011. 12. 23) version. Everything was fine with this version.


Recently we need to replace it with the newer version because we have to support H.265.


But with a newer version of live555, we cannot connect to some rtsp server that we successfully connected with 2011.12.23 version.


The newer version we tested is 2014. 11. 12 version.


The address we tested is rtsp://61.103.125.151/4031/video1


You should connect it over tcp.


We can see that the newer version stopped at RTSP SETUP stage with Wireshark, it doesn't proceed further.


We also tested it with the vlc media player. The symptom is same.


With older version of vlc (1.1.3), we successfully connect it.

But with newer version of vlc (2.1.5), we can't.


Best Regards,

ilwoo Nam



_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
이용우 | 27 Nov 13:20 2014

a Question about live555MediaServer

Hi.

I have a question to ask about live555MediaServer.

I would like to make slight modification about RTP packet. (except for the header)

Should I take a look at all the code in liveMedia folder?

I think the InputFile.cpp handles reading a file and in MultiFramedRTPSink.cpp, it packs a packet. is it right?

And also, in the codes, what does a “frame” means? Is it the same as “video frame”?

 

Best regards.

Yongwoo Lee

_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
Marco Gasparini | 26 Nov 17:44 2014
Picon

live555 compiled windows7

hello,

I need to comunicate with a device with SIP protocol and audio and video streaming full duplex via RTP protocol.

I have compiled live555 with NMake following the instructions.

Now I would like to use those library in a qt project. Before doing that I tryed to compile playSIP tutorial with QTcreator.

I have linked all libraries this way without success:

unix|win32: LIBS += -L"$$PWD/../../Downloads/live/liveMedia/" -llibliveMedia unix|win32: LIBS += -L"$$PWD/../../Downloads/live/groupsock/" -llibgroupsock unix|win32: LIBS += -L"$$PWD/../../Downloads/live/BasicUsageEnvironment/" -llibBasicUsageEnvironment unix|win32: LIBS += -L"$$PWD/../../Downloads/live/UsageEnvironment/" -llibUsageEnvironment
INCLUDEPATH += "$$PWD/../../Downloads/live/liveMedia/include" DEPENDPATH += "$$PWD/../../Downloads/live/liveMedia/include"
INCLUDEPATH += "$$PWD/../../Downloads/live/BasicUsageEnvironment/include" DEPENDPATH += "$$PWD/../../Downloads/live/BasicUsageEnvironment/include"
INCLUDEPATH += "$$PWD/../../Downloads/live/groupsock/include" DEPENDPATH += "$$PWD/../../Downloads/live/groupsock/include"
INCLUDEPATH += "$$PWD/../../Downloads/live/UsageEnvironment/include" DEPENDPATH += "$$PWD/../../Downloads/live/UsageEnvironment/include"
I get "error LNK2019" and "LNK2001" if I compile the program with qtcreator with VS compiler.I get "undefined reference to SIPClient::createNew ..." if I compile the program with qtcreator with Mingw Compiler
do you have any suggestion please?
thanksMarco
_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
Peter Schlaile | 25 Nov 13:19 2014
Picon

Re: [Patch] timeout patch for openRTSP to prevent stream cut off on broken servers

Hi Ross,

Yes, reviewing and applying the patch is trivial.  However, I'll decide when to make the next release of the software, thank you :-)

no offense, I never doubted that :)

Happy patching!

Kind regards & keep up the good work!
Peter

--
Peter Schlaile <peter <at> schlaile.de>
_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
jewen@dnake.com | 25 Nov 03:19 2014

live555 err terminate called after throwing an instance of 'int' terminate called recursively

hi,
    version: "live555 0.84"
    config:  config.armlinux
    problem: when run 'wis-streamer' and vlc connect it make err.
            terminate called after throwing an instance of 'int' terminate called recursively

    note: I found than when call getAuxSDPLine it make err.

    OnDemandServerMediaSubsession::setSDPLinesFromRTPSink();
        char const* auxSDPLine = getAuxSDPLine(rtpSink, inputSource); 

jewen <at> dnake.com
_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
Peter Schlaile | 22 Nov 10:43 2014
Picon

Re: [Patch] timeout patch for openRTSP to prevent stream cut off on broken servers

Hi Ross,

* there was a unified diff attached, that means, the only thing, you had
  to do was running the "patch" command after reviewing it *not* coding
  it all over again. (Or: alternatively tell me my coding style is bad
  and demand changes, whatever :) )

* hardware vendors seldomly *just fix their servers*, so: most
  people, that are affected, are just stuck with the current
  *non-working* situation...

* as mentioned in the original posting from 2010, there is reason to
  believe, that the standard isn't even very specific regarding the 
  *correct* handling of timeouts, so: maybe *you* got it wrong, and
  *they* were right.

BTW: I even made it an *option*, so people have to explicitly *enable*
the work around on the command line.

Just my 2 (oh wait 3) cents.

Regards,
Peter

Am Freitag, den 21.11.2014, 16:02 -0800 schrieb
live-devel-request <at> ns.live555.com:

> Thanks for the note.  I'll likely add such an option to "openRTSP"
> sometime in the future.  (It's not a high priority, though; I'd prefer
> that people fix their servers.)
chieppa@elmaxsrl.it | 21 Nov 14:26 2014
Picon

Struggling with a stange behavior

Dear All,

 I'm using Live555 to realize a C++ RTPS client for IP cameras. I'm using most of the testRTSPClient code.

I used Poco library and Poco::Thread class too.

In other words any client for each camera runs in a separate thread that owns his instance of Live555 objects (any thread uses an instance with his UsageEnvironment and TaskScheduler).. This to avoid shared variables and synchronization stuff. It seems to works well and fast.

My runnable (following the Poco library requirements) object IPCamera has the run method as simple as:

void IPCamera::run() { openURL(_myEnv, "", _myRtspCommand.c_str(), *this); //taken from the testRTSPClient example _myEnv->TaskScheduler().doEventLoop(&_watchEventLoopVariable); //it runs until _watchEventLoopVariable change to a value != 0 //exit from the run; }

When the run is finished I call also the join() to close the thread (by the way I find out that if I don't call myThread->join() the memory is not freed totaly).

When I make the shutdown, following the requirments in Live555-devel I put in my code:

void IPCamera::shutdown() { ... _myEnv->reclaim(); delete _myScheduler; }

Using Valgrind to detect memory leaks I saw a strange behaviour:

1) case: Run the program - Close the program with all the IPCameras that run in the proper manner.

a) At the end of the program all the distrucotors are invoked.

b) exit from doEvenLoop().

c) join the thread (actually is terminated because it exits from run method.

d) destroy the _myEnv and _myScheduler as showed.

e) destroy all the others objects, including IPCamera and Thread associated.

-> no memory leaks are found by Valgrind. Ok

Now comes the problem.

2) case: I'm implementing a use case where a Poco::Timer checks every X seconds if the camera is alive using ICMP ping. It raises an event (using Poco events) in case it doesn't answer because the network is down and I do the follow:

IPCamera down or network down :

a) put the _watchEventLoopVariable = 1 to exit from the run method;

b) shutdown the client associated to the IPCamera as showed

c) join the thread

At this point I don't destroy the thread because I would like to reuse it when the network cames up again and the camera works again.

in this case:

 a)I set the _eventWatchVariable = 0. 

b) Let start again the thread with: myThread->run()


Valgrind tells me that memory leaks (or something else that lost bytes) are found: 60 bytes direct, 20.000 indirect bytes are lost in the thread,

 in the H264BufferdPackedFactory::createNewPacket(...) by ReorederingPacketBuffer::getFreePacket() by SocketDescriptor::tcpReadHandler() by BasicTaskScheduler::singleStep().

I'm going crazy. Why this behaviour in this case? Does someone solve this case? How to avoid this? 3 days of debugging and alternative solutions, but...nothing. If the nwtwork is always on, the memory is ok. If the network goes down, the memory leak is there. And the same logic is applied to my sw.

Thank you.


Cristiano Chieppa

Elmax

_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
Peter Schlaile | 20 Nov 23:23 2014
Picon

[Patch] timeout patch for openRTSP to prevent stream cut off on broken servers

Hi,

I ran into the problem mentioned in 2010 on the development list, since
we own several security DVRs which technically can stream RTSP videos 
but don't handle RTCP RRs properly.

http://lists.live555.com/pipermail/live-devel/2010-July/012383.html

Find a patch attached, that adds a small change to openRTSP (activated
only on user's request), that sends OPTIONS request to the server in
regular intervals to keep it alive and happy.

Regards,
Peter

--

-- 
----
Peter Schlaile 

Attachment (session_timeout.patch): text/x-patch, 4659 bytes
_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
Ben Willcox | 20 Nov 17:14 2014

Problem with receiving RTSP from Antrica ANT-35000

Hi,

I've been using openRTSP for several years in my application, receiving 
an rtsp stream from Axis video encoders and Axis IP cameras and saving 
to disk. I'm doing some trials with a new video encoder, an Antrica 
ANT-35000 which is an HD encoder (unlike the Axis ones which are 640x480 
max).

I've come across a strange problem when capturing the rtsp stream from 
this using openRTSP (v2014.11.12) whereby every time a keyframe is 
encountered the video freezes for a couple of frames (playing back in 
VLC). If I play back frame by frame in Avidemux I get an error in the 
console every 30 frames (the I-frame interval set in the encoder) and 
the picture does not update for 2 frames:

------------
[lavc] error in FFMP43/mpeg4!
[lavc] Err: -1, size:9

Editor: Last Decoding2 failed for frame 63
[lavc] no frame!
------------

The command I'm running is:
openRTSP -4 -n -t -Q -w 1920 -h 1080 -b300000 rtsp://<ip address>/video1 
 > testfile.mp4

(basically the same I've been using with the Axis cams but a larger 
buffer size).

If I use VLC to capture the rtsp stream and save to disk, this then 
plays back without any problems and is smooth so I'm not quite sure what 
is going on.
Any ideas on where I should look to solve the problem?

Thanks,
Ben
Sam Hudson | 18 Nov 12:41 2014
Picon

RTSP Stream from remote machine

Hi,

I have compiled the './testH264VideoStreamer' prog, and it seems to work fine. Ive used openRTSP from the local machine, and it received the stream to file as it should. However the machine is an amazone EC2 instance, which has a public, and private ip address.

When trying to access the stream using the public ip address it does not work. When using openRTSP from a remote machine, this is the output. It appears its trying to use the internal ip address when receiving the stream data.

Could anyone give me a heads up on the correct way to set this up?

Opening connection to 54.171.254.16, port 8554...
...remote connection opened
CSeq: 2
User-Agent: ./openRTSP (LIVE555 Streaming Media v2014.11.12)


Received 152 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
CSeq: 2
Date: Tue, Nov 18 2014 11:38:54 GMT
Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER


CSeq: 3
User-Agent: ./openRTSP (LIVE555 Streaming Media v2014.11.12)
Accept: application/sdp


Received 760 new bytes of response data.
Received a complete DESCRIBE response:
RTSP/1.0 200 OK
CSeq: 3
Date: Tue, Nov 18 2014 11:38:54 GMT
Content-Base: rtsp://172.31.9.199:8554/testStream/
Content-Type: application/sdp
Content-Length: 591

v=0
o=- 1416309499604805 1 IN IP4 172.31.9.199
s=Session streamed by "testH264VideoStreamer"
i=test.264
t=0 0
a=tool:LIVE555 Streaming Media v2014.11.12
a=type:broadcast
a=control:*
a=source-filter: incl IN IP4 * 172.31.9.199
a=rtcp-unicast: reflection
a=range:npt=0-
a=x-qt-text-nam:Session streamed by "testH264VideoStreamer"
a=x-qt-text-inf:test.264
m=video 18888 RTP/AVP 96
b=AS:500
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=64001F;sprop-parameter-sets=Z2QAH6wrQEAINgIgAAB9AAA6mBHjhlQ=,aO48sA==
a=control:track1

Opened URL "rtsp://ec2-54-171-254-16.eu-west-1.compute.amazonaws.com:8554/testStream", returning a SDP description:
v=0
o=- 1416309499604805 1 IN IP4 172.31.9.199
s=Session streamed by "testH264VideoStreamer"
i=test.264
t=0 0
a=tool:LIVE555 Streaming Media v2014.11.12
a=type:broadcast
a=control:*
a=source-filter: incl IN IP4 * 172.31.9.199
a=rtcp-unicast: reflection
a=range:npt=0-
a=x-qt-text-nam:Session streamed by "testH264VideoStreamer"
a=x-qt-text-inf:test.264
m=video 18888 RTP/AVP 96
b=AS:500
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=64001F;sprop-parameter-sets=Z2QAH6wrQEAINgIgAAB9AAA6mBHjhlQ=,aO48sA==
a=control:track1

Created receiver for "video/H264" subsession (client ports 18888-18889)
Sending request: SETUP rtsp://172.31.9.199:8554/testStream/track1 RTSP/1.0
CSeq: 4
User-Agent: ./openRTSP (LIVE555 Streaming Media v2014.11.12)
Transport: RTP/AVP;multicast;client_port=18888-18889


Received 196 new bytes of response data.
Received a complete SETUP response:
RTSP/1.0 200 OK
CSeq: 4
Date: Tue, Nov 18 2014 11:38:54 GMT
Transport: RTP/AVP;multicast;destination=232.76.230.47;source=172.31.9.199;port=18888-18889;ttl=255
Session: ADC6AB32;timeout=65


--
-- 
Sam Hudson
Software Engineer
The Foundry

The Foundry Visionmongers Ltd.
Registered in England and Wales No: 4642027
_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
SungJoo Byun | 16 Nov 05:21 2014
Picon

Does live555 support matroska streaming?

I have tested live555 server with matroska foramt.(mkv)
But, Video does not work. (Audio does work.)

* TEST CASE
SERVER:  DynamicRTSPServer.
Client  :  ffplay, VLC. 

_______________________________________________
live-devel mailing list
live-devel <at> lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Gmane