Diff
Modified: trunk/Source/WebCore/ChangeLog (236873 => 236874)
--- trunk/Source/WebCore/ChangeLog 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/ChangeLog 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1,3 +1,16 @@
+2018-10-05 Ryan Haddad <[email protected]>
+
+ Unreviewed, rolling out r236866.
+
+ Breaks internal builds.
+
+ Reverted changeset:
+
+ "Add support for reporting "display composited video frames"
+ through the VideoPlaybackQuality object."
+ https://bugs.webkit.org/show_bug.cgi?id=190266
+ https://trac.webkit.org/changeset/236866
+
2018-10-05 Antoine Quint <[email protected]>
[Web Animations] REGRESSION (r236809): crash under AnimationTimeline::updateCSSAnimationsForElement()
Modified: trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.cpp (236873 => 236874)
--- trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.cpp 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.cpp 2018-10-05 15:58:40 UTC (rev 236874)
@@ -26,22 +26,19 @@
#include "config.h"
#include "VideoPlaybackQuality.h"
-#include "MediaPlayer.h"
-
namespace WebCore {
-Ref<VideoPlaybackQuality> VideoPlaybackQuality::create(double creationTime, const VideoPlaybackQualityMetrics& metrics)
+Ref<VideoPlaybackQuality> VideoPlaybackQuality::create(double creationTime, unsigned totalVideoFrames, unsigned droppedVideoFrames, unsigned corruptedVideoFrames, double totalFrameDelay)
{
- return adoptRef(*new VideoPlaybackQuality(creationTime, metrics));
+ return adoptRef(*new VideoPlaybackQuality(creationTime, totalVideoFrames, droppedVideoFrames, corruptedVideoFrames, totalFrameDelay));
}
-VideoPlaybackQuality::VideoPlaybackQuality(double creationTime, const VideoPlaybackQualityMetrics& metrics)
+VideoPlaybackQuality::VideoPlaybackQuality(double creationTime, unsigned totalVideoFrames, unsigned droppedVideoFrames, unsigned corruptedVideoFrames, double totalFrameDelay)
: m_creationTime(creationTime)
- , m_totalVideoFrames(metrics.totalVideoFrames)
- , m_droppedVideoFrames(metrics.droppedVideoFrames)
- , m_corruptedVideoFrames(metrics.corruptedVideoFrames)
- , m_displayCompositedVideoFrames(metrics.displayCompositedVideoFrames)
- , m_totalFrameDelay(metrics.totalFrameDelay)
+ , m_totalVideoFrames(totalVideoFrames)
+ , m_droppedVideoFrames(droppedVideoFrames)
+ , m_corruptedVideoFrames(corruptedVideoFrames)
+ , m_totalFrameDelay(totalFrameDelay)
{
}
Modified: trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.h (236873 => 236874)
--- trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -30,28 +30,24 @@
namespace WebCore {
-struct VideoPlaybackQualityMetrics;
-
class VideoPlaybackQuality : public RefCounted<VideoPlaybackQuality> {
WTF_MAKE_NONCOPYABLE(VideoPlaybackQuality)
public:
- static Ref<VideoPlaybackQuality> create(double creationTime, const VideoPlaybackQualityMetrics&);
+ static Ref<VideoPlaybackQuality> create(double creationTime, unsigned totalVideoFrames, unsigned droppedVideoFrames, unsigned corruptedVideoFrames, double totalFrameDelay);
double creationTime() const { return m_creationTime; }
unsigned totalVideoFrames() const { return m_totalVideoFrames; }
unsigned droppedVideoFrames() const { return m_droppedVideoFrames; }
unsigned corruptedVideoFrames() const { return m_corruptedVideoFrames; }
- unsigned displayCompositedVideoFrames() const { return m_displayCompositedVideoFrames; }
double totalFrameDelay() const { return m_totalFrameDelay; }
private:
- VideoPlaybackQuality(double creationTime, const VideoPlaybackQualityMetrics&);
+ VideoPlaybackQuality(double creationTime, unsigned totalVideoFrames, unsigned droppedVideoFrames, unsigned corruptedVideoFrames, double totalFrameDelay);
double m_creationTime;
- uint32_t m_totalVideoFrames;
- uint32_t m_droppedVideoFrames;
- uint32_t m_corruptedVideoFrames;
- uint32_t m_displayCompositedVideoFrames;
+ unsigned m_totalVideoFrames;
+ unsigned m_droppedVideoFrames;
+ unsigned m_corruptedVideoFrames;
double m_totalFrameDelay;
};
Modified: trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.idl (236873 => 236874)
--- trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.idl 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.idl 2018-10-05 15:58:40 UTC (rev 236874)
@@ -24,6 +24,7 @@
*/
[
+ Conditional=MEDIA_SOURCE,
NoInterfaceObject,
ImplementationLacksVTable,
] interface VideoPlaybackQuality {
@@ -31,6 +32,8 @@
readonly attribute unsigned long totalVideoFrames;
readonly attribute unsigned long droppedVideoFrames;
readonly attribute unsigned long corruptedVideoFrames;
- [EnabledBySetting=videoQualityIncludesDisplayCompositing] readonly attribute unsigned long displayCompositedVideoFrames;
readonly attribute unrestricted double totalFrameDelay;
};
+
+
+
Modified: trunk/Source/WebCore/PAL/ChangeLog (236873 => 236874)
--- trunk/Source/WebCore/PAL/ChangeLog 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/PAL/ChangeLog 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1,3 +1,16 @@
+2018-10-05 Ryan Haddad <[email protected]>
+
+ Unreviewed, rolling out r236866.
+
+ Breaks internal builds.
+
+ Reverted changeset:
+
+ "Add support for reporting "display composited video frames"
+ through the VideoPlaybackQuality object."
+ https://bugs.webkit.org/show_bug.cgi?id=190266
+ https://trac.webkit.org/changeset/236866
+
2018-10-04 Jer Noble <[email protected]>
Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
Modified: trunk/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h (236873 => 236874)
--- trunk/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -52,7 +52,6 @@
#import <AVFoundation/AVPlayer.h>
#import <AVFoundation/AVPlayerItem.h>
-#import <AVFoundation/AVPlayerLayer.h>
#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 110000)
NS_ASSUME_NONNULL_BEGIN
@@ -165,7 +164,7 @@
@property (nonatomic, readonly) unsigned long totalNumberOfVideoFrames;
@property (nonatomic, readonly) unsigned long numberOfDroppedVideoFrames;
@property (nonatomic, readonly) unsigned long numberOfCorruptedVideoFrames;
-@property (nonatomic, readonly) unsigned long numberOfDisplayCompositedVideoFrames;
+@property (nonatomic, readonly) unsigned long numberOfNonDisplayCompositedVideoFrames;
@property (nonatomic, readonly) double totalFrameDelay;
@end
#endif
@@ -185,13 +184,6 @@
@end
#endif // !HAVE(AVKIT)
-#if !USE(APPLE_INTERNAL_SDK) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED < 101404) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED < 110000)
-NS_ASSUME_NONNULL_BEGIN
-@interface AVPlayerLayer (AVPlayerLayerVideoPerformanceMetrics)
-- (AVVideoPerformanceMetrics *)videoPerformanceMetrics;
-@end
-NS_ASSUME_NONNULL_END
-#endif
// FIXME: Wrap in a #if USE(APPLE_INTERNAL_SDK) once these SPI land
#import <AVFoundation/AVAsset.h>
Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (236873 => 236874)
--- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2018-10-05 15:58:40 UTC (rev 236874)
@@ -89,7 +89,6 @@
#include "TimeRanges.h"
#include "UserContentController.h"
#include "UserGestureIndicator.h"
-#include "VideoPlaybackQuality.h"
#include <_javascript_Core/Uint8Array.h>
#include <limits>
#include <pal/SessionID.h>
@@ -135,6 +134,7 @@
#if ENABLE(MEDIA_SOURCE)
#include "DOMWindow.h"
#include "MediaSource.h"
+#include "VideoPlaybackQuality.h"
#endif
#if ENABLE(MEDIA_STREAM)
@@ -7149,6 +7149,7 @@
m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequireUserGestureForAudioRateChange);
}
+#if ENABLE(MEDIA_SOURCE)
RefPtr<VideoPlaybackQuality> HTMLMediaElement::getVideoPlaybackQuality()
{
RefPtr<DOMWindow> domWindow = document().domWindow();
@@ -7156,16 +7157,16 @@
auto metrics = m_player ? m_player->videoPlaybackQualityMetrics() : std::nullopt;
if (!metrics)
- return VideoPlaybackQuality::create(timestamp, { });
+ return VideoPlaybackQuality::create(timestamp, 0, 0, 0, 0);
-#if ENABLE(MEDIA_SOURCE)
- metrics.value().totalVideoFrames += m_droppedVideoFrames;
- metrics.value().droppedVideoFrames += m_droppedVideoFrames;
+ return VideoPlaybackQuality::create(timestamp,
+ metrics.value().totalVideoFrames + m_droppedVideoFrames,
+ metrics.value().droppedVideoFrames + m_droppedVideoFrames,
+ metrics.value().corruptedVideoFrames,
+ metrics.value().totalFrameDelay);
+}
#endif
- return VideoPlaybackQuality::create(timestamp, metrics.value());
-}
-
#if ENABLE(MEDIA_CONTROLS_SCRIPT)
DOMWrapperWorld& HTMLMediaElement::ensureIsolatedWorld()
{
Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (236873 => 236874)
--- trunk/Source/WebCore/html/HTMLMediaElement.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -503,7 +503,9 @@
uint64_t elementID() const { return m_elementID; }
#endif
+#if ENABLE(MEDIA_SOURCE)
RefPtr<VideoPlaybackQuality> getVideoPlaybackQuality();
+#endif
MediaPlayerEnums::Preload preloadValue() const { return m_preload; }
MediaElementSession& mediaSession() const { return *m_mediaSession; }
Modified: trunk/Source/WebCore/html/HTMLMediaElement.idl (236873 => 236874)
--- trunk/Source/WebCore/html/HTMLMediaElement.idl 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/html/HTMLMediaElement.idl 2018-10-05 15:58:40 UTC (rev 236874)
@@ -118,7 +118,7 @@
[ImplementedAs=controllerForBindings] attribute MediaController? controller;
- VideoPlaybackQuality getVideoPlaybackQuality();
+ [Conditional=MEDIA_SOURCE] VideoPlaybackQuality getVideoPlaybackQuality();
[Conditional=WIRELESS_PLAYBACK_TARGET] void webkitShowPlaybackTargetPicker();
[Conditional=WIRELESS_PLAYBACK_TARGET] readonly attribute boolean webkitCurrentPlaybackTargetIsWireless;
Modified: trunk/Source/WebCore/page/Settings.yaml (236873 => 236874)
--- trunk/Source/WebCore/page/Settings.yaml 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/page/Settings.yaml 2018-10-05 15:58:40 UTC (rev 236874)
@@ -762,7 +762,3 @@
shouldIgnoreMetaViewport:
initial: false
-
-videoQualityIncludesDisplayCompositingEnabled:
- initial: false
- conditional: VIDEO
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1450,6 +1450,7 @@
return m_private->ended();
}
+#if ENABLE(MEDIA_SOURCE)
std::optional<VideoPlaybackQualityMetrics> MediaPlayer::videoPlaybackQualityMetrics()
{
if (!m_private)
@@ -1457,6 +1458,7 @@
return m_private->videoPlaybackQualityMetrics();
}
+#endif
void MediaPlayer::handlePlaybackCommand(PlatformMediaSession::RemoteControlCommandType command)
{
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.h (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/MediaPlayer.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -87,11 +87,10 @@
};
struct VideoPlaybackQualityMetrics {
- uint32_t totalVideoFrames { 0 };
- uint32_t droppedVideoFrames { 0 };
- uint32_t corruptedVideoFrames { 0 };
- double totalFrameDelay { 0 };
- uint32_t displayCompositedVideoFrames { 0 };
+ unsigned totalVideoFrames;
+ unsigned droppedVideoFrames;
+ unsigned corruptedVideoFrames;
+ double totalFrameDelay;
};
class MediaPlayerClient {
@@ -541,7 +540,9 @@
unsigned long long fileSize() const;
+#if ENABLE(MEDIA_SOURCE)
std::optional<VideoPlaybackQualityMetrics> videoPlaybackQualityMetrics();
+#endif
void handlePlaybackCommand(PlatformMediaSession::RemoteControlCommandType);
String sourceApplicationIdentifier() const;
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -265,7 +265,9 @@
virtual bool ended() const { return false; }
+#if ENABLE(MEDIA_SOURCE)
virtual std::optional<VideoPlaybackQualityMetrics> videoPlaybackQualityMetrics() { return std::nullopt; }
+#endif
#if ENABLE(AVF_CAPTIONS)
virtual void notifyTrackModeChanged() { }
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -322,8 +322,6 @@
void setShouldDisableSleep(bool) override;
- std::optional<VideoPlaybackQualityMetrics> videoPlaybackQualityMetrics() final;
-
#if !RELEASE_LOG_DISABLED
const char* logClassName() const final { return "MediaPlayerPrivateAVFoundationObjC"; }
#endif
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2018-10-05 15:58:40 UTC (rev 236874)
@@ -3258,32 +3258,6 @@
#endif
}
-std::optional<VideoPlaybackQualityMetrics> MediaPlayerPrivateAVFoundationObjC::videoPlaybackQualityMetrics()
-{
- if (![m_videoLayer respondsToSelector:@selector(videoPerformanceMetrics)])
- return std::nullopt;
-
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wunknown-pragmas"
-#pragma clang diagnostic ignored "-Wunguarded-availability-new"
- auto metrics = [m_videoLayer videoPerformanceMetrics];
- if (!metrics)
- return std::nullopt;
-
- uint32_t displayCompositedFrames = 0;
- if ([metrics respondsToSelector:@selector(numberOfDisplayCompositedVideoFrames)])
- displayCompositedFrames = [metrics numberOfDisplayCompositedVideoFrames];
-#pragma clang diagnostic pop
-
- return VideoPlaybackQualityMetrics {
- static_cast<uint32_t>([metrics totalNumberOfVideoFrames]),
- static_cast<uint32_t>([metrics numberOfDroppedVideoFrames]),
- static_cast<uint32_t>([metrics numberOfCorruptedVideoFrames]),
- [metrics totalFrameDelay],
- displayCompositedFrames,
- };
-}
-
NSArray* assetMetadataKeyNames()
{
static NSArray* keys = [[NSArray alloc] initWithObjects:
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm (236873 => 236874)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm 2018-10-05 15:58:40 UTC (rev 236874)
@@ -650,8 +650,7 @@
m_decompressionSession->totalVideoFrames(),
m_decompressionSession->droppedVideoFrames(),
m_decompressionSession->corruptedVideoFrames(),
- m_decompressionSession->totalFrameDelay().toDouble(),
- 0,
+ m_decompressionSession->totalFrameDelay().toDouble()
};
}
@@ -659,20 +658,11 @@
if (!metrics)
return std::nullopt;
- uint32_t displayCompositedFrames = 0;
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wunknown-pragmas"
-#pragma clang diagnostic ignored "-Wunguarded-availability-new"
- if ([metrics respondsToSelector:@selector(numberOfDisplayCompositedVideoFrames)])
- displayCompositedFrames = [metrics numberOfDisplayCompositedVideoFrames];
-#pragma clang diagnostic pop
-
return VideoPlaybackQualityMetrics {
- static_cast<uint32_t>([metrics totalNumberOfVideoFrames]),
- static_cast<uint32_t>([metrics numberOfDroppedVideoFrames]),
- static_cast<uint32_t>([metrics numberOfCorruptedVideoFrames]),
- [metrics totalFrameDelay],
- displayCompositedFrames,
+ static_cast<unsigned>([metrics totalNumberOfVideoFrames]),
+ static_cast<unsigned>([metrics numberOfDroppedVideoFrames]),
+ static_cast<unsigned>([metrics numberOfCorruptedVideoFrames]),
+ [metrics totalFrameDelay]
};
}
Modified: trunk/Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp (236873 => 236874)
--- trunk/Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp 2018-10-05 15:58:40 UTC (rev 236874)
@@ -177,8 +177,7 @@
m_totalVideoFrames,
m_droppedVideoFrames,
m_corruptedVideoFrames,
- m_totalFrameDelay.toDouble(),
- 0,
+ m_totalFrameDelay.toDouble()
};
}
Modified: trunk/Source/WebKit/ChangeLog (236873 => 236874)
--- trunk/Source/WebKit/ChangeLog 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebKit/ChangeLog 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1,3 +1,16 @@
+2018-10-05 Ryan Haddad <[email protected]>
+
+ Unreviewed, rolling out r236866.
+
+ Breaks internal builds.
+
+ Reverted changeset:
+
+ "Add support for reporting "display composited video frames"
+ through the VideoPlaybackQuality object."
+ https://bugs.webkit.org/show_bug.cgi?id=190266
+ https://trac.webkit.org/changeset/236866
+
2018-10-05 Zach Li <[email protected]>
Expose whether WKWebProcessPlugInNodeHandle is a select element to clients
Modified: trunk/Source/WebKit/Shared/WebPreferences.yaml (236873 => 236874)
--- trunk/Source/WebKit/Shared/WebPreferences.yaml 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebKit/Shared/WebPreferences.yaml 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1146,11 +1146,6 @@
webcoreBinding: RuntimeEnabledFeatures
condition: ENABLE(ENCRYPTED_MEDIA)
-VideoQualityIncludesDisplayCompositingEnabled:
- type: bool
- defaultValue: false
- condition: ENABLE(VIDEO)
-
# For experimental features:
# The type should be boolean.
# You must provide a humanReadableName and humanReadableDescription for all experimental features. They
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm (236873 => 236874)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1326,16 +1326,6 @@
#endif
}
-- (void)_setVideoQualityIncludesDisplayCompositingEnabled:(BOOL)videoQualityIncludesDisplayCompositingEnabled
-{
- _preferences->setVideoQualityIncludesDisplayCompositingEnabled(videoQualityIncludesDisplayCompositingEnabled);
-}
-
-- (BOOL)_videoQualityIncludesDisplayCompositingEnabled
-{
- return _preferences->videoQualityIncludesDisplayCompositingEnabled();
-}
-
@end
#endif // WK_API_ENABLED
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h (236873 => 236874)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h 2018-10-05 15:58:40 UTC (rev 236874)
@@ -148,7 +148,6 @@
@property (nonatomic, setter=_setPunchOutWhiteBackgroundsInDarkMode:) BOOL _punchOutWhiteBackgroundsInDarkMode WK_API_AVAILABLE(macosx(10.14), ios(12.0));
@property (nonatomic, setter=_setLowPowerVideoAudioBufferSizeEnabled:) BOOL _lowPowerVideoAudioBufferSizeEnabled WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
@property (nonatomic, setter=_setShouldIgnoreMetaViewport:) BOOL _shouldIgnoreMetaViewport WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
-@property (nonatomic, setter=_setVideoQualityIncludesDisplayCompositingEnabled:) BOOL _videoQualityIncludesDisplayCompositingEnabled WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
#if !TARGET_OS_IPHONE
@property (nonatomic, setter=_setWebGLEnabled:) BOOL _webGLEnabled WK_API_AVAILABLE(macosx(10.13.4));
Modified: trunk/Tools/ChangeLog (236873 => 236874)
--- trunk/Tools/ChangeLog 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Tools/ChangeLog 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1,3 +1,16 @@
+2018-10-05 Ryan Haddad <[email protected]>
+
+ Unreviewed, rolling out r236866.
+
+ Breaks internal builds.
+
+ Reverted changeset:
+
+ "Add support for reporting "display composited video frames"
+ through the VideoPlaybackQuality object."
+ https://bugs.webkit.org/show_bug.cgi?id=190266
+ https://trac.webkit.org/changeset/236866
+
2018-10-05 Carlos Eduardo Ramalho <[email protected]>
[WPE][JSC] Use Unified Sources for Platform-specific sources
Modified: trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (236873 => 236874)
--- trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj 2018-10-05 15:58:40 UTC (rev 236874)
@@ -723,7 +723,6 @@
CD0BD0A81F79982D001AB2CF /* ContextMenuImgWithVideo.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD0BD0A71F7997C2001AB2CF /* ContextMenuImgWithVideo.html */; };
CD227E44211A4D5D00D285AF /* PreferredAudioBufferSize.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD227E43211A4D5D00D285AF /* PreferredAudioBufferSize.mm */; };
CD2D0D1A213465560018C784 /* NowPlaying.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD2D0D19213465560018C784 /* NowPlaying.mm */; };
- CD3065E02165682E00E895DF /* VideoQualityDisplayCompositing.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD3065DF2165682E00E895DF /* VideoQualityDisplayCompositing.mm */; };
CD321B041E3A85FA00EB21C8 /* video-with-muted-audio-and-webaudio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD321B031E3A84B700EB21C8 /* video-with-muted-audio-and-webaudio.html */; };
CD577799211CE0E4001B371E /* web-audio-only.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD577798211CDE8F001B371E /* web-audio-only.html */; };
CD57779C211CE91F001B371E /* audio-with-web-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD57779A211CE6B7001B371E /* audio-with-web-audio.html */; };
@@ -1952,7 +1951,6 @@
CD225C071C45A69200140761 /* ParsedContentRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParsedContentRange.cpp; sourceTree = "<group>"; };
CD227E43211A4D5D00D285AF /* PreferredAudioBufferSize.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PreferredAudioBufferSize.mm; sourceTree = "<group>"; };
CD2D0D19213465560018C784 /* NowPlaying.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = NowPlaying.mm; sourceTree = "<group>"; };
- CD3065DF2165682E00E895DF /* VideoQualityDisplayCompositing.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = VideoQualityDisplayCompositing.mm; sourceTree = "<group>"; };
CD321B031E3A84B700EB21C8 /* video-with-muted-audio-and-webaudio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "video-with-muted-audio-and-webaudio.html"; sourceTree = "<group>"; };
CD5393C71757BA9700C07123 /* MD5.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MD5.cpp; sourceTree = "<group>"; };
CD5393C91757BAC400C07123 /* SHA1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SHA1.cpp; sourceTree = "<group>"; };
@@ -2439,7 +2437,6 @@
07EDEFAC1EB9400C00D43292 /* UserMediaDisabled.mm */,
07F4E92D20AF58D3002E3803 /* UserMediaSimulateFailedSandbox.mm */,
93E943F11CD3E87E00AC08C2 /* VideoControlsManager.mm */,
- CD3065DF2165682E00E895DF /* VideoQualityDisplayCompositing.mm */,
6356FB211EC4E0BA0044BF18 /* VisibleContentRect.mm */,
83779C371F82FEB0007CDA8A /* VisitedLinkStore.mm */,
830F2E0B209A6A7400D36FF1 /* WebContentProcessDidTerminate.mm */,
@@ -4046,7 +4043,6 @@
7CCE7F181A411AE600447C4C /* UserMessage.cpp in Sources */,
7C83E03A1D0A602700FEBCF3 /* UtilitiesCocoa.mm in Sources */,
7C83E0C61D0A654E00FEBCF3 /* VideoControlsManager.mm in Sources */,
- CD3065E02165682E00E895DF /* VideoQualityDisplayCompositing.mm in Sources */,
115EB3431EE0BA03003C2C0A /* ViewportSizeForViewportUnits.mm in Sources */,
6356FB221EC4E0BA0044BF18 /* VisibleContentRect.mm in Sources */,
83779C381F82FECE007CDA8A /* VisitedLinkStore.mm in Sources */,
Deleted: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm (236873 => 236874)
--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm 2018-10-05 15:06:22 UTC (rev 236873)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm 2018-10-05 15:58:40 UTC (rev 236874)
@@ -1,61 +0,0 @@
-/*
- * 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.
- */
-
-#include "config.h"
-
-#import "Test.h"
-#import "TestWKWebView.h"
-#import <WebKit/WKPreferencesPrivate.h>
-#import <wtf/RetainPtr.h>
-
-#if WK_API_ENABLED
-
-namespace TestWebKitAPI {
-
-TEST(VideoQualityDisplayCompositing, Enabled)
-{
- auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
- configuration.get().preferences._videoQualityIncludesDisplayCompositingEnabled = YES;
- auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configuration.get()]);
- [webView synchronouslyLoadHTMLString:@"<video>"];
- id result = [webView objectByEvaluatingJavaScript:@"document.querySelector('video').getVideoPlaybackQuality().displayCompositedVideoFrames"];
- EXPECT_NOT_NULL(result);
- EXPECT_TRUE([result isKindOfClass:[NSNumber class]]);
- EXPECT_EQ(0, [result intValue]);
-}
-
-TEST(VideoQualityDisplayCompositing, Disabled)
-{
- auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
- configuration.get().preferences._videoQualityIncludesDisplayCompositingEnabled = NO;
- auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configuration.get()]);
- [webView synchronouslyLoadHTMLString:@"<video>"];
- auto result = [webView stringByEvaluatingJavaScript:@"typeof document.querySelector('video').getVideoPlaybackQuality().displayCompositedVideoFrames"];
- EXPECT_STREQ("undefined", result.UTF8String);
-}
-
-}
-
-#endif