forked from LeenkxTeam/LNXSDK
Update Files
This commit is contained in:
56
Kha/Kinc/Backends/System/Apple/Sources/kinc/backend/video.h
Normal file
56
Kha/Kinc/Backends/System/Apple/Sources/kinc/backend/video.h
Normal file
@ -0,0 +1,56 @@
|
||||
#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
|
Reference in New Issue
Block a user