2017-02-25 18:15:09 -08:00
|
|
|
/*
|
|
|
|
|
* Copyright 2017 The WebRTC project authors. All Rights Reserved.
|
|
|
|
|
*
|
|
|
|
|
* Use of this source code is governed by a BSD-style license
|
|
|
|
|
* that can be found in the LICENSE file in the root of the source
|
|
|
|
|
* tree. An additional intellectual property rights grant can be found
|
|
|
|
|
* in the file PATENTS. All contributing project authors may
|
|
|
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
|
|
|
*/
|
|
|
|
|
|
2017-09-15 06:47:31 +02:00
|
|
|
#ifndef ORTC_TESTRTPPARAMETERS_H_
|
|
|
|
|
#define ORTC_TESTRTPPARAMETERS_H_
|
2017-02-25 18:15:09 -08:00
|
|
|
|
2017-09-15 06:47:31 +02:00
|
|
|
#include "api/ortc/rtptransportinterface.h"
|
|
|
|
|
#include "api/rtpparameters.h"
|
2017-02-25 18:15:09 -08:00
|
|
|
|
|
|
|
|
namespace webrtc {
|
|
|
|
|
|
|
|
|
|
// Helper methods to create RtpParameters to use for sending/receiving.
|
|
|
|
|
//
|
|
|
|
|
// "MakeMinimal" methods contain the minimal necessary information for an
|
|
|
|
|
// RtpSender or RtpReceiver to function. The "MakeFull" methods are the
|
|
|
|
|
// opposite, and include all features that would normally be offered by a
|
|
|
|
|
// PeerConnection, and in some cases additional ones.
|
|
|
|
|
//
|
|
|
|
|
// These methods are intended to be used for end-to-end testing (such as in
|
|
|
|
|
// ortcfactory_integrationtest.cc), or unit testing that doesn't care about the
|
|
|
|
|
// specific contents of the parameters. Tests should NOT assume that these
|
|
|
|
|
// methods will not change; tests that are testing that a specific value in the
|
|
|
|
|
// parameters is applied properly should construct the parameters in the test
|
|
|
|
|
// itself.
|
|
|
|
|
|
2017-08-09 06:42:32 -07:00
|
|
|
inline RtpTransportParameters MakeRtcpMuxParameters() {
|
|
|
|
|
RtpTransportParameters parameters;
|
|
|
|
|
parameters.rtcp.mux = true;
|
|
|
|
|
return parameters;
|
2017-02-25 18:15:09 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
RtpParameters MakeMinimalOpusParameters();
|
|
|
|
|
RtpParameters MakeMinimalIsacParameters();
|
|
|
|
|
RtpParameters MakeMinimalOpusParametersWithSsrc(uint32_t ssrc);
|
|
|
|
|
RtpParameters MakeMinimalIsacParametersWithSsrc(uint32_t ssrc);
|
|
|
|
|
|
|
|
|
|
RtpParameters MakeMinimalVp8Parameters();
|
|
|
|
|
RtpParameters MakeMinimalVp9Parameters();
|
|
|
|
|
RtpParameters MakeMinimalVp8ParametersWithSsrc(uint32_t ssrc);
|
|
|
|
|
RtpParameters MakeMinimalVp9ParametersWithSsrc(uint32_t ssrc);
|
|
|
|
|
|
|
|
|
|
// Will create an encoding with no SSRC (meaning "match first SSRC seen" for a
|
|
|
|
|
// receiver, or "pick one automatically" for a sender).
|
|
|
|
|
RtpParameters MakeMinimalOpusParametersWithNoSsrc();
|
|
|
|
|
RtpParameters MakeMinimalIsacParametersWithNoSsrc();
|
|
|
|
|
RtpParameters MakeMinimalVp8ParametersWithNoSsrc();
|
|
|
|
|
RtpParameters MakeMinimalVp9ParametersWithNoSsrc();
|
|
|
|
|
|
|
|
|
|
// Make audio parameters with all the available properties configured and
|
|
|
|
|
// features used, and with multiple codecs offered. Obtained by taking a
|
|
|
|
|
// snapshot of a default PeerConnection offer (and adding other things, like
|
|
|
|
|
// bitrate limit).
|
|
|
|
|
RtpParameters MakeFullOpusParameters();
|
|
|
|
|
RtpParameters MakeFullIsacParameters();
|
|
|
|
|
|
|
|
|
|
// Make video parameters with all the available properties configured and
|
|
|
|
|
// features used, and with multiple codecs offered. Obtained by taking a
|
|
|
|
|
// snapshot of a default PeerConnection offer (and adding other things, like
|
|
|
|
|
// bitrate limit).
|
|
|
|
|
RtpParameters MakeFullVp8Parameters();
|
|
|
|
|
RtpParameters MakeFullVp9Parameters();
|
|
|
|
|
|
|
|
|
|
} // namespace webrtc
|
|
|
|
|
|
2017-09-15 06:47:31 +02:00
|
|
|
#endif // ORTC_TESTRTPPARAMETERS_H_
|