WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
152890
[WinCairo] Support more video formats.
https://bugs.webkit.org/show_bug.cgi?id=152890
Summary
[WinCairo] Support more video formats.
peavo
Reported
2016-01-08 06:24:31 PST
Use MediaFoundation api to detect all supported video/audio formats.
Attachments
Patch
(3.18 KB, patch)
2016-01-08 06:28 PST
,
peavo
no flags
Details
Formatted Diff
Diff
Patch
(3.38 KB, patch)
2016-01-08 12:05 PST
,
peavo
achristensen
: review+
achristensen
: commit-queue-
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
peavo
Comment 1
2016-01-08 06:28:33 PST
Created
attachment 268541
[details]
Patch
Alex Christensen
Comment 2
2016-01-08 09:59:21 PST
Comment on
attachment 268541
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=268541&action=review
Functionality looks good, there are just a few optimizations and reorganizations we need to do.
> Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:124 > + static HashSet<String> cachedTypes;
Use NeverDestroyed instead of static. Also, you should probably make this in a separate function like gstreamer's mimeTypeCache(), except have it just return a reference, not a whole HashSet.
> Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:134 > + HRESULT hr = MFGetSupportedMimeTypesPtr()(&propVarMimeTypeArray);
This will crash on WindowsXP. I don't think that's a problem, because we don't support XP any more.
> Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:156 > + HashSet<String> types; > + getSupportedTypes(types);
We should't copy the whole HashSet every time we want to check if one type is supported.
> Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:158 > + for (HashSet<String>::iterator it = types.begin(); it != types.end(); ++it) {
This is what HashSet.contains is for. No need to iterate.
peavo
Comment 3
2016-01-08 10:16:35 PST
Thanks for reviewing, will update the patch :)
peavo
Comment 4
2016-01-08 12:05:12 PST
Created
attachment 268569
[details]
Patch
Alex Christensen
Comment 5
2016-01-08 12:08:53 PST
Comment on
attachment 268569
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=268569&action=review
> Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:142 > + for (int i = 0; i < mimeTypeArray.cElems; i++)
cElems is an unsigned int. Please use unsigned for i.
peavo
Comment 6
2016-01-08 13:44:39 PST
Committed
r194787
: <
http://trac.webkit.org/changeset/194787
>.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug