blob: 99a73672822f45691ee37378e881e2928d3cd206 [file] [log] [blame]
// Copyright 2021 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.
{
include: [
"inspect/client.shard.cml",
"syslog/client.shard.cml",
"trace/client.shard.cml",
],
program: {
runner: "elf",
binary: "bin/codec_factory",
},
collections: [
{
name: "sw-codecs",
// every component started in this collection will self-destruct when
// it exits
durability: "single_run",
},
{
name: "magma-codecs",
// every component started in this collection will self-destruct when
// it exits
durability: "single_run",
},
],
capabilities: [
{ protocol: "fuchsia.mediacodec.CodecFactory" },
],
use: [
{
// TODO(https://fxbug.dev/324273348): Remove this capability once the clients have
// been migrated to services. The service capability has been added below.
directory: "dev-mediacodec",
rights: [ "r*" ],
path: "/dev/class/media-codec",
},
{
// This service replaces the directory capability above.
service: "fuchsia.hardware.mediacodec.Service",
},
{
// TODO(https://fxbug.dev/324273348): Remove this capability once the clients have
// been migrated to services. The service capability has been added below.
directory: "dev-gpu",
rights: [ "r*" ],
path: "/dev/class/gpu",
},
{
// This service replaces the directory capability above.
service: "fuchsia.gpu.magma.Service",
},
{
protocol: [
"fuchsia.metrics.MetricEventLoggerFactory",
"fuchsia.sysinfo.SysInfo",
],
},
{
protocol: "fuchsia.component.Realm",
from: "framework",
},
],
offer: [
{
protocol: [
"fuchsia.sysmem.Allocator",
"fuchsia.sysmem2.Allocator",
],
from: "parent",
to: [
"#magma-codecs",
"#sw-codecs",
],
},
{
// TODO(https://fxbug.dev/324273348): Remove this capability once the clients have
// been migrated to services. The service capability has been added below.
directory: "dev-gpu",
from: "parent",
to: "#magma-codecs",
},
{
// This service replaces the directory capability above.
service: "fuchsia.gpu.magma.Service",
from: "parent",
to: "#magma-codecs",
},
{
dictionary: "diagnostics",
from: "parent",
to: "all",
},
],
expose: [
{
protocol: "fuchsia.mediacodec.CodecFactory",
from: "self",
},
],
}