@norskvideo/norsk-api 1.0.343 → 1.0.345

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -59,9 +59,10 @@ interface IMediaService extends grpc.ServiceDefinition<grpc.UntypedServiceImplem
59
59
  createTransformStreamMetadataOverride: IMediaService_ICreateTransformStreamMetadataOverride;
60
60
  createTransformJitterBuffer: IMediaService_ICreateTransformJitterBuffer;
61
61
  createTransformStreamSync: IMediaService_ICreateTransformStreamSync;
62
- createTransformStreamProgramJoin: IMediaService_ICreateTransformStreamProgramJoin;
62
+ createTransformStreamAlign: IMediaService_ICreateTransformStreamAlign;
63
63
  createControlStreamStatistics: IMediaService_ICreateControlStreamStatistics;
64
64
  createControlAudioMeasureLevels: IMediaService_ICreateControlAudioMeasureLevels;
65
+ createDebugStreamTimestampReport: IMediaService_ICreateDebugStreamTimestampReport;
65
66
  createTransformAncillary: IMediaService_ICreateTransformAncillary;
66
67
  hardwareInfo: IMediaService_IHardwareInfo;
67
68
  enumDeckLinkDisplayModes: IMediaService_IEnumDeckLinkDisplayModes;
@@ -501,14 +502,14 @@ interface IMediaService_ICreateTransformStreamSync extends grpc.MethodDefinition
501
502
  responseSerialize: grpc.serialize<media_pb.StreamSyncEvent>;
502
503
  responseDeserialize: grpc.deserialize<media_pb.StreamSyncEvent>;
503
504
  }
504
- interface IMediaService_ICreateTransformStreamProgramJoin extends grpc.MethodDefinition<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent> {
505
- path: "/norsk.api.media.Media/CreateTransformStreamProgramJoin";
505
+ interface IMediaService_ICreateTransformStreamAlign extends grpc.MethodDefinition<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent> {
506
+ path: "/norsk.api.media.Media/CreateTransformStreamAlign";
506
507
  requestStream: true;
507
508
  responseStream: true;
508
- requestSerialize: grpc.serialize<media_pb.StreamProgramJoinMessage>;
509
- requestDeserialize: grpc.deserialize<media_pb.StreamProgramJoinMessage>;
510
- responseSerialize: grpc.serialize<media_pb.StreamProgramJoinEvent>;
511
- responseDeserialize: grpc.deserialize<media_pb.StreamProgramJoinEvent>;
509
+ requestSerialize: grpc.serialize<media_pb.StreamAlignMessage>;
510
+ requestDeserialize: grpc.deserialize<media_pb.StreamAlignMessage>;
511
+ responseSerialize: grpc.serialize<media_pb.StreamAlignEvent>;
512
+ responseDeserialize: grpc.deserialize<media_pb.StreamAlignEvent>;
512
513
  }
513
514
  interface IMediaService_ICreateControlStreamStatistics extends grpc.MethodDefinition<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent> {
514
515
  path: "/norsk.api.media.Media/CreateControlStreamStatistics";
@@ -528,6 +529,15 @@ interface IMediaService_ICreateControlAudioMeasureLevels extends grpc.MethodDefi
528
529
  responseSerialize: grpc.serialize<media_pb.AudioMeasureLevelsEvent>;
529
530
  responseDeserialize: grpc.deserialize<media_pb.AudioMeasureLevelsEvent>;
530
531
  }
532
+ interface IMediaService_ICreateDebugStreamTimestampReport extends grpc.MethodDefinition<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent> {
533
+ path: "/norsk.api.media.Media/CreateDebugStreamTimestampReport";
534
+ requestStream: true;
535
+ responseStream: true;
536
+ requestSerialize: grpc.serialize<media_pb.StreamTimestampReportMessage>;
537
+ requestDeserialize: grpc.deserialize<media_pb.StreamTimestampReportMessage>;
538
+ responseSerialize: grpc.serialize<media_pb.StreamTimestampReportEvent>;
539
+ responseDeserialize: grpc.deserialize<media_pb.StreamTimestampReportEvent>;
540
+ }
531
541
  interface IMediaService_ICreateTransformAncillary extends grpc.MethodDefinition<media_pb.AncillaryMessage, media_pb.AncillaryEvent> {
532
542
  path: "/norsk.api.media.Media/CreateTransformAncillary";
533
543
  requestStream: true;
@@ -625,9 +635,10 @@ export interface IMediaServer extends grpc.UntypedServiceImplementation {
625
635
  createTransformStreamMetadataOverride: grpc.handleBidiStreamingCall<media_pb.StreamMetadataOverrideMessage, media_pb.StreamMetadataOverrideEvent>;
626
636
  createTransformJitterBuffer: grpc.handleBidiStreamingCall<media_pb.JitterBufferMessage, media_pb.JitterBufferEvent>;
627
637
  createTransformStreamSync: grpc.handleBidiStreamingCall<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
628
- createTransformStreamProgramJoin: grpc.handleBidiStreamingCall<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
638
+ createTransformStreamAlign: grpc.handleBidiStreamingCall<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
629
639
  createControlStreamStatistics: grpc.handleBidiStreamingCall<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
630
640
  createControlAudioMeasureLevels: grpc.handleBidiStreamingCall<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
641
+ createDebugStreamTimestampReport: grpc.handleBidiStreamingCall<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
631
642
  createTransformAncillary: grpc.handleBidiStreamingCall<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
632
643
  hardwareInfo: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, media_pb.Hardware>;
633
644
  enumDeckLinkDisplayModes: grpc.handleUnaryCall<media_pb.DeckLinkCardIndex, media_pb.DeckLinkDisplayModes>;
@@ -776,15 +787,18 @@ export interface IMediaClient {
776
787
  createTransformStreamSync(): grpc.ClientDuplexStream<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
777
788
  createTransformStreamSync(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
778
789
  createTransformStreamSync(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
779
- createTransformStreamProgramJoin(): grpc.ClientDuplexStream<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
780
- createTransformStreamProgramJoin(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
781
- createTransformStreamProgramJoin(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
790
+ createTransformStreamAlign(): grpc.ClientDuplexStream<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
791
+ createTransformStreamAlign(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
792
+ createTransformStreamAlign(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
782
793
  createControlStreamStatistics(): grpc.ClientDuplexStream<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
783
794
  createControlStreamStatistics(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
784
795
  createControlStreamStatistics(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
785
796
  createControlAudioMeasureLevels(): grpc.ClientDuplexStream<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
786
797
  createControlAudioMeasureLevels(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
787
798
  createControlAudioMeasureLevels(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
799
+ createDebugStreamTimestampReport(): grpc.ClientDuplexStream<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
800
+ createDebugStreamTimestampReport(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
801
+ createDebugStreamTimestampReport(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
788
802
  createTransformAncillary(): grpc.ClientDuplexStream<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
789
803
  createTransformAncillary(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
790
804
  createTransformAncillary(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
@@ -900,12 +914,14 @@ export class MediaClient extends grpc.Client implements IMediaClient {
900
914
  public createTransformJitterBuffer(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.JitterBufferMessage, media_pb.JitterBufferEvent>;
901
915
  public createTransformStreamSync(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
902
916
  public createTransformStreamSync(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamSyncMessage, media_pb.StreamSyncEvent>;
903
- public createTransformStreamProgramJoin(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
904
- public createTransformStreamProgramJoin(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamProgramJoinMessage, media_pb.StreamProgramJoinEvent>;
917
+ public createTransformStreamAlign(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
918
+ public createTransformStreamAlign(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamAlignMessage, media_pb.StreamAlignEvent>;
905
919
  public createControlStreamStatistics(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
906
920
  public createControlStreamStatistics(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamStatisticsMessage, media_pb.StreamStatisticsEvent>;
907
921
  public createControlAudioMeasureLevels(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
908
922
  public createControlAudioMeasureLevels(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AudioMeasureLevelsMessage, media_pb.AudioMeasureLevelsEvent>;
923
+ public createDebugStreamTimestampReport(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
924
+ public createDebugStreamTimestampReport(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.StreamTimestampReportMessage, media_pb.StreamTimestampReportEvent>;
909
925
  public createTransformAncillary(options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
910
926
  public createTransformAncillary(metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<media_pb.AncillaryMessage, media_pb.AncillaryEvent>;
911
927
  public hardwareInfo(request: google_protobuf_empty_pb.Empty, callback: (error: grpc.ServiceError | null, response: media_pb.Hardware) => void): grpc.ClientUnaryCall;
@@ -689,6 +689,28 @@ function deserialize_norsk_api_media_SrtOutputMessage(buffer_arg) {
689
689
  return media_pb.SrtOutputMessage.fromBinary(new Uint8Array(buffer_arg));
690
690
  }
691
691
 
692
+ function serialize_norsk_api_media_StreamAlignEvent(arg) {
693
+ if (!(arg instanceof media_pb.StreamAlignEvent)) {
694
+ throw new Error('Expected argument of type norsk.api.media.StreamAlignEvent');
695
+ }
696
+ return Buffer.from(arg.toBinary());
697
+ }
698
+
699
+ function deserialize_norsk_api_media_StreamAlignEvent(buffer_arg) {
700
+ return media_pb.StreamAlignEvent.fromBinary(new Uint8Array(buffer_arg));
701
+ }
702
+
703
+ function serialize_norsk_api_media_StreamAlignMessage(arg) {
704
+ if (!(arg instanceof media_pb.StreamAlignMessage)) {
705
+ throw new Error('Expected argument of type norsk.api.media.StreamAlignMessage');
706
+ }
707
+ return Buffer.from(arg.toBinary());
708
+ }
709
+
710
+ function deserialize_norsk_api_media_StreamAlignMessage(buffer_arg) {
711
+ return media_pb.StreamAlignMessage.fromBinary(new Uint8Array(buffer_arg));
712
+ }
713
+
692
714
  function serialize_norsk_api_media_StreamChaosMonkeyEvent(arg) {
693
715
  if (!(arg instanceof media_pb.StreamChaosMonkeyEvent)) {
694
716
  throw new Error('Expected argument of type norsk.api.media.StreamChaosMonkeyEvent');
@@ -755,28 +777,6 @@ function deserialize_norsk_api_media_StreamMetadataOverrideMessage(buffer_arg) {
755
777
  return media_pb.StreamMetadataOverrideMessage.fromBinary(new Uint8Array(buffer_arg));
756
778
  }
757
779
 
758
- function serialize_norsk_api_media_StreamProgramJoinEvent(arg) {
759
- if (!(arg instanceof media_pb.StreamProgramJoinEvent)) {
760
- throw new Error('Expected argument of type norsk.api.media.StreamProgramJoinEvent');
761
- }
762
- return Buffer.from(arg.toBinary());
763
- }
764
-
765
- function deserialize_norsk_api_media_StreamProgramJoinEvent(buffer_arg) {
766
- return media_pb.StreamProgramJoinEvent.fromBinary(new Uint8Array(buffer_arg));
767
- }
768
-
769
- function serialize_norsk_api_media_StreamProgramJoinMessage(arg) {
770
- if (!(arg instanceof media_pb.StreamProgramJoinMessage)) {
771
- throw new Error('Expected argument of type norsk.api.media.StreamProgramJoinMessage');
772
- }
773
- return Buffer.from(arg.toBinary());
774
- }
775
-
776
- function deserialize_norsk_api_media_StreamProgramJoinMessage(buffer_arg) {
777
- return media_pb.StreamProgramJoinMessage.fromBinary(new Uint8Array(buffer_arg));
778
- }
779
-
780
780
  function serialize_norsk_api_media_StreamStatisticsEvent(arg) {
781
781
  if (!(arg instanceof media_pb.StreamStatisticsEvent)) {
782
782
  throw new Error('Expected argument of type norsk.api.media.StreamStatisticsEvent');
@@ -887,6 +887,28 @@ function deserialize_norsk_api_media_StreamTimestampNudgeMessage(buffer_arg) {
887
887
  return media_pb.StreamTimestampNudgeMessage.fromBinary(new Uint8Array(buffer_arg));
888
888
  }
889
889
 
890
+ function serialize_norsk_api_media_StreamTimestampReportEvent(arg) {
891
+ if (!(arg instanceof media_pb.StreamTimestampReportEvent)) {
892
+ throw new Error('Expected argument of type norsk.api.media.StreamTimestampReportEvent');
893
+ }
894
+ return Buffer.from(arg.toBinary());
895
+ }
896
+
897
+ function deserialize_norsk_api_media_StreamTimestampReportEvent(buffer_arg) {
898
+ return media_pb.StreamTimestampReportEvent.fromBinary(new Uint8Array(buffer_arg));
899
+ }
900
+
901
+ function serialize_norsk_api_media_StreamTimestampReportMessage(arg) {
902
+ if (!(arg instanceof media_pb.StreamTimestampReportMessage)) {
903
+ throw new Error('Expected argument of type norsk.api.media.StreamTimestampReportMessage');
904
+ }
905
+ return Buffer.from(arg.toBinary());
906
+ }
907
+
908
+ function deserialize_norsk_api_media_StreamTimestampReportMessage(buffer_arg) {
909
+ return media_pb.StreamTimestampReportMessage.fromBinary(new Uint8Array(buffer_arg));
910
+ }
911
+
890
912
  function serialize_norsk_api_media_TsInputEvent(arg) {
891
913
  if (!(arg instanceof media_pb.TsInputEvent)) {
892
914
  throw new Error('Expected argument of type norsk.api.media.TsInputEvent');
@@ -1787,21 +1809,19 @@ createTransformStreamSync: {
1787
1809
  responseDeserialize: deserialize_norsk_api_media_StreamSyncEvent,
1788
1810
  },
1789
1811
  // *
1790
- // Take multiple subscriptions, wait for all frames to be available on all streams
1791
- // Set the program of each stream to be the same, and then rebase all timestamps so that
1792
- // all streams start at the same point.
1793
- // This is useful if multiple inputs are supposed to be connected at the same time (file readers for example)
1794
- // and we want their timestamps to be aligned completely
1795
- createTransformStreamProgramJoin: {
1796
- path: '/norsk.api.media.Media/CreateTransformStreamProgramJoin',
1812
+ // Take multiple streams from a single program, and rebase their timestamps so that they are all aligned
1813
+ // This can ensure that frames going into streamswitch don't end up with gaps over a switch boundary
1814
+ // Additionally, merging multiple video streams in compose and multiple audio streams in audio mix
1815
+ createTransformStreamAlign: {
1816
+ path: '/norsk.api.media.Media/CreateTransformStreamAlign',
1797
1817
  requestStream: true,
1798
1818
  responseStream: true,
1799
- requestType: media_pb.StreamProgramJoinMessage,
1800
- responseType: media_pb.StreamProgramJoinEvent,
1801
- requestSerialize: serialize_norsk_api_media_StreamProgramJoinMessage,
1802
- requestDeserialize: deserialize_norsk_api_media_StreamProgramJoinMessage,
1803
- responseSerialize: serialize_norsk_api_media_StreamProgramJoinEvent,
1804
- responseDeserialize: deserialize_norsk_api_media_StreamProgramJoinEvent,
1819
+ requestType: media_pb.StreamAlignMessage,
1820
+ responseType: media_pb.StreamAlignEvent,
1821
+ requestSerialize: serialize_norsk_api_media_StreamAlignMessage,
1822
+ requestDeserialize: deserialize_norsk_api_media_StreamAlignMessage,
1823
+ responseSerialize: serialize_norsk_api_media_StreamAlignEvent,
1824
+ responseDeserialize: deserialize_norsk_api_media_StreamAlignEvent,
1805
1825
  },
1806
1826
  // *
1807
1827
  // Record statistical information about media streams, including bitrate,
@@ -1834,6 +1854,20 @@ createControlAudioMeasureLevels: {
1834
1854
  responseDeserialize: deserialize_norsk_api_media_AudioMeasureLevelsEvent,
1835
1855
  },
1836
1856
  // *
1857
+ // Emits an event for every frame for every stream containing the timestamp
1858
+ // of that frame.
1859
+ createDebugStreamTimestampReport: {
1860
+ path: '/norsk.api.media.Media/CreateDebugStreamTimestampReport',
1861
+ requestStream: true,
1862
+ responseStream: true,
1863
+ requestType: media_pb.StreamTimestampReportMessage,
1864
+ responseType: media_pb.StreamTimestampReportEvent,
1865
+ requestSerialize: serialize_norsk_api_media_StreamTimestampReportMessage,
1866
+ requestDeserialize: deserialize_norsk_api_media_StreamTimestampReportMessage,
1867
+ responseSerialize: serialize_norsk_api_media_StreamTimestampReportEvent,
1868
+ responseDeserialize: deserialize_norsk_api_media_StreamTimestampReportEvent,
1869
+ },
1870
+ // *
1837
1871
  // Observe, modify or inject ancillary data such as SCTE-35
1838
1872
  createTransformAncillary: {
1839
1873
  path: '/norsk.api.media.Media/CreateTransformAncillary',