Skip to content

Commit d8abfa6

Browse files
committed
Example - AudioHandler now extends CefSharp.Handler.AudioHandler
Fixes compile error as IAudioHandler now implements IDisposable
1 parent a6ff42e commit d8abfa6

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

CefSharp.Example/Handlers/AudioHandler.cs

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,40 +8,45 @@
88

99
namespace CefSharp.Example.Handlers
1010
{
11-
public class AudioHandler : IAudioHandler
11+
public class AudioHandler : Handler.AudioHandler
1212
{
1313
private ChannelLayout channelLayout;
1414
private int channelCount;
1515
private int sampleRate;
1616

17-
bool IAudioHandler.GetAudioParameters(IWebBrowser chromiumWebBrowser, IBrowser browser, ref AudioParameters parameters)
17+
protected override bool GetAudioParameters(IWebBrowser chromiumWebBrowser, IBrowser browser, ref AudioParameters parameters)
1818
{
1919
//Cancel Capture
2020
return false;
2121
}
22-
23-
void IAudioHandler.OnAudioStreamError(IWebBrowser chromiumWebBrowser, IBrowser browser, string errorMessage)
22+
protected override void OnAudioStreamError(IWebBrowser chromiumWebBrowser, IBrowser browser, string errorMessage)
2423
{
24+
base.OnAudioStreamError(chromiumWebBrowser, browser, errorMessage);
25+
}
2526

27+
protected override void OnAudioStreamStarted(IWebBrowser chromiumWebBrowser, IBrowser browser, AudioParameters parameters, int channels)
28+
{
29+
this.channelLayout = parameters.ChannelLayout;
30+
this.sampleRate = parameters.SampleRate;
31+
this.channelCount = channels;
2632
}
2733

28-
void IAudioHandler.OnAudioStreamPacket(IWebBrowser chromiumWebBrowser, IBrowser browser, IntPtr data, int noOfFrames, long pts)
34+
protected override void OnAudioStreamPacket(IWebBrowser chromiumWebBrowser, IBrowser browser, IntPtr data, int noOfFrames, long pts)
2935
{
3036
//NOTE: data is an array representing the raw PCM data as a floating point type, i.e. 4-byte value(s)
3137
//Based on and the channelLayout value passed to IAudioHandler.OnAudioStreamStarted
3238
//you can calculate the size of the data array in bytes.
39+
//See https://github.com/cefsharp/CefSharp/issues/2806 for discussion on implementing an example.
3340
}
3441

35-
void IAudioHandler.OnAudioStreamStarted(IWebBrowser chromiumWebBrowser, IBrowser browser, AudioParameters parameters, int channels)
42+
protected override void OnAudioStreamStopped(IWebBrowser chromiumWebBrowser, IBrowser browser)
3643
{
37-
this.channelLayout = parameters.ChannelLayout;
38-
this.sampleRate = parameters.SampleRate;
39-
this.channelCount = channels;
44+
base.OnAudioStreamStopped(chromiumWebBrowser, browser);
4045
}
4146

42-
void IAudioHandler.OnAudioStreamStopped(IWebBrowser chromiumWebBrowser, IBrowser browser)
47+
protected override void Dispose(bool disposing)
4348
{
44-
49+
base.Dispose(disposing);
4550
}
4651
}
4752
}

0 commit comments

Comments
 (0)