types

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 5, 2026 License: AGPL-3.0 Imports: 1 Imported by: 0

Documentation

Overview

Package types defines shared data structures for media objects.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MediaFormat

type MediaFormat string

MediaFormat represents the streaming format

const (
	FormatHLS    MediaFormat = "hls"
	FormatDASH   MediaFormat = "dash"
	FormatSource MediaFormat = "source"
)

MediaFormat constants

type Quality

type Quality string

Quality represents the quality level of a media stream

const (
	QualityAuto   Quality = "auto"
	QualityLow    Quality = "low"
	QualityMedium Quality = "medium"
	QualityHigh   Quality = "high"
	QualitySource Quality = "source"
)

Quality constants

type StreamingSession

type StreamingSession struct {
	SessionID        string      `json:"session_id"`
	UserID           string      `json:"user_id"`
	MediaID          string      `json:"media_id"`
	Format           MediaFormat `json:"format"`
	CurrentQuality   Quality     `json:"current_quality"`
	StartTime        time.Time   `json:"start_time"`
	LastActivityTime time.Time   `json:"last_activity_time"`
	BytesDelivered   int64       `json:"bytes_delivered"`
	DurationWatched  int64       `json:"duration_watched"`
	UserAgent        string      `json:"user_agent"`
	IPAddress        string      `json:"ip_address"`
	Error            string      `json:"error,omitempty"`
	TTL              int64       `json:"ttl,omitempty"`

	// Additional fields for streaming state
	LastSegmentIndex int     `json:"last_segment_index"`
	BytesTransferred int64   `json:"bytes_transferred"`
	BufferHealth     float64 `json:"buffer_health"`
}

StreamingSession represents an active streaming session

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL