New issue
Advanced search Search tips

Issue 9378 link

Starred by 5 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 2018

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 2018

Naming suggestion: webrtc::EncodedVideoFrame. That maps nicely to our existing webrtc::VideoFrame :)

Comment 2 by nisse@chromium.org, Jun 11 2018

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.

Comment 3 by sprang@chromium.org, Jun 12 2018

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 2018

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 2018

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 2018

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 2018

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 2018

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 2018

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

Project Member

Comment 20 by ilnik@webrtc.org, Nov 28

Cc: ilnik@webrtc.org
Project Member

Comment 21 by bugdroid1@chromium.org, Nov 28

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

commit 648a7cefe13464cfbdac618dfcb5d1904c0c0ca2
Author: Niels Möller <nisse@webrtc.org>
Date: Wed Nov 28 14:52:32 2018

Delete method EncodedFrame::GetBitstream, part 1

Only caller was the RtpFrameObject constructor, so it's
not needed in the interface.

To be able to delete downstream overrides, add a temporary
default implementation. Method will be completely deleted in part 2.

Bug: webrtc:9378
Change-Id: I9083b6284313b6ebce854c6f2cec4617953331d9
Reviewed-on: https://webrtc-review.googlesource.com/c/112128
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25822}
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/api/video/encoded_frame.cc
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/api/video/encoded_frame.h
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/modules/video_coding/frame_buffer2_unittest.cc
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/modules/video_coding/frame_object.cc
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/modules/video_coding/frame_object.h
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/modules/video_coding/video_packet_buffer_unittest.cc
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/test/fuzzers/frame_buffer2_fuzzer.cc
[modify] https://crrev.com/648a7cefe13464cfbdac618dfcb5d1904c0c0ca2/video/rtp_video_stream_receiver_unittest.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Nov 29

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

commit f0eee0087f1e999461d353895b48d1fd5ef126fa
Author: Niels Möller <nisse@webrtc.org>
Date: Thu Nov 29 13:44:47 2018

Move size() method to EncodedImage base class

Deleted from subclass video_coding::EncodedFrame. Also delete Length
and SetLength methods on the intermediate class
video_coding::VCMEncodedFrame.

Bug: webrtc:9378
Change-Id: I3c90b14735f622f50b2f403f79072e22fc025d11
Reviewed-on: https://webrtc-review.googlesource.com/c/112131
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25838}
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/api/video/encoded_frame.h
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/api/video/encoded_image.h
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/encoded_frame.h
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/frame_object.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/frame_object.h
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/jitter_buffer.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/modules/video_coding/jitter_buffer_unittest.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/video/rtp_video_stream_receiver.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/video/rtp_video_stream_receiver_unittest.cc
[modify] https://crrev.com/f0eee0087f1e999461d353895b48d1fd5ef126fa/video/video_receive_stream.cc

Project Member

Comment 23 by bugdroid1@chromium.org, Nov 29

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

commit c4862f452d1351a7f47d794a937e615107e1f717
Author: Niels Möller <nisse@webrtc.org>
Date: Thu Nov 29 14:01:39 2018

Delete method EncodedFrame::GetBitstream, part 2

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

Project Member

Comment 24 by bugdroid1@chromium.org, Dec 4

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

commit 77894ccb5df02e810e7a1a80c1b2c4df82cac46f
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Dec 04 15:25:55 2018

New method EncodedImage::set_buffer

This setter method is intended to replace all direct assignments to
the |_size| member. A later cl will make that member private, and
rename it to |capacity_|.

Bug: webrtc:9378
Change-Id: I37e9eb54d1c72bcd4cb8a1cfef34bbc6c209bd0d
Reviewed-on: https://webrtc-review.googlesource.com/c/113060
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25894}
[modify] https://crrev.com/77894ccb5df02e810e7a1a80c1b2c4df82cac46f/api/video/encoded_image.h

Project Member

Comment 25 by nisse@webrtc.org, Dec 5

Discussed offline with brandtr@, and we agreed EncodedImage can take ownership of the data buffer. Which should simplify a lot of things. Just need to figure out the transition plan.
Project Member

Comment 26 by bugdroid1@chromium.org, Dec 7

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

commit 48a79465ecc5d77073f49d38a8204b342cd951f1
Author: Niels Möller <nisse@webrtc.org>
Date: Fri Dec 07 16:19:34 2018

Convert all webrtc code to not access EncodedImage::_size directly.

Read using capacity() method, write using set_buffer() method. This is
a preparation for making the member private, and renaming it to
capacity_.

Bug: webrtc:9378
Change-Id: I2f96679d052a83fe81be40301bd9863c87074640
Reviewed-on: https://webrtc-review.googlesource.com/c/113520
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25934}
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/h264/h264_decoder_impl.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/i420/i420.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/frame_object.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/48a79465ecc5d77073f49d38a8204b342cd951f1/modules/video_coding/video_packet_buffer_unittest.cc

Project Member

Comment 27 by bugdroid1@chromium.org, Dec 11

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

commit a6fd5e4587cb90c335355c975461c421132b6c9a
Author: Niels Möller <nisse@webrtc.org>
Date: Tue Dec 11 10:40:59 2018

Rename EncodedImage::_size to capacity_, make private.

Also adds a set_buffer method, as the only public setter for capacity_.

Bug: webrtc:9378
Change-Id: If0257c6d00bc8690f0428a3edc20b6da6dfa7119
Reviewed-on: https://webrtc-review.googlesource.com/c/112134
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25962}
[modify] https://crrev.com/a6fd5e4587cb90c335355c975461c421132b6c9a/api/video/encoded_image.cc
[modify] https://crrev.com/a6fd5e4587cb90c335355c975461c421132b6c9a/api/video/encoded_image.h

Project Member

Comment 28 by bugdroid1@chromium.org, Jan 10

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

commit a8f58f001ef11ef0460ad5b2cbe505d4be1d6033
Author: Niels Möller <nisse@webrtc.org>
Date: Thu Jan 10 15:30:55 2019

Add data() accessors to EncodedImage

Intend to make the |_buffer| member private, in a later cl.

Bug: webrtc:9378
Change-Id: I8398932a36d8d931a7e587edca7be3957bbafcfd
Reviewed-on: https://webrtc-review.googlesource.com/c/116782
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26201}
[modify] https://crrev.com/a8f58f001ef11ef0460ad5b2cbe505d4be1d6033/api/video/encoded_image.h

Project Member

Comment 31 by bugdroid1@chromium.org, Jan 16 (3 days ago)

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

commit 77536a2b818ed30f495943202ca97834bad0dc82
Author: Niels Möller <nisse@webrtc.org>
Date: Wed Jan 16 07:40:47 2019

Rename EncodedImage::_length --> size_, and make private.

Use size() accessor function. Also replace most nearby uses of _buffer
with data().

Bug: webrtc:9378
Change-Id: I1ac3459612f7c6151bd057d05448da1c4e1c6e3d
Reviewed-on: https://webrtc-review.googlesource.com/c/116783
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26273}
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/api/media_transport_interface.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/api/test/loopback_media_transport_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/api/video/encoded_image.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/api/video/encoded_image.h
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/call/rtp_video_sender.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/call/rtp_video_sender_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/h264/h264_decoder_impl.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/test/videocodec_test_fixture_impl.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/test/videocodec_test_libvpx.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/test/videoprocessor.h
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/vp8/test/vp8_impl_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/vp9/test/vp9_impl_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/frame_buffer2_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/frame_object.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/frame_object.h
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/generic_encoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/generic_encoder_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/utility/ivf_file_writer.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/utility/ivf_file_writer_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/video_packet_buffer_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/modules/video_coding/video_sender_unittest.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/sdk/android/src/jni/android_media_decoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/sdk/android/src/jni/android_media_encoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/sdk/android/src/jni/encoded_image.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/sdk/android/src/jni/video_decoder_wrapper.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/sdk/objc/api/peerconnection/RTCEncodedImage+Private.mm
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/test/fake_decoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/test/fake_encoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/test/fake_vp8_decoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/test/fake_vp8_encoder.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/video/buffered_frame_decryptor.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/video/send_statistics_proxy.cc
[modify] https://crrev.com/77536a2b818ed30f495943202ca97834bad0dc82/video/video_replay.cc

Project Member

Comment 32 by bugdroid1@chromium.org, Jan 16 (2 days ago)

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

commit 3d7b882ef4138007d7783dee71de8ea519d63dd3
Author: Niels Möller <nisse@chromium.org>
Date: Wed Jan 16 14:30:55 2019

Use accessor method EncodedImage::data()

Intended to enable landing of
https://webrtc-review.googlesource.com/c/src/+/117722

Bug: webrtc:9378
Change-Id: If73ae048f1cc42bfdc2d82d89e8097a16f420fd2
Reviewed-on: https://chromium-review.googlesource.com/c/1412830
Reviewed-by: Florent Castelli <orphis@chromium.org>
Commit-Queue: Niels Möller <nisse@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623230}
[modify] https://crrev.com/3d7b882ef4138007d7783dee71de8ea519d63dd3/content/renderer/media/webrtc/rtc_video_decoder.cc

Project Member

Comment 33 by bugdroid1@chromium.org, Yesterday (43 hours ago)

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

commit 24871e4cbe56052424bd80cd903786723d0abc49
Author: Niels Möller <nisse@webrtc.org>
Date: Thu Jan 17 12:38:15 2019

Rename EncodedImage::_buffer --> buffer_, and make private

Bug: webrtc:9378
Change-Id: I0a0636077b270a7c73bafafb958132fa648aca70
Reviewed-on: https://webrtc-review.googlesource.com/c/117722
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26294}
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/api/media_transport_interface.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/api/video/encoded_image.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/api/video/encoded_image.h
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/h264/h264_decoder_impl.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/h264/h264_encoder_impl.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/multiplex/test/multiplex_adapter_unittest.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/test/videocodec_test_fixture_impl.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/test/videoprocessor.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/test/videoprocessor.h
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/codecs/vp9/vp9_impl.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/encoded_frame.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/frame_buffer.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/frame_object.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/modules/video_coding/utility/simulcast_test_fixture_impl.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/sdk/android/src/jni/android_media_encoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/test/fake_decoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/test/fake_encoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/test/fake_vp8_decoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/test/fake_vp8_encoder.cc
[modify] https://crrev.com/24871e4cbe56052424bd80cd903786723d0abc49/video/video_receive_stream.cc

Sign in to add a comment