Skip to content

@camera.ui/sdk / camera / Fmp4Session

Interface: Fmp4Session

Defined in: camera/streaming.ts:360

Fragmented MP4 streaming session for MSE-based playback. Produces FMP4 segments suitable for Media Source Extensions.

Extends

  • Subscribed

Properties

initSegment

readonly initSegment: Promise<Buffer<ArrayBufferLike>>

Defined in: camera/streaming.ts:368

FMP4 initialization segment (moov box).


onEnded

readonly onEnded: ReplaySubject<void>

Defined in: camera/streaming.ts:366

Emits when stream ends.


onError

readonly onError: Subject<Error>

Defined in: camera/streaming.ts:364

Emits on stream errors.


onStarted

readonly onStarted: ReplaySubject<void>

Defined in: camera/streaming.ts:362

Emits when stream successfully starts.

Methods

addAdditionalSubscriptions()

addAdditionalSubscriptions(...subscriptions): void

Defined in: internal/streaming-internal.ts:18

Add additional subscriptions (separate cleanup).

Parameters

subscriptions

...Disposable[]

Returns

void

Inherited from

Subscribed.addAdditionalSubscriptions


addSubscriptions()

addSubscriptions(...subscriptions): void

Defined in: internal/streaming-internal.ts:16

Add subscriptions to be cleaned up on unsubscribe.

Parameters

subscriptions

...Disposable[]

Returns

void

Inherited from

Subscribed.addSubscriptions


startStream()

startStream(config?): Promise<void>

Defined in: camera/streaming.ts:375

Start the FMP4 stream.

Parameters

config?

Fmp4SessionOptions

Stream configuration options

Returns

Promise<void>


stop()

stop(): Promise<void>

Defined in: camera/streaming.ts:387

Stop the stream and cleanup resources.

Returns

Promise<void>


streamBoxes()

streamBoxes(signal?): AsyncGenerator<Buffer<ArrayBufferLike>, void>

Defined in: camera/streaming.ts:384

Async generator yielding FMP4 media segments.

Parameters

signal?

AbortSignal

Optional abort signal

Returns

AsyncGenerator<Buffer<ArrayBufferLike>, void>

Yields

FMP4 moof+mdat boxes


unsubscribe()

unsubscribe(): void

Defined in: internal/streaming-internal.ts:20

Unsubscribe all main subscriptions.

Returns

void

Inherited from

Subscribed.unsubscribe


unsubscribeAdditional()

unsubscribeAdditional(): void

Defined in: internal/streaming-internal.ts:22

Unsubscribe additional subscriptions only.

Returns

void

Inherited from

Subscribed.unsubscribeAdditional