Bug 220461 - MediaStreamRecorder does not work in WKWebView-based browsers like Chrome
Summary: MediaStreamRecorder does not work in WKWebView-based browsers like Chrome
Status: RESOLVED DUPLICATE of bug 216918
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebRTC (show other bugs)
Version: Safari 14
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-01-08 06:46 PST by Urs Wolfer
Modified: 2021-01-12 12:21 PST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Urs Wolfer 2021-01-08 06:46:50 PST
While the following example works fine in Safari on iOS 14.3, it seems not to work in Chrome on the same device:
https://jsfiddle.net/vyapfckd/1/

(Pressing the start buttons works, but the download button fails to deliver the result.)
Comment 1 Ali Juma 2021-01-08 07:05:22 PST
(In reply to Urs Wolfer from comment #0)
> While the following example works fine in Safari on iOS 14.3, it seems not
> to work in Chrome on the same device:
> https://jsfiddle.net/vyapfckd/1/
> 
> (Pressing the start buttons works, but the download button fails to deliver
> the result.)

Thanks for reporting this!

The issue is that the 'download' attribute is not supported in WKWebView. Chrome can workaround this for file downloads (by detecting that we're trying to navigate to a MIME type that can't be rendered by WKWebView) but there's no way to work around this for blobs.

Bug 174076 and bug 216918 are related to this.

Bug 217747 might fix this when it makes it into a release.
Comment 2 youenn fablet 2021-01-08 07:12:59 PST
Thanks Urs for reporting and Ali for the links.
Let's continue tracking this in bug 216918.

*** This bug has been marked as a duplicate of bug 216918 ***
Comment 3 Urs Wolfer 2021-01-12 12:21:07 PST
Thank you for your feedback. I can confirm that the 'download' attribute caused the issue in this example.

In another, more complex, setup, recordrtc was in use, which also seems to fail with Chrome on iOS. Using MediaStreamRecorder directly works fine in both Chrome and Firefox on iOS 14.3.