RtpApplication

Package: inet.applications.rtpapp

RtpApplication

simple module

C++ definition

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.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Used in compound modules

Name Type Description
RtpHost compound module

A network node with Real-time Transport Protocol (RTP) support. Extends StandardHost by adding RTP-specific components for real-time multimedia streaming applications.

Extends

Name Type Description
SimpleModule simple module

Base module for all INET simple modules.

Parameters

Name Type Default value Description
displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

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 starting a new session

transmissionStartDelay double

Delay before starting transmission (related to "sender module created")

transmissionStopDelay double

Delay before stopping transmission (related to "start transmission")

sessionLeaveDelay double

Delay before leaving session (related to "file transmission finished/stopped" or "session entered" when fileName is "")

Properties

Name Value Description
class RtpApplication
display i=block/app
selfMessageKinds inet::RtpAppSelfMsgKinds

Kind used in self messages

Gates

Name Direction Size Description
rtpOut output
rtpIn input

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 extends SimpleModule
{
    parameters:
        @class(RtpApplication);
        @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 starting a new session
        double transmissionStartDelay @unit(s); // Delay before starting transmission (related to "sender module created")
        double transmissionStopDelay @unit(s);  // Delay before stopping transmission (related to "start transmission")
        double sessionLeaveDelay @unit(s); // Delay before leaving 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