TheOverfloater / pathos-public

Public release of Pathos Engine
MIT License
42 stars 10 forks source link

Why is there seperate ambient_generic and ambient_oggstream? #29

Closed valina354 closed 4 months ago

valina354 commented 5 months ago

i made my level editor based on hammertime support ogg playback due to fact pathos supports ogg but i noticed theres seperate ambient_oggstream which is very annoying, is there reason for this? couldnt it be added to ambient_generic the ogg playback? as it seems oggstream ambient misses ambient_generic features or has some new features that arent in ambient_generic

TheOverfloater commented 5 months ago

The reason for making these separate is that OGG playback in the sound engine is very different from standard ambient sounds in how it is processed and handled. OGG is reserved for music only and has a limited number of channels to play on, and cannot be a positioned sound source.

valina354 commented 4 months ago

ok

valina354 commented 3 months ago

btw, how hard would it be to implement ogg or mp3 support to ambient_generic? since main issue is sound size, 1 minute of audio in wav for example an ambient sound i found is 15mb, that seems quite ridiculous tbh @TheOverfloater

valina354 commented 3 months ago

i got just 22 ambient related sounds and its already 200 mb, yet i still need way more, if each wav file is like this im gonna reach 100gb in no time image

TheOverfloater commented 3 months ago

Implementing this would need a major rework of the audio engine, but it's not out of the realm of possibility, it's just not going to happen right now. I've also been considering doing this for the same reasons. If I get to doing it, it's going to be much later.

valina354 commented 3 months ago

Implementing this would need a major rework of the audio engine, but it's not out of the realm of possibility, it's just not going to happen right now. I've also been considering doing this for the same reasons. If I get to doing it, it's going to be much later.

ok, i might try doing this myself and sending pull request if im succesfull