Fix font_id_map errors when importing DCP subtitles that have no
[dcpomatic.git] / src / lib / audio_merger.h
index d5a6ec43ad80ecd233049a971b813f8295785e33..0201fcd4bfd433b57d82ba741e9d699bc6e6faf9 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013-2017 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2021 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
+
 /** @file  src/audio_merger.h
  *  @brief AudioMerger class.
  */
 
+
 #include "audio_buffers.h"
 #include "dcpomatic_time.h"
 #include "util.h"
 
+
 /** @class AudioMerger.
  *  @brief A class that can merge audio data from many sources.
  */
@@ -33,8 +36,8 @@ class AudioMerger
 public:
        explicit AudioMerger (int frame_rate);
 
-       std::list<std::pair<boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> > pull (dcpomatic::DCPTime time);
-       void push (boost::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time);
+       std::list<std::pair<std::shared_ptr<AudioBuffers>, dcpomatic::DCPTime>> pull (dcpomatic::DCPTime time);
+       void push (std::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time);
        void clear ();
 
 private:
@@ -49,18 +52,18 @@ private:
                 *  @param r Frame rate.
                 */
                Buffer (int c, int32_t f, dcpomatic::DCPTime t, int r)
-                       : audio (new AudioBuffers (c, f))
+                       : audio (std::make_shared<AudioBuffers>(c, f))
                        , time (t)
                        , frame_rate (r)
                {}
 
-               Buffer (boost::shared_ptr<AudioBuffers> a, dcpomatic::DCPTime t, int r)
+               Buffer (std::shared_ptr<AudioBuffers> a, dcpomatic::DCPTime t, int r)
                        : audio (a)
                        , time (t)
                        , frame_rate (r)
                {}
 
-               boost::shared_ptr<AudioBuffers> audio;
+               std::shared_ptr<AudioBuffers> audio;
                dcpomatic::DCPTime time;
                int frame_rate;
 
@@ -69,15 +72,6 @@ private:
                }
        };
 
-       class BufferComparator
-       {
-       public:
-               bool operator() (AudioMerger::Buffer const & a, AudioMerger::Buffer const & b)
-               {
-                       return a.time < b.time;
-               }
-       };
-
        std::list<Buffer> _buffers;
-       int _frame_rate;
+       int const _frame_rate;
 };