norsk-sdk package

Classes

Class Description

AudioBuildMultichannelNode

see: NorskTransform.audioBuildMultichannel()

AudioEncodeNode

see: NorskTransform.audioEncode()

AudioGainNode

see: NorskTransform.audioGain()

AudioMeasureLevelsNode

see: NorskControl.audioMeasureLevels().

AudioMixMatrixNode

see: NorskTransform.audioMixMatrix()

AudioMixNode

see: NorskTransform.audioMix()

AudioSignalGeneratorNode

see: NorskInput.audioSignal()

AudioSplitMultichannelNode

see: NorskTransform.audioSplitMultichannel()

AudioTranscribeAwsNode

see: NorskTransform.audioTranscribeAws()

AutoSinkMediaNode

BrowserInputNode

see: NorskInput.browser()

CmafAudioOutputNode

see: NorskOutput.cmafAudio()

CmafMasterOutputNode

see: NorskOutput.cmafMaster()

CmafVideoOutputNode

see: NorskOutput.cmafVideo()

CmafWebVttOutputNode

see: NorskOutput.cmafWebVtt()

DeckLinkInputNode

SDI capture through a DeckLink card. see: NorskInput.deckLink().

FileImageInputNode

see: NorskInput.fileImage()

FileMp4InputNode

see: NorskInput.fileMp4()

FileMp4OutputNode

see: NorskOutput.fileMp4()

FileTsInputNode

see: NorskInput.fileTs()

FileTsOutputNode

see: NorskOutput.fileTs()

FileWebVttInputNode

see: NorskInput.fileWebVtt()

HlsMasterPushOutputNode

see: NorskOutput.hlsMasterPush()

HlsTsAudioOutputNode

see: NorskOutput.hlsTsAudio()

HlsTsAudioPushOutputNode

see: NorskOutput.hlsTsAudioPush()

HlsTsCombinedPushOutputNode

see: NorskOutput.hlsTsCombinedPush()

HlsTsVideoOutputNode

see: NorskOutput.hlsTsVideo()

HlsTsVideoPushOutputNode

see: NorskOutput.hlsTsVideoPush()

HlsWebVttPushOutputNode

see: NorskOutput.hlsWebVttPush()

MediaNodeState

Norsk

The entrypoint for all Norsk Media applications

NorskProcessor

RtmpOutputNode

see: NorskOutput.rtmp()

RtmpServerInputNode

see: NorskInput.rtmpServer()

RtpInputNode

see: NorskInput.rtp()

SinkMediaNode

SourceMediaNode

SrtInputNode

see: NorskInput.srt()

SrtOutputNode

see: NorskOutput.srt()

StreamChaosMonkeyNode

see: NorskTransform.streamChaosMonkey()

StreamKeyOverrideNode

see: NorskTransform.streamKeyOverride()

StreamMetadataOverrideNode

see: NorskTransform.streamMetadataOverride()

StreamStatisticsNode

see NorskControl.streamStatistics().

StreamSwitchHardNode

see: NorskControl.streamSwitchHard()

StreamSwitchSmoothNode

see: NorskControl.streamSwitchSmooth()

StreamSyncNode

see: NorskTransform.streamSync()

StreamTimestampNudgeNode

see: NorskTransform.streamTimestampNudge()

UdpTsInputNode

see: NorskInput.udpTs()

UdpTsOutputNode

see: NorskOutput.udpTs()

VideoComposeNode

see: NorskTransform.videoCompose()

VideoEncodeNode

see: NorskTransform.videoEncode()

VideoTransformNode

see: NorskTransform.videoTransform()

WebRTCBrowserNode

see: NorskDuplex.webRtcBrowser()

WhipInputNode

see: NorskInput.whip()

WhipOutputNode

see: NorskOutput.whip()

Functions

Function Description

audioStreamKeys(streams)

Returns the stream keys for audio streams in a media context

audioStreams(streams)

Filters a context to only the audio streams within it

getAmountOfChannels(layout)

mkEncryption(encryption)

Generate encryption parameters from from an encryption KeyID and Key, in the form KEYID:KEY, both 16byte hexadecimal

mkSine(freq)

newSilentMatrix(rows, cols)

selectAllAudios(count)

selectAllVideos(count)

selectAudio(streams)

selectAV(streams)

Select all the audio and video streams from the input

selectSubtitles(streams)

selectVideo(streams)

subtitleStreamKeys(streams)

Returns the stream keys for subtitle streams in a media context

subtitleStreams(streams)

Filters a context to only the subtitle streams within it

videoStreamKeys(streams)

Returns the stream keys for video streams in a media context

videoStreams(streams)

Filters a context to only the video streams within it

Interfaces

Interface Description

AacSettings

Settings for an AAC encode see: NorskTransform.audioEncode()

AudioBuildMultichannelSettings

Settings for an Audio Build Multichannel Node see: NorskTransform.audioBuildMultichannel()

AudioEncodeSettings

Settings for an audio encode see: NorskTransform.audioEncode()

AudioGainSettings

Settings for an Audio Gain node see: NorskTransform.audioGain()

AudioGainSettingsUpdate

An update operation for an Audio Gain node see: AudioGainNode.updateConfig()

AudioMeasureLevels

AudioMeasureLevelsSettings

Settings for an AudioMeasureLevelsNode see: NorskControl.audioMeasureLevels()

AudioMixMatrixSettings

Settings for the Audio Mix Matrix Node see: NorskTransform.audioMixMatrix()

AudioMixMatrixSettingsUpdate

Config update for the AudioMixMatrixNode. Call AudioMixMatrixNode.updateConfig() for updating the config.

AudioMixSettings

The settings for an AudioMix operation see: NorskTransform.audioMix()

AudioMixSettingsUpdate

An update operation for an AudioMix node see: AudioMixNode.updateConfig()

AudioMixSource

The settings for a single source within an AudioMix operation see: NorskTransform.audioMix()

AudioSignalGeneratorSettings

Settings for an Audio Signal Generator see: NorskInput.audioSignal()

AudioSplitMultichannelSettings

Settings for an Audio Split Multichannel node see: NorskTransform.audioSplitMultichannel()

AudioStreamMetadata

AudioTranscribeAwsSettings

Settings for an Audio Transcribe operation using AWS see: NorskTransform.audioTranscribeAws()

AwsCredentials

AwsS3PushDestinationSettings

Configuration for pushing a segmented media stream directly to AWS S3

BitrateMode

There are three possible modes: - "abr": encode in average bitrate mode, specified in kilobits/sec (note, 1 kilobit is 1000 bits). You can make use of the vbv settings to control the bounds on how much the actual bitrate can fluctuate within the bounds of the average - "cqp": encode in constant quantizer mode. In general, crf will give better results, although cqp can be faster to encode - "crf": encode in constant rate factor mode. This will give a constant 'quality' to the encode, but with a variable bitrate

BrowserInputSettings

Settings for a Browser Input see: NorskInput.browser()

BrowserInputSettingsUpdate

A settings update for a running browser see: BrowserInputNode.updateConfig()

BrowserOnLoaded

BrowserOnLoadEnd

BrowserOnLoadError

BrowserOnLoadStart

ChannelLevels

CmafAudioOutputSettings

Settings for a CMAF Audio Output see NorskOutput.cmafAudio()

CmafMasterOutputSettings

Settings for a CMAF Master Playlist see NorskOutput.cmafMaster()

CmafVideoOutputSettings

Settings for a CMAF Video Output see NorskOutput.cmafVideo()

CmafWebVttOutputSettings

Settings for a CMAF WebVTT Output see NorskOutput.cmafWebVtt()

ComposePart

A single layer of a video compose operation see NorskTransform.videoCompose()

Core

CpuTopology

DeckLinkCard

DeckLinkDisplayMode

DeckLinkInputSettings

Settings to control SDI capture through a DeckLink card see: NorskInput.deckLink()

DropEvery

Drop every N frames from an incoming video stream

DropRandom

Randomly drop frames on a stream - 0.0 means don’t drop any frames - 1.0 means drop every single frame

FileImageInputSettings

Settings for an image file source see: NorskInput.fileImage()

FileMp4Info

Information about an Mp4 File

FileMp4InputSettings

Settings for an File Based Mp4 Input see: NorskInput.fileMp4()

FileMp4OutputSettings

Settings to control MP4 file output see NorskOutput.fileMp4()

FileTsOutputSettings

The settings for an output Transport Stream written to file see: NorskOutput.fileTs()

FrameRate

HardwareInfo

HlsMasterPushOutputSettings

The settings for pushing a master playlist to a destination see: NorskOutput.hlsMasterPush()

HlsPushDestinationSettings

Configuration for pushing a segmented media stream directly to a generic http server

HlsTsAudioOutputSettings

Settings for a HLS TS Audio Output see NorskOutput.hlsTsAudio()

HlsTsAudioPushOutputSettings

Settings for a HLS Transport Stream Audio Push Output see NorskOutput.hlsTsVideoPush()

HlsTsCombinedPushOutputSettings

Settings for a HLS Transport Stream Combined Push Output see NorskOutput.hlsTsCombinedPush()

HlsTsVideoOutputSettings

Settings for a HLS TS Video Output see NorskOutput.hlsTsVideo()

HlsTsVideoPushOutputSettings

Settings for a HLS Transport Stream Video Push Output see NorskOutput.hlsTsVideoPush()

HlsWebVttPushOutputSettings

InputSettings

Base settings for most input nodes

Interval

A time interval measured as ticks / (ticks per second)

LocalFileInputSettings

The standard settings for any node reading from a file

LocalPullDestinationSettings

Configuration for the serving of segments and playlists directly from the Norsk Web Server Note: While this is both useful for local testing and for sitting behind a reverse caching proxy / CDN it is not expected that Norsk serve as the edge server in most scenarios

MultiStreamStatistics

NetintH264

Settings for a H264 Encode using Netint Logan hardware A detailed description of these params can be found on the Netint Logan Encoder Documentation

These fields have deliberately been written to maintain the same semantics as the Netint documentation where possible.

If left undefined, all will default to Netint’s own defaults

NetintHevc

Settings for a HEVC Encode using Netint Logan hardware A detailed description of these params can be found on the Netint Logan Encoder Documentation

These fields have deliberately been written to maintain the same semantics as the Netint documentation where possible.

If left undefined, all will default to Netint’s own defaults

NodeSettings

Settings common to all media nodes

NorskControl

Methods that allow you to control and monitor media streams

NorskDuplex

Methods that allow you to both ingest and egest media from your application at the same time

NorskInput

Methods that allow you to ingest media into your application

NorskOutput

Methods that allow you to egest media from your application

NorskSettings

Top level Norsk configuration

NorskSystem

Methods that allow you query the features of the system that Norsk is running in

NorskTransform

Methods that allow you to manipulate your media streams

NumaNode

NvidiaH264

Settings for a H264 Encode using Nvidia hardware A detailed description of these params can be found on the Nvidia Encoder Documentation

If left undefined, all will default to Nvidia’s own defaults If a preset is configured, then all will default to the values provided by that preset

NvidiaHevc

Settings for a HEVC Encode using Nvidia hardware A detailed description of these params can be found on the Nvidia Encoder Documentation

If left undefined, all will default to Nvidia’s own defaults If a preset is configured, then all will default to the values provided by that preset

NvidiaRateControl

The rate control options for an nvidia encode For further info, consult the Nvidia Encoder docs

OffsetRect

A rectangle used for describing a subset of an image

OpusSettings

Settings for an Opus encode see: NorskTransform.audioEncode()

PartTransition

A transition for a video composition part.

A transition interpolates the source_rect, dest_rect, and opacity properties over the specified duration according to the specified easing function.

As a special case, if a transition is specified and the input pin of the part changes, an opacity fade from one to the other will occur.

Processor

ProcessorNodeSettings

RemoteInputSettings

Base settings for any input node requiring access to a host:port pair

Resolution

The resolution of a video within Norsk

RtmpOutputSettings

The settings for an RTMP output see: NorskOutput.rtmp()

RtmpServerInputSettings

Settings to control how RTMP streams can be included as sources in your media workflow see: NorskInput.rtmpServer()

RtpEac3

A description of an Eac3 stream being delivered via RTP

RtpH264

A description of an H264 stream delivered over RTP

RtpHEVC

A description of an HEVC stream delivered over RTP

RtpInputSettings

Settings for an RTP input see: NorskInput.rtp()

RtpLinearPcm

A description of a LinearPCM stream being delivered via RTP

RtpMpeg4GenericAacHbr

A description of a Mpeg4 Generic Aac stream

RtpStreamSettings

A description of an incoming RTP stream

SampleAspectRatio

This is the SAR/PAR for a video stream and is an expression of what shape each pixel has within a video stream x:1, y:1 being a square and the most common value for this

SingleStreamStatistics

SinkNodeSettings

SourceNodeSettings

SrtInputSettings

Settings for an SRT Input node see: NorskInput.srt()

SrtOutputSettings

The settings for an SRT output see: NorskOutput.srt()

StreamChaosMonkeySettings

The settings for a Chaos Monkey see: NorskTransform.streamChaosMonkey()

StreamKey

StreamKeyOverrideSettings

Settings for a Stream Key Override see: NorskTransform.streamKeyOverride()

StreamKeySettings

StreamMetadata

StreamMetadataOverrideSettings

Settings for a Stream Key Metadata Override Node see: NorskTransform.streamMetadataOverride()

StreamMetadataOverrideSettingsUpdate

StreamStatistics

StreamStatisticsMixin

StreamStatisticsSettings

Settings for a Stream Statistics Node see: NorskControl.streamStatistics()

StreamSwitchHardSettings

Settings for the Hard Stream Switch see: NorskControl.streamSwitchHard()

StreamSwitchSmoothSettings

Settings for the Smooth Source Switch see NorskControl.streamSwitchSmooth()

StreamSyncSettings

Settings for a StreamSync node see NorskTransform.streamSync()

StreamTimestampNudgeSettings

Settings for a Stream Timestamp Nudge see: NorskTransform.streamTimestampNudge()

SubtitleStreamMetadata

UdpTsInputSettings

Settings for a UDP Transport Stream input see: NorskInput.udpTs()

UdpTsOutputSettings

The settings for an output Transport Stream over UDP see: NorskOutput.udpTs()

UpdateCredentials

An update request for credentials on a CMAF output

VideoComposeSettings

VideoComposeSettingsUpdate

An update operation for a VideoCompose operation see: VideoComposeNode.updateConfig()

VideoEncodeRung

A single rung in a video encode ladder see: NorskTransform.videoEncode()

VideoEncodeSettings

Settings for a VideoEncode operation see: NorskTransform.videoEncode()

VideoStreamMetadata

VideoTransformSettings

Settings for a Video Transform node see: NorskTransform.videoTransform()

WebRTCBrowserSettings

Settings for a WebRTC browser session see: NorskDuplex.webRtcBrowser()

WhipInputSettings

WhipOutputSettings

The settings for a WebRTC Whip Output see NorskOutput.whip()

X264Codec

X265Codec

X265 codec

Variables

Type Aliases

Type Alias Description

AacProfile

BrowserEvent

ChannelLayout

Channel layout for an audio stream

ChannelName

CMAFDestinationSettings

Possible destinations for a segmented media stream - HlsPushDestinationSettings: Push to a generic HTTP server - AwsS3PushDestinationSettings: Push to Amazon S3 - LocalPullDestinationSettings: Serve directly from the Norsk Web Server

ComposeMissingStreamBehaviour

ContextType

Db

A decibel (dB). A null value represents -inf.

DeckLinkDisplayModeId

DeckLinkPixelFormat

DeckLinkVideoConnection

DeckLinkVideoIOSupport

Gain

A relative change in decibels, expressing a power ratio.

A value of 0dB means no change, positive values mean an increase in power, and negative values mean a decrease in power.

ImageFormat

Log

LogicalCpuId

MediaNodeId

NetintH264Level

NetintH264Profile

NetintHevcLevel

NetintHevcProfile

NetintHevcTier

NvidiaH264Level

See the Nvidia Encoder Docs for a description of this value

NvidiaH264Profile

See the Nvidia Encoder Docs for a description of this value

NvidiaHevcLevel

See the Nvidia Encoder Docs for a description of this value

NvidiaHevcProfile

See the Nvidia Encoder Docs for a description of this value

NvidiaHevcTier

See the Nvidia Encoder Docs for a description of this value

NvidiaPreset

See the Nvidia Encoder Docs for a description of this value

NvidiaRateControlMode

See the Nvidia Encoder Docs for a description of this value

OnStreamResult

Return type to enable control of an RTMP stream once media arrives on it

PinToKey

PixelFormat

ReceiveFromAddress

ReceiveFromAddressAuto

RtmpServerInputStatus

RtmpServerStreamKeys

The stream keys in an RTMP input stream

RtpLinearPcmBitDepth

SampleFormat

SampleRate

Audio sample rate, in Hz

SentenceBuildMode

SimpleEasing

SourceSubscriptionError

Errors found while subscribing to a particular source, separated out by reason:

- internal: An opaque internal error

- unknownSourceId: The media node does not exist (maybe it crashed)

- unknownSourceStream: The media node exists, but does not have the stream key

- noSubscriberPin: The media node is not set up to receive data on this pin (which may be auto-detected)

- unsupportedConversion: Norsk does not support conversion from the media types of the source to the media types accepted by the subscriber

SrtConnectionResult

The return value for the SrtInputSettings.onConnection callback determining what to do with an incoming stream

SrtInputStatus

SrtMode

StabilizationMode

StreamMetadataMessage

SubscriptionError

Errors found while setting up subscriptions, separated out by reason:

- internal: An opaque internal error

- unknownSubscriber: The media node requesting the subscription does not exist

- multipleStreams: Multiple stream keys found for the context type

- sourceSubscriptionError: Per-source errors

X264Level

See the X264 Docs for a description of this value

X264NalHrd

Three possible values: - "none": specify no HRD information - "vbr": specify HRD information - "cbr": specify HRD information and pack the bitstream to the bitrate specified See the X264 Docs for a further description of this value

X264Preset

See the X264 Docs for a description of this value

X264Profile

X264Tune

See the X264 Docs for a description of this value

X265Level

See the X265 Docs for a description of this value

X265Preset

See the X265 Docs for a description of this value

X265Profile

See the X265 Docs for a description of this value

X265Tune

See the X265 Docs for a description of this value