All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.restcomm.media.sdp.MediaProfile Maven / Gradle / Ivy

The newest version!
/*
 * TeleStax, Open Source Cloud Communications
 * Copyright 2011-2014, Telestax Inc and individual contributors
 * by the @authors tag.
 *
 * This program is free software: you can redistribute it and/or modify
 * under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation; either version 3 of
 * the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see 
 *
 */

package org.restcomm.media.sdp;

/**
 * The "proto" field describes the transport protocol used.
 * 

* RFC4566 registers three values: *

    *
  • "RTP/AVP" is a reference to RTP used under the RTP Profile for * Audio and Video Conferences with Minimal Control running over UDP/IP
  • *
  • "RTP/SAVP" is a reference to the Secure Real-time Transport * Protocol
  • *
  • "udp" indicates an unspecified protocol over UDP.
  • *
*

* *

* RFC4585 registers two values: *

  • "RTP/AVPF" is an extension to the Audio-visual Profile (AVP) that * enables receivers to provide, statistically, more immediate feedback to the * senders and thus allows for short-term adaptation and efficient * feedback-based repair mechanisms to be implemented. This early feedback * profile (AVPF) maintains the AVP bandwidth constraints for RTCP and preserves * scalability to large groups.
  • *
  • "RTP/SAVPF" refers to the AVPF profile on top of the Secure * Real-time Transport Protocol
  • *

    * * @author Henrique Rosa ([email protected]) * */ public enum MediaProfile { UDP("udp"), RTP_AVP("RTP/AVP"), RTP_AVPF("RTP/AVPF"), RTP_SAVP("RTP/SAVP"), RTP_SAVPF("RTP/SAVPF"); private final String profile; private MediaProfile(String profile) { this.profile = profile; } public String getProfile() { return profile; } public static MediaProfile fromProfile(String profile) { for (MediaProfile mp : values()) { if (mp.profile.equals(profile)) { return mp; } } return null; } public static boolean containsProfile(String profile) { return (fromProfile(profile) != null); } }




    © 2015 - 2025 Weber Informatics LLC | Privacy Policy