]> git.sesse.net Git - nageru/commitdiff
Add some asserts to track down pts/dts problems before we get crashes back from FFmpe...
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 12 Apr 2023 22:46:54 +0000 (00:46 +0200)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 12 Apr 2023 22:46:54 +0000 (00:46 +0200)
nageru/quicksync_encoder.cpp
shared/mux.cpp

index 3e53cf38c9ce6b0d675f8424bbdde0cb78349e61..75b13b899a0cee05e109ef5b53764f82ebeb767b 100644 (file)
@@ -1349,6 +1349,7 @@ void QuickSyncEncoderImpl::save_codeddata(GLSurface *surf, storage_task task)
 // this is weird. but it seems to put a new frame onto the queue
 void QuickSyncEncoderImpl::storage_task_enqueue(storage_task task)
 {
+       assert(task.pts >= task.dts);
        lock_guard<mutex> lock(storage_task_queue_mutex);
        storage_task_queue.push(move(task));
        storage_task_queue_changed.notify_all();
index 2130752b4c98f0e8bfa5f94c228bc7a947ff215c..921605574d0a496841bc42215c4573b24faf3170 100644 (file)
@@ -164,6 +164,8 @@ Mux::~Mux()
 
 void Mux::add_packet(const AVPacket &pkt, int64_t pts, int64_t dts, AVRational timebase, int stream_index_override)
 {
+       assert(pts >= dts);
+
        AVPacket pkt_copy;
        av_init_packet(&pkt_copy);
        if (av_packet_ref(&pkt_copy, &pkt) < 0) {