[vlc-devel] Re: Like to help with the development...
Jean-Paul Saman
jean-paul.saman at planet.nl
Tue Jul 11 21:16:34 CEST 2006
toomy at bluewin.ch wrote:
> Hi Jean-Paul,
> I have some questions on this topic:
> RFC 3550 is quite a bunch of work, is there a priority list for the features
> in this document? Do u have any architecture documentas about the existing
> implementation, the plan behind the code?
There is some general VLC developer documentation on
developers.videolan.org, but it is not a lot. However the current VLC
architecture still holds the basic idea behind that description. Apart
from that there is no architectural documentation.
What about RFC 3551 the control
> Profile.. Isn't it that what u like to have first?
NO, rfc3551 is for Audio/Video conferencing. I want to have RTCP support
on the stream-output side which is RFC 3550.
You need to implement a RTCP server thread along the same line as the
HTTP server thread. It means that both server threads can share a lot of
common code. Ideally this common code should be wrapped in a common
internal server socket API (listening to sockets).
HTTP RTSP RTCP
^ ^ ^
| | |
server socket API
The code that is available in the branch/0.8.6-rtcp implements a RTCP
vlc_object_t. That should hold all information associated with each
RTP/RTCP session.
1) First priority is implementing a RTCP module that listens to incoming
requests on a certain RTCP port number that is associated with a certain
RTP session. In the above picture it means that any RTSP request that
results in a RTP session should also setup an RTCP session.
file: modules/mux/rtp/rtcp.{c,h}
- implements the encoding and decoding of RTCP packets.
- implements adding and removal of RTCP sessions/clients.
rtcp_client_add()
rtcp_client_del()
rtcp_cleanup_clients()
rtcp_find_client()
- calculates the RTCP expected interval for sending and receiving
reports.
rtcp_interval()
Needs:
- server thread to listen on port numbers RTCP traffic.
- schedule code to send RTCP traffic.
- a lot of testing against live555 client module of VLC.
2) Second priority is unifiying all the server socket code in VLC into a
common API that can be used by the server modules (HTTP, RTSP, RTCP).
This will remove a lot of duplicated code.
I hope this helps.
> Thanks.
>
>
>>-- Original-Nachricht --
>>Date: Sun, 09 Jul 2006 17:45:43 +0200
>>From: Jean-Paul Saman <jean-paul.saman at planet.nl>
>>Subject: [vlc-devel] Re: Like to help with the development...
>>To: vlc-devel at videolan.org
>>Reply-To: vlc-devel at videolan.org
>>
>>
>>Markus Ruettimann wrote:
>>
>>>Hi
>>>I like to do something for the RTCP support in VLC. Please send me the
>>
>>>information how I should contact.
>>>Thanks
>>>Toomy
>>>
>>
>>For RTCP support there is a branch svn.videolan.org/branches/0.8.6-rtcp
>
>
>>it implements the RFC 3550 from IETF. The current status is:
>>
>>To start working checkout the RTCP branch at:
>>
>>svn co svn.videolan.org/vlc/branches/0.8.6-rtcp
>>
>>In the directory modules/mux/rtp is the source code.
>>
>>What has been done:
>>- partial implementation of RFC 3550 (except RTCP scheduling code)
>>- RTCP packet decoding and encoding function (not tested and not
>>compiled) Apart from compiler errors this should be fairly complete. No
>
>
>>quarantee though ;-)
>>- Some higher level scheduling algorithms (not entirely finished)
>>
>>What should be done:
>>- Read RFC 3550 (http://www.ietf.org)
>>- VLC Coding Style ;-)
>>- RTCP streamout VLC module (get session information from RTSP/HTTP)
>> common socket listening code with RTSP/HTTP
>>- Compiling/building
>>- Testing against VLC's live555 module
>>
>>Name of contact for this work: Jean-Paul Saman.
>>
>>Me ;-)
>>
>>Gtz,
>>Jean-Paul Saman.
>>
>>--
>>This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
>>To unsubscribe, please read http://developers.videolan.org/lists.html
>>
>
>
--
This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://developers.videolan.org/lists.html
More information about the vlc-devel
mailing list