Skip to content

Commit a5f8761

Browse files
Google APIscopybara-github
authored andcommitted
feat!: introduce GAM settings for GAM related configs and support ListOperations
PiperOrigin-RevId: 524328971
1 parent 63d1a0e commit a5f8761

5 files changed

Lines changed: 35 additions & 58 deletions

File tree

google/cloud/video/stitcher/v1/live_configs.proto

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ option java_multiple_files = true;
2525
option java_outer_classname = "LiveConfigsProto";
2626
option java_package = "com.google.cloud.video.stitcher.v1";
2727

28-
// Determines the Ad tracking policy.
28+
// Determines the ad tracking policy.
2929
enum AdTracking {
3030
// The ad tracking policy is not specified.
3131
AD_TRACKING_UNSPECIFIED = 0;
3232

33-
// Client side ad tracking is specified. The client player is expected to
33+
// Client-side ad tracking is specified. The client player is expected to
3434
// trigger playback and activity events itself.
3535
CLIENT = 1;
3636

@@ -63,7 +63,7 @@ message LiveConfig {
6363

6464
// Defines the ad stitching behavior in case the ad duration does not align
6565
// exactly with the ad break boundaries. If not specified, the default is
66-
// CUT_CURRENT.
66+
// `CUT_CURRENT`.
6767
enum StitchingPolicy {
6868
// Stitching policy is not specified.
6969
STITCHING_POLICY_UNSPECIFIED = 0;
@@ -92,14 +92,14 @@ message LiveConfig {
9292
// Output only. State of the live config.
9393
State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
9494

95-
// Required. Determines how the ads should be tracked. If
95+
// Required. Determines how the ads are tracked. If
9696
// [gam_live_config][google.cloud.video.stitcher.v1.LiveConfig.gam_live_config]
9797
// is set, the value must be `CLIENT` because the IMA SDK handles ad tracking.
9898
AdTracking ad_tracking = 6 [(google.api.field_behavior) = REQUIRED];
9999

100100
// This must refer to a slate in the same
101-
// project. In case Google Ad Manager (GAM) is being used for ads this will be
102-
// used to set the appropriate value of slateCreativeId in
101+
// project. If Google Ad Manager (GAM) is used for ads, this string sets the
102+
// value of `slateCreativeId` in
103103
// https://developers.google.com/ad-manager/api/reference/v202211/LiveStreamEventService.LiveStreamEvent#slateCreativeId
104104
string default_slate = 7 [(google.api.resource_reference) = {
105105
type: "videostitcher.googleapis.com/Slate"

google/cloud/video/stitcher/v1/sessions.proto

Lines changed: 13 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,23 @@ option java_multiple_files = true;
2828
option java_outer_classname = "SessionsProto";
2929
option java_package = "com.google.cloud.video.stitcher.v1";
3030

31-
// Metadata for registering a VOD Session with Google Ad Manager (GAM).
32-
message GamVodConfig {
33-
// Required. Ad Manager network code.
34-
string network_code = 1 [(google.api.field_behavior) = REQUIRED];
35-
36-
// Required. The stream ID generated by Ad Manager.
37-
string stream_id = 2 [(google.api.field_behavior) = REQUIRED];
38-
}
39-
4031
// Metadata for a VOD session. The session expires 4 hours after its creation.
4132
message VodSession {
4233
option (google.api.resource) = {
4334
type: "videostitcher.googleapis.com/VodSession"
4435
pattern: "projects/{project}/locations/{location}/vodSessions/{vod_session}"
4536
};
4637

38+
// Defines fields related to Google Ad Manager (GAM). This should be set if
39+
// GAM is being used for ads.
40+
message GamSettings {
41+
// Required. Ad Manager network code.
42+
string network_code = 1 [(google.api.field_behavior) = REQUIRED];
43+
44+
// Required. The stream ID generated by Ad Manager.
45+
string stream_id = 2 [(google.api.field_behavior) = REQUIRED];
46+
}
47+
4748
// Output only. The name of the VOD session, in the form of
4849
// `projects/{project_number}/locations/{location}/vodSessions/{id}`.
4950
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
@@ -85,9 +86,9 @@ message VodSession {
8586
// is set, the value must be `CLIENT` because the IMA SDK handles ad tracking.
8687
AdTracking ad_tracking = 11 [(google.api.field_behavior) = REQUIRED];
8788

88-
// This has the Google Ad Manager (GAM) related metadata in the case where GAM
89-
// is used for the ads.
90-
GamVodConfig gam_vod_config = 12;
89+
// This field should be set with appropriate values if GAM is being used for
90+
// ads.
91+
GamSettings gam_settings = 13;
9192
}
9293

9394
// Describes what was stitched into a VOD session's manifest.
@@ -149,26 +150,6 @@ message LiveSession {
149150
// GAM
150151
// is being used for ads.
151152
message GamSettings {
152-
// GamHls is a container for any HLS specific input fields for GAM
153-
// Live Stitching.
154-
message GamHls {}
155-
156-
// GamDash is a container for any DASH specific input fields for GAM
157-
// Live Stitching.
158-
message GamDash {
159-
// Required. The session template url by Ad Manager for DASH periods.
160-
string period_template_uri = 1 [(google.api.field_behavior) = REQUIRED];
161-
}
162-
163-
// Extra manifest type specific fields.
164-
oneof manifest_fields {
165-
// Fields that are specific to HLS manifests.
166-
GamHls gam_hls = 2;
167-
168-
// Fields that are specific to DASH manifests.
169-
GamDash gam_dash = 3;
170-
}
171-
172153
// Required. The stream ID generated by Ad Manager.
173154
string stream_id = 1 [(google.api.field_behavior) = REQUIRED];
174155
}

google/cloud/video/stitcher/v1/slates.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,6 @@ message Slate {
4949
// MP4 video with at least one audio track.
5050
string uri = 2;
5151

52-
// gam_slate has all the GAM related attributes of slates.
52+
// gam_slate has all the GAM-related attributes of slates.
5353
GamSlate gam_slate = 3;
5454
}

google/cloud/video/stitcher/v1/video_stitcher_service.proto

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ service VideoStitcherService {
5454
};
5555
option (google.api.method_signature) = "parent,cdn_key,cdn_key_id";
5656
option (google.longrunning.operation_info) = {
57-
response_type: "CdnKey"
58-
metadata_type: "OperationMetadata"
57+
response_type: "google.cloud.video.stitcher.v1.CdnKey"
58+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
5959
};
6060
}
6161

@@ -83,7 +83,7 @@ service VideoStitcherService {
8383
option (google.api.method_signature) = "name";
8484
option (google.longrunning.operation_info) = {
8585
response_type: "google.protobuf.Empty"
86-
metadata_type: "OperationMetadata"
86+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
8787
};
8888
}
8989

@@ -96,8 +96,8 @@ service VideoStitcherService {
9696
};
9797
option (google.api.method_signature) = "cdn_key,update_mask";
9898
option (google.longrunning.operation_info) = {
99-
response_type: "CdnKey"
100-
metadata_type: "OperationMetadata"
99+
response_type: "google.cloud.video.stitcher.v1.CdnKey"
100+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
101101
};
102102
}
103103

@@ -180,8 +180,8 @@ service VideoStitcherService {
180180
};
181181
option (google.api.method_signature) = "parent,slate,slate_id";
182182
option (google.longrunning.operation_info) = {
183-
response_type: "Slate"
184-
metadata_type: "OperationMetadata"
183+
response_type: "google.cloud.video.stitcher.v1.Slate"
184+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
185185
};
186186
}
187187

@@ -209,8 +209,8 @@ service VideoStitcherService {
209209
};
210210
option (google.api.method_signature) = "slate,update_mask";
211211
option (google.longrunning.operation_info) = {
212-
response_type: "Slate"
213-
metadata_type: "OperationMetadata"
212+
response_type: "google.cloud.video.stitcher.v1.Slate"
213+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
214214
};
215215
}
216216

@@ -222,7 +222,7 @@ service VideoStitcherService {
222222
option (google.api.method_signature) = "name";
223223
option (google.longrunning.operation_info) = {
224224
response_type: "google.protobuf.Empty"
225-
metadata_type: "OperationMetadata"
225+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
226226
};
227227
}
228228

@@ -253,8 +253,8 @@ service VideoStitcherService {
253253
};
254254
option (google.api.method_signature) = "parent,live_config,live_config_id";
255255
option (google.longrunning.operation_info) = {
256-
response_type: "LiveConfig"
257-
metadata_type: "OperationMetadata"
256+
response_type: "google.cloud.video.stitcher.v1.LiveConfig"
257+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
258258
};
259259
}
260260

@@ -286,7 +286,7 @@ service VideoStitcherService {
286286
option (google.api.method_signature) = "name";
287287
option (google.longrunning.operation_info) = {
288288
response_type: "google.protobuf.Empty"
289-
metadata_type: "OperationMetadata"
289+
metadata_type: "google.cloud.video.stitcher.v1.OperationMetadata"
290290
};
291291
}
292292
}

google/cloud/video/stitcher/v1/videostitcher_v1.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,8 @@ apis:
77
- name: google.cloud.video.stitcher.v1.VideoStitcherService
88
- name: google.longrunning.Operations
99

10-
documentation:
11-
rules:
12-
- selector: google.longrunning.Operations.ListOperations
13-
description: |-
14-
Lists operations that match the specified filter in the request. If
15-
the server doesn't support this method, it returns `UNIMPLEMENTED`.
10+
types:
11+
- name: google.cloud.video.stitcher.v1.OperationMetadata
1612

1713
backend:
1814
rules:

0 commit comments

Comments
 (0)