Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/dom/media/webrtc/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 2 kB image not shown  

Quelle  MediaEnginePrefs.h   Sprache: C

 
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef MediaEnginePrefs_h
#define MediaEnginePrefs_h

#include <stdint.h>
#include <string.h>

namespace mozilla {

/**
 * Video source and friends.
 */

class MediaEnginePrefs {
 public:
  static const int DEFAULT_VIDEO_FPS = 30;
  static const int DEFAULT_43_VIDEO_WIDTH = 640;
  static const int DEFAULT_43_VIDEO_HEIGHT = 480;
  static const int DEFAULT_169_VIDEO_WIDTH = 1280;
  static const int DEFAULT_169_VIDEO_HEIGHT = 720;

  MediaEnginePrefs()
      : mWidth(0),
        mHeight(0),
        mFPS(0),
        mFreq(0),
        mUsePlatformProcessing(false),
        mAecOn(false),
        mUseAecMobile(false),
        mAgcOn(false),
        mHPFOn(false),
        mNoiseOn(false),
        mTransientOn(false),
        mAgc2Forced(false),
        mExpectDrift(-1),  // auto
        mAgc(0),
        mNoise(0),
        mChannels(0) {}

  int32_t mWidth;
  int32_t mHeight;
  int32_t mFPS;
  int32_t mFreq;  // for test tones (fake:true)
  bool mUsePlatformProcessing;
  bool mAecOn;
  bool mUseAecMobile;
  bool mAgcOn;
  bool mHPFOn;
  bool mNoiseOn;
  bool mTransientOn;
  bool mAgc2Forced;
  int32_t mExpectDrift;
  int32_t mAgc;
  int32_t mNoise;
  int32_t mChannels;

  bool operator==(const MediaEnginePrefs& aRhs) {
    return memcmp(this, &aRhs, sizeof(MediaEnginePrefs)) == 0;
  };

  // mWidth and/or mHeight may be zero (=adaptive default), so use functions.

  int32_t GetWidth(bool aHD = falseconst {
    return mWidth ? mWidth
                  : (mHeight ? (mHeight * GetDefWidth(aHD)) / GetDefHeight(aHD)
                             : GetDefWidth(aHD));
  }

  int32_t GetHeight(bool aHD = falseconst {
    return mHeight ? mHeight
                   : (mWidth ? (mWidth * GetDefHeight(aHD)) / GetDefWidth(aHD)
                             : GetDefHeight(aHD));
  }

 private:
  static int32_t GetDefWidth(bool aHD = false) {
    // It'd be nice if we could use the ternary operator here, but we can't
    // because of bug 1002729.
    if (aHD) {
      return DEFAULT_169_VIDEO_WIDTH;
    }

    return DEFAULT_43_VIDEO_WIDTH;
  }

  static int32_t GetDefHeight(bool aHD = false) {
    // It'd be nice if we could use the ternary operator here, but we can't
    // because of bug 1002729.
    if (aHD) {
      return DEFAULT_169_VIDEO_HEIGHT;
    }

    return DEFAULT_43_VIDEO_HEIGHT;
  }
};

}  // namespace mozilla

#endif  // MediaEnginePrefs_h

Messung V0.5
C=94 H=97 G=95

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.