Commit Graph

16 Commits

Author SHA1 Message Date
aa5ea1c0f9 1. Make a clear distinction between codec internal FEC and RED, confusing mentioning of FEC in the old codes is replaced by RED
2. Add two new APIs to configure codec internal FEC

3. Add a test and listened to results. This is based modifying EncodeDecodeTest and deriving a new class from it.

New ACM gives good result.
Old ACM does not use NetEq 4, so FEC won't be decoded.

BUG=
R=tina.legrand@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6233 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-23 15:16:51 +00:00
adaf809612 Removing AudioCoding duplicate tests
Reverting to using one version of ACM in ACM tests.

BUG=2996
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5924 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-17 08:29:10 +00:00
7a05ae5c69 Adding back main() to the test. Now it is possible to choose between ACM1 and ACM2, furthermore, the test can simulate a channel with packet loss and FEC can be activated. Packet loss pattern is based on channel implementation in Channel{.cc,.h}, which currently is a determenistic pattern with 1 every 3rd packet is discarded.
The main() was deleted in r4731.

BUG=
R=andrew@webrtc.org, minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5132 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 18:16:53 +00:00
532f3dc548 Compile ACM2 and ACM1.
First patch set is the same as patch set 3 of http://review.webrtc.org/2237004/

-Make ACM1 to depend on ACM2.
-Remove APIs to set and get background noise mode. There is no VoE call to these
APIs.
-Remove APIs to set and get receive side VAD mode. There is no VoE call to these
APIs, and NetEq 4, doesn't support them.
-Remove callback for in-band DTMF detection. ACM doesn't support in-band DTMF
detection.
-Use acm_common_defs.h everywhere required.
-Complete ACM factory method.
-Update ACMCodecDatabase of ACM2. CNG full-band need to be define-guarded.
Remove dynamic payload-type assignment.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4785 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 00:12:23 +00:00
1c77dfd521 Revert r4772 "Compile ACM1 and ACM2."
Breaks Android build.

TBR=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4777 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 12:34:05 +00:00
367baa6eb3 Compile ACM1 and ACM2.
-Make ACM1 to depend on ACM2.
-Remove APIs to set and get background noise mode. There is no VoE call to these APIs.
-Remove APIs to set and get receive side VAD mode. There is no VoE call to these APIs, and NetEq 4, doesn't support them.
-Remove callback for in-band DTMF detection. ACM doesn't support in-band DTMF detection.
-Use acm_common_defs.h everywhere required.
-Complete ACM factory method.
-Update ACMCodecDatabase of ACM2. CNG full-band need to be define-guarded. Remove dynamic payload-type assignment.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4772 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 00:36:11 +00:00
89df092807 Make the destructor of AudioCodingModule public.
This allows the type to be used with a scoped_ptr. Remove all calls to
the deprecated Destroy() from tests.

R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4731 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 01:27:43 +00:00
12dc1a38ca Switch C++-style C headers with their C equivalents.
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
185bae4b6f Replace ExtraCodecOptions with new Config class that supports multiple settings at once.
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4017 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 08:02:25 +00:00
d5726a1286 Formatting ACM tests
Pure formatting of all files located in /webrtc/modules/audio_coding/main/test/

Smaller manual modifications done after using Eclipse formatting tool, like wrapping long lines (mostly comments).

BUG=issue1024

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3946 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-03 07:34:12 +00:00
0946a56023 WebRtc_Word32 => int32_t etc. in audio_coding/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3789 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 00:28:06 +00:00
73222cff1a Adding Opus frame length test
BUG=issue1015

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3672 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-15 13:29:17 +00:00
7a7a008031 Changing non-const reference arguments to pointers, ACM
Part of refactoring of ACM, and recent lint-warnings.
This CL changes non-const references in the ACM API to pointers.

BUG=issue1372

Committed: https://code.google.com/p/webrtc/source/detail?r=3543

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3555 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-21 10:27:48 +00:00
eb7ebf20ed Revert 3543
> Changing non-const reference arguments to pointers, ACM
> 
> Part of refactoring of ACM, and recent lint-warnings.
> This CL changes non-const references in the ACM API to pointers.
> 
> BUG=issue1372
> 
> Review URL: https://webrtc-codereview.appspot.com/1103012

TBR=tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1116004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3544 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 15:57:31 +00:00
374aa49e1a Changing non-const reference arguments to pointers, ACM
Part of refactoring of ACM, and recent lint-warnings.
This CL changes non-const references in the ACM API to pointers.

BUG=issue1372

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3543 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 15:22:23 +00:00
6388c3e2fd Implement initial delay. This CL allows clients of VoE to set an initial delay. Playout of audio is delayed and the extra playout delay is maintained during the call. While packets are buffered (in NetEq) to acheive the desired delay. ACM will playout silence (zeros). Initial delay has to be set before any packet is pushed into ACM.
TEST=ACM unit test is added, also a manual integration test is writen. 
Review URL: https://webrtc-codereview.appspot.com/1097009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3506 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-12 21:42:18 +00:00