summaryrefslogtreecommitdiff
path: root/modules/gdnative/videodecoder/video_stream_gdnative.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/gdnative/videodecoder/video_stream_gdnative.h')
-rw-r--r--modules/gdnative/videodecoder/video_stream_gdnative.h85
1 files changed, 41 insertions, 44 deletions
diff --git a/modules/gdnative/videodecoder/video_stream_gdnative.h b/modules/gdnative/videodecoder/video_stream_gdnative.h
index fbc0d4016f..408d4a2454 100644
--- a/modules/gdnative/videodecoder/video_stream_gdnative.h
+++ b/modules/gdnative/videodecoder/video_stream_gdnative.h
@@ -37,13 +37,11 @@
#include "scene/resources/video_stream.h"
struct VideoDecoderGDNative {
- const godot_videodecoder_interface_gdnative *interface;
- String plugin_name;
+ const godot_videodecoder_interface_gdnative *interface = nullptr;
+ String plugin_name = "none";
Vector<String> supported_extensions;
- VideoDecoderGDNative() :
- interface(nullptr),
- plugin_name("none") {}
+ VideoDecoderGDNative() {}
VideoDecoderGDNative(const godot_videodecoder_interface_gdnative *p_interface) :
interface(p_interface),
@@ -88,8 +86,9 @@ public:
}
VideoDecoderGDNative *get_decoder(const String &extension) {
- if (extensions.size() == 0 || !extensions.has(extension))
+ if (extensions.size() == 0 || !extensions.has(extension)) {
return nullptr;
+ }
return decoders[extensions[extension]];
}
@@ -107,27 +106,26 @@ public:
};
class VideoStreamPlaybackGDNative : public VideoStreamPlayback {
-
GDCLASS(VideoStreamPlaybackGDNative, VideoStreamPlayback);
Ref<ImageTexture> texture;
- bool playing;
- bool paused;
+ bool playing = false;
+ bool paused = false;
Vector2 texture_size;
- void *mix_udata;
- AudioMixCallback mix_callback;
+ void *mix_udata = nullptr;
+ AudioMixCallback mix_callback = nullptr;
- int num_channels;
- float time;
- bool seek_backward;
- int mix_rate;
- double delay_compensation;
+ int num_channels = -1;
+ float time = 0;
+ bool seek_backward = false;
+ int mix_rate = 0;
+ double delay_compensation = 0;
- float *pcm;
- int pcm_write_idx;
- int samples_decoded;
+ float *pcm = nullptr;
+ int pcm_write_idx = 0;
+ int samples_decoded = 0;
void cleanup();
void update_texture();
@@ -135,10 +133,10 @@ class VideoStreamPlaybackGDNative : public VideoStreamPlayback {
protected:
String file_name;
- FileAccess *file;
+ FileAccess *file = nullptr;
- const godot_videodecoder_interface_gdnative *interface;
- void *data_struct;
+ const godot_videodecoder_interface_gdnative *interface = nullptr;
+ void *data_struct = nullptr;
public:
VideoStreamPlaybackGDNative();
@@ -148,40 +146,39 @@ public:
bool open_file(const String &p_file);
- virtual void stop();
- virtual void play();
+ virtual void stop() override;
+ virtual void play() override;
- virtual bool is_playing() const;
+ virtual bool is_playing() const override;
- virtual void set_paused(bool p_paused);
- virtual bool is_paused() const;
+ virtual void set_paused(bool p_paused) override;
+ virtual bool is_paused() const override;
- virtual void set_loop(bool p_enable);
- virtual bool has_loop() const;
+ virtual void set_loop(bool p_enable) override;
+ virtual bool has_loop() const override;
- virtual float get_length() const;
+ virtual float get_length() const override;
- virtual float get_playback_position() const;
- virtual void seek(float p_time);
+ virtual float get_playback_position() const override;
+ virtual void seek(float p_time) override;
- virtual void set_audio_track(int p_idx);
+ virtual void set_audio_track(int p_idx) override;
//virtual int mix(int16_t* p_buffer,int p_frames)=0;
- virtual Ref<Texture2D> get_texture() const;
- virtual void update(float p_delta);
+ virtual Ref<Texture2D> get_texture() const override;
+ virtual void update(float p_delta) override;
- virtual void set_mix_callback(AudioMixCallback p_callback, void *p_userdata);
- virtual int get_channels() const;
- virtual int get_mix_rate() const;
+ virtual void set_mix_callback(AudioMixCallback p_callback, void *p_userdata) override;
+ virtual int get_channels() const override;
+ virtual int get_mix_rate() const override;
};
class VideoStreamGDNative : public VideoStream {
-
GDCLASS(VideoStreamGDNative, VideoStream);
String file;
- int audio_track;
+ int audio_track = 0;
protected:
static void
@@ -191,15 +188,15 @@ public:
void set_file(const String &p_file);
String get_file();
- virtual void set_audio_track(int p_track);
- virtual Ref<VideoStreamPlayback> instance_playback();
+ virtual void set_audio_track(int p_track) override;
+ virtual Ref<VideoStreamPlayback> instance_playback() override;
- VideoStreamGDNative() { audio_track = 0; }
+ VideoStreamGDNative() {}
};
class ResourceFormatLoaderVideoStreamGDNative : public ResourceFormatLoader {
public:
- virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
+ virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr, bool p_no_cache = false);
virtual void get_recognized_extensions(List<String> *p_extensions) const;
virtual bool handles_type(const String &p_type) const;
virtual String get_resource_type(const String &p_path) const;