Example #1
0
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;
}
Example #2
0
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;
}
Example #3
0
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;
	}
}
Example #4
0
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;
	}
}