New issue
Advanced search Search tips

Issue 9378 link

Starred by 4 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Refactor classes representing encoded video frames

Project Member Reported by nisse@webrtc.org, Jun 8

Issue description

We should have a single class representing the information needed to send a complete encoded VideoFrame over the wire, as well as representing a received frame.

Currently, we have at least the following classes,

webrtc::EncodedFrame, webrtc::EncodedImage,
webrtc::VCMEncodedFrame, webrtc::VCMFrameBuffer,
webrtc::video_coding::EncodedFrame,
webrtc::video_coding::RtpFrameObject

There can be only one!

(Or possibly two, in case we can move RTP specific attributes to a separate subclass).
 
Project Member

Comment 1 by brandtr@webrtc.org, Jun 11

Naming suggestion: webrtc::EncodedVideoFrame. That maps nicely to our existing webrtc::VideoFrame :)
Regarding webrtc::EncodedFrame: webrtc::EncodedImage isn't an immediate substitute, because EncodedFrame includes a simulcast index, which isn't  a member of EncodedImage, but instead part of CodecSpecificInfo.

I'm all for this as long as we don't end up here: https://xkcd.com/927/

But especially the vcm structs should be fairly straight forward to replace, no?

Is there any reason why we couldn't move simulcast index out of codec specific info? It doesn't feel like a very codec-specific thing.

Project Member

Comment 4 by nisse@webrtc.org, Jun 12

I was tempted to add yet another class as the first step, but so far, I've resisted ;-)

Moving simulcast index sounds like a reasonable and small step in the right direction.
Project Member

Comment 5 by bugdroid1@chromium.org, Jun 13

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/037b37a192be45eddf8010c47a667ddfeaab03a1

commit 037b37a192be45eddf8010c47a667ddfeaab03a1
Author: Niels Möller <nisse@webrtc.org>
Date: Wed Jun 13 12:23:49 2018

Add implementation of EncodedFrame::Timestamp.

This is a preparation for inheriting the method from the base class,
and delete the corresponding redundant timestamp member.

TBR: magjed@webrtc.org
Bug: webrtc:9378
Change-Id: I27a0ec83fb20ac3da58ba32b86cf794a154deca0
Reviewed-on: https://webrtc-review.googlesource.com/83123
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23594}
[modify] https://crrev.com/037b37a192be45eddf8010c47a667ddfeaab03a1/api/video/encoded_frame.cc
[modify] https://crrev.com/037b37a192be45eddf8010c47a667ddfeaab03a1/api/video/encoded_frame.h

Project Member

Comment 6 by bugdroid1@chromium.org, Jun 19

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/7e9a619599ee6542f5cfcccf383ef8f4abd194df

commit 7e9a619599ee6542f5cfcccf383ef8f4abd194df
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Jun 19 15:10:29 2018

Add setter method EncodedFrame::SetTimestamp.

Similar to the getter method (see
https://webrtc-review.googlesource.com/83123), this is a preparation
for inheriting the method from the base class, and delete the
corresponding redundant timestamp member.

Bug: webrtc:9378
Change-Id: Idbb48e7058c94d6d4aa9a2b19e608ef08c2e35b4
Reviewed-on: https://webrtc-review.googlesource.com/83726
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23665}
[modify] https://crrev.com/7e9a619599ee6542f5cfcccf383ef8f4abd194df/api/video/encoded_frame.cc
[modify] https://crrev.com/7e9a619599ee6542f5cfcccf383ef8f4abd194df/api/video/encoded_frame.h

Project Member

Comment 7 by bugdroid1@chromium.org, Jun 26

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/f34d467b03da4f20a1d036a20966fcad43d2433f

commit f34d467b03da4f20a1d036a20966fcad43d2433f
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Jun 26 09:40:18 2018

Add Timestamp accessor methods to the EncodedImage class.

Bug: webrtc:9378
Change-Id: I59bf14f631f92f0f4e05f60d4af25641a23a53f9
Reviewed-on: https://webrtc-review.googlesource.com/82100
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23734}
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/api/video/encoded_frame.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/api/video/encoded_frame.h
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/common_video/include/video_frame.h
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/decoding_state.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/frame_buffer2.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/frame_buffer2_unittest.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/frame_object.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/frame_object.h
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/generic_decoder.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/jitter_buffer.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/jitter_buffer_unittest.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/modules/video_coding/receiver.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/test/fuzzers/frame_buffer2_fuzzer.cc
[modify] https://crrev.com/f34d467b03da4f20a1d036a20966fcad43d2433f/video/video_stream_decoder_impl.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Jun 26

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/52f53d5419a08707c530c2446bae3c55d1d45887

commit 52f53d5419a08707c530c2446bae3c55d1d45887
Author: Björn Terelius <terelius@webrtc.org>
Date: Tue Jun 26 11:52:45 2018

Revert "Add Timestamp accessor methods to the EncodedImage class."

This reverts commit f34d467b03da4f20a1d036a20966fcad43d2433f.

Reason for revert: Seems to break downstream project.

Original change's description:
> Add Timestamp accessor methods to the EncodedImage class.
> 
> Bug: webrtc:9378
> Change-Id: I59bf14f631f92f0f4e05f60d4af25641a23a53f9
> Reviewed-on: https://webrtc-review.googlesource.com/82100
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23734}

TBR=brandtr@webrtc.org,nisse@webrtc.org,stefan@webrtc.org,philipel@webrtc.org

Change-Id: I3aa0c0119426886bc583c918aae862eb7f4b6b63
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9378
Reviewed-on: https://webrtc-review.googlesource.com/85600
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23739}
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/api/video/encoded_frame.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/api/video/encoded_frame.h
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/common_video/include/video_frame.h
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/decoding_state.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/frame_buffer2.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/frame_buffer2_unittest.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/frame_object.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/frame_object.h
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/generic_decoder.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/jitter_buffer.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/jitter_buffer_unittest.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/modules/video_coding/receiver.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/test/fuzzers/frame_buffer2_fuzzer.cc
[modify] https://crrev.com/52f53d5419a08707c530c2446bae3c55d1d45887/video/video_stream_decoder_impl.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Jun 26

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/72f52a1883f39e76cd571eddc26c2f26d594e417

commit 72f52a1883f39e76cd571eddc26c2f26d594e417
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Jun 26 14:34:15 2018

Delete unused copy constructors for VCMEncodedFrame and VCMFrameBuffer.

Bug: webrtc:9378
Change-Id: I742c7e2ca11f9c12d65add2bac9d7d19e09e3f14
Reviewed-on: https://webrtc-review.googlesource.com/85367
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23744}
[modify] https://crrev.com/72f52a1883f39e76cd571eddc26c2f26d594e417/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/72f52a1883f39e76cd571eddc26c2f26d594e417/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/72f52a1883f39e76cd571eddc26c2f26d594e417/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/72f52a1883f39e76cd571eddc26c2f26d594e417/modules/video_coding/frame_buffer.h

Project Member

Comment 10 by bugdroid1@chromium.org, Jul 25

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/2455c9ed361671cc2ea41deb81cbcfbda073a6e3

commit 2455c9ed361671cc2ea41deb81cbcfbda073a6e3
Author: Niels Möller <nisse@webrtc.org>
Date: Wed Jul 25 09:32:21 2018

Add spatial index to EncodedImage, not yet used.

This is a preparation for landing cl
https://webrtc-review.googlesource.com/c/src/+/83161, which needs to
be done in multiple steps:

1. Add the new spatial_index_ member and accessor methods to
   EncodedImage (this cl).

2. Update downstream encoders to assign spatial index and simulcast index
   in EncodedImage, in addition to the old members of
   CodecSpecificInfo.

3. Land main cl, converting webrtc code to use the spatial index from
   EncodedImage. Ignore the old fields in CodecSpecificInfo, but
   leave them in place in respective structs.

4. Delete downstream code accessing old fields.

5. Delete old fields in webrtc.

Bug: webrtc:9378
Change-Id: Ic132daf71f1cbbd57fb3b44f74ae94b921733f7a
Reviewed-on: https://webrtc-review.googlesource.com/90248
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Marco Paniconi <marpan@google.com>
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24093}
[modify] https://crrev.com/2455c9ed361671cc2ea41deb81cbcfbda073a6e3/common_video/include/video_frame.h

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 21

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/2377588c820bbec1780951893d18752d61456adc

commit 2377588c820bbec1780951893d18752d61456adc
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Aug 21 09:15:51 2018

Add accessor methods for RTP timestamp of EncodedImage.

Intention is to make the member private, but downstream callers
must be updated to use the accessor methods first.

Bug: webrtc:9378
Change-Id: I3495bd8d545b7234fbea10abfd14f082caa420b6
Reviewed-on: https://webrtc-review.googlesource.com/82160
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24352}
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/api/video/encoded_frame.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/api/video/encoded_frame.h
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/call/rtp_video_sender.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/call/rtp_video_sender_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/common_video/include/video_frame.h
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/media/engine/simulcast_encoder_adapter_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/i420/i420.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/vp8/test/vp8_impl_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/decoding_state.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/frame_buffer2.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/frame_buffer2_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/frame_object.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/frame_object.h
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/generic_decoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/generic_encoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/generic_encoder_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/jitter_buffer.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/jitter_buffer_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/receiver.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/utility/ivf_file_writer.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/utility/ivf_file_writer_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/modules/video_coding/video_sender_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/sdk/android/src/jni/androidmediadecoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/sdk/android/src/jni/androidmediaencoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/sdk/android/src/jni/videodecoderwrapper.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/sdk/android/src/jni/videoencoderwrapper.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/sdk/objc/Framework/Classes/PeerConnection/RTCEncodedImage.mm
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/test/configurable_frame_size_encoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/test/fake_decoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/test/fake_encoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/test/fuzzers/frame_buffer2_fuzzer.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/send_statistics_proxy.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/send_statistics_proxy_unittest.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_receive_stream.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_send_stream_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_send_stream_tests.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_stream_decoder_impl.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_stream_encoder.cc
[modify] https://crrev.com/2377588c820bbec1780951893d18752d61456adc/video/video_stream_encoder_unittest.cc

Project Member

Comment 12 by bugdroid1@chromium.org, Aug 29

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/da0898dfae3b0a013ca8ad3828e9adfdc749748d

commit da0898dfae3b0a013ca8ad3828e9adfdc749748d
Author: Niels Möller <nisse@webrtc.org>
Date: Wed Aug 29 13:50:17 2018

Add spatial index to EncodedImage.

Replaces the VP8 simulcast index and VP9 spatial index formely part of
CodecSpecificInfo.

Bug: webrtc:9378
Change-Id: I80eafd63fbdee0a25864338196a690628b4bd3d2
Reviewed-on: https://webrtc-review.googlesource.com/83161
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24485}
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/call/rtp_payload_params.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/call/rtp_payload_params_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/call/rtp_video_sender.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/call/rtp_video_sender_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/media/engine/simulcast_encoder_adapter.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/media/engine/simulcast_encoder_adapter_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/multiplex/test/multiplex_adapter_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/vp8/test/vp8_impl_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/vp9/test/vp9_impl_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/codecs/vp9/vp9_impl.h
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/generic_encoder.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/generic_encoder_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/include/video_codec_interface.h
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/sdk/android/src/jni/androidmediaencoder.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/sdk/android/src/jni/videoencoderwrapper.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/test/fake_encoder.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/test/fake_vp8_encoder.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/send_statistics_proxy.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/send_statistics_proxy.h
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/send_statistics_proxy_unittest.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/video_receive_stream.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/video_send_stream_impl.cc
[modify] https://crrev.com/da0898dfae3b0a013ca8ad3828e9adfdc749748d/video/video_send_stream_tests.cc

Project Member

Comment 13 by bugdroid1@chromium.org, Aug 29

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209

commit 5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209
Author: Niels Moller <nisse@webrtc.org>
Date: Wed Aug 29 14:36:05 2018

Revert "Add spatial index to EncodedImage."

This reverts commit da0898dfae3b0a013ca8ad3828e9adfdc749748d.

Reason for revert: Broke downstream tests.

Original change's description:
> Add spatial index to EncodedImage.
> 
> Replaces the VP8 simulcast index and VP9 spatial index formely part of
> CodecSpecificInfo.
> 
> Bug: webrtc:9378
> Change-Id: I80eafd63fbdee0a25864338196a690628b4bd3d2
> Reviewed-on: https://webrtc-review.googlesource.com/83161
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24485}

TBR=brandtr@webrtc.org,magjed@webrtc.org,nisse@webrtc.org,sprang@webrtc.org,philipel@webrtc.org,srte@webrtc.org

Change-Id: Idb4fb9d72e5574d7353c631cb404a1311f3fd148
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9378
Reviewed-on: https://webrtc-review.googlesource.com/96664
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24486}
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/call/rtp_payload_params.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/call/rtp_payload_params_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/call/rtp_video_sender.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/call/rtp_video_sender_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/media/engine/simulcast_encoder_adapter.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/media/engine/simulcast_encoder_adapter_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/multiplex/test/multiplex_adapter_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/vp8/test/vp8_impl_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/vp9/test/vp9_impl_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/codecs/vp9/vp9_impl.h
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/generic_encoder.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/generic_encoder_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/include/video_codec_interface.h
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/sdk/android/src/jni/androidmediaencoder.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/sdk/android/src/jni/videoencoderwrapper.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/test/fake_encoder.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/test/fake_vp8_encoder.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/send_statistics_proxy.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/send_statistics_proxy.h
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/send_statistics_proxy_unittest.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/video_receive_stream.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/video_send_stream_impl.cc
[modify] https://crrev.com/5a998d7246cc1c12bdf96fb50c9cf6a1bd3fc209/video/video_send_stream_tests.cc

Project Member

Comment 14 by bugdroid1@chromium.org, Aug 31

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb

commit d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb
Author: Niels Möller <nisse@webrtc.org>
Date: Fri Aug 31 07:35:52 2018

Reland "Add spatial index to EncodedImage."

This is a reland of da0898dfae3b0a013ca8ad3828e9adfdc749748d

Original change's description:
> Add spatial index to EncodedImage.
>
> Replaces the VP8 simulcast index and VP9 spatial index formely part of
> CodecSpecificInfo.
>
> Bug: webrtc:9378
> Change-Id: I80eafd63fbdee0a25864338196a690628b4bd3d2
> Reviewed-on: https://webrtc-review.googlesource.com/83161
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24485}

Tbr: magjed@webrtc.org
Bug: webrtc:9378
Change-Id: Iff20b656581ef63317e073833d1a326f7118fdfd
Reviewed-on: https://webrtc-review.googlesource.com/96780
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24507}
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/call/rtp_payload_params.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/call/rtp_payload_params_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/call/rtp_video_sender.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/call/rtp_video_sender_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/media/engine/simulcast_encoder_adapter.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/media/engine/simulcast_encoder_adapter_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/multiplex/test/multiplex_adapter_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/vp8/test/vp8_impl_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/vp9/test/vp9_impl_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/codecs/vp9/vp9_impl.h
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/generic_encoder.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/generic_encoder_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/include/video_codec_interface.h
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/sdk/android/src/jni/androidmediaencoder.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/sdk/android/src/jni/videoencoderwrapper.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/test/fake_encoder.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/test/fake_vp8_encoder.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/send_statistics_proxy.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/send_statistics_proxy.h
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/send_statistics_proxy_unittest.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/video_receive_stream.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/video_send_stream_impl.cc
[modify] https://crrev.com/d3b8c63b580b1f58795c28cdc6699fd0bc02d3eb/video/video_send_stream_tests.cc

Project Member

Comment 15 by bugdroid1@chromium.org, Sep 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8f3706d2753dbec16843f2400bb2cf63d84532c8

commit 8f3706d2753dbec16843f2400bb2cf63d84532c8
Author: Niels Möller <nisse@chromium.org>
Date: Mon Sep 10 07:21:24 2018

Delete use of deprecated simulcastIdx and spatial_idx members.

They've been moved from CodecSpecificInfo to EncodedImage.

Bug: webrtc:9378
Change-Id: I291e2853e8dfeb672c286d2aab0e347f4ce176bd
Reviewed-on: https://chromium-review.googlesource.com/1213163
Reviewed-by: Lambros Lambrou <lambroslambrou@chromium.org>
Commit-Queue: Niels Möller <nisse@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589844}
[modify] https://crrev.com/8f3706d2753dbec16843f2400bb2cf63d84532c8/remoting/protocol/webrtc_dummy_video_encoder.cc

Project Member

Comment 16 by bugdroid1@chromium.org, Sep 11

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/b0fc70303daf7774d92bd72aed6dfcf841de54f4

commit b0fc70303daf7774d92bd72aed6dfcf841de54f4
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Sep 11 08:11:16 2018

Delete deprecated simulcast and spatial index members

These attributes were moved from CodecSpecificInfo to EncodedImage in
cl https://webrtc-review.googlesource.com/c/src/+/96780. This followup
deletes the old member variables, which were left temporarily to
transition downstream code.

Bug: webrtc:9378
Change-Id: I1b38ce404a005aec9d48916b73233cfbd7523cfe
Reviewed-on: https://webrtc-review.googlesource.com/97021
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24670}
[modify] https://crrev.com/b0fc70303daf7774d92bd72aed6dfcf841de54f4/modules/video_coding/include/video_codec_interface.h

Project Member

Comment 17 by bugdroid1@chromium.org, Sep 11

Project Member

Comment 19 by bugdroid1@chromium.org, Oct 8

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/4dc66c53d0e76f3a34b38ee068abfa40e92be726

commit 4dc66c53d0e76f3a34b38ee068abfa40e92be726
Author: Niels Möller <nisse@webrtc.org>
Date: Mon Oct 08 07:37:10 2018

Move EncodedImage class to api/video/

Bug: webrtc:9378
Change-Id: I8fb3b19cad0ad428abc6c8e6b507180d461882ba
Reviewed-on: https://webrtc-review.googlesource.com/c/104002
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Peter Slatala <psla@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25033}
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/DEPS
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video/BUILD.gn
[rename] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video/encoded_image.cc
[add] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video/encoded_image.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video_codecs/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video_codecs/video_decoder.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/api/video_codecs/video_encoder.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/common_video/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/common_video/include/video_frame.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/include/video_coding_defines.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/utility/ivf_file_writer.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/sdk/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/sdk/android/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/sdk/android/src/jni/encodedimage.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/sdk/objc/api/peerconnection/RTCEncodedImage+Private.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/test/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/test/configurable_frame_size_encoder.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/BUILD.gn
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/overuse_frame_detector_unittest.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/receive_statistics_proxy.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/video_receive_stream.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/video_send_stream.h
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/video_send_stream_tests.cc
[modify] https://crrev.com/4dc66c53d0e76f3a34b38ee068abfa40e92be726/video/video_stream_encoder.cc

Sign in to add a comment