| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 
| 3  * | 3  * | 
| 4  *  Use of this source code is governed by a BSD-style license | 4  *  Use of this source code is governed by a BSD-style license | 
| 5  *  that can be found in the LICENSE file in the root of the source | 5  *  that can be found in the LICENSE file in the root of the source | 
| 6  *  tree. An additional intellectual property rights grant can be found | 6  *  tree. An additional intellectual property rights grant can be found | 
| 7  *  in the file PATENTS.  All contributing project authors may | 7  *  in the file PATENTS.  All contributing project authors may | 
| 8  *  be found in the AUTHORS file in the root of the source tree. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 9  */ | 9  */ | 
| 10 | 10 | 
| 11 #ifndef WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 11 #ifndef WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 
| 12 #define WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 12 #define WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 
| 13 | 13 | 
| 14 #include <memory> | 14 #include <memory> | 
| 15 #include <vector> | 15 #include <vector> | 
| 16 | 16 | 
| 17 #include "webrtc/api/audio_codecs/audio_encoder.h" | 17 #include "webrtc/api/audio_codecs/audio_encoder.h" | 
| 18 #include "webrtc/api/audio_codecs/audio_format.h" | 18 #include "webrtc/api/audio_codecs/audio_format.h" | 
| 19 #include "webrtc/rtc_base/optional.h" | 19 #include "webrtc/api/optional.h" | 
| 20 | 20 | 
| 21 namespace webrtc { | 21 namespace webrtc { | 
| 22 | 22 | 
| 23 // iSAC encoder API (fixed-point implementation) for use as a template | 23 // iSAC encoder API (fixed-point implementation) for use as a template | 
| 24 // parameter to CreateAudioEncoderFactory<...>(). | 24 // parameter to CreateAudioEncoderFactory<...>(). | 
| 25 // | 25 // | 
| 26 // NOTE: This struct is still under development and may change without notice. | 26 // NOTE: This struct is still under development and may change without notice. | 
| 27 struct AudioEncoderIsacFix { | 27 struct AudioEncoderIsacFix { | 
| 28   struct Config { | 28   struct Config { | 
| 29     bool IsOk() const { return frame_size_ms == 30 || frame_size_ms == 60; } | 29     bool IsOk() const { return frame_size_ms == 30 || frame_size_ms == 60; } | 
| 30     int frame_size_ms = 30; | 30     int frame_size_ms = 30; | 
| 31   }; | 31   }; | 
| 32   static rtc::Optional<Config> SdpToConfig(const SdpAudioFormat& audio_format); | 32   static rtc::Optional<Config> SdpToConfig(const SdpAudioFormat& audio_format); | 
| 33   static void AppendSupportedEncoders(std::vector<AudioCodecSpec>* specs); | 33   static void AppendSupportedEncoders(std::vector<AudioCodecSpec>* specs); | 
| 34   static AudioCodecInfo QueryAudioEncoder(Config config); | 34   static AudioCodecInfo QueryAudioEncoder(Config config); | 
| 35   static std::unique_ptr<AudioEncoder> MakeAudioEncoder(Config config, | 35   static std::unique_ptr<AudioEncoder> MakeAudioEncoder(Config config, | 
| 36                                                         int payload_type); | 36                                                         int payload_type); | 
| 37 }; | 37 }; | 
| 38 | 38 | 
| 39 }  // namespace webrtc | 39 }  // namespace webrtc | 
| 40 | 40 | 
| 41 #endif  // WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 41 #endif  // WEBRTC_API_AUDIO_CODECS_ISAC_AUDIO_ENCODER_ISAC_FIX_H_ | 
| OLD | NEW | 
|---|