haikuwebkit/LayoutTests/media/mediacapabilities/mock-encodingInfo-expected.txt

67 lines
3.0 KiB
Plaintext
Raw Permalink Normal View History

[MediaCapabilities] Platform integration https://bugs.webkit.org/show_bug.cgi?id=187850 Reviewed by Eric Carlson. Source/WebCore: Mock platform support for the MediaCapabilities specification. Test: media/mediacapabilities/mock-decodingInfo.html media/mediacapabilities/mock-encodingInfo.html * Modules/mediacapabilities/MediaCapabilities.cpp: (WebCore::MediaCapabilities::decodingInfo): (WebCore::MediaCapabilities::encodingInfo): * Modules/mediacapabilities/MediaCapabilitiesInfo.h: (WebCore::MediaCapabilitiesInfo::create): * PlatformGTK.cmake: * PlatformMac.cmake: * PlatformWPE.cmake: * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * platform/mediacapabilities/MediaEngineConfiguration.cpp: Added. (WebCore::MediaEngineVideoConfiguration::MediaEngineVideoConfiguration): (WebCore::MediaEngineAudioConfiguration::MediaEngineAudioConfiguration): (WebCore::MediaEngineConfiguration::MediaEngineConfiguration): * platform/mediacapabilities/MediaEngineConfiguration.h: Added. (WebCore::MediaEngineVideoConfiguration::create): (WebCore::MediaEngineVideoConfiguration::contentType const): (WebCore::MediaEngineVideoConfiguration::size const): (WebCore::MediaEngineVideoConfiguration::bitrate const): (WebCore::MediaEngineVideoConfiguration::framerate const): (WebCore::MediaEngineAudioConfiguration::create): (WebCore::MediaEngineAudioConfiguration::contentType const): (WebCore::MediaEngineAudioConfiguration::channels const): (WebCore::MediaEngineAudioConfiguration::bitrate const): (WebCore::MediaEngineAudioConfiguration::samplerate const): (WebCore::MediaEngineConfiguration::audioConfiguration const): (WebCore::MediaEngineConfiguration::videoConfiguration const): * platform/mediacapabilities/MediaEngineConfigurationFactory.cpp: Added. (WebCore::mockEnabled): (WebCore::MediaEngineConfigurationFactory::createDecodingConfiguration): (WebCore::MediaEngineConfigurationFactory::createEncodingConfiguration): (WebCore::MediaEngineConfigurationFactory::enableMock): (WebCore::MediaEngineConfigurationFactory::disableMock): * platform/mediacapabilities/MediaEngineConfigurationFactory.h: Added. * platform/mediacapabilities/MediaEngineDecodingConfiguration.h: Added. (WebCore::MediaEngineDecodingConfiguration::MediaEngineDecodingConfiguration): (WebCore::MediaEngineDecodingConfiguration::canDecodeMedia): (WebCore::MediaEngineDecodingConfiguration::canSmoothlyDecodeMedia): (WebCore::MediaEngineDecodingConfiguration::canPowerEfficientlyDecodeMedia): (WebCore::MediaEngineDecodingConfiguration::decodingType const): * platform/mediacapabilities/MediaEngineEncodingConfiguration.h: Added. (WebCore::MediaEngineEncodingConfiguration::MediaEngineEncodingConfiguration): (WebCore::MediaEngineEncodingConfiguration::canEncodeMedia): (WebCore::MediaEngineEncodingConfiguration::canSmoothlyEncodeMedia): (WebCore::MediaEngineEncodingConfiguration::canPowerEfficientlyEncodeMedia): (WebCore::MediaEngineEncodingConfiguration::encodingType const): * platform/mock/MediaEngineDecodingConfigurationMock.cpp: Added. (WebCore::MediaEngineDecodingConfigurationMock::canDecodeMedia): (WebCore::MediaEngineDecodingConfigurationMock::canSmoothlyDecodeMedia): (WebCore::MediaEngineDecodingConfigurationMock::canPowerEfficientlyDecodeMedia): * platform/mock/MediaEngineDecodingConfigurationMock.h: Added. * platform/mock/MediaEngineEncodingConfigurationMock.cpp: Added. (WebCore::MediaEngineEncodingConfigurationMock::canEncodeMedia): (WebCore::MediaEngineEncodingConfigurationMock::canSmoothlyEncodeMedia): (WebCore::MediaEngineEncodingConfigurationMock::canPowerEfficientlyEncodeMedia): * platform/mock/MediaEngineEncodingConfigurationMock.h: Added. * testing/Internals.cpp: (WebCore::Internals::resetToConsistentState): (WebCore::Internals::enableMockMediaCapabilities): * testing/Internals.h: * testing/Internals.idl: LayoutTests: Mock tests for the MediaCapabilities specification. * media/mediacapabilities/mock-decodingInfo-expected.txt: Added. * media/mediacapabilities/mock-decodingInfo.html: Added. * media/mediacapabilities/mock-encodingInfo-expected.txt: Added. * media/mediacapabilities/mock-encodingInfo.html: Added. * media/video-test.js: (checkMediaCapabilitiesInfo): Canonical link: https://commits.webkit.org/203431@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@234582 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-08-05 09:26:00 +00:00
RUN(internals.enableMockMediaCapabilities())
Smooth and power efficient 720P MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', video: { contentType: 'video/mp4; codecs="avc1"', height: 720, bitrate: 1000, width: 1280, framerate: 24.5 } });)
Promise resolved OK
info.supported == true OK
info.smooth == true OK
info.powerEfficient == true OK
Not smooth (too high framerate) but power efficient 720P MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', video: { contentType: 'video/mp4; codecs="avc1"', height: 720, bitrate: 1000, width: 1280, framerate: 60.4/2 } });)
Promise resolved OK
info.supported == true OK
info.smooth == false OK
info.powerEfficient == true OK
Unsupported protocol: Record
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'record', video: { contentType: 'video/mp4; codecs="avc1"', height: 720, bitrate: 1000, width: 1280, framerate: 24 } });)
Promise resolved OK
info.supported == false OK
info.smooth == false OK
info.powerEfficient == false OK
Unsupported video resolution: 1080P
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', video: { contentType: 'video/mp4; codecs="avc1"', height: 1080, bitrate: 1000, width: 1920, framerate: 24 } });)
Promise resolved OK
info.supported == false OK
info.smooth == false OK
info.powerEfficient == false OK
Smooth and power efficient audio MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', audio: { contentType: 'audio/mp4; codecs="mp4a.40.2"', channels: '2', bitrate: 1000, samplerate: 44100 } });)
Promise resolved OK
info.supported == true OK
info.smooth == true OK
info.powerEfficient == true OK
Smooth but power inefficient audio MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', audio: { contentType: 'audio/mp4; codecs="mp4a.40.2"', channels: '2', bitrate: 2000, samplerate: 44100 } });)
Promise resolved OK
info.supported == true OK
info.smooth == true OK
info.powerEfficient == false OK
Not smooth but power efficient audio MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', audio: { contentType: 'audio/mp4; codecs="mp4a.40.2"', channels: '5.1', bitrate: 1000, samplerate: 44100 } });)
Promise resolved OK
info.supported == true OK
info.smooth == false OK
info.powerEfficient == true OK
Not smooth and power inefficient audio MP4 encoding
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', audio: { contentType: 'audio/mp4; codecs="mp4a.40.2"', channels: '5.1', bitrate: 2000, samplerate: 44100 } });)
Promise resolved OK
info.supported == true OK
info.smooth == false OK
info.powerEfficient == false OK
Unsupported audio codec: ogg vorbis
RUN(promise = navigator.mediaCapabilities.encodingInfo({ type: 'transmission', audio: { contentType: 'audio/ogg; codecs="vorbis"', channels: '2' } });)
Promise resolved OK
info.supported == false OK
info.smooth == false OK
info.powerEfficient == false OK
END OF TEST