#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "media/mojo/mojom/video_encoder_info.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "media/mojo/mojom/video_encoder_info.mojom-params-data.h"
#include "media/mojo/mojom/video_encoder_info.mojom-shared-message-ids.h"
#include "media/mojo/mojom/video_encoder_info.mojom-import-headers.h"
#include "media/mojo/mojom/video_encoder_info.mojom-test-utils.h"
namespace media::mojom {
ResolutionBitrateLimit::ResolutionBitrateLimit()
: … { … }
ResolutionBitrateLimit::ResolutionBitrateLimit(
const ::gfx::Size& frame_size_in,
int32_t min_start_bitrate_bps_in,
int32_t min_bitrate_bps_in,
int32_t max_bitrate_bps_in)
: … { … }
ResolutionBitrateLimit::~ResolutionBitrateLimit() = default;
void ResolutionBitrateLimit::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool ResolutionBitrateLimit::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
VideoEncoderInfo::VideoEncoderInfo()
: … { … }
VideoEncoderInfo::VideoEncoderInfo(
const std::string& implementation_name_in,
bool has_frame_delay_in,
int32_t frame_delay_in,
bool has_input_capacity_in,
int32_t input_capacity_in,
bool supports_native_handle_in,
bool has_trusted_rate_controller_in,
bool is_hardware_accelerated_in,
bool supports_simulcast_in,
bool reports_average_qp_in,
uint32_t requested_resolution_alignment_in,
bool apply_alignment_to_all_simulcast_layers_in,
bool supports_frame_size_change_in,
std::vector<std::vector<uint8_t>> fps_allocation_in,
std::vector<::media::ResolutionBitrateLimit> resolution_bitrate_limits_in)
: … { … }
VideoEncoderInfo::~VideoEncoderInfo() = default;
void VideoEncoderInfo::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool VideoEncoderInfo::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
}
namespace mojo {
bool StructTraits<::media::mojom::ResolutionBitrateLimit::DataView, ::media::mojom::ResolutionBitrateLimitPtr>::Read(
::media::mojom::ResolutionBitrateLimit::DataView input,
::media::mojom::ResolutionBitrateLimitPtr* output) { … }
bool StructTraits<::media::mojom::VideoEncoderInfo::DataView, ::media::mojom::VideoEncoderInfoPtr>::Read(
::media::mojom::VideoEncoderInfo::DataView input,
::media::mojom::VideoEncoderInfoPtr* output) { … }
}
namespace media::mojom {
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif