RtpApplication

Package: inet.applications.rtpapp

simple module RtpApplication

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.

inet.applications.rtpapp.RtpApplicationRtpApplicationsimple

Usage diagram

Inheritance 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