Split RTCRtpParameters idl and header file
authoryouenn@apple.com <youenn@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 12 Sep 2018 19:23:49 +0000 (19:23 +0000)
committeryouenn@apple.com <youenn@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 12 Sep 2018 19:23:49 +0000 (19:23 +0000)
https://bugs.webkit.org/show_bug.cgi?id=189524

Reviewed by Eric Carlson.

This will be easier to manage and will allow to more easily introduce sender/receiver parameters.
No change of behavior.

* CMakeLists.txt:
* DerivedSources.make:
* Modules/mediastream/RTCDegradationPreference.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCDegradationPreference.idl: Added.
* Modules/mediastream/RTCDtxStatus.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCDtxStatus.idl: Added.
* Modules/mediastream/RTCPriorityType.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCPriorityType.idl: Added.
* Modules/mediastream/RTCRtpCodecParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCRtpCodecParameters.idl: Added.
* Modules/mediastream/RTCRtpEncodingParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCRtpEncodingParameters.idl: Added.
* Modules/mediastream/RTCRtpFecParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCRtpFecParameters.idl: Added.
* Modules/mediastream/RTCRtpHeaderExtensionParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCRtpHeaderExtensionParameters.idl: Added.
* Modules/mediastream/RTCRtpParameters.h:
* Modules/mediastream/RTCRtpParameters.idl:
* Modules/mediastream/RTCRtpRtxParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
* Modules/mediastream/RTCRtpRtxParameters.idl: Added.
* Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
(WebCore::toRTCEncodingParameters):
(WebCore::fromRTCEncodingParameters):
(WebCore::toRTCHeaderExtensionParameters):
(WebCore::fromRTCHeaderExtensionParameters):
(WebCore::toRTCCodecParameters):
(WebCore::toRTCRtpParameters):
(WebCore::fromRTCRtpParameters):
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@235945 268f45cc-cd09-0410-ab3c-d52691b4dbfc

24 files changed:
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.make
Source/WebCore/Modules/mediastream/RTCDegradationPreference.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCDegradationPreference.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCDtxStatus.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCDtxStatus.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCPriorityType.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCPriorityType.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpFecParameters.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpFecParameters.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpParameters.h
Source/WebCore/Modules/mediastream/RTCRtpParameters.idl
Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.h [new file with mode: 0644]
Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.idl [new file with mode: 0644]
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj

index d46a55c..741be35 100644 (file)
@@ -306,6 +306,8 @@ set(WebCore_NON_SVG_IDL_FILES
     Modules/mediastream/RTCDTMFToneChangeEvent.idl
     Modules/mediastream/RTCDataChannel.idl
     Modules/mediastream/RTCDataChannelEvent.idl
+    Modules/mediastream/RTCDegradationPreference.idl
+    Modules/mediastream/RTCDtxStatus.idl
     Modules/mediastream/RTCIceCandidate.idl
     Modules/mediastream/RTCIceConnectionState.idl
     Modules/mediastream/RTCIceGatheringState.idl
@@ -317,8 +319,14 @@ set(WebCore_NON_SVG_IDL_FILES
     Modules/mediastream/RTCPeerConnection.idl
     Modules/mediastream/RTCPeerConnectionIceEvent.idl
     Modules/mediastream/RTCPeerConnectionState.idl
+    Modules/mediastream/RTCPriorityType.idl
+    Modules/mediastream/RTCRtpCodecParameters.idl
+    Modules/mediastream/RTCRtpEncodingParameters.idl
+    Modules/mediastream/RTCRtpFecParameters.idl
+    Modules/mediastream/RTCRtpHeaderExtensionParameters.idl
     Modules/mediastream/RTCRtpParameters.idl
     Modules/mediastream/RTCRtpReceiver.idl
+    Modules/mediastream/RTCRtpRtxParameters.idl
     Modules/mediastream/RTCRtpSender.idl
     Modules/mediastream/RTCRtpTransceiver.idl
     Modules/mediastream/RTCRtpTransceiverDirection.idl
index 2237346..84bbd77 100644 (file)
@@ -1,3 +1,44 @@
+2018-09-12  Youenn Fablet  <youenn@apple.com>
+
+        Split RTCRtpParameters idl and header file
+        https://bugs.webkit.org/show_bug.cgi?id=189524
+
+        Reviewed by Eric Carlson.
+
+        This will be easier to manage and will allow to more easily introduce sender/receiver parameters.
+        No change of behavior.
+
+        * CMakeLists.txt:
+        * DerivedSources.make:
+        * Modules/mediastream/RTCDegradationPreference.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCDegradationPreference.idl: Added.
+        * Modules/mediastream/RTCDtxStatus.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCDtxStatus.idl: Added.
+        * Modules/mediastream/RTCPriorityType.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCPriorityType.idl: Added.
+        * Modules/mediastream/RTCRtpCodecParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCRtpCodecParameters.idl: Added.
+        * Modules/mediastream/RTCRtpEncodingParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCRtpEncodingParameters.idl: Added.
+        * Modules/mediastream/RTCRtpFecParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCRtpFecParameters.idl: Added.
+        * Modules/mediastream/RTCRtpHeaderExtensionParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCRtpHeaderExtensionParameters.idl: Added.
+        * Modules/mediastream/RTCRtpParameters.h:
+        * Modules/mediastream/RTCRtpParameters.idl:
+        * Modules/mediastream/RTCRtpRtxParameters.h: Copied from Source/WebCore/Modules/mediastream/RTCRtpParameters.h.
+        * Modules/mediastream/RTCRtpRtxParameters.idl: Added.
+        * Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
+        (WebCore::toRTCEncodingParameters):
+        (WebCore::fromRTCEncodingParameters):
+        (WebCore::toRTCHeaderExtensionParameters):
+        (WebCore::fromRTCHeaderExtensionParameters):
+        (WebCore::toRTCCodecParameters):
+        (WebCore::toRTCRtpParameters):
+        (WebCore::fromRTCRtpParameters):
+        * Sources.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+
 2018-09-12  Ali Juma  <ajuma@chromium.org>
 
         [IntersectionObserver] Implement rootMargin expansion
index 5db3014..47355fe 100644 (file)
@@ -230,8 +230,11 @@ JS_BINDING_IDLS = \
     $(WebCore)/Modules/mediastream/RTCDTMFToneChangeEvent.idl \
     $(WebCore)/Modules/mediastream/RTCDataChannel.idl \
     $(WebCore)/Modules/mediastream/RTCDataChannelEvent.idl \
+    $(WebCore)/Modules/mediastream/RTCDegradationPreference.idl \
+    $(WebCore)/Modules/mediastream/RTCDtxStatus.idl \
     $(WebCore)/Modules/mediastream/RTCIceCandidate.idl \
     $(WebCore)/Modules/mediastream/RTCPeerConnectionIceEvent.idl \
+    $(WebCore)/Modules/mediastream/RTCPriorityType.idl \
     $(WebCore)/Modules/mediastream/RTCIceConnectionState.idl \
     $(WebCore)/Modules/mediastream/RTCIceGatheringState.idl \
     $(WebCore)/Modules/mediastream/RTCIceServer.idl \
@@ -241,8 +244,13 @@ JS_BINDING_IDLS = \
     $(WebCore)/Modules/mediastream/RTCOfferOptions.idl \
     $(WebCore)/Modules/mediastream/RTCPeerConnection.idl \
     $(WebCore)/Modules/mediastream/RTCPeerConnectionState.idl \
+    $(WebCore)/Modules/mediastream/RTCRtpCodecParameters.idl \
+    $(WebCore)/Modules/mediastream/RTCRtpEncodingParameters.idl \
+    $(WebCore)/Modules/mediastream/RTCRtpFecParameters.idl \
+    $(WebCore)/Modules/mediastream/RTCRtpHeaderExtensionParameters.idl \
     $(WebCore)/Modules/mediastream/RTCRtpParameters.idl \
     $(WebCore)/Modules/mediastream/RTCRtpReceiver.idl \
+    $(WebCore)/Modules/mediastream/RTCRtpRtxParameters.idl \
     $(WebCore)/Modules/mediastream/RTCRtpSender.idl \
     $(WebCore)/Modules/mediastream/RTCRtpTransceiver.idl \
     $(WebCore)/Modules/mediastream/RTCRtpTransceiverDirection.idl \
diff --git a/Source/WebCore/Modules/mediastream/RTCDegradationPreference.h b/Source/WebCore/Modules/mediastream/RTCDegradationPreference.h
new file mode 100644 (file)
index 0000000..793abf9
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+namespace WebCore {
+
+enum class RTCDegradationPreference { MaintainFramerate, MaintainResolution, Balanced };
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCDegradationPreference.idl b/Source/WebCore/Modules/mediastream/RTCDegradationPreference.idl
new file mode 100644 (file)
index 0000000..1399fd4
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+] enum RTCDegradationPreference {
+    "maintain-framerate",
+    "maintain-resolution",
+    "balanced"
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCDtxStatus.h b/Source/WebCore/Modules/mediastream/RTCDtxStatus.h
new file mode 100644 (file)
index 0000000..a7177e4
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+namespace WebCore {
+
+enum class RTCDtxStatus { Disabled, Enabled };
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCDtxStatus.idl b/Source/WebCore/Modules/mediastream/RTCDtxStatus.idl
new file mode 100644 (file)
index 0000000..23bd2ab
--- /dev/null
@@ -0,0 +1,31 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+] enum RTCDtxStatus {
+    "disabled",
+    "enabled"
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCPriorityType.h b/Source/WebCore/Modules/mediastream/RTCPriorityType.h
new file mode 100644 (file)
index 0000000..45ec3e9
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+namespace WebCore {
+
+enum class RTCPriorityType { VeryLow, Low, Medium, High };
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCPriorityType.idl b/Source/WebCore/Modules/mediastream/RTCPriorityType.idl
new file mode 100644 (file)
index 0000000..d3db0cf
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+] enum RTCPriorityType {
+    "very-low",
+    "low",
+    "medium",
+    "high"
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.h
new file mode 100644 (file)
index 0000000..61bf76c
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+
+struct RTCRtpCodecParameters {
+    unsigned short payloadType { 0 };
+    String mimeType;
+    unsigned long clockRate { 0 };
+    unsigned short channels = 1;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpCodecParameters.idl
new file mode 100644 (file)
index 0000000..72281c6
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+    JSGenerateToJSObject,
+] dictionary RTCRtpCodecParameters {
+    unsigned short payloadType;
+    DOMString mimeType;
+    unsigned long clockRate;
+    unsigned short channels = 1;
+    // FIXME: Add DOMString sdpFmtpLine;
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h
new file mode 100644 (file)
index 0000000..a31a4c5
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+#include "RTCDtxStatus.h"
+#include "RTCPriorityType.h"
+#include "RTCRtpFecParameters.h"
+#include "RTCRtpRtxParameters.h"
+
+namespace WebCore {
+
+struct RTCRtpEncodingParameters {
+    unsigned long ssrc { 0 };
+    RTCRtpRtxParameters rtx;
+    RTCRtpFecParameters fec;
+    std::optional<RTCDtxStatus> dtx;
+    bool active { false};
+    RTCPriorityType priority { RTCPriorityType::Medium };
+    unsigned long maxBitrate { 0 };
+    unsigned long maxFramerate { 0 };
+    String rid;
+    double scaleResolutionDownBy { 1 };
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl
new file mode 100644 (file)
index 0000000..a78e304
--- /dev/null
@@ -0,0 +1,41 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+    JSGenerateToJSObject,
+] dictionary RTCRtpEncodingParameters {
+    unsigned long ssrc;
+    RTCRtpRtxParameters rtx;
+    RTCRtpFecParameters fec;
+    RTCDtxStatus dtx;
+    boolean active;
+    RTCPriorityType priority;
+    unsigned long maxBitrate;
+    unsigned long maxFramerate;
+    DOMString rid;
+    double scaleResolutionDownBy = 1;
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpFecParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpFecParameters.h
new file mode 100644 (file)
index 0000000..ab881a3
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+namespace WebCore {
+
+struct RTCRtpFecParameters {
+    unsigned long ssrc;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpFecParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpFecParameters.idl
new file mode 100644 (file)
index 0000000..a0927a1
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+    JSGenerateToJSObject,
+] dictionary RTCRtpFecParameters {
+    unsigned long ssrc;
+};
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.h
new file mode 100644 (file)
index 0000000..d3acf44
--- /dev/null
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+
+struct RTCRtpHeaderExtensionParameters {
+    String uri;
+    unsigned short id;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpHeaderExtensionParameters.idl
new file mode 100644 (file)
index 0000000..3cb9176
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+    JSGenerateToJSObject,
+] dictionary RTCRtpHeaderExtensionParameters {
+    DOMString uri;
+    unsigned short id;
+    // FIXME: Add boolean encrypted;
+};
index 20171b5..1975c47 100644 (file)
 
 #if ENABLE(WEB_RTC)
 
+#include "RTCDegradationPreference.h"
+#include "RTCRtpCodecParameters.h"
+#include "RTCRtpEncodingParameters.h"
+#include "RTCRtpHeaderExtensionParameters.h"
 #include <wtf/Vector.h>
 #include <wtf/text/WTFString.h>
 
 namespace WebCore {
 
 struct RTCRtpParameters {
-
-    struct FecParameters {
-        unsigned long ssrc;
-    };
-
-    struct RtxParameters {
-        unsigned long ssrc;
-    };
-
-    enum class PriorityType { VeryLow, Low, Medium, High };
-    enum class DegradationPreference { MaintainFramerate, MaintainResolution, Balanced };
-    enum class DtxStatus { Disabled, Enabled };
-
-    struct CodecParameters {
-        unsigned short payloadType { 0 };
-        String mimeType;
-        unsigned long clockRate { 0 };
-        unsigned short channels = 1;
-    };
-
-    struct EncodingParameters {
-        unsigned long ssrc { 0 };
-        RtxParameters rtx;
-        FecParameters fec;
-        std::optional<DtxStatus> dtx;
-        bool active { false};
-        PriorityType priority { PriorityType::Medium };
-        unsigned long maxBitrate { 0 };
-        unsigned long maxFramerate { 0 };
-        String rid;
-        double scaleResolutionDownBy { 1 };
-    };
-
-    struct HeaderExtensionParameters {
-        String uri;
-        unsigned short id;
-    };
-
     String transactionId;
-    Vector<EncodingParameters> encodings;
-    Vector<HeaderExtensionParameters> headerExtensions;
-    Vector<CodecParameters> codecs;
-    DegradationPreference degradationPreference = DegradationPreference::Balanced;
+    Vector<RTCRtpEncodingParameters> encodings;
+    Vector<RTCRtpHeaderExtensionParameters> headerExtensions;
+    Vector<RTCRtpCodecParameters> codecs;
+    RTCDegradationPreference degradationPreference { RTCDegradationPreference::Balanced };
 };
 
 
index 042942e..468b11a 100644 (file)
@@ -1,5 +1,5 @@
 /*
-* Copyright (C) 2017 Apple Inc. All rights reserved.
+* Copyright (C) 2018 Apple Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
     sequence<RTCRtpCodecParameters> codecs;
     RTCDegradationPreference degradationPreference = "balanced";
 };
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-    JSGenerateToJSObject,
-] dictionary RTCRtpCodecParameters {
-    unsigned short payloadType;
-    DOMString mimeType;
-    unsigned long clockRate;
-    unsigned short channels = 1;
-    // FIXME: Add DOMString sdpFmtpLine;
-};
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-    JSGenerateToJSObject,
-] dictionary RTCRtpEncodingParameters {
-    unsigned long ssrc;
-    RTCRtpRtxParameters rtx;
-    RTCRtpFecParameters fec;
-    RTCDtxStatus dtx;
-    boolean active;
-    RTCPriorityType priority;
-    unsigned long maxBitrate;
-    unsigned long maxFramerate;
-    DOMString rid;
-    double scaleResolutionDownBy = 1;
-};
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-    JSGenerateToJSObject,
-] dictionary RTCRtpHeaderExtensionParameters {
-    DOMString uri;
-    unsigned short id;
-    // FIXME: Add boolean encrypted;
-};
-
-//[
-//    Conditional=WEB_RTC,
-//    EnabledAtRuntime=PeerConnection,
-//    JSGenerateToJSObject,
-//] dictionary RTCRtcpParameters {
-//    DOMString cname;
-//    boolean reducedSize;
-//};
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-    JSGenerateToJSObject,
-] dictionary RTCRtpFecParameters {
-    unsigned long ssrc;
-};
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-    JSGenerateToJSObject,
-] dictionary RTCRtpRtxParameters {
-    unsigned long ssrc;
-};
-
-[
-    Conditional=WEB_RTC,
-] enum RTCDegradationPreference {
-    "maintain-framerate",
-    "maintain-resolution",
-    "balanced"
-};
-
-[
-    Conditional=WEB_RTC,
-] enum RTCDtxStatus {
-    "disabled",
-    "enabled"
-};
-
-[
-    Conditional=WEB_RTC,
-    EnabledAtRuntime=PeerConnection,
-] enum RTCPriorityType {
-    "very-low",
-    "low",
-    "medium",
-    "high"
-};
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.h
new file mode 100644 (file)
index 0000000..560be78
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2018 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#if ENABLE(WEB_RTC)
+
+namespace WebCore {
+
+struct RTCRtpRtxParameters {
+    unsigned long ssrc;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(WEB_RTC)
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpRtxParameters.idl
new file mode 100644 (file)
index 0000000..b7ea18d
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2018 Apple Inc. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+*    notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+*    notice, this list of conditions and the following disclaimer in the
+*    documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+* THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+[
+    Conditional=WEB_RTC,
+    EnabledAtRuntime=PeerConnection,
+    JSGenerateToJSObject,
+] dictionary RTCRtpRtxParameters {
+    unsigned long ssrc;
+};
index 1713b63..08ce22b 100644 (file)
@@ -41,9 +41,9 @@ ALLOW_UNUSED_PARAMETERS_END
 
 namespace WebCore {
 
-static inline RTCRtpParameters::EncodingParameters toRTCEncodingParameters(const webrtc::RtpEncodingParameters& rtcParameters)
+static inline RTCRtpEncodingParameters toRTCEncodingParameters(const webrtc::RtpEncodingParameters& rtcParameters)
 {
-    RTCRtpParameters::EncodingParameters parameters;
+    RTCRtpEncodingParameters parameters;
 
     if (rtcParameters.ssrc)
         parameters.ssrc = *rtcParameters.ssrc;
@@ -54,10 +54,10 @@ static inline RTCRtpParameters::EncodingParameters toRTCEncodingParameters(const
     if (rtcParameters.dtx) {
         switch (*rtcParameters.dtx) {
         case webrtc::DtxStatus::DISABLED:
-            parameters.dtx = RTCRtpParameters::DtxStatus::Disabled;
+            parameters.dtx = RTCDtxStatus::Disabled;
             break;
         case webrtc::DtxStatus::ENABLED:
-            parameters.dtx = RTCRtpParameters::DtxStatus::Enabled;
+            parameters.dtx = RTCDtxStatus::Enabled;
         }
     }
     parameters.active = rtcParameters.active;
@@ -72,16 +72,16 @@ static inline RTCRtpParameters::EncodingParameters toRTCEncodingParameters(const
     return parameters;
 }
 
-static inline webrtc::RtpEncodingParameters fromRTCEncodingParameters(const RTCRtpParameters::EncodingParameters& parameters)
+static inline webrtc::RtpEncodingParameters fromRTCEncodingParameters(const RTCRtpEncodingParameters& parameters)
 {
     webrtc::RtpEncodingParameters rtcParameters;
 
     if (parameters.dtx) {
         switch (*parameters.dtx) {
-        case RTCRtpParameters::DtxStatus::Disabled:
+        case RTCDtxStatus::Disabled:
             rtcParameters.dtx = webrtc::DtxStatus::DISABLED;
             break;
-        case RTCRtpParameters::DtxStatus::Enabled:
+        case RTCDtxStatus::Enabled:
             rtcParameters.dtx = webrtc::DtxStatus::ENABLED;
         }
     }
@@ -97,9 +97,9 @@ static inline webrtc::RtpEncodingParameters fromRTCEncodingParameters(const RTCR
     return rtcParameters;
 }
 
-static inline RTCRtpParameters::HeaderExtensionParameters toRTCHeaderExtensionParameters(const webrtc::RtpHeaderExtensionParameters& rtcParameters)
+static inline RTCRtpHeaderExtensionParameters toRTCHeaderExtensionParameters(const webrtc::RtpHeaderExtensionParameters& rtcParameters)
 {
-    RTCRtpParameters::HeaderExtensionParameters parameters;
+    RTCRtpHeaderExtensionParameters parameters;
 
     parameters.uri = fromStdString(rtcParameters.uri);
     parameters.id = rtcParameters.id;
@@ -107,7 +107,7 @@ static inline RTCRtpParameters::HeaderExtensionParameters toRTCHeaderExtensionPa
     return parameters;
 }
 
-static inline webrtc::RtpHeaderExtensionParameters fromRTCHeaderExtensionParameters(const RTCRtpParameters::HeaderExtensionParameters& parameters)
+static inline webrtc::RtpHeaderExtensionParameters fromRTCHeaderExtensionParameters(const RTCRtpHeaderExtensionParameters& parameters)
 {
     webrtc::RtpHeaderExtensionParameters rtcParameters;
 
@@ -117,9 +117,9 @@ static inline webrtc::RtpHeaderExtensionParameters fromRTCHeaderExtensionParamet
     return rtcParameters;
 }
 
-static inline RTCRtpParameters::CodecParameters toRTCCodecParameters(const webrtc::RtpCodecParameters& rtcParameters)
+static inline RTCRtpCodecParameters toRTCCodecParameters(const webrtc::RtpCodecParameters& rtcParameters)
 {
-    RTCRtpParameters::CodecParameters parameters;
+    RTCRtpCodecParameters parameters;
 
     parameters.payloadType = rtcParameters.payload_type;
     parameters.mimeType = fromStdString(rtcParameters.mime_type());
@@ -147,13 +147,13 @@ RTCRtpParameters toRTCRtpParameters(const webrtc::RtpParameters& rtcParameters)
     // FIXME: Support DegradationPreference::DISABLED.
     case webrtc::DegradationPreference::DISABLED:
     case webrtc::DegradationPreference::MAINTAIN_FRAMERATE:
-        parameters.degradationPreference = RTCRtpParameters::DegradationPreference::MaintainFramerate;
+        parameters.degradationPreference = RTCDegradationPreference::MaintainFramerate;
         break;
     case webrtc::DegradationPreference::MAINTAIN_RESOLUTION:
-        parameters.degradationPreference = RTCRtpParameters::DegradationPreference::MaintainResolution;
+        parameters.degradationPreference = RTCDegradationPreference::MaintainResolution;
         break;
     case webrtc::DegradationPreference::BALANCED:
-        parameters.degradationPreference = RTCRtpParameters::DegradationPreference::Balanced;
+        parameters.degradationPreference = RTCDegradationPreference::Balanced;
         break;
     };
     return parameters;
@@ -171,13 +171,13 @@ webrtc::RtpParameters fromRTCRtpParameters(const RTCRtpParameters& parameters)
     // Codecs parameters are readonly
 
     switch (parameters.degradationPreference) {
-    case RTCRtpParameters::DegradationPreference::MaintainFramerate:
+    case RTCDegradationPreference::MaintainFramerate:
         rtcParameters.degradation_preference = webrtc::DegradationPreference::MAINTAIN_FRAMERATE;
         break;
-    case RTCRtpParameters::DegradationPreference::MaintainResolution:
+    case RTCDegradationPreference::MaintainResolution:
         rtcParameters.degradation_preference = webrtc::DegradationPreference::MAINTAIN_RESOLUTION;
         break;
-    case RTCRtpParameters::DegradationPreference::Balanced:
+    case RTCDegradationPreference::Balanced:
         rtcParameters.degradation_preference = webrtc::DegradationPreference::BALANCED;
         break;
     }
index df90dfc..c3a44bf 100644 (file)
@@ -2863,6 +2863,8 @@ JSRTCDTMFSender.cpp
 JSRTCDTMFToneChangeEvent.cpp
 JSRTCDataChannel.cpp
 JSRTCDataChannelEvent.cpp
+JSRTCDegradationPreference.cpp
+JSRTCDtxStatus.cpp
 JSRTCIceCandidate.cpp
 JSRTCIceConnectionState.cpp
 JSRTCIceGatheringState.cpp
@@ -2874,7 +2876,13 @@ JSRTCOfferOptions.cpp
 JSRTCPeerConnection.cpp
 JSRTCPeerConnectionIceEvent.cpp
 JSRTCPeerConnectionState.cpp
+JSRTCPriorityType.cpp
+JSRTCRtpCodecParameters.cpp
+JSRTCRtpEncodingParameters.cpp
+JSRTCRtpFecParameters.cpp
+JSRTCRtpHeaderExtensionParameters.cpp
 JSRTCRtpParameters.cpp
+JSRTCRtpRtxParameters.cpp
 JSRTCRtpReceiver.cpp
 JSRTCRtpSender.cpp
 JSRTCRtpTransceiver.cpp
index a3ee899..27a7157 100644 (file)
                41E1B1CB0FF5986900576B3B /* AbstractWorker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AbstractWorker.h; sourceTree = "<group>"; };
                41E1B1CC0FF5986900576B3B /* AbstractWorker.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AbstractWorker.idl; sourceTree = "<group>"; };
                41E408381DCB747900EFCE19 /* PeerConnectionBackend.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PeerConnectionBackend.cpp; sourceTree = "<group>"; };
+               41E593FD214865A900D3CB61 /* RTCPriorityType.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCPriorityType.idl; sourceTree = "<group>"; };
+               41E593FF214865AA00D3CB61 /* RTCRtpEncodingParameters.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCRtpEncodingParameters.idl; sourceTree = "<group>"; };
+               41E59400214865AA00D3CB61 /* RTCRtpHeaderExtensionParameters.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCRtpHeaderExtensionParameters.idl; sourceTree = "<group>"; };
+               41E59401214865AB00D3CB61 /* RTCRtpFecParameters.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCRtpFecParameters.idl; sourceTree = "<group>"; };
                41F062120F5F192600A07EAC /* InspectorDatabaseResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorDatabaseResource.h; sourceTree = "<group>"; };
                41F062130F5F192600A07EAC /* InspectorDatabaseResource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorDatabaseResource.cpp; sourceTree = "<group>"; };
                41F1D21D0EF35C2A00DA8753 /* ScriptCachedFrameData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptCachedFrameData.h; sourceTree = "<group>"; };
                41FB278F1F34C28200795487 /* WorkerGlobalScopeCaches.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WorkerGlobalScopeCaches.cpp; sourceTree = "<group>"; };
                41FB27991F34CE9C00795487 /* CacheQueryOptions.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = CacheQueryOptions.idl; sourceTree = "<group>"; };
                41FB279B1F34CEF000795487 /* CacheQueryOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CacheQueryOptions.h; sourceTree = "<group>"; };
+               41FCB755214865CF0038ADC6 /* RTCDegradationPreference.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCDegradationPreference.idl; sourceTree = "<group>"; };
+               41FCB757214865D10038ADC6 /* RTCDtxStatus.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCDtxStatus.idl; sourceTree = "<group>"; };
+               41FCB758214865D20038ADC6 /* RTCRtpRtxParameters.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCRtpRtxParameters.idl; sourceTree = "<group>"; };
+               41FCB759214865D30038ADC6 /* RTCRtpCodecParameters.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = RTCRtpCodecParameters.idl; sourceTree = "<group>"; };
+               41FCB75A214866FD0038ADC6 /* RTCRtpHeaderExtensionParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpHeaderExtensionParameters.h; sourceTree = "<group>"; };
+               41FCB75B214866FD0038ADC6 /* RTCRtpFecParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpFecParameters.h; sourceTree = "<group>"; };
+               41FCB75C214866FE0038ADC6 /* RTCPriorityType.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCPriorityType.h; sourceTree = "<group>"; };
+               41FCB75D214866FE0038ADC6 /* RTCDegradationPreference.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCDegradationPreference.h; sourceTree = "<group>"; };
+               41FCB75E214866FF0038ADC6 /* RTCDtxStatus.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCDtxStatus.h; sourceTree = "<group>"; };
+               41FCB75F214866FF0038ADC6 /* RTCRtpCodecParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpCodecParameters.h; sourceTree = "<group>"; };
+               41FCB760214867000038ADC6 /* RTCRtpRtxParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpRtxParameters.h; sourceTree = "<group>"; };
+               41FCB761214867000038ADC6 /* RTCRtpEncodingParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpEncodingParameters.h; sourceTree = "<group>"; };
                427DA71B13735DFA007C57FB /* JSServiceWorkerInternals.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSServiceWorkerInternals.cpp; sourceTree = "<group>"; };
                427DA71C13735DFA007C57FB /* JSServiceWorkerInternals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSServiceWorkerInternals.h; sourceTree = "<group>"; };
                43107BE118CC19DE00CC18E8 /* SelectorPseudoTypeMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelectorPseudoTypeMap.h; sourceTree = "<group>"; };
                                07221B6617CEC32700848E51 /* RTCDataChannelEvent.cpp */,
                                07221B6717CEC32700848E51 /* RTCDataChannelEvent.h */,
                                07221B6817CEC32700848E51 /* RTCDataChannelEvent.idl */,
+                               41FCB75D214866FE0038ADC6 /* RTCDegradationPreference.h */,
+                               41FCB755214865CF0038ADC6 /* RTCDegradationPreference.idl */,
                                07221B6917CEC32700848E51 /* RTCDTMFSender.cpp */,
                                07221B6A17CEC32700848E51 /* RTCDTMFSender.h */,
                                07221B6B17CEC32700848E51 /* RTCDTMFSender.idl */,
                                07221B6C17CEC32700848E51 /* RTCDTMFToneChangeEvent.cpp */,
                                07221B6D17CEC32700848E51 /* RTCDTMFToneChangeEvent.h */,
                                07221B6E17CEC32700848E51 /* RTCDTMFToneChangeEvent.idl */,
+                               41FCB75E214866FF0038ADC6 /* RTCDtxStatus.h */,
+                               41FCB757214865D10038ADC6 /* RTCDtxStatus.idl */,
                                07221B7117CEC32700848E51 /* RTCIceCandidate.cpp */,
                                07221B7217CEC32700848E51 /* RTCIceCandidate.h */,
                                07221B7317CEC32700848E51 /* RTCIceCandidate.idl */,
                                07221B7617CEC32700848E51 /* RTCPeerConnectionIceEvent.idl */,
                                5E2C43551BCEE30D0001E2BC /* RTCPeerConnectionInternals.js */,
                                41A48A9C1E83129100D2AC2D /* RTCPeerConnectionState.idl */,
+                               41FCB75C214866FE0038ADC6 /* RTCPriorityType.h */,
+                               41E593FD214865A900D3CB61 /* RTCPriorityType.idl */,
+                               41FCB75F214866FF0038ADC6 /* RTCRtpCodecParameters.h */,
+                               41FCB759214865D30038ADC6 /* RTCRtpCodecParameters.idl */,
+                               41FCB761214867000038ADC6 /* RTCRtpEncodingParameters.h */,
+                               41E593FF214865AA00D3CB61 /* RTCRtpEncodingParameters.idl */,
+                               41FCB75B214866FD0038ADC6 /* RTCRtpFecParameters.h */,
+                               41E59401214865AB00D3CB61 /* RTCRtpFecParameters.idl */,
+                               41FCB75A214866FD0038ADC6 /* RTCRtpHeaderExtensionParameters.h */,
+                               41E59400214865AA00D3CB61 /* RTCRtpHeaderExtensionParameters.idl */,
                                41A48AA81E84AF1D00D2AC2D /* RTCRtpParameters.h */,
                                41A48AA71E84AEEC00D2AC2D /* RTCRtpParameters.idl */,
                                5E2C43561BCEE30D0001E2BC /* RTCRtpReceiver.cpp */,
                                5E2C43571BCEE30D0001E2BC /* RTCRtpReceiver.h */,
                                5E2C43581BCEE30D0001E2BC /* RTCRtpReceiver.idl */,
                                41D1A048213EDDEB0063FB6B /* RTCRtpReceiverBackend.h */,
+                               41FCB760214867000038ADC6 /* RTCRtpRtxParameters.h */,
+                               41FCB758214865D20038ADC6 /* RTCRtpRtxParameters.idl */,
                                5E2C43591BCEE30D0001E2BC /* RTCRtpSender.cpp */,
                                5E2C435A1BCEE30D0001E2BC /* RTCRtpSender.h */,
                                5E2C435B1BCEE30D0001E2BC /* RTCRtpSender.idl */,
                        isa = PBXGroup;
                        children = (
                                CDBD3D2B1FE85CBB0012C545 /* AudioConfiguration.h */,
+                               CD0C8B582141C8CA0062F59D /* MediaCapabilitiesInfo.h */,
                                CDBD3D351FE85CBF0012C545 /* MediaConfiguration.h */,
-                               CDBD3D381FE85CC00012C545 /* MediaDecodingType.h */,
-                               CDBD3D341FE85CBF0012C545 /* VideoConfiguration.h */,
                                CDBD3D361FE85CC00012C545 /* MediaDecodingConfiguration.h */,
+                               CDBD3D381FE85CC00012C545 /* MediaDecodingType.h */,
                                CDBD3D371FE85CC00012C545 /* MediaEncodingConfiguration.h */,
                                CDBD3D3E1FE85CC30012C545 /* MediaEncodingType.h */,
                                9AC6F02221148F5100CBDA06 /* MediaEngineConfigurationFactory.cpp */,
                                9AC6F02521148F5400CBDA06 /* MediaEngineConfigurationFactory.h */,
-                               CD0C8B582141C8CA0062F59D /* MediaCapabilitiesInfo.h */,
+                               CDBD3D341FE85CBF0012C545 /* VideoConfiguration.h */,
                        );
                        name = mediacapabilities;
                        sourceTree = "<group>";