IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Adam Černák:8.12.2018 21:23

Zdravím, snažím se přes WebBrowser ve WF aplikaci ovládat různé funkce na YouTubu, přes tlačítka ve Formu. Mám problém s tím, že nevím jak ovládat hlasitost videa na 2 tlačítkách... jedno pro zesílení a druhé pro zeslabení. Zatím se mi povedlo jenom docílit toho, že mohu Zastavit/spustit video, přehrát nasledující a zapnout/vypnout smyčku.

Kdyby to nebylo možné, tak jestli vůbec jde nějak ovládat celkovou hlasitost WebBrowseru nebo Aplikace. :)

 
Odpovědět
8.12.2018 21:23
Avatar
Adam Černák:9.12.2018 5:23

Tak nakonec jsem problém vyřešil díky tomuto kódu, který upravuje hlasitost celé aplikace:

        [DllImport("winmm.dll")]
        public static extern int waveOutGetVolume(IntPtr hwo, out uint dwVolume);

        [DllImport("winmm.dll")]
        public static extern int waveOutSetVolume(IntPtr hwo, uint dwVolume);



private void Form1_Load(object sender, EventArgs e)
        {
            // By the default set the volume to 0
            uint CurrVol = 0;
            // At this point, CurrVol gets assigned the volume
            waveOutGetVolume(IntPtr.Zero, out CurrVol);
            // Calculate the volume
            ushort CalcVol = (ushort)(CurrVol & 0x0000ffff);
            // Get the volume on a scale of 1 to 10 (to fit the trackbar)
            trackBar1.Value = CalcVol / (ushort.MaxValue / 10);
        }

private void trackBar1_Scroll(object sender, EventArgs e)
        {

            // Calculate the volume that's being set
            int NewVolume = ((ushort.MaxValue / 10) * trackBar1.Value);
            // Set the same volume for both the left and the right channels
            uint NewVolumeAllChannels = (((uint)NewVolume & 0x0000ffff) | ((uint)NewVolume << 16));
            // Set the volume
            waveOutSetVolume(IntPtr.Zero, NewVolumeAllChannels);

        }

Ale i tak nadále nevím, jak regulovat hlasitost zvuku přímo na YouTubu, třeba bych to do budoucna někdy využil. :-D

 
Nahoru Odpovědět
9.12.2018 5:23
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.