]> git.sesse.net Git - casparcg/commitdiff
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches...
authorRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 16 Aug 2011 18:30:43 +0000 (18:30 +0000)
committerRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 16 Aug 2011 18:30:43 +0000 (18:30 +0000)
modules/ffmpeg/producer/frame_muxer.cpp

index a6218f6f47a31960e1874f73be18971ef7ec3c5f..88f61b0d9e8b011e5be6f0ad00fe1c68b400c7eb 100644 (file)
@@ -219,6 +219,9 @@ struct frame_muxer::implementation : boost::noncopyable
                        video_streams_.back().push(frame);\r
                        ++video_frame_count_;\r
                }\r
+\r
+               if(video_streams_.back().size() > 32)\r
+                       BOOST_THROW_EXCEPTION(invalid_operation() << source_info("frame_muxer") << msg_info("audio-stream overflow. This can be caused by incorrect frame-rate. Check clip meta-data."));\r
        }\r
 \r
        void push(const std::shared_ptr<std::vector<int16_t>>& audio_samples)\r
@@ -234,6 +237,9 @@ struct frame_muxer::implementation : boost::noncopyable
                audio_sample_count_ += audio_samples->size();\r
 \r
                boost::range::push_back(audio_streams_.back(), *audio_samples);\r
+\r
+               if(audio_streams_.back().size() > 32*format_desc_.audio_samples_per_frame)\r
+                       BOOST_THROW_EXCEPTION(invalid_operation() << source_info("frame_muxer") << msg_info("audio-stream overflow. This can be caused by incorrect frame-rate. Check clip meta-data."));\r
        }\r
 \r
        safe_ptr<basic_frame> pop()\r