diff options
Diffstat (limited to 'Swiften/ScreenSharing/VP8Decoder.cpp')
| -rw-r--r-- | Swiften/ScreenSharing/VP8Decoder.cpp | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/Swiften/ScreenSharing/VP8Decoder.cpp b/Swiften/ScreenSharing/VP8Decoder.cpp index 40f631f..2634cc5 100644 --- a/Swiften/ScreenSharing/VP8Decoder.cpp +++ b/Swiften/ScreenSharing/VP8Decoder.cpp @@ -40,21 +40,23 @@ void VP8Decoder::updateCodecConfig()  	}  } -void VP8Decoder::decodeFrame(const std::vector<uint8_t>& frame) +void VP8Decoder::decodeFrame(const std::vector<uint8_t>& frame, int pictureID)  {  	// Decode the frame  	vpx_codec_err_t err = vpx_codec_decode(&codecContext, &frame[0], frame.size(), NULL, 0);  	if (err) {  		SWIFT_LOG(debug) << "VP8 Decoder: Failed to decode frame, " << vpx_codec_err_to_string(err) << std::endl; -		// TODO: exception ? +		onNewFrameDecoded(pictureID, false);  		return; +	} else { +		onNewFrameDecoded(pictureID, true);  	}  	vpx_codec_iter_t iter = NULL;  	vpx_image_t* img;  	while ((img = vpx_codec_get_frame(&codecContext, &iter))) {  		Image rgbImg = convertYV12toRGB(img); -		onNewImageDecoded(rgbImg); +		onNewImageAvailable(rgbImg);  	}  }  | 
 Swift