blob: 24bd8c99b2590fc35835d1fc4516b770be47b45f [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.
library fuchsia.media2;
using zx;
/// Describes when a transport control operation is to occur using
/// a time value that is comprehensible when the transport is
/// stopped.
type RealTime = flexible union {
1: system_time zx.time;
2: reference_time zx.time;
};
/// Describes when a transport control operation is to occur using
/// a time value that is comprehensible when the transport is
/// progressing. This is intended for renderers and consumers,
/// which recognize presentation time.
type RealOrPresentationTime = flexible union {
1: system_time zx.time;
2: reference_time zx.time;
3: presentation_time zx.duration;
};
type StartError = flexible enum {
CANCELED = 1;
ALREADY_STARTED = 2;
};
type StopError = flexible enum {
CANCELED = 1;
ALREADY_STOPPED = 2;
};
type SetRateError = flexible enum {
NOT_SUPPORTED = 1;
CANCELED = 2;
SCHEDULED_IN_PAST = 3;
};
type AmendPresentationError = flexible enum {
CANCELED = 1;
SCHEDULED_IN_PAST = 2;
NOT_STARTED = 3;
};