@@ -335,12 +335,22 @@ message SpriteSheet {
335335 // source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
336336 // the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
337337 // automatically calculate the missing field).
338+ //
339+ // For portrait videos that contain horizontal ASR and rotation metadata,
340+ // provide the width, in pixels, per the horizontal ASR. The API calculates
341+ // the height per the horizontal ASR. The API detects any rotation metadata
342+ // and swaps the requested height and width for the output.
338343 int32 sprite_width_pixels = 3 [(google.api.field_behavior ) = REQUIRED ];
339344
340345 // Required. The height of sprite in pixels. Must be an even integer. To preserve the
341346 // source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
342347 // the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
343348 // automatically calculate the missing field).
349+ //
350+ // For portrait videos that contain horizontal ASR and rotation metadata,
351+ // provide the height, in pixels, per the horizontal ASR. The API calculates
352+ // the width per the horizontal ASR. The API detects any rotation metadata
353+ // and swaps the requested height and width for the output.
344354 int32 sprite_height_pixels = 4 [(google.api.field_behavior ) = REQUIRED ];
345355
346356 // The maximum number of sprites per row in a sprite sheet. The default is 0,
@@ -594,6 +604,70 @@ message PreprocessingConfig {
594604 int32 right_pixels = 4 ;
595605 }
596606
607+ // Deinterlace configuration for input video.
608+ message Deinterlace {
609+ // Yet Another Deinterlacing Filter Configuration.
610+ message YadifConfig {
611+ // Specifies the deinterlacing mode to adopt.
612+ // The default is `send_frame`.
613+ // Supported values:
614+ //
615+ // - `send_frame`: Output one frame for each frame
616+ // - `send_field`: Output one frame for each field
617+ string mode = 1 ;
618+
619+ // Disable spacial interlacing.
620+ // The default is `false`.
621+ bool disable_spatial_interlacing = 2 ;
622+
623+ // The picture field parity assumed for the input interlaced video.
624+ // The default is `auto`.
625+ // Supported values:
626+ //
627+ // - `tff`: Assume the top field is first
628+ // - `bff`: Assume the bottom field is first
629+ // - `auto`: Enable automatic detection of field parity
630+ string parity = 3 ;
631+
632+ // Deinterlace all frames rather than just the frames identified as
633+ // interlaced. The default is `false`.
634+ bool deinterlace_all_frames = 4 ;
635+ }
636+
637+ // Bob Weaver Deinterlacing Filter Configuration.
638+ message BwdifConfig {
639+ // Specifies the deinterlacing mode to adopt.
640+ // The default is `send_frame`.
641+ // Supported values:
642+ //
643+ // - `send_frame`: Output one frame for each frame
644+ // - `send_field`: Output one frame for each field
645+ string mode = 1 ;
646+
647+ // The picture field parity assumed for the input interlaced video.
648+ // The default is `auto`.
649+ // Supported values:
650+ //
651+ // - `tff`: Assume the top field is first
652+ // - `bff`: Assume the bottom field is first
653+ // - `auto`: Enable automatic detection of field parity
654+ string parity = 2 ;
655+
656+ // Deinterlace all frames rather than just the frames identified as
657+ // interlaced. The default is `false`.
658+ bool deinterlace_all_frames = 3 ;
659+ }
660+
661+ // Specify the video deinterlacing filter. The default is `yadif`.
662+ oneof deinterlacing_filter {
663+ // Specifies the Yet Another Deinterlacing Filter Configuration.
664+ YadifConfig yadif = 1 ;
665+
666+ // Specifies the Bob Weaver Deinterlacing Filter Configuration.
667+ BwdifConfig bwdif = 2 ;
668+ }
669+ }
670+
597671 // Color preprocessing configuration.
598672 Color color = 1 ;
599673
@@ -611,6 +685,9 @@ message PreprocessingConfig {
611685
612686 // Specify the video pad filter configuration.
613687 Pad pad = 6 ;
688+
689+ // Specify the video deinterlace configuration.
690+ Deinterlace deinterlace = 7 ;
614691}
615692
616693// Video stream resource.
@@ -620,11 +697,21 @@ message VideoStream {
620697 // The width of the video in pixels. Must be an even integer.
621698 // When not specified, the width is adjusted to match the specified height
622699 // and input aspect ratio. If both are omitted, the input width is used.
700+ //
701+ // For portrait videos that contain horizontal ASR and rotation metadata,
702+ // provide the width, in pixels, per the horizontal ASR. The API calculates
703+ // the height per the horizontal ASR. The API detects any rotation metadata
704+ // and swaps the requested height and width for the output.
623705 int32 width_pixels = 1 ;
624706
625707 // The height of the video in pixels. Must be an even integer.
626708 // When not specified, the height is adjusted to match the specified width
627709 // and input aspect ratio. If both are omitted, the input height is used.
710+ //
711+ // For portrait videos that contain horizontal ASR and rotation metadata,
712+ // provide the height, in pixels, per the horizontal ASR. The API calculates
713+ // the width per the horizontal ASR. The API detects any rotation metadata
714+ // and swaps the requested height and width for the output.
628715 int32 height_pixels = 2 ;
629716
630717 // Required. The target video frame rate in frames per second (FPS). Must be less than
@@ -755,11 +842,21 @@ message VideoStream {
755842 // The width of the video in pixels. Must be an even integer.
756843 // When not specified, the width is adjusted to match the specified height
757844 // and input aspect ratio. If both are omitted, the input width is used.
845+ //
846+ // For portrait videos that contain horizontal ASR and rotation metadata,
847+ // provide the width, in pixels, per the horizontal ASR. The API calculates
848+ // the height per the horizontal ASR. The API detects any rotation metadata
849+ // and swaps the requested height and width for the output.
758850 int32 width_pixels = 1 ;
759851
760852 // The height of the video in pixels. Must be an even integer.
761853 // When not specified, the height is adjusted to match the specified width
762854 // and input aspect ratio. If both are omitted, the input height is used.
855+ //
856+ // For portrait videos that contain horizontal ASR and rotation metadata,
857+ // provide the height, in pixels, per the horizontal ASR. The API calculates
858+ // the width per the horizontal ASR. The API detects any rotation metadata
859+ // and swaps the requested height and width for the output.
763860 int32 height_pixels = 2 ;
764861
765862 // Required. The target video frame rate in frames per second (FPS). Must be less than
@@ -897,11 +994,21 @@ message VideoStream {
897994 // The width of the video in pixels. Must be an even integer.
898995 // When not specified, the width is adjusted to match the specified height
899996 // and input aspect ratio. If both are omitted, the input width is used.
997+ //
998+ // For portrait videos that contain horizontal ASR and rotation metadata,
999+ // provide the width, in pixels, per the horizontal ASR. The API calculates
1000+ // the height per the horizontal ASR. The API detects any rotation metadata
1001+ // and swaps the requested height and width for the output.
9001002 int32 width_pixels = 1 ;
9011003
9021004 // The height of the video in pixels. Must be an even integer.
9031005 // When not specified, the height is adjusted to match the specified width
9041006 // and input aspect ratio. If both are omitted, the input height is used.
1007+ //
1008+ // For portrait videos that contain horizontal ASR and rotation metadata,
1009+ // provide the height, in pixels, per the horizontal ASR. The API calculates
1010+ // the width per the horizontal ASR. The API detects any rotation metadata
1011+ // and swaps the requested height and width for the output.
9051012 int32 height_pixels = 2 ;
9061013
9071014 // Required. The target video frame rate in frames per second (FPS). Must be less than
0 commit comments