RtpApplication.ned

NED File src/inet/applications/rtpapp/RtpApplication.ned

Name Type Description
RtpApplication simple module

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.

Source code

//
// Copyright (C) 2001 Matthias Oppitz <[email protected]>
// Copyright (C) 2007 Ahmed Ayadi  <[email protected]>
// Copyright (C) 2010 OpenSim Ltd.
//
// SPDX-License-Identifier: LGPL-3.0-or-later
//

package inet.applications.rtpapp;

import inet.common.SimpleModule;

//
// 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);
}