@@ -741,14 +741,8 @@ void WAVSource::release_audio_capture()
741741
742742 // reset circular buffers
743743 for (auto & i : m_capturebufs)
744- {
745- i.end_pos = 0 ;
746- i.start_pos = 0 ;
747- i.size = 0 ;
748- }
749- m_rms_sync_buf.end_pos = 0 ;
750- m_rms_sync_buf.start_pos = 0 ;
751- m_rms_sync_buf.size = 0 ;
744+ i.reset ();
745+ m_rms_sync_buf.reset ();
752746
753747 m_capture_ts = 0 ;
754748 m_audio_ts = 0 ;
@@ -818,21 +812,21 @@ bool WAVSource::sync_rms_buffer()
818812 const int64_t dtaudio = get_audio_sync (m_tick_ts);
819813 const size_t dtsize = (dtaudio > 0 ) ? size_t (ns_to_audio_frames (m_audio_info.samples_per_sec , (uint64_t )dtaudio)) * sizeof (float ) : 0 ;
820814
821- if (m_rms_sync_buf.size <= dtsize)
815+ if (m_rms_sync_buf.size () <= dtsize)
822816 return false ;
823817
824- while (m_rms_sync_buf.size > dtsize)
818+ while (m_rms_sync_buf.size () > dtsize)
825819 {
826- auto consume = m_rms_sync_buf.size - dtsize;
820+ auto consume = m_rms_sync_buf.size () - dtsize;
827821 auto max = (m_input_rms_size - m_input_rms_pos) * sizeof (float );
828822 if (consume >= max)
829823 {
830- circlebuf_pop_front (& m_rms_sync_buf, &m_input_rms_buf[m_input_rms_pos], max);
824+ m_rms_sync_buf. pop_front ( &m_input_rms_buf[m_input_rms_pos], max);
831825 m_input_rms_pos = 0 ;
832826 }
833827 else
834828 {
835- circlebuf_pop_front (& m_rms_sync_buf, &m_input_rms_buf[m_input_rms_pos], consume);
829+ m_rms_sync_buf. pop_front ( &m_input_rms_buf[m_input_rms_pos], consume);
836830 m_input_rms_pos += consume / sizeof (float );
837831 }
838832 }
@@ -941,9 +935,6 @@ void WAVSource::init_steps()
941935WAVSource::WAVSource (obs_source_t *source)
942936{
943937 m_source = source;
944- for (auto & i : m_capturebufs)
945- circlebuf_init (&i);
946- circlebuf_init (&m_rms_sync_buf);
947938
948939 obs_enter_graphics ();
949940
@@ -964,10 +955,6 @@ WAVSource::~WAVSource()
964955
965956 release_audio_capture ();
966957 free_bufs ();
967-
968- for (auto & i : m_capturebufs)
969- circlebuf_free (&i);
970- circlebuf_free (&m_rms_sync_buf);
971958}
972959
973960unsigned int WAVSource::width ()
@@ -1015,7 +1002,7 @@ void WAVSource::create_vbuf() {
10151002 num_verts += m_cap_tris * ((m_channel_spacing > 0 ) ? 12 : 6 ) * m_num_bars; // 2 caps per bar (middle omitted when 0 spacing)
10161003 }
10171004
1018- constexpr auto signbit = (size_t )1 << ((sizeof (num_verts) * 8 ) - 1 );
1005+ [[maybe_unused]] constexpr auto signbit = (size_t )1 << ((sizeof (num_verts) * 8 ) - 1 );
10191006 assert (num_verts > 0 );
10201007 assert ((num_verts & signbit) == 0 ); // if MSB is set something has gone very wrong
10211008 assert ((num_verts * sizeof (vec3)) < (1u << 30 )); // abnormally large allocation
@@ -1257,7 +1244,7 @@ void WAVSource::update(obs_data_t *settings)
12571244 {
12581245 // fill input buffers with silent audio to avoid startup lag e.g. when changing settings
12591246 for (auto i = 0u ; i < m_capture_channels; ++i)
1260- circlebuf_push_back_zero (& m_capturebufs[i], m_fft_size * sizeof (float ));
1247+ m_capturebufs[i]. push_back_zero ( m_fft_size * sizeof (float ));
12611248 }
12621249
12631250 // precomupte interpolated indices
@@ -1873,14 +1860,14 @@ void WAVSource::capture_audio([[maybe_unused]] obs_source_t *source, const audio
18731860 }
18741861 m_rms_temp_buf[i] = val * val;
18751862 }
1876- circlebuf_push_back (& m_rms_sync_buf, m_rms_temp_buf.get (), count * sizeof (float ));
1863+ m_rms_sync_buf. push_back ( m_rms_temp_buf.get (), count * sizeof (float ));
18771864 frames -= count;
18781865 }
18791866
18801867 const size_t max_rms_size = (dtsamples * sizeof (float )) + (m_input_rms_size * sizeof (float ));
1881- auto total = m_rms_sync_buf.size ;
1868+ auto total = m_rms_sync_buf.size () ;
18821869 if (total > max_rms_size)
1883- circlebuf_pop_front (& m_rms_sync_buf, nullptr , total - max_rms_size);
1870+ m_rms_sync_buf. pop_front ( nullptr , total - max_rms_size);
18841871 }
18851872
18861873 auto sz = size_t (audio->frames * sizeof (float ));
@@ -1889,14 +1876,14 @@ void WAVSource::capture_audio([[maybe_unused]] obs_source_t *source, const audio
18891876 auto j = i - m_channel_base;
18901877 assert ((j == 0 ) || (j == 1 ));
18911878 if ((muted && !m_ignore_mute) || (audio->data [i] == nullptr ))
1892- circlebuf_push_back_zero (& m_capturebufs[j], sz);
1879+ m_capturebufs[j]. push_back_zero ( sz);
18931880 else
1894- circlebuf_push_back (& m_capturebufs[j], audio->data [i], sz);
1881+ m_capturebufs[j]. push_back ( audio->data [i], sz);
18951882
18961883 const size_t max_size = (dtsamples * sizeof (float )) + bufsz;
1897- auto total = m_capturebufs[j].size ;
1884+ auto total = m_capturebufs[j].size () ;
18981885 if (total > max_size)
1899- circlebuf_pop_front (& m_capturebufs[j], nullptr , total - max_size);
1886+ m_capturebufs[j]. pop_front ( nullptr , total - max_size);
19001887 }
19011888}
19021889
0 commit comments