CefSharp AutoPlay Policy Enabled / C# Youtube

Katılım
27 Ocak 2012
Mesajlar
14.310
Makaleler
34
Çözümler
41
Yer
İstanbul/Üsküdar
Daha fazla  
Cinsiyet
Erkek
Meslek
Active Directory - Security Uzmanı
Profil Kapağı
1522600635
Merhaba arkadaşlar,

Cefsharp Chromium web tarayıcısı üzerinde bir Youtube linki tetiklediğiniz zaman (Komut satırı ile) otomatik olarak oynatmadan gelmekte default şartlarda.

Aşağıda ilgili tarayıcının nasıl yüklenebileceğine dair ekran görüntüsü mevcut. Buna ek olarak X86 mimari desteklemekte tarayıcı, yükledikten sonra Visual Studio'yu yeniden başlatmak gerekiyor; akabinde nesneyi ekleyebilirsiniz.

1596660314457.png


Akabinde aşağıdaki kod ile herhangi bir komut düzeyinde URL tetiklenebilir. Normal şartlarda video oynamadan, bekleme modunda ekrana düşecektir.
Bu Youtube'un bir politikası değildir. Youtube default olarak auto enable özelliğini 1 yani açık olarak sunmakta, URL'de yer almasa da bu böyle.

C#:
chromiumWebBrowser1.Load("https://youtu.be/pe0dc0Y0OUI");

Sizlerin ise bazı çözüm yöntemleri mevcut;

  1. Youtube URL'sinin sonuna "?autoplay=1&mute=1" eklemeniz. Mute1 yani mute özelliği aktif olduğunda otomatik başlatacaktır videoyu.
  2. Aşağıdaki kütüphaneleri ekledikten sonra InitializeComponent alanına aşağıdaki komut satırlarını gömmek.
Gerekli kütüphaneler
C#:
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;

İhtiyaç duyulan komut satırları, farklı bir nesne özelliği altında çalıştırmaya kalkmayın hata alırsınız veya özellik devreye girmez.
Kod:
var settings = new CefSettings();
            settings.CefCommandLineArgs["autoplay-policy"] = "no-user-gesture-required";
            Cef.Initialize(settings, true, browserProcessHandler: null);

Bu dokunuşlardan sonra çalışmaya hazır olacaktır. İhtiyaç duyma ihtimalinize karşı proje dosyalarını da yükledim. Proje dosyalarına buradan ulaşabilirsiniz.

1596660727239.png
 
Son düzenleme:
Elinize sağlık, yararlı bir konu olmuş. Bir aralar CefSharp ile ilgileniyordum fakat Chromium sürümlerini fazla geriden takip ediyor gibi geldi bana. Bu durum değişti mi?
Freelance bir proje için farklı bir tarayıcı kullanıyordum, kısa vadede problem yaşamaması ve yaşarsa da güncellemesi zahmetsiz olması açısından ilk defa kullandım; geçmişe yönelik bir bilgi birikimim yok bu sebeple :)

Yalnızca Github üzerinde oldukça yeterli miktarda kaynak mevcut. Bir fonksiyonu açmanız gerektiğinde kolayca kaynak bulabiliyorsunuz, arkası boş bırakılmamış; o sebeple yararlı oldu.

Aynı problemi yaşayıp da araştırmaya üşenen Türk gençler olursa diye paylaştım :) Yoksa internette kaynakları mevcut.
 
Merhaba arkadaşlar,

Cefsharp Chromium web tarayıcısı üzerinde bir Youtube linki tetiklediğiniz zaman (Komut satırı ile) otomatik olarak oynatmadan gelmekte default şartlarda.

Aşağıda ilgili tarayıcının nasıl yüklenebileceğine dair ekran görüntüsü mevcut. Buna ek olarak X86 mimari desteklemekte tarayıcı, yükledikten sonra Visual Studio'yu yeniden başlatmak gerekiyor; akabinde nesneyi ekleyebilirsiniz.

Eki Görüntüle 631920

Akabinde aşağıdaki kod ile herhangi bir komut düzeyinde URL tetiklenebilir. Normal şartlarda video oynamadan, bekleme modunda ekrana düşecektir.
Bu Youtube'un bir politikası değildir. Youtube default olarak auto enable özelliğini 1 yani açık olarak sunmakta, URL'de yer almasa da bu böyle.

C#:
chromiumWebBrowser1.Load("https://youtu.be/pe0dc0Y0OUI");

Sizlerin ise bazı çözüm yöntemleri mevcut;

  1. Youtube URL'sinin sonuna "?autoplay=1&mute=1" eklemeniz. Mute1 yani mute özelliği aktif olduğunda otomatik başlatacaktır videoyu.
  2. Aşağıdaki kütüphaneleri ekledikten sonra InitializeComponent alanına aşağıdaki komut satırlarını gömmek.
Gerekli kütüphaneler
C#:
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;

İhtiyaç duyulan komut satırları, farklı bir nesne özelliği altında çalıştırmaya kalkmayın hata alırsınız veya özellik devreye girmez.
Kod:
var settings = new CefSettings();
            settings.CefCommandLineArgs["autoplay-policy"] = "no-user-gesture-required";
            Cef.Initialize(settings, true, browserProcessHandler: null);

Bu dokunuşlardan sonra çalışmaya hazır olacaktır. İhtiyaç duyma ihtimalinize karşı proje dosyalarını da yükledim. Proje dosyalarına buradan ulaşabilirsiniz.

Eki Görüntüle 631924
Seninle nasıl irtibata geçebilirim. Ekran kartı sürücüsü yüklü iken tv’ye bağlıyorum görüntü geliyor. Monitöre bağlıyorum görüntü gelmiyor. (Sürücü yüklü değilken geliyor) neyle alakalı olabilir acaba
 
Seninle nasıl irtibata geçebilirim. Ekran kartı sürücüsü yüklü iken tv’ye bağlıyorum görüntü geliyor. Monitöre bağlıyorum görüntü gelmiyor. (Sürücü yüklü değilken geliyor) neyle alakalı olabilir acaba
Yeni bir konu açıp o şekilde danışabilirsin. Monitörün ile alakalı bir problem olabilir farklı bir port ile bağlantı sağlamayı dene.

Belki kullandığın kablo çok düşük çözünürlükte veri aktarımına yetecek oranda bant genişliği sunuyordur, sürücü sonrası çözünürlük yükseliyorsa o sebeple de problem yaşıyor olabilirsin.

Farklı kablo veya monitör tarafında farklı port ile bağlantı kurmayı dene.
 
2-3 konu açtım fakat yardımcı olabilecek kimse çıkmadı. Senin söylediklerini deneyeceğim fakat monitörün 1 adet DisplayPort girişi var diğer girişlerde ekran kartına uymuyor. Kablo ile bağlantılı olup olmadığını diğer tvye bağladığımda Hdmı ile onada görüntü gelmemişti. Şuan görüntü aldığım kablo ile o masaüstü gelmeyen tvye bağlantı deneyeceğim bakalım kabloyla alakalı birşey mi
 

Geri
Yukarı