Module vcr4j.core
Package org.mbari.vcr4j
Interface VideoIO<S extends VideoState,E extends VideoError>
- All Superinterfaces:
AutoCloseable,Closeable
- All Known Implementing Classes:
SchedulerVideoIO,SimpleVideoIO
-
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close the video io and free it's resources.io.reactivex.rxjava3.subjects.Subject<VideoCommand<?>>We foresee needing to chain several VideoIO services together.io.reactivex.rxjava3.core.Observable<E>All errors that occur will be sent to this observableio.reactivex.rxjava3.core.Observable<VideoIndex>io.reactivex.rxjava3.core.Observable<S>Listen to this observable for responses to status requests<A extends VideoCommand<?>>
voidsend(A videoCommand) Send a command to the video player
-
Method Details
-
send
Send a command to the video player- Type Parameters:
A- The type of the video Command- Parameters:
videoCommand- The command to send
-
getCommandSubject
io.reactivex.rxjava3.subjects.Subject<VideoCommand<?>> getCommandSubject()We foresee needing to chain several VideoIO services together. The current plan is to use RX to monitor commands sent between different services so that one may augment anothers capabilities. For example, we may talk to a video player, but also need to fetch information from a Media Asset Manager simultaneously to get recorded dates for each frame.- Returns:
- A Subject that is the pipeline for all commands sent to the VideoIO provider
-
getConnectionID
String getConnectionID()- Returns:
- A string unique to the particular video io connection
-
close
void close()Close the video io and free it's resources.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
getErrorObservable
io.reactivex.rxjava3.core.Observable<E> getErrorObservable()All errors that occur will be sent to this observable- Returns:
- stream of errors
-
getStateObservable
io.reactivex.rxjava3.core.Observable<S> getStateObservable()Listen to this observable for responses to status requests- Returns:
- Status stream
-
getIndexObservable
io.reactivex.rxjava3.core.Observable<VideoIndex> getIndexObservable()- Returns:
- THis observable streams timecode/elapsedtime/timestamp responses.
-