Diff
Modified: trunk/LayoutTests/ChangeLog (200314 => 200315)
--- trunk/LayoutTests/ChangeLog 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/ChangeLog 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1,3 +1,24 @@
+2016-05-01 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r200264 and r200266.
+ https://bugs.webkit.org/show_bug.cgi?id=157251
+
+ This change caused existing LayoutTest media/media-source
+ /media-source-stalled-holds-sleep-assertion.html to time out
+ on Mac on every run. (Requested by ryanhaddad on #webkit).
+
+ Reverted changesets:
+
+ "[Mac] AirPlay fails if target is set before AVPlayer has been
+ created"
+ https://bugs.webkit.org/show_bug.cgi?id=157147
+ http://trac.webkit.org/changeset/200264
+
+ "[Mac] AirPlay fails if target is set before AVPlayer has been
+ created"
+ https://bugs.webkit.org/show_bug.cgi?id=157147
+ http://trac.webkit.org/changeset/200266
+
2016-05-01 Youenn Fablet <[email protected]>
Sync web-platform-tests up to revision 4af8373
Deleted: trunk/LayoutTests/media/media-source/media-source-airplay-expected.txt (200314 => 200315)
--- trunk/LayoutTests/media/media-source/media-source-airplay-expected.txt 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/media/media-source/media-source-airplay-expected.txt 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1,21 +0,0 @@
-
-** create a MediaSource object, set as video.src
-RUN(source = new MediaSource())
-RUN(source.addEventListener('sourceopen', startLoad))
-RUN(video.src = ""
-
-** create a source buffer, add an init segment with 1 video track
-RUN(sourceBuffer = source.addSourceBuffer('video/mock; codecs="mock"'))
-RUN(init = makeAInit(100, [makeATrack(1, 'mock', TRACK_KIND.VIDEO)]))
-RUN(sourceBuffer.appendBuffer(init))
-
-EVENT(canplaythrough)
-
-** simulate choosing a device from the menu
-
-** change video.src to one that supports AirPlay
-EXPECTED (video.webkitCurrentPlaybackTargetIsWireless == 'true') OK
-EXPECTED (wirelessPlaybackTargetAvailability == 'available') OK
-
-END OF TEST
-
Deleted: trunk/LayoutTests/media/media-source/media-source-airplay.html (200314 => 200315)
--- trunk/LayoutTests/media/media-source/media-source-airplay.html 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/media/media-source/media-source-airplay.html 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1,93 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <title>Media engine change after selecting AirPlay targe</title>
- <script src=""
- <script src=""
- <script src=""
- <script>
-
- var sourceBuffer;
- var requestLength = 200000;
- var nextRequest = 0;
- var totalLength = 100;
- var wirelessPlaybackTargetAvailability = '';
-
- if (window.internals) {
- internals.initializeMockMediaSource();
- internals.setMockMediaPlaybackTargetPickerEnabled(true);
- internals.setMockMediaPlaybackTargetPickerState('', 'Unknown');
- }
-
- function start()
- {
- findMediaElement();
-
- consoleWrite('** create a MediaSource object, set as video.src');
- run(`source = new MediaSource()`);
- run(`source.addEventListener('sourceopen', startLoad)`);
- run(`video.src = ""
-
- video.addEventListener('webkitcurrentplaybacktargetiswirelesschanged', currentTargetChanged, true);
- video.addEventListener('webkitplaybacktargetavailabilitychanged', targetAvailabilityChanged, true);
- waitForEventOnce('canplaythrough', canplaythrough);
- }
-
- function startLoad()
- {
- consoleWrite('<br>** create a source buffer, add an init segment with 1 video track');
- run(`sourceBuffer = source.addSourceBuffer('video/mock; codecs="mock"')`);
- sourceBuffer.addEventListener('update', sourceUpdated);
- nextRequest = 0;
-
- run(`init = makeAInit(100, [makeATrack(1, 'mock', TRACK_KIND.VIDEO)])`);
- run(`sourceBuffer.appendBuffer(init)`);
- consoleWrite('');
- }
-
- function sourceUpdated()
- {
- if (nextRequest >= totalLength)
- return;
-
- sourceBuffer.appendBuffer(makeASample(nextRequest, nextRequest, 1, 1, SAMPLE_FLAG.SYNC));
- ++nextRequest;
- }
-
- function canplaythrough()
- {
- consoleWrite('<br>** simulate choosing a device from the menu');
- runWithKeyDown(function() {
- if (window.internals) {
- internals.setMockMediaPlaybackTargetPickerEnabled(true);
- internals.setMockMediaPlaybackTargetPickerState('Sleepy TV', 'DeviceAvailable');
- video.webkitShowPlaybackTargetPicker();
- }
- });
- }
-
- function currentTargetChanged()
- {
- if (video.src.indexOf("/test.") > 0) {
- testExpected('video.webkitCurrentPlaybackTargetIsWireless', true);
- testExpected('wirelessPlaybackTargetAvailability', 'available');
- consoleWrite('');
- endTest();
- return;
- }
-
- consoleWrite('<br>** change video.src to one that supports AirPlay');
- video.src = "" '../content/test')
- }
-
- function targetAvailabilityChanged(event)
- {
- wirelessPlaybackTargetAvailability = event.availability;
- }
-
- </script>
-</head>
-<body _onload_="start()">
- <video controls></video>
-</body>
-</html>
Modified: trunk/LayoutTests/platform/efl/TestExpectations (200314 => 200315)
--- trunk/LayoutTests/platform/efl/TestExpectations 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/platform/efl/TestExpectations 2016-05-02 00:32:56 UTC (rev 200315)
@@ -2627,9 +2627,6 @@
webkit.org/b/156024 svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml [ Failure ]
webkit.org/b/156024 svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml [ Failure ]
-# WIRELESS_PLAYBACK_TARGET not enabled.
-media/media-source/media-source-airplay.html [ Skip ]
-
# Media tests have been failing since we bumped gstreamer ver.
webkit.org/b/156969 media/media-source/media-source-canplaythrough.html [ Timeout ]
webkit.org/b/156969 media/media-source/media-source-end-of-stream-buffered.html [ Timeout ]
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (200314 => 200315)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1865,9 +1865,6 @@
webkit.org/b/123097 media/track/track-user-preferences.html [ Skip ]
webkit.org/b/121995 media/video-controls-captions-trackmenu-includes-enabled-track.html [ Failure ]
-# WIRELESS_PLAYBACK_TARGET not enabled.
-media/media-source/media-source-airplay.html [ Skip ]
-
Bug(GTK) http/tests/media/video-play-stall-seek.html [ Skip ]
Bug(GTK) http/tests/misc/acid3.html [ Failure ]
Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (200314 => 200315)
--- trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-05-02 00:32:56 UTC (rev 200315)
@@ -3004,9 +3004,6 @@
fast/forms/listbox-respects-padding-bottom.html [ Failure ]
fast/forms/listbox-top-padding-do-not-clip-items.html [ Failure ]
-# MSE not enabled.
-media/media-source/media-source-airplay.html [ Skip ]
-
# No focusring on iOS.
fast/images/image-map-outline-in-positioned-container.html [ Pass ImageOnlyFailure ]
fast/images/image-map-outline-with-paint-root-offset.html [ Pass ImageOnlyFailure ]
Modified: trunk/LayoutTests/platform/mac/TestExpectations (200314 => 200315)
--- trunk/LayoutTests/platform/mac/TestExpectations 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1287,7 +1287,6 @@
# WIRELESS_PLAYBACK_TARGET not enabled on Yosemite.
[ Yosemite ] media/airplay-target-availability.html
[ Yosemite ] media/controls/airplay-picker.html
-[ Yosemite ] media/media-source/media-source-airplay.html
webkit.org/b/153086 sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.3_encodeURI/S15.1.3.3_A2.4_T2.html [ Pass Crash ]
Modified: trunk/LayoutTests/platform/win/TestExpectations (200314 => 200315)
--- trunk/LayoutTests/platform/win/TestExpectations 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/LayoutTests/platform/win/TestExpectations 2016-05-02 00:32:56 UTC (rev 200315)
@@ -3337,7 +3337,6 @@
# WIRELESS_PLAYBACK_TARGET not enabled.
media/airplay-target-availability.html
-media/media-source/media-source-airplay.html
webkit.org/b/152411 http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-always.html [ Failure ]
webkit.org/b/152411 http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-default.html [ Failure ]
Modified: trunk/Source/WebCore/ChangeLog (200314 => 200315)
--- trunk/Source/WebCore/ChangeLog 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/ChangeLog 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1,3 +1,24 @@
+2016-05-01 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r200264 and r200266.
+ https://bugs.webkit.org/show_bug.cgi?id=157251
+
+ This change caused existing LayoutTest media/media-source
+ /media-source-stalled-holds-sleep-assertion.html to time out
+ on Mac on every run. (Requested by ryanhaddad on #webkit).
+
+ Reverted changesets:
+
+ "[Mac] AirPlay fails if target is set before AVPlayer has been
+ created"
+ https://bugs.webkit.org/show_bug.cgi?id=157147
+ http://trac.webkit.org/changeset/200264
+
+ "[Mac] AirPlay fails if target is set before AVPlayer has been
+ created"
+ https://bugs.webkit.org/show_bug.cgi?id=157147
+ http://trac.webkit.org/changeset/200266
+
2016-05-01 Chris Dumez <[email protected]>
Drop CanUseWTFOptionalForParameter() from bindings generator
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (200314 => 200315)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2016-05-02 00:32:56 UTC (rev 200315)
@@ -1036,11 +1036,8 @@
#endif
#if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
- if (m_shouldPlayToPlaybackTarget) {
- // Clear m_shouldPlayToPlaybackTarget so doesn't return without doing anything.
- m_shouldPlayToPlaybackTarget = false;
+ if (m_shouldPlayToPlaybackTarget)
setShouldPlayToPlaybackTarget(true);
- }
#endif
if (player()->client().mediaPlayerIsVideo())
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm (200314 => 200315)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm 2016-05-02 00:32:56 UTC (rev 200315)
@@ -35,7 +35,6 @@
#import "MediaSourcePrivateAVFObjC.h"
#import "MediaSourcePrivateClient.h"
#import "MediaTimeAVFoundation.h"
-#import "MockMediaPlayerMediaSource.h"
#import "PlatformClockCM.h"
#import "WebCoreSystemInterface.h"
#import <AVFoundation/AVAsset.h>
@@ -211,9 +210,6 @@
bool MediaPlayerPrivateMediaSourceAVFObjC::isAvailable()
{
- if (MockMediaPlayerMediaSource::isRegistered())
- return false;
-
return AVFoundationLibrary()
&& isCoreMediaFrameworkAvailable()
&& getAVStreamDataParserClass()
@@ -245,9 +241,6 @@
MediaPlayer::SupportsType MediaPlayerPrivateMediaSourceAVFObjC::supportsType(const MediaEngineSupportParameters& parameters)
{
- if (!isAvailable())
- return MediaPlayer::IsNotSupported;
-
// This engine does not support non-media-source sources.
if (!parameters.isMediaSource)
return MediaPlayer::IsNotSupported;
@@ -282,11 +275,6 @@
{
UNUSED_PARAM(url);
- if (!isAvailable()) {
- setNetworkState(MediaPlayer::FormatError);
- return;
- }
-
m_mediaSourcePrivate = MediaSourcePrivateAVFObjC::create(this, client);
}
@@ -870,7 +858,10 @@
bool MediaPlayerPrivateMediaSourceAVFObjC::isCurrentPlaybackTargetWireless() const
{
- return m_playbackTarget && m_shouldPlayToTarget && m_playbackTarget->hasActiveRoute();
+ if (!m_playbackTarget)
+ return false;
+
+ return m_shouldPlayToTarget && m_playbackTarget->hasActiveRoute();
}
#endif
Modified: trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp (200314 => 200315)
--- trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp 2016-05-02 00:32:56 UTC (rev 200315)
@@ -39,20 +39,8 @@
namespace WebCore {
// MediaPlayer Enigne Support
-static bool& registered()
-{
- static bool isRegistered = false;
- return isRegistered;
-}
-
-bool MockMediaPlayerMediaSource::isRegistered()
-{
- return registered();
-}
-
void MockMediaPlayerMediaSource::registerMediaEngine(MediaEngineRegistrar registrar)
{
- registered() = true;
registrar([](MediaPlayer* player) { return std::make_unique<MockMediaPlayerMediaSource>(player); }, getSupportedTypes,
supportsType, 0, 0, 0, 0);
}
@@ -305,28 +293,6 @@
return m_mediaSourcePrivate ? m_mediaSourcePrivate->totalFrameDelay() : MediaTime::zeroTime();
}
-#if ENABLE(WIRELESS_PLAYBACK_TARGET)
-void MockMediaPlayerMediaSource::setWirelessPlaybackTarget(Ref<MediaPlaybackTarget>&& target)
-{
- m_playbackTarget = WTFMove(target);
}
-void MockMediaPlayerMediaSource::setShouldPlayToPlaybackTarget(bool shouldPlayToTarget)
-{
- if (shouldPlayToTarget == m_shouldPlayToTarget)
- return;
-
- m_shouldPlayToTarget = shouldPlayToTarget;
-
- if (m_player)
- m_player->currentPlaybackTargetIsWirelessChanged();
-}
-
-bool MockMediaPlayerMediaSource::isCurrentPlaybackTargetWireless() const
-{
- return m_playbackTarget && m_shouldPlayToTarget && m_playbackTarget->hasActiveRoute();
-}
#endif
-}
-
-#endif
Modified: trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h (200314 => 200315)
--- trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h 2016-05-02 00:32:56 UTC (rev 200315)
@@ -44,7 +44,6 @@
WEBCORE_EXPORT static void registerMediaEngine(MediaEngineRegistrar);
static void getSupportedTypes(HashSet<String, ASCIICaseInsensitiveHash>& types);
static MediaPlayer::SupportsType supportsType(const MediaEngineSupportParameters&);
- static bool isRegistered();
virtual ~MockMediaPlayerMediaSource();
@@ -87,13 +86,6 @@
unsigned long corruptedVideoFrames() override;
MediaTime totalFrameDelay() override;
-#if ENABLE(WIRELESS_PLAYBACK_TARGET)
- bool isCurrentPlaybackTargetWireless() const override;
- void setWirelessPlaybackTarget(Ref<MediaPlaybackTarget>&&) override;
- void setShouldPlayToPlaybackTarget(bool) override;
- bool wirelessVideoPlaybackDisabled() const override { return false; }
-#endif
-
MediaPlayer* m_player;
RefPtr<MockMediaSourcePrivate> m_mediaSourcePrivate;
@@ -101,10 +93,6 @@
MediaTime m_duration;
MediaPlayer::ReadyState m_readyState;
MediaPlayer::NetworkState m_networkState;
-#if ENABLE(WIRELESS_PLAYBACK_TARGET)
- RefPtr<MediaPlaybackTarget> m_playbackTarget;
- bool m_shouldPlayToTarget { false };
-#endif
bool m_playing;
bool m_seekCompleted;
};
Modified: trunk/Source/WebCore/testing/Internals.cpp (200314 => 200315)
--- trunk/Source/WebCore/testing/Internals.cpp 2016-05-02 00:21:50 UTC (rev 200314)
+++ trunk/Source/WebCore/testing/Internals.cpp 2016-05-02 00:32:56 UTC (rev 200315)
@@ -2745,6 +2745,9 @@
void Internals::initializeMockMediaSource()
{
+#if USE(AVFOUNDATION)
+ WebCore::Settings::setAVFoundationEnabled(false);
+#endif
MediaPlayerFactorySupport::callRegisterMediaEngine(MockMediaPlayerMediaSource::registerMediaEngine);
}