Coder Social home page Coder Social logo

tanz0rz / haxe-fmod Goto Github PK

View Code? Open in Web Editor NEW
17.0 3.0 6.0 64.21 MB

Haxe 4 FMOD integration for Windows and HTML5 deployments

Home Page: https://tanneris.me/haxelib

License: MIT License

Haxe 13.48% C++ 24.39% JavaScript 7.24% C 54.89%
fmod-studio fmod-scripts haxe fmod-engine fmod-api haxelib fmod

haxe-fmod's People

Contributors

ashea-code avatar delahee avatar mondayhopscotch avatar tanz0rz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

haxe-fmod's Issues

HashLink support?

Seems to be crashing when trying to export via HashLink in the HaxeFlixel library, the weird part is that it's only during the ReplaceVistaIcon.exe segment which... is very confusing. However, it only happens when this library is used.

 - Copying file: export/hl/obj/ApplicationMain.hl -> export/hl/bin/hlboot.dat
 - Renaming file: export/hl/bin/hl.exe -> export/hl/bin/fmod-test.exe
 - Running command: C:/HaxeToolkit/haxe/lib/lime/7,8,0/templates/bin/ReplaceVistaIcon.exe export/hl/bin/fmod-test.exe export/hl/bin/icon.ico 1

Running command: INSTALL

Running command: RUN
 - Changing directory: export/hl/bin/
 - Running command: fmod-test.exe -verbose -livereload

Very unusual, happens on the example project as well :(

Does this library do anything regarding icons in any way?

[Bug] Spamming song play/transtion/stop commands breaks it

Reproduction:

  • Play, stop, and transition songs quickly (can be done easily with a bunch of key bindings)

Behavior:

  • Songs play on top of each other and there isn't any way to recover

Additional notes:

  • When a song is fading out, there is nothing stopping new library calls from happening. The bug can likely be fixed by disabling song commands while a song is transitioning

[Enhancement] Support microphone recording

As a developer, I want to be able to access a user's microphone and retrieve sound data, which I can either:

  • Play back to the user.
  • Compress and write to a file.
  • Analyze the data (such as pitch detection).

See the api/core/examples/record.cpp for an example of this, but in CPP rather than Haxe.

[Enhancement] Support user created sound

I have a use case where I am being provided with a stream of PCM audio bytes (from video decoding) and I want to play the sound over the user's speakers. OpenFL doesn't provide a means to implement this (I checked, this class is not implemented on most platforms, just Flash). Thankfully, FMod does, but haxe-fmod has not implemented a user-facing interface for it.

Implement the ability to create a sound which, rather than loading from a sound file, continuously executes a callback to retrieve the sound data to be output.

The sound should be created with the FMOD_OPENUSER, and be initialized with an FMOD_CREATESOUNDEXINFO to specify format, defaultfrequency, numchannels, and a read callback. The read callback would probably need to be a wrapper callback, which would call a Haxe function (not a CPP function) provided by the user, which would return an openfl.utils.ByteArray. The wrapper callback would then provide the pointer and length to the sound for playback.

See the api/core/examples/user_created_sound.cpp for an example of this, but in CPP rather than Haxe.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.