aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/yandex-cloud-api-protos/yandex/cloud/video/v1/stream_line.proto
blob: 23bb14a581eeeab42cf9f67face97a07bcc1a8de (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
syntax = "proto3";

package yandex.cloud.video.v1;

import "google/protobuf/timestamp.proto";

option go_package = "github.com/yandex-cloud/go-genproto/yandex/cloud/video/v1;video";
option java_package = "yandex.cloud.api.video.v1";

// Entity that is responsible for the incoming video signal settings.
message StreamLine {
  reserved 102 to 199;
  reserved 201 to 999;
  reserved 1005;
  reserved 1007 to 1999;
  reserved 5 to 99;
  // ID of the line.
  string id = 1;
  // ID of the channel where the line was created.
  string channel_id = 2;

  // Line title.
  string title = 3;
  // ID of the thumbnail.
  string thumbnail_id = 4;

  // Video signal settings.
  oneof input_type {
    // RTMP push input type.
    RTMPPushInput rtmp_push = 1000;
    // SRT push input type.
    SRTPushInput srt_push = 1001;
    // RTMP pull input type.
    RTMPPullInput rtmp_pull = 1002;
    // SRT pull input type.
    SRTPullInput srt_pull = 1003;
    // TCP pull input type.
    TCPPullInput tcp_pull = 1004;
    // RTSP pull input type.
    RTSPPullInput rtsp_pull = 1006;
  }

  // Line type.
  oneof line_type {
    // Manual control of stream.
    ManualLine manual_line = 2000;
    // Automatic control of stream.
    AutoLine auto_line = 2001;
  }

  // Time when line was created.
  google.protobuf.Timestamp created_at = 100;
  // Time of last line update.
  google.protobuf.Timestamp updated_at = 101;

  // Custom labels as `` key:value `` pairs. Maximum 64 per resource.
  map<string, string> labels = 200;
}

// Push stream key.
message PushStreamKey {
  // Unique stream key.
  string key = 1;
}

message RTMPPushInput {
  // RTMP server url.
  string url = 1;
}

message SRTPushInput {
  // SRT server url.
  string url = 1;
}

message RTMPPullInput {
  // RTMP url for receiving video signal.
  string url = 1;
}

message SRTPullInput {
  // SRT url for receiving video signal.
  string url = 1;
}

message TCPPullInput {
  // TCP url for receiving video signal.
  string url = 1;
}

message RTSPPullInput {
  // RTSP url for receiving video signal.
  string url = 1;
}

// Manual line type.
message ManualLine {}

// Auto line type.
message AutoLine {
  // Status of auto line.
  AutoLineStatus status = 1;

  // Auto line status.
  enum AutoLineStatus {
    // Auto line status unspecified.
    AUTO_LINE_STATUS_UNSPECIFIED = 0;
    // Auto line deactivated.
    DEACTIVATED = 1;
    // Auto line active.
    ACTIVE = 2;
  }
}