質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Microsoft Edge

Microsoft Edgeは、マイクロソフト社が開発する新しいWebブラウザです。Windows 10から標準搭載されており、Internet Explorerとは違うレンダリングエンジンが採用されています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

Q&A

解決済

1回答

2265閲覧

C#のWebView2で動画の自動再生を行いたい

crytus

総合スコア11

Microsoft Edge

Microsoft Edgeは、マイクロソフト社が開発する新しいWebブラウザです。Windows 10から標準搭載されており、Internet Explorerとは違うレンダリングエンジンが採用されています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

0グッド

0クリップ

投稿2023/04/23 04:27

実現したいこと

VisualStudio2022のC#で、Microsoft.Web.Webview2を使用して、指定したサイトの動画を自動再生したい。

発生している問題・エラーメッセージ

次のようなURLを指定した場合、ページは開くが、再生が始まらない。

引用テキスト

https://www.youtube.com/embed/xxCzQ4ampo4?autoplay=1

該当のソースコード

WPF,C#

1 <Grid> 2 <wv2:WebView2 x:Name="webView" Source=""/> 3 </Grid> 45 webView.Source = new Uri(url);

試したこと

Edgeブラウザでは、設定→Cookieとサイトのアクセス許可→メディアの自動再生を許可にしておくと、自動で再生が始まります。
WebView2で、同様の設定がないか探しましたが、見つかりませんでした。

補足情報(FW/ツールのバージョンなど)

VisualStdudio2022
WebView2 1.0.1722.45

WebView2で自動再生を許可する方法があるか、ご存じの方がいらっしゃいましたら教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

次のようなURLを指定した場合、ページは開くが、再生が始まらない。

ミュートでよければ、&mute=1を付け足すだけです。

音も出したい場合は、オプション指定が必要です。
c# - How to enable Media AutoPlay in Microsoft WebView2? - Stack Overflow

Autoplay policy in Chrome - Chrome Developers

cs

1using System; 2using System.Windows; 3using Microsoft.Web.WebView2.Core; 4 5namespace Q36p602ekm7bnlt; 6 7 8public partial class MainWindow : Window 9{ 10 public MainWindow() 11 { 12 InitializeComponent(); 13 14 // ミュートでよければこれだけ 15 //webView.Source = new Uri("https://www.youtube.com/embed/1s47pOpL4_s?autoplay=1&mute=1"); 16 17 // 音も出したい場合はオプション指定 18 InitializeAsync(); 19 } 20 21 async void InitializeAsync() 22 { 23 var options = new CoreWebView2EnvironmentOptions("--autoplay-policy=no-user-gesture-required"); 24 var environment = await CoreWebView2Environment.CreateAsync(null, null, options); 25 await webView.EnsureCoreWebView2Async(environment); 26 27 webView.Source = new Uri("https://www.youtube.com/embed/1s47pOpL4_s?autoplay=1"); 28 } 29}

CoreWebView2Environment.CreateAsync Method (Microsoft.Web.WebView2.Core) | Microsoft Learn

CoreWebView2Environment Class (Microsoft.Web.WebView2.Core) | Microsoft Learn

WebView2.EnsureCoreWebView2Async Method (Microsoft.Web.WebView2.Wpf) | Microsoft Learn


WebView creation fails if the specified options does not match the options of the WebViews that are currently running in the shared browser process.
指定されたオプションが、共有ブラウザ プロセスで現在実行されている WebView のオプションと一致しない場合、WebView の作成は失敗します。

これに当たる可能性がある場合は、ちょっと厄介かもしれません。

投稿2023/04/23 07:06

TN8001

総合スコア10004

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問