aboutsummaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorTobias Kortkamp <tobik@FreeBSD.org>2019-08-12 17:43:35 +0000
committerTobias Kortkamp <tobik@FreeBSD.org>2019-08-12 17:43:35 +0000
commit44439e7c1dc07a05f154695e54d0786b130567a8 (patch)
tree118673d335fe74b8ee84007404b7dd46458d4742 /www
parent906923baf5a574fc334bd2d33d54d8cb94bac131 (diff)
downloadports-44439e7c1dc07a05f154695e54d0786b130567a8.tar.gz
ports-44439e7c1dc07a05f154695e54d0786b130567a8.zip
www/chromium: Sync sndio backend with OpenBSD and unbreak build after r508722
../../media/audio/openbsd/audio_manager_openbsd.cc:158:14: error: allocating an object of abstract class type 'media::SndioAudioOutputStream' return new SndioAudioOutputStream(params, this); ^ ../../media/audio/audio_io.h:117:16: note: unimplemented pure virtual method 'Flush' in 'SndioAudioOutputStream' virtual void Flush() = 0; PR: 239802 Submitted by: tobik Reported by: kib Tested by: kib Approved by: chromium (cpm) MFH: 2019Q3 (together with r508722)
Notes
Notes: svn path=/head/; revision=508754
Diffstat (limited to 'www')
-rw-r--r--www/chromium/files/sndio_output.cc8
-rw-r--r--www/chromium/files/sndio_output.h1
2 files changed, 7 insertions, 2 deletions
diff --git a/www/chromium/files/sndio_output.cc b/www/chromium/files/sndio_output.cc
index d806113e6216..fd299a845bfc 100644
--- a/www/chromium/files/sndio_output.cc
+++ b/www/chromium/files/sndio_output.cc
@@ -58,7 +58,7 @@ bool SndioAudioOutputStream::Open() {
sio_initpar(&par);
par.rate = params.sample_rate();
par.pchan = params.channels();
- par.bits = SampleFormatToBitsPerChannel(kSampleFormat);
+ par.bits = SampleFormatToBitsPerChannel(kSampleFormat);
par.bps = par.bits / 8;
par.sig = sig = par.bits != 8 ? 1 : 0;
par.le = SIO_LE_NATIVE;
@@ -139,6 +139,10 @@ void SndioAudioOutputStream::GetVolume(double* v) {
pthread_mutex_unlock(&mutex);
}
+// This stream is always used with sub second buffer sizes, where it's
+// sufficient to simply always flush upon Start().
+void SndioAudioOutputStream::Flush() {}
+
void SndioAudioOutputStream::ThreadLoop(void) {
int avail, count, result;
@@ -153,7 +157,7 @@ void SndioAudioOutputStream::ThreadLoop(void) {
// Get data to play
const base::TimeDelta delay = AudioTimestampHelper::FramesToTime(hw_delay,
- params.sample_rate());
+ params.sample_rate());
count = source->OnMoreData(delay, base::TimeTicks::Now(), 0, audio_bus.get());
audio_bus->ToInterleaved(count, SampleFormatToBytesPerChannel(kSampleFormat), buffer);
if (count == 0) {
diff --git a/www/chromium/files/sndio_output.h b/www/chromium/files/sndio_output.h
index eef460ef65b5..ead220ca96e7 100644
--- a/www/chromium/files/sndio_output.h
+++ b/www/chromium/files/sndio_output.h
@@ -31,6 +31,7 @@ class SndioAudioOutputStream : public AudioOutputStream {
void Stop() override;
void SetVolume(double volume) override;
void GetVolume(double* volume) override;
+ void Flush() override;
friend void sndio_onmove(void *arg, int delta);
friend void sndio_onvol(void *arg, unsigned int vol);