当前位置: 首页>>代码示例>>Java>>正文


Java PayloadType类代码示例

本文整理汇总了Java中org.jivesoftware.smackx.jingleold.media.PayloadType的典型用法代码示例。如果您正苦于以下问题:Java PayloadType类的具体用法?Java PayloadType怎么用?Java PayloadType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PayloadType类属于org.jivesoftware.smackx.jingleold.media包,在下文中一共展示了PayloadType类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: parse

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Parse a iq/jingle/description element.
 * 
 * @param parser
 *            the input to parse
 * @return a description element
 * @throws SmackException 
 * @throws IOException 
 * @throws XmlPullParserException 
 */
public JingleDescription parse(XmlPullParser parser, int initialDepth) throws SmackException, XmlPullParserException, IOException {
    boolean done = false;
    JingleDescription desc = getInstance();

    while (!done) {
        int eventType = parser.next();
        String name = parser.getName();

        if (eventType == XmlPullParser.START_TAG) {
            if (name.equals(PayloadType.NODENAME)) {
                desc.addPayloadType(parsePayload(parser));
            } else {
                throw new SmackException("Unknow element \"" + name + "\" in content.");
            }
        } else if (eventType == XmlPullParser.END_TAG) {
            if (name.equals(JingleDescription.NODENAME)) {
                done = true;
            }
        }
    }
    return desc;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:33,代码来源:JingleDescriptionProvider.java

示例2: toXML

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Convert a Jingle description to XML.
 *
 * @return a string with the XML representation
 */
public String toXML() {
    StringBuilder buf = new StringBuilder();

    synchronized (payloads) {
        if (payloads.size() > 0) {
            buf.append("<").append(getElementName());
            buf.append(" xmlns=\"").append(getNamespace()).append("\" >");

            for (PayloadType payloadType : payloads) {
                if (payloadType != null) {
                    buf.append(payloadType.toXML());
                }
            }
            buf.append("</").append(getElementName()).append(">");
        }
    }

    return buf.toString();
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:25,代码来源:JingleDescription.java

示例3: toXML

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
public String toXML() {
    StringBuilder buf = new StringBuilder();

    if (payload != null) {
        buf.append("<").append(getElementName()).append(" ");

        // We covert here the payload type to XML
        if (payload.getId() != PayloadType.INVALID_PT) {
            buf.append(" id=\"").append(payload.getId()).append("\"");
        }
        if (payload.getName() != null) {
            buf.append(" name=\"").append(payload.getName()).append("\"");
        }
        if (payload.getChannels() != 0) {
            buf.append(" channels=\"").append(payload.getChannels()).append("\"");
        }
        if (getChildAttributes() != null) {
            buf.append(getChildAttributes());
        }
        buf.append("/>");
    }
    return buf.toString();
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:24,代码来源:JingleContentDescription.java

示例4: getAudioFormat

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Return a JMF AudioFormat for a given Jingle Payload type.
 * Return null if the payload is not supported by this jmf API.
 *
 * @param payloadtype payloadtype
 * @return correspondent audioType
 */
public static AudioFormat getAudioFormat(PayloadType payloadtype) {

    switch (payloadtype.getId()) {
        case 0:
            return new AudioFormat(AudioFormat.ULAW_RTP);
        case 3:
            return new AudioFormat(AudioFormat.GSM_RTP);
        case 4:
            return new AudioFormat(AudioFormat.G723_RTP);
        default:
            return null;
    }

}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:22,代码来源:AudioFormatUtils.java

示例5: createMediaSession

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Returns a new JingleMediaSession
 *
 * @param payloadType payloadType
 * @param remote      remote Candidate
 * @param local       local Candidate
 * @return JingleMediaSession JingleMediaSession
 */
public JingleMediaSession createMediaSession(PayloadType payloadType, final TransportCandidate remote, final TransportCandidate local, final JingleSession jingleSession) {
    ScreenShareSession session = null;
    session = new ScreenShareSession(payloadType, remote, local, "Screen", jingleSession);
    if (encoder != null) {
        session.setEncoder(encoder);
    }
    if (decoder != null) {
        session.setDecoder(decoder);
    }
    return session;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:20,代码来源:ScreenShareMediaManager.java

示例6: createMediaSession

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Returns a new JingleMediaSession
 *
 * @param payloadType payloadType
 * @param remote      remote Candidate
 * @param local       local Candidate
 * @return JingleMediaSession JingleMediaSession
 */
public JingleMediaSession createMediaSession(PayloadType payloadType, final TransportCandidate remote,
        final TransportCandidate local, final JingleSession jingleSession) {
    TestMediaSession session = null;

    session = new TestMediaSession(payloadType, remote, local, "", jingleSession);

    return session;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:17,代码来源:TestMediaManager.java

示例7: getPayloads

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Return all supported Payloads for this Manager.
 *
 * @return The Payload List
 */
public List<PayloadType> getPayloads() {
    List<PayloadType> list = new ArrayList<PayloadType>();
    if (preferredPayloadType != null) list.add(preferredPayloadType);
    for (JingleMediaManager manager : managers) {
        for (PayloadType payloadType : manager.getPayloads()) {
            if (!list.contains(payloadType) && !payloadType.equals(preferredPayloadType))
                list.add(payloadType);
        }
    }
    return list;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:17,代码来源:MultiMediaManager.java

示例8: createMediaSession

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Returns a new JingleMediaSession
 *
 * @param payloadType payloadType
 * @param remote      remote Candidate
 * @param local       local Candidate
 * @return JingleMediaSession JingleMediaSession
 */
public JingleMediaSession createMediaSession(PayloadType payloadType, final TransportCandidate remote, final TransportCandidate local, final JingleSession jingleSession) {
    for (JingleMediaManager manager : managers) {
        if (manager.getPayloads().contains(payloadType)) {
            return manager.createMediaSession(payloadType, remote, local, jingleSession);
        }
    }
    return null;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:17,代码来源:MultiMediaManager.java

示例9: triggerContentEstablished

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
public void triggerContentEstablished() throws NotConnectedException {

        PayloadType bestCommonAudioPt = getMediaNegotiator().getBestCommonAudioPt();
        TransportCandidate bestRemoteCandidate = getTransportNegotiator().getBestRemoteCandidate();
        TransportCandidate acceptedLocalCandidate = getTransportNegotiator().getAcceptedLocalCandidate();

        // Trigger the session established flag
        triggerContentEstablished(bestCommonAudioPt, bestRemoteCandidate, acceptedLocalCandidate);
    }
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:10,代码来源:ContentNegotiator.java

示例10: sessionEstablished

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
public void sessionEstablished(PayloadType pt, TransportCandidate rc, TransportCandidate lc, JingleSession jingleSession) throws NotConnectedException {
    if (lc instanceof ICECandidate) {
        if (((ICECandidate) lc).getType().equals("relay")) {
            RTPBridge rtpBridge = RTPBridge.relaySession(lc.getConnection(), lc.getSessionId(), lc.getPassword(), rc, lc);
        }
    }
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:8,代码来源:ICETransportManager.java

示例11: parsePayload

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Parse an audio payload type.
 */
public JinglePayloadType parsePayload(final XmlPullParser parser) {
    JinglePayloadType pte = super.parsePayload(parser);
    PayloadType.Audio pt = new PayloadType.Audio(pte.getPayloadType());
    int ptClockRate = 0;

    try {
        ptClockRate = Integer.parseInt(parser.getAttributeValue("", "clockrate"));
    } catch (Exception e) {
    }
    pt.setClockRate(ptClockRate);

    return new JinglePayloadType.Audio(pt);
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:17,代码来源:JingleContentDescriptionProvider.java

示例12: parsePayload

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Parse an audio payload type.
 */
public PayloadType parsePayload(final XmlPullParser parser) {
    PayloadType pte = super.parsePayload(parser);
    PayloadType.Audio pt = new PayloadType.Audio(pte);
    int ptClockRate = 0;

    try {
        ptClockRate = Integer.parseInt(parser.getAttributeValue("", "clockrate"));
    } catch (Exception e) {
    }
    pt.setClockRate(ptClockRate);

    return pt;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:17,代码来源:JingleDescriptionProvider.java

示例13: addPayloadType

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Adds a audio payload type to the packet.
 *
 * @param pt the audio payload type to add.
 */
public void addPayloadType(final PayloadType pt) {
    synchronized (payloads) {
        if (pt == null) {
            LOGGER.severe("Null payload type");
        } else {
            payloads.add(pt);
        }
    }
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:15,代码来源:JingleDescription.java

示例14: addAudioPayloadTypes

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Adds a list of payloads to the packet.
 *
 * @param pts the payloads to add.
 */
public void addAudioPayloadTypes(final List<PayloadType> pts) {
    synchronized (payloads) {
        Iterator<PayloadType> ptIter = pts.iterator();
        while (ptIter.hasNext()) {
            PayloadType.Audio pt = (PayloadType.Audio) ptIter.next();
            addPayloadType(new PayloadType.Audio(pt));
        }
    }
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:15,代码来源:JingleDescription.java

示例15: getAudioPayloadTypesList

import org.jivesoftware.smackx.jingleold.media.PayloadType; //导入依赖的package包/类
/**
 * Return the list of Payload types contained in the description.
 *
 * @return a list of PayloadType.Audio
 */
public List<PayloadType> getAudioPayloadTypesList() {
    ArrayList<PayloadType> result = new ArrayList<PayloadType>();
    Iterator<PayloadType> jinglePtsIter = getPayloadTypes();

    while (jinglePtsIter.hasNext()) {
        PayloadType jpt = (PayloadType) jinglePtsIter.next();
        if (jpt instanceof PayloadType.Audio) {
            PayloadType.Audio jpta = (PayloadType.Audio) jpt;
            result.add(jpta);
        }
    }

    return result;
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:20,代码来源:JingleDescription.java


注:本文中的org.jivesoftware.smackx.jingleold.media.PayloadType类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。