]> git.sesse.net Git - nageru/blobdiff - futatabi/db.cpp
Log a warning when we kill a client that is not keeping up.
[nageru] / futatabi / db.cpp
index 6764f84ce54aad90d1e82df50c5862d243b270da..9c6748fb257ffaa439c21e0e0f510565b0fa77cc 100644 (file)
@@ -244,6 +244,11 @@ vector<DB::FrameOnDiskAndStreamIdx> DB::load_frame_file(const string &filename,
                        frame.frame.pts = stream.pts(i);
                        frame.frame.offset = stream.offset(i);
                        frame.frame.size = stream.file_size(i);
+                       if (i < stream.audio_size_size()) {
+                               frame.frame.audio_size = stream.audio_size(i);
+                       } else {
+                               frame.frame.audio_size = 0;
+                       }
                        frames.push_back(frame);
                }
        }
@@ -274,6 +279,7 @@ void DB::store_frame_file(const string &filename, size_t size, const vector<Fram
                stream->mutable_pts()->Reserve(frames.size());
                stream->mutable_offset()->Reserve(frames.size());
                stream->mutable_file_size()->Reserve(frames.size());
+               stream->mutable_audio_size()->Reserve(frames.size());
                for (const FrameOnDiskAndStreamIdx &frame : frames) {
                        if (frame.stream_idx != stream_idx) {
                                continue;
@@ -281,6 +287,7 @@ void DB::store_frame_file(const string &filename, size_t size, const vector<Fram
                        stream->add_pts(frame.frame.pts);
                        stream->add_offset(frame.frame.offset);
                        stream->add_file_size(frame.frame.size);
+                       stream->add_audio_size(frame.frame.audio_size);
                }
        }
        string serialized;