# Copyright 2020 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# DO NOT MANUALLY EDIT!
# Generated by //scripts/sdk/gn/generate.py.


import("../../build/fidl_library.gni")

fidl_library("fuchsia.media") {
  library_name = "media"
  namespace = "fuchsia"
  public_deps = [
    "../fuchsia.images",
    "../fuchsia.media.audio",
    "../fuchsia.sysmem",
  ]
  sources = [
    "activity_reporter.fidl",
    "audio.fidl",
    "audio_capturer.fidl",
    "audio_consumer.fidl",
    "audio_core.fidl",
    "audio_device_enumerator.fidl",
    "audio_renderer.fidl",
    "metadata.fidl",
    "profile_provider.fidl",
    "stream.fidl",
    "stream_common.fidl",
    "stream_processor.fidl",
    "stream_type.fidl",
    "timeline_function.fidl",
    "usage_reporter.fidl",
  ]
}

group("all"){
  deps = [
    ":fuchsia.media",
  ]
}
