Skip to content

Latest commit

 

History

History
80 lines (75 loc) · 7.1 KB

streampatchpayload.md

File metadata and controls

80 lines (75 loc) · 7.1 KB

StreamPatchPayload

Example Usage

import {
  Profile,
  StreamPatchPayload,
  TranscodeProfileEncoder,
  TranscodeProfileProfile,
  Type,
} from "livepeer/models/components";

let value: StreamPatchPayload = {
  record: false,
  multistream: {
    targets: [
      {
        profile: "720p",
        videoOnly: false,
        id: "PUSH123",
        spec: {
          name: "My target",
          url: "rtmps://live.my-service.tv/channel/secretKey",
        },
      },
    ],
  },
  playbackPolicy: {
    type: Type.Webhook,
    webhookId: "1bde4o2i6xycudoy",
    webhookContext: {
      "streamerId": "my-custom-id",
    },
    refreshInterval: 600,
  },
  profiles: [
    {
      width: 1280,
      name: "720p",
      height: 720,
      bitrate: 3000000,
      fps: 30,
      fpsDen: 1,
      quality: 23,
      gop: "2",
      profile: Profile.H264Baseline,
    },
  ],
  recordingSpec: {
    profiles: [
      {
        width: 1280,
        name: "720p",
        height: 720,
        bitrate: 3000000,
        quality: 23,
        fps: 30,
        fpsDen: 1,
        gop: "2",
        profile: TranscodeProfileProfile.H264Baseline,
        encoder: TranscodeProfileEncoder.H264,
      },
    ],
  },
};

Fields

Field Type Required Description Example
creatorId components.InputCreatorId N/A
record boolean Should this stream be recorded? Uses default settings. For more
customization, create and configure an object store.
false
suspended boolean If currently suspended
multistream components.Multistream N/A
playbackPolicy components.PlaybackPolicy Whether the playback policy for an asset or stream is public or signed
profiles components.FfmpegProfile[] N/A
recordingSpec components.RecordingSpec N/A
userTags Record<string, components.UserTags> User input tags associated with the stream