Package: inet.applications.rtpapp
RtpApplication
simple moduleAn application which uses RTP. It acts as a sender if the parameter fileName is set, and as a receiver if the parameter is empty.
Used in compound modules
| Name | Type | Description |
|---|---|---|
| RtpHost | compound module | (no description) |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| commonName | string |
the common name (CNAME) of this host |
|
| profileName | string |
which rtp profile is to be used (usually RtpAvProfile) |
|
| bandwidth | double |
bandwidth in bytes per second for this session |
|
| destinationAddress | string |
destination address (the L3AddressResolver class is used to resolve the address) |
|
| portNumber | int |
used port |
|
| fileName | string |
fileName of file to be transmitted, "" means this system acts only as a receiver |
|
| payloadType | int |
payload type of file to transmit |
|
| sessionEnterDelay | double |
delay before starts a new session |
|
| transmissionStartDelay | double |
delay before start transmission (related to "sender module created") |
|
| transmissionStopDelay | double |
delay before stops transmission (related to "start transmission") |
|
| sessionLeaveDelay | double |
delay before leave session (related to "file transmission finished/stopped" or "session entered" when fileName is "") |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/app | |
| selfMessageKinds | inet::RtpAppSelfMsgKinds |
kind used in self messages |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| rtpOut | output | ||
| rtpIn | input |
Scheduled messages (observed)
| msg | kind | ctrl | tags | msgname | context |
|---|---|---|---|---|---|
| omnetpp::cMessage | 1 (RtpAppSelfMsgKinds::RTPAPP_ENTER_SESSION) | enterSession | |||
| omnetpp::cMessage | 2 (RtpAppSelfMsgKinds::RTPAPP_START_TRANSMISSION) | startTransmission | |||
| omnetpp::cMessage | 3 (RtpAppSelfMsgKinds::RTPAPP_STOP_TRANSMISSION) | stopTransmission | |||
| omnetpp::cMessage | 4 (RtpAppSelfMsgKinds::RTPAPP_LEAVE_SESSION) | leaveSession |
Incoming messages (observed)
| gate | msg | kind | ctrl | srcModule | tags |
|---|---|---|---|---|---|
| rtpIn | RtpControlMsg | 0 | RtpCiSenderModuleCreated | Rtp | |
| rtpIn | RtpControlMsg | 0 | RtpCiSenderStatus | Rtp | |
| rtpIn | RtpControlMsg | 0 | RtpCiSessionEntered | Rtp | |
| rtpIn | RtpControlMsg | 0 | RtpCiSessionLeft | Rtp |
Outgoing messages (observed)
| gate | msg | kind | ctrl | destModule | tags |
|---|---|---|---|---|---|
| rtpOut | RtpControlMsg | 0 | RtpCiCreateSenderModule | Rtp | |
| rtpOut | RtpControlMsg | 0 | RtpCiEnterSession | Rtp | |
| rtpOut | RtpControlMsg | 0 | RtpCiLeaveSession | Rtp | |
| rtpOut | RtpControlMsg | 0 | RtpCiSenderControl | Rtp |
Tagging operations (observed)
| tagType | tagAction |
|---|---|
| inet::Ipv4InterfaceData | findTag |
Source code
// // An application which uses RTP. It acts as a sender if the parameter fileName is // set, and as a receiver if the parameter is empty. // simple RtpApplication { parameters: @display("i=block/app"); string commonName; // the common name (CNAME) of this host string profileName; // which rtp profile is to be used (usually RtpAvProfile) double bandwidth; // bandwidth in bytes per second for this session string destinationAddress; // destination address (the L3AddressResolver class is used to resolve the address) int portNumber; // used port string fileName; // fileName of file to be transmitted, "" means this system acts only as a receiver int payloadType; // payload type of file to transmit double sessionEnterDelay @unit(s); // delay before starts a new session double transmissionStartDelay @unit(s); // delay before start transmission (related to "sender module created") double transmissionStopDelay @unit(s); // delay before stops transmission (related to "start transmission") double sessionLeaveDelay @unit(s); // delay before leave session (related to "file transmission finished/stopped" or "session entered" when fileName is "") @selfMessageKinds(inet::RtpAppSelfMsgKinds); // kind used in self messages gates: output rtpOut @labels(RtpInterfacePacket/down); input rtpIn @labels(RtpInterfacePacket/up); }File: src/inet/applications/rtpapp/RtpApplication.ned