// Copyright 2022 LTN Global Communications, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; package tv.make.api; option go_package = "git.ltnglobal.com/make.tv/genproto/api;api"; // The overlay type of an output transcoding. enum OutputTranscodingOverlayType { // The overlay type is unspecified or unknown. Defaults to image. OVERLAY_TYPE_UNSPECIFIED = 0; // The overlay type is an image source. OVERLAY_TYPE_IMAGE = 1; // The overlay type is a website source. OVERLAY_TYPE_WEBSITE = 2; } // OutputTranscoding represents a single transcoding of an output. message OutputTranscoding { enum InterlaceMode { INTERLACE_MODE_UNSPECIFIED = 0; PROGRESSIVE = 1; INTERLACED = 2; } enum FieldOrder { FIELD_ORDER_UNSPECIFIED = 0; TOP_FIELD_FIRST = 1; BOTTOM_FIELD_FIRST = 2; } // The number of frames per second. double fps = 1; // Width of the video in pixels. int32 width_pixels = 2; // Height of the video in pixels. int32 height_pixels = 3; // The size of a GOP (group of pictures) in seconds. double gop_size_seconds = 4; // The audio bitrate in bps. // // MUST be in the bounds of the output transcoding constraints. int32 audio_bitrate_bps = 5; // The video bitrate in bps. // // MUST be in the bounds of the output transcoding constraints. int32 video_bitrate_bps = 6; // URL for an HTML or image overlay to display. string overlay_url = 7; // The x-position of the overlay. int32 overlay_offset_x_pixels = 8; // The y-position of the overlay. int32 overlay_offset_y_pixels = 9; // Whether or not the overlay is shown. bool overlay_enabled = 10; // Whether or not this transcoding is enabled. // // Ignored for the base transcoding as it is always enabled (index=0). bool enabled = 11; // The interlace mode. InterlaceMode interlace_mode = 12; // The field order, when the transcoding is interlaced. FieldOrder field_order = 13; // The overlay type. // // Defaults to the 'OVERLAY_TYPE_IMAGE' type if unspecified. OutputTranscodingOverlayType overlay_type = 14; }