Files
Swiftgram/TelegramCore/MediaFrameSource.swift
2016-08-16 14:02:36 +03:00

24 lines
561 B
Swift

import Foundation
import SwiftSignalKit
import CoreMedia
enum MediaTrackEvent {
case frames([MediaTrackDecodableFrame])
}
struct MediaFrameSourceSeekResult {
let buffers: MediaPlaybackBuffers
let timestamp: CMTime
}
enum MediaFrameSourceSeekError {
case generic
}
protocol MediaFrameSource {
func addEventSink(_ f: (MediaTrackEvent) -> Void) -> Int
func removeEventSink(_ index: Int)
func generateFrames(until timestamp: Double)
func seek(timestamp: Double) -> Signal<MediaFrameSourceSeekResult, MediaFrameSourceSeekError>
}