Ignore spatial index.

This workaround allows to decode VP9 SVC streams with partially enabled
inter-layer prediction.

This change won't affect conventional SVC (inter-layer prediction is
enabled for all frames) since spatial index was always zero in this
case.

Bug: webrtc:9249
Change-Id: If6ff26a18b7cf543ec9e7f70b9239e9edff250b5
Reviewed-on: https://webrtc-review.googlesource.com/74924
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23177}
This commit is contained in:
Sergey Silkin 2018-05-08 17:16:39 +02:00 committed by Commit Bot
parent 1729711a70
commit acb4cba5b1

View File

@ -354,6 +354,10 @@ void VideoReceiveStream::RequestKeyFrame() {
void VideoReceiveStream::OnCompleteFrame(
std::unique_ptr<video_coding::EncodedFrame> frame) {
// TODO(webrtc:9249): Workaround to allow decoding of VP9 SVC stream with
// partially enabled inter-layer prediction.
frame->id.spatial_layer = 0;
int64_t last_continuous_pid = frame_buffer_->InsertFrame(std::move(frame));
if (last_continuous_pid != -1)
rtp_video_stream_receiver_.FrameContinuous(last_continuous_pid);