History log of /external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6955870806624479723addfae6dcf5d13968796c 13-Jan-2016 Peter Kasting <pkasting@google.com> Convert channel counts to size_t.

IIRC, this was originally requested by ajm during review of the other size_t conversions I did over the past year, and I agreed it made sense, but wanted to do it separately since those changes were already gargantuan.

BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org, henrika@webrtc.org, kjellander@webrtc.org, minyue@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1316523002 .

Cr-Commit-Position: refs/heads/master@{#11229}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
7eb914debbdc212833ca71629d611de0ae0f3ebc 15-Dec-2015 kwiberg <kwiberg@webrtc.org> Fix incorrect comment

Review URL: https://codereview.webrtc.org/1524663004

Cr-Commit-Position: refs/heads/master@{#11036}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
288886b2ec9a2dac730f115e9c3079d8439efe60 06-Nov-2015 kwiberg <kwiberg@webrtc.org> Pass audio to AudioEncoder::Encode() in an ArrayView

Instead of in separate pointer and size arguments.

Review URL: https://codereview.webrtc.org/1418423010

Cr-Commit-Position: refs/heads/master@{#10535}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
c99ebc1490ec689f5932d7731a215ca02ab30af6 09-Sep-2015 kwiberg <kwiberg@webrtc.org> Remove AudioEncoder methods SetMaxBitrate and SetMaxPayloadSize

And the corresponding ACM methods SetISACMaxRate and
SetISACMaxPayloadSize. They were only used in tests.

Review URL: https://codereview.webrtc.org/1311533010

Cr-Commit-Position: refs/heads/master@{#9903}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
3f5f1c2ad305a665fb2ecd3e31c57d405e19af97 09-Sep-2015 kwiberg <kwiberg@webrtc.org> Change return type of AudioEncoder::SetMaxPlaybackRate to void

There's no point in returning a status code, since the max playback rate
is only a suggestion that the encoder is free to disregard.

Review URL: https://codereview.webrtc.org/1332573003

Cr-Commit-Position: refs/heads/master@{#9900}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
12cfc9b4dacd6942377df1f29a64bdbec591920e 08-Sep-2015 kwiberg <kwiberg@webrtc.org> Fold AudioEncoderMutable into AudioEncoder

It makes more sense to combine the two interfaces, since there wasn't
a clear line separating them. The result is a combined interface with
just over a dozen methods, half of which need to be implemented by
every subclass, while the other half have sensible (and trivial)
default implementations and are implemented only by the few subclasses
that need non-default behavior.

Review URL: https://codereview.webrtc.org/1322973004

Cr-Commit-Position: refs/heads/master@{#9894}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
dce40cf804019a9898b6ab8d8262466b697c56e0 24-Aug-2015 Peter Kasting <pkasting@google.com> Update a ton of audio code to use size_t more correctly and in general reduce
use of int16_t/uint16_t.

This is the upshot of a recommendation by henrik.lundin and kwiberg on an original small change ( https://webrtc-codereview.appspot.com/42569004/#ps1 ) to stop using int16_t just because values could fit in it, and is similar in nature to a previous "mass change to use size_t more" ( https://webrtc-codereview.appspot.com/23129004/ ) which also needed to be split up for review but to land all at once, since, like adding "const", such changes tend to cause a lot of transitive effects.

This was be reviewed and approved in pieces:
https://codereview.webrtc.org/1224093003
https://codereview.webrtc.org/1224123002
https://codereview.webrtc.org/1224163002
https://codereview.webrtc.org/1225133003
https://codereview.webrtc.org/1225173002
https://codereview.webrtc.org/1227163003
https://codereview.webrtc.org/1227203003
https://codereview.webrtc.org/1227213002
https://codereview.webrtc.org/1227893002
https://codereview.webrtc.org/1228793004
https://codereview.webrtc.org/1228803003
https://codereview.webrtc.org/1228823002
https://codereview.webrtc.org/1228823003
https://codereview.webrtc.org/1228843002
https://codereview.webrtc.org/1230693002
https://codereview.webrtc.org/1231713002

The change is being landed as TBR to all the folks who reviewed the above.

BUG=chromium:81439
TEST=none
R=andrew@webrtc.org, pbos@webrtc.org
TBR=aluebs, andrew, asapersson, henrika, hlundin, jan.skoglund, kwiberg, minyue, pbos, pthatcher

Review URL: https://codereview.webrtc.org/1230503003 .

Cr-Commit-Position: refs/heads/master@{#9768}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
3e89dbf45835896c8fd89f235f396d03bc2e6065 18-Jun-2015 Henrik Lundin <henrik.lundin@webrtc.org> Add AudioEncoder::GetTargetBitrate

The GetTargetBitrate implementation will return the
target bitrate of the codec. This may differ from the
desired target bitrate, as set by SetTargetBitrate, depending on implementation.

Tests are updated to exercise the new functionality.

R=kwiberg@webrtc.org

Review URL: https://codereview.webrtc.org/1184313002.

Cr-Commit-Position: refs/heads/master@{#9461}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
092041c1cdadeb82463ee79dfc291d60b41d35ef 11-May-2015 Minyue Li <minyue@webrtc.org> Setting OPUS_SIGNAL_VOICE when enable DTX.

A better solution than forcing OPUS_APPLICATION_VOIP when enabling DTX has been found, which is to set OPUS_SIGNAL_VOICE.

This reduces the uncertainty of entering DTX over silence period of audio.

This CL contains the setup of OPUS_SIGNAL_VOICE and decoupling opus application mode with DTX.

BUG=4559
R=henrik.lundin@webrtc.org, henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/46959004

Cr-Commit-Position: refs/heads/master@{#9168}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
dcccab3ebb623df74fbb1425da2cb9d9a42439fa 07-May-2015 Karl Wiberg <kwiberg@webrtc.org> New interface: AudioEncoderMutable

With implementations for all codecs. It has no users yet. This new
interface is the same as AudioEncoder (in fact it is a subclass) but
it allows changing some parameters after construction.

COAUTHOR=henrik.lundin@webrtc.org
BUG=4228
R=jmarusic@webrtc.org, minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/51679004

Cr-Commit-Position: refs/heads/master@{#9149}
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
9afaee74ab1ef36c8b4ea4c22f4c5aebf2359da2 19-Mar-2015 jmarusic@webrtc.org <jmarusic@webrtc.org> Reland 8749: AudioEncoder: return EncodedInfo from Encode() and EncodeInternal()

Old review at:
https://webrtc-codereview.appspot.com/43839004/

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/45769004

Cr-Commit-Position: refs/heads/master@{#8788}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8788 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
019955d77015fed0b2dcec0cc62a8bdd63e0481e 18-Mar-2015 tommi@webrtc.org <tommi@webrtc.org> Revert 8749 "We changed Encode() and EncodeInternal() return typ..."

The reason is that this cl adds a static initializer so we can't roll webrtc into Chromium.
See audio_encoder.cc and 'sizes' regression here:
http://build.chromium.org/p/chromium/builders/Linux%20x64/builds/186

> We changed Encode() and EncodeInternal() return type from bool to void in this issue:
> https://webrtc-codereview.appspot.com/38279004/
> Now we don't have to pass EncodedInfo as output parameter, but can return it instead. This also adds the benefit of making clear that EncodeInternal() needs to fill in this info.
>
> R=kwiberg@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/43839004

TBR=jmarusic@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/49449004

Cr-Commit-Position: refs/heads/master@{#8772}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8772 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
0cb612b43bc1ef42cde8cb3887dc48917d5a58dd 17-Mar-2015 jmarusic@webrtc.org <jmarusic@webrtc.org> We changed Encode() and EncodeInternal() return type from bool to void in this issue:
https://webrtc-codereview.appspot.com/38279004/
Now we don't have to pass EncodedInfo as output parameter, but can return it instead. This also adds the benefit of making clear that EncodeInternal() needs to fill in this info.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/43839004

Cr-Commit-Position: refs/heads/master@{#8749}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8749 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
51ccf376387266225cd8c78e63238b725860f0af 10-Mar-2015 jmarusic@webrtc.org <jmarusic@webrtc.org> AudioEncoder: add method MaxEncodedBytes

Added method AudioEncoder::MaxEncodedBytes() and provided implementations in derived encoders. This method returns the number of bytes that can be produced by the encoder at each Encode() call.
Unit tests were updated to use the new method.
Buffer allocation was not changed in AudioCodingModuleImpl::Encode(). It will be done after additional investigation.
Other refactoring work that was done, that may not be obvious why:
1. Moved some code into AudioEncoderCng::EncodePassive() to make it more consistent with EncodeActive().
2. Changed the order of NumChannels() and RtpTimestampRateHz() declarations in AudioEncoderG722 and AudioEncoderCopyRed classes. It just bothered me that the order was not the same as in AudioEncoder class and its other derived classes.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40259005

Cr-Commit-Position: refs/heads/master@{#8671}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8671 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
c86bbbaa9348b868e94c021426abcc2f5e0144b0 04-Mar-2015 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Add speech flag to EncodedInfo

The flag indicates if the encoded bitstream is speech or comfort noise.

COAUTHOR=kwiberg@webrtc.org
R=jmarusic@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/42629004

Cr-Commit-Position: refs/heads/master@{#8598}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8598 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
abbdd520b0ddefa6b1d9a798843c0999bc6f1f25 27-Feb-2015 jmarusic@webrtc.org <jmarusic@webrtc.org> AudioEncoder: documentation fix

Follow-up to https://webrtc-codereview.appspot.com/38279004/

R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/38309004

Cr-Commit-Position: refs/heads/master@{#8524}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8524 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
b1f0de30be3397eba3d423b71abc5c50db2a1665 26-Feb-2015 jmarusic@webrtc.org <jmarusic@webrtc.org> AudioEncoder: change Encode and EncodeInternal return type to void

After code cleanup done on issues:
https://webrtc-codereview.appspot.com/34259004/
https://webrtc-codereview.appspot.com/43409004/
https://webrtc-codereview.appspot.com/34309004/
https://webrtc-codereview.appspot.com/34309004/
https://webrtc-codereview.appspot.com/36209004/
https://webrtc-codereview.appspot.com/40899004/
https://webrtc-codereview.appspot.com/39279004/
https://webrtc-codereview.appspot.com/42099005/
and the similar work done for AudioEncoderDecoderIsacT, methods AudioEncoder::Encode and AudioEncoder::EncodeInternal will always succeed. Therefore, there is no need for them to return bool value that represents success or failure.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/38279004

Cr-Commit-Position: refs/heads/master@{#8518}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8518 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
05211277798ca4791fbdc508e24d7fd06d5ee6ff 18-Feb-2015 kwiberg@webrtc.org <kwiberg@webrtc.org> AudioEncoder: Rename virtual accessors to CamelCase

Although sample_rate_hz(), num_channels(), and rtp_timestamp_rate_hz()
are simple accessors for almost all implementations of AudioEncoder,
they are virtual and not guaranteed to be just simple accessors. Thus,
it makes more sense to use the normal CamelCase naming scheme.

BUG=4235
R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34239004

Cr-Commit-Position: refs/heads/master@{#8407}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8407 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
bb1219eca38db9909bc10f24d9a0f858b4fcb2e7 12-Feb-2015 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Add a unit test for callbacks with empty frames and fix bug in code

This change adds a couple of new tests that verify that callbacks
with frame type kFrameEmpty are sent in between comfort noise packets.
This used to be the case until r8268, and with the fix included in
this CL is once again so.

COAUTHOR=kwiberg@webrtc.org
R=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37229004

Cr-Commit-Position: refs/heads/master@{#8353}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8353 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
f45c8ca88bf5d8534fb1fbbbe5f79f585515743f 05-Feb-2015 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Reland r8248 "Introduce ACMGenericCodecWrapper"

This effectively reverts r8249.

This new class inherits from ACMGenericCodec. The purpose is to wrap
AudioEncoder objects into an ACMGenericCodec interface. This is a
temporary construction that will be used during the ACM redesign work.

BUG=4228
COAUTHOR=kwiberg@webrtc.org
TBR=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/38919004

Cr-Commit-Position: refs/heads/master@{#8255}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8255 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
478cedc055f95bd160b53a4d7b69d8b3dd023ec7 27-Jan-2015 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Add new methods to AudioEncoder interface

The following three methods are added:
rtp_timestamp_rate_hz()
SetTargetBitrate()
SetProjectedPacketLossRate()

Default implementations are provided, and a few overrides are
implemented. AudioEncoderCopyRed and AudioEncoderCng propagate the new
methods to the underlying speech codec.

BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34049004

Cr-Commit-Position: refs/heads/master@{#8171}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8171 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
c1c9291e9b73c3a9633cd5c5cbc2e243ab5d6920 16-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Make an AudioEncoder subclass for RED

This class only supports the simple case of payload duplication. That
is, one single encoder is used, and the redundant payload is a one-step
delayed payload.

BUG=3926
R=kjellander@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31199004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7913 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
3b79daff14127f3adb19b16d94336d44ff49e841 12-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Moving encoded_bytes into EncodedInfo

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35469004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7883 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
8911bc52f14636bd98ab516f01629624aff72009 08-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Add AudioEncoder::Max10MsFramesInAPacket

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29179004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7834 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
8dc21dc238020afd93a367f741823f2f3d0bec93 03-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Rename internal AudioEncoder::Encode method to EncodeInternal

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/28129004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7801 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
7f1dfa5b61f526badbccf1e0a250acee033dd3db 02-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Adding a payload type to AudioEncoder objects

The type is set in the Config struct and is provided in the EncodedInfo
output struct from each Encode() call. The audio_decoder_unittest is
updated to verify correct propagation of the payload type.

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/27299004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7780 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
1db20a418031935595dd66f9f0deb94a07cb8f1f 01-Dec-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Adding EncodedInfo struct to AudioEncoder::Encode

This struct will be expanded in future changes.

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31049004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7771 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
decd9306ae02f157628075311079df30d5e39c1f 29-Oct-2014 kwiberg@webrtc.org <kwiberg@webrtc.org> AudioEncoder: num_10ms_frames_per_packet -> Num10MsFramesInNextPacket

Rename this accessor function to reflect its new, slightly changed
meaning. The reason for the change is that some codecs (iSAC) vary the
number of 10 ms frames from packet to packet, and so can't return a
truly constant value.

BUG=3926
R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31849004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7556 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
663fdd02fde854b9765c500effd6b306681398f7 29-Oct-2014 kwiberg@webrtc.org <kwiberg@webrtc.org> Make an AudioEncoder subclass for Opus

BUG=3926
R=henrik.lundin@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/23239004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7552 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
def1e97ed2925427ad4ff6f4c54dd78727b033ee 21-Oct-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Implement AudioEncoderPcmU/A classes and convert AudioDecoder tests

BUG=3926
R=kjellander@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29799004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7481 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
264e66f7a5edc1b72adbb13962d1ec9b1c6f1805 16-Oct-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> Add encoded_timestamp to AudioEncoder base class

BUG=3926
TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/24029004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7464 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h
9ea6f8a84db1303d005eb75ba4db54661880216d 16-Oct-2014 henrik.lundin@webrtc.org <henrik.lundin@webrtc.org> New interface class AudioEncoder

This class will be the base for new C++ wrapper classes for all
encoders.

BUG=3926
TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/23999004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7463 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/modules/audio_coding/codecs/audio_encoder.h