size_t dvda_media_stream_t::read(void* data, size_t size) { Error error; size_t read_bytes = is->Read(data, size, error); if (read_bytes == 0) { if (error.IsDefined()) { LogError(error); } } return read_bytes; }
bool dvda_media_stream_t::open(const char* path) { Error error; is = InputStream::OpenReady(path, mutex, cond, error); if (is == nullptr) { if (error.IsDefined()) { LogError(error); } return false; } return true; }
bool dvda_media_stream_t::seek(int64_t position) { Error error; if (is->Seek(position, error)) { return true; } else { if (error.IsDefined()) { LogError(error); } return false; } }
int64_t dvda_media_stream_t::skip(int64_t bytes) { Error error; int64_t position = is->GetOffset() + bytes; if (is->Seek(position, error)) { return position; } else { if (error.IsDefined()) { LogError(error); } return -1; } }