bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


libgdx_jsyn

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
libgdx_jsyn [2025/03/02 23:40]
enric_mieza_sanchez [Projecte libGDX amb JSyn]
libgdx_jsyn [2025/03/03 00:24] (actual)
enric_mieza_sanchez [Projecte libGDX amb JSyn]
Línia 31: Línia 31:
 } }
 </file> </file>
-  - Afegir biblioteques als mòduls ''core'' i ''android'':<file groovy gradle.settings>+  - Afegir biblioteques als mòduls ''core'', ''lwjgl3'' (desktop) i ''android'':<file groovy gradle.settings>
 dependencies { dependencies {
     implementation "com.github.philburk:jsyn:latest.release"     implementation "com.github.philburk:jsyn:latest.release"
Línia 41: Línia 41:
  
 public class Main extends ApplicationAdapter { public class Main extends ApplicationAdapter {
 +    private Synthesizer synth;
     public Main(AudioDeviceManager device) {     public Main(AudioDeviceManager device) {
         if( device==null ) {         if( device==null ) {
Línia 49: Línia 49:
         }         }
     }     }
 +</file>
 +  - Modificar el //launcher// de la versió //desktop//:<file java Lwjgl3Launcher.java>
 +/** Launches the desktop (LWJGL3) application. */
 +public class Lwjgl3Launcher {
 +    // ...
 +    private static Lwjgl3Application createApplication() {
 +        return new Lwjgl3Application(new Main(null), getDefaultConfiguration());
 +    }
 +    //...
 +</file>
 +  - Modificar el //launcher// de la versió Anrdoid:<file java AndroidLauncher.java>
 +/** Launches the Android application. */
 +public class AndroidLauncher extends AndroidApplication {
 +    @Override
 +    protected void onCreate(Bundle savedInstanceState) {
 +        // ...
 +        AndroidAudioForJSyn device = new AndroidAudioForJSyn();
 +        initialize(new Main(device), configuration);
 +        // ...
 </file> </file>
   - Descarregar l'[[https://github.com/philburk/jsyn/blob/master/android/com/jsyn/devices/android/AndroidAudioForJSyn.java|arxiu AndroidAudioForJSyn.java]] a la carpeta android/src/main/java/com/...   - Descarregar l'[[https://github.com/philburk/jsyn/blob/master/android/com/jsyn/devices/android/AndroidAudioForJSyn.java|arxiu AndroidAudioForJSyn.java]] a la carpeta android/src/main/java/com/...
-  -  +  - Implementa el codi comú al mòdul ''core'':<file java Main.java> 
 +public class Main extends ApplicationAdapter { 
 +    //... 
 +    LineOut lineOut; 
 +    SineOscillator sineOsc; 
 +     
 +    @Override 
 +    public void create() { 
 +        // engeguem el sintetizador 
 +        synth.start();
  
 +        // Afegir un oscil·lador sinusoïdal
 +        sineOsc = new SineOscillator();
 +        sineOsc.frequency.set(440); // Freqüència de 440 Hz (La4)
 +        sineOsc.amplitude.set(0.5); // Volum
  
 +        // Connexió a la sortida d'àudio
 +        lineOut = new LineOut();
 +        synth.add(sineOsc);
 +        synth.add(lineOut);
 +        sineOsc.output.connect(0, lineOut.input, 0);
 +        sineOsc.output.connect(0, lineOut.input, 1);
 +    }
 +    
 +    @Override
 +    public void render() {
 +        // al detectar un touch engeguem o apaguem
 +        if( Gdx.input.isTouched() ) {
 +            lineOut.start();
 +        } else {
 +            lineOut.stop();
 +        }
 +    }
 +</file>
 +  - Comprova que funciona tant en Desktop (LWJGL3) com en Android.
  
libgdx_jsyn.1740958810.txt.gz · Darrera modificació: 2025/03/02 23:40 per enric_mieza_sanchez