| OLD | NEW |
| 1 /* | 1 /* |
| 2 * libjingle | 2 * libjingle |
| 3 * Copyright 2004 Google Inc. | 3 * Copyright 2004 Google Inc. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
| 9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 virtual const std::vector<VideoCodec>& video_codecs() = 0; | 122 virtual const std::vector<VideoCodec>& video_codecs() = 0; |
| 123 virtual const std::vector<RtpHeaderExtension>& | 123 virtual const std::vector<RtpHeaderExtension>& |
| 124 video_rtp_header_extensions() = 0; | 124 video_rtp_header_extensions() = 0; |
| 125 | 125 |
| 126 // Logging control | 126 // Logging control |
| 127 virtual void SetVoiceLogging(int min_sev, const char* filter) = 0; | 127 virtual void SetVoiceLogging(int min_sev, const char* filter) = 0; |
| 128 virtual void SetVideoLogging(int min_sev, const char* filter) = 0; | 128 virtual void SetVideoLogging(int min_sev, const char* filter) = 0; |
| 129 | 129 |
| 130 // Starts AEC dump using existing file. | 130 // Starts AEC dump using existing file. |
| 131 virtual bool StartAecDump(rtc::PlatformFile file) = 0; | 131 virtual bool StartAecDump(rtc::PlatformFile file) = 0; |
| 132 | |
| 133 // Voice processors for effects. | |
| 134 virtual bool RegisterVoiceProcessor(uint32 ssrc, | |
| 135 VoiceProcessor* video_processor, | |
| 136 MediaProcessorDirection direction) = 0; | |
| 137 virtual bool UnregisterVoiceProcessor(uint32 ssrc, | |
| 138 VoiceProcessor* video_processor, | |
| 139 MediaProcessorDirection direction) = 0; | |
| 140 }; | 132 }; |
| 141 | 133 |
| 142 | 134 |
| 143 #if !defined(DISABLE_MEDIA_ENGINE_FACTORY) | 135 #if !defined(DISABLE_MEDIA_ENGINE_FACTORY) |
| 144 class MediaEngineFactory { | 136 class MediaEngineFactory { |
| 145 public: | 137 public: |
| 146 typedef cricket::MediaEngineInterface* (*MediaEngineCreateFunction)(); | 138 typedef cricket::MediaEngineInterface* (*MediaEngineCreateFunction)(); |
| 147 // Creates a media engine, using either the compiled system default or the | 139 // Creates a media engine, using either the compiled system default or the |
| 148 // creation function specified in SetCreateFunction, if specified. | 140 // creation function specified in SetCreateFunction, if specified. |
| 149 static MediaEngineInterface* Create(); | 141 static MediaEngineInterface* Create(); |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 234 voice_.SetLogging(min_sev, filter); | 226 voice_.SetLogging(min_sev, filter); |
| 235 } | 227 } |
| 236 virtual void SetVideoLogging(int min_sev, const char* filter) { | 228 virtual void SetVideoLogging(int min_sev, const char* filter) { |
| 237 video_.SetLogging(min_sev, filter); | 229 video_.SetLogging(min_sev, filter); |
| 238 } | 230 } |
| 239 | 231 |
| 240 virtual bool StartAecDump(rtc::PlatformFile file) { | 232 virtual bool StartAecDump(rtc::PlatformFile file) { |
| 241 return voice_.StartAecDump(file); | 233 return voice_.StartAecDump(file); |
| 242 } | 234 } |
| 243 | 235 |
| 244 virtual bool RegisterVoiceProcessor(uint32 ssrc, | |
| 245 VoiceProcessor* processor, | |
| 246 MediaProcessorDirection direction) { | |
| 247 return voice_.RegisterProcessor(ssrc, processor, direction); | |
| 248 } | |
| 249 virtual bool UnregisterVoiceProcessor(uint32 ssrc, | |
| 250 VoiceProcessor* processor, | |
| 251 MediaProcessorDirection direction) { | |
| 252 return voice_.UnregisterProcessor(ssrc, processor, direction); | |
| 253 } | |
| 254 | |
| 255 protected: | 236 protected: |
| 256 VOICE voice_; | 237 VOICE voice_; |
| 257 VIDEO video_; | 238 VIDEO video_; |
| 258 }; | 239 }; |
| 259 | 240 |
| 260 // NullVoiceEngine can be used with CompositeMediaEngine in the case where only | 241 // NullVoiceEngine can be used with CompositeMediaEngine in the case where only |
| 261 // a video engine is desired. | 242 // a video engine is desired. |
| 262 class NullVoiceEngine { | 243 class NullVoiceEngine { |
| 263 public: | 244 public: |
| 264 bool Init(rtc::Thread* worker_thread) { return true; } | 245 bool Init(rtc::Thread* worker_thread) { return true; } |
| (...skipping 14 matching lines...) Expand all Loading... |
| 279 return true; | 260 return true; |
| 280 } | 261 } |
| 281 bool SetOutputVolume(int level) { return true; } | 262 bool SetOutputVolume(int level) { return true; } |
| 282 int GetInputLevel() { return 0; } | 263 int GetInputLevel() { return 0; } |
| 283 const std::vector<AudioCodec>& codecs() { return codecs_; } | 264 const std::vector<AudioCodec>& codecs() { return codecs_; } |
| 284 const std::vector<RtpHeaderExtension>& rtp_header_extensions() { | 265 const std::vector<RtpHeaderExtension>& rtp_header_extensions() { |
| 285 return rtp_header_extensions_; | 266 return rtp_header_extensions_; |
| 286 } | 267 } |
| 287 void SetLogging(int min_sev, const char* filter) {} | 268 void SetLogging(int min_sev, const char* filter) {} |
| 288 bool StartAecDump(rtc::PlatformFile file) { return false; } | 269 bool StartAecDump(rtc::PlatformFile file) { return false; } |
| 289 bool RegisterProcessor(uint32 ssrc, | |
| 290 VoiceProcessor* voice_processor, | |
| 291 MediaProcessorDirection direction) { return true; } | |
| 292 bool UnregisterProcessor(uint32 ssrc, | |
| 293 VoiceProcessor* voice_processor, | |
| 294 MediaProcessorDirection direction) { return true; } | |
| 295 | 270 |
| 296 private: | 271 private: |
| 297 std::vector<AudioCodec> codecs_; | 272 std::vector<AudioCodec> codecs_; |
| 298 std::vector<RtpHeaderExtension> rtp_header_extensions_; | 273 std::vector<RtpHeaderExtension> rtp_header_extensions_; |
| 299 }; | 274 }; |
| 300 | 275 |
| 301 // NullVideoEngine can be used with CompositeMediaEngine in the case where only | 276 // NullVideoEngine can be used with CompositeMediaEngine in the case where only |
| 302 // a voice engine is desired. | 277 // a voice engine is desired. |
| 303 class NullVideoEngine { | 278 class NullVideoEngine { |
| 304 public: | 279 public: |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 337 class DataEngineInterface { | 312 class DataEngineInterface { |
| 338 public: | 313 public: |
| 339 virtual ~DataEngineInterface() {} | 314 virtual ~DataEngineInterface() {} |
| 340 virtual DataMediaChannel* CreateChannel(DataChannelType type) = 0; | 315 virtual DataMediaChannel* CreateChannel(DataChannelType type) = 0; |
| 341 virtual const std::vector<DataCodec>& data_codecs() = 0; | 316 virtual const std::vector<DataCodec>& data_codecs() = 0; |
| 342 }; | 317 }; |
| 343 | 318 |
| 344 } // namespace cricket | 319 } // namespace cricket |
| 345 | 320 |
| 346 #endif // TALK_MEDIA_BASE_MEDIAENGINE_H_ | 321 #endif // TALK_MEDIA_BASE_MEDIAENGINE_H_ |
| OLD | NEW |