57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include <objc/runtime.h>
 | 
						|
 | 
						|
#include <kinc/graphics4/texture.h>
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
extern "C" {
 | 
						|
#endif
 | 
						|
 | 
						|
typedef struct {
 | 
						|
	double start;
 | 
						|
	double videoStart;
 | 
						|
	double next;
 | 
						|
	// double audioTime;
 | 
						|
	unsigned long long audioTime;
 | 
						|
	bool playing;
 | 
						|
	bool loop;
 | 
						|
	void *sound;
 | 
						|
	bool image_initialized;
 | 
						|
	kinc_g4_texture_t image;
 | 
						|
	double lastTime;
 | 
						|
	float duration;
 | 
						|
	bool finished;
 | 
						|
	int myWidth;
 | 
						|
	int myHeight;
 | 
						|
 | 
						|
	id videoAsset;
 | 
						|
	id assetReader;
 | 
						|
	id videoTrackOutput;
 | 
						|
	id audioTrackOutput;
 | 
						|
	id url;
 | 
						|
} kinc_video_impl_t;
 | 
						|
 | 
						|
typedef struct kinc_internal_video_sound_stream {
 | 
						|
	float *buffer;
 | 
						|
	int bufferSize;
 | 
						|
	int bufferWritePosition;
 | 
						|
	int bufferReadPosition;
 | 
						|
	uint64_t read;
 | 
						|
	uint64_t written;
 | 
						|
} kinc_internal_video_sound_stream_t;
 | 
						|
 | 
						|
void kinc_internal_video_sound_stream_init(kinc_internal_video_sound_stream_t *stream, int channel_count, int frequency);
 | 
						|
 | 
						|
void kinc_internal_video_sound_stream_destroy(kinc_internal_video_sound_stream_t *stream);
 | 
						|
 | 
						|
void kinc_internal_video_sound_stream_insert_data(kinc_internal_video_sound_stream_t *stream, float *data, int sample_count);
 | 
						|
 | 
						|
float *kinc_internal_video_sound_stream_next_frame(kinc_internal_video_sound_stream_t *stream);
 | 
						|
 | 
						|
bool kinc_internal_video_sound_stream_ended(kinc_internal_video_sound_stream_t *stream);
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
}
 | 
						|
#endif
 |