|  |  | @ -50,20 +50,20 @@ Replay::~Replay() { | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | void Replay::stop() { |  |  |  | void Replay::stop() { | 
			
		
	
		
		
			
				
					
					|  |  |  |   if (!stream_thread_ && segments_.empty()) return; |  |  |  |   exit_ = true; | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |   rInfo("shutdown: in progress..."); |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |   if (stream_thread_ != nullptr) { |  |  |  |   if (stream_thread_ != nullptr) { | 
			
		
	
		
		
			
				
					
					|  |  |  |     exit_ = true; |  |  |  |     rInfo("shutdown: in progress..."); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |     pauseStreamThread(); |  |  |  |     pauseStreamThread(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     stream_cv_.notify_one(); |  |  |  |     stream_cv_.notify_one(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     stream_thread_->quit(); |  |  |  |     stream_thread_->quit(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     stream_thread_->wait(); |  |  |  |     stream_thread_->wait(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     stream_thread_->deleteLater(); |  |  |  |     stream_thread_->deleteLater(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     stream_thread_ = nullptr; |  |  |  |     stream_thread_ = nullptr; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     rInfo("shutdown: done"); | 
			
		
	
		
		
			
				
					
					|  |  |  |   } |  |  |  |   } | 
			
		
	
		
		
			
				
					
					|  |  |  |   timeline_future.waitForFinished(); |  |  |  |   timeline_future.waitForFinished(); | 
			
		
	
		
		
			
				
					
					|  |  |  |   rInfo("shutdown: done"); |  |  |  |   camera_server_.reset(nullptr); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |   segments_.clear(); | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | bool Replay::load() { |  |  |  | bool Replay::load() { | 
			
		
	
	
		
		
			
				
					|  |  | 
 |