Audio

This article demonstrates how to embed audio frames and control playback with Aspose.Slides for Java. The following examples show basic audio operations.

Add an Audio Frame

Insert an empty audio frame that can later hold embedded sound data.

import com.aspose.slides.*;
import java.io.ByteArrayInputStream;

static void addAudio() {
    Presentation presentation = new Presentation();
    try {
        ISlide slide = presentation.getSlides().get_Item(0);

        // Create an empty audio frame (audio will be embedded later).
        IAudioFrame audioFrame = slide.getShapes().addAudioFrameEmbedded(
                50, 50, 100, 100, new ByteArrayInputStream(new byte[0]));
    } finally {
        presentation.dispose();
    }
}

Access an Audio Frame

This code retrieves the first audio frame on a slide.

import com.aspose.slides.*;
import java.io.ByteArrayInputStream;

static void accessAudio() {
    Presentation presentation = new Presentation();
    try {
        ISlide slide = presentation.getSlides().get_Item(0);

        slide.getShapes().addAudioFrameEmbedded(
                50, 50, 100, 100, new ByteArrayInputStream(new byte[0]));

        // Access the first audio frame on the slide.
        IAudioFrame firstAudio = null;
        for (IShape shape : slide.getShapes()) {
            if (shape instanceof IAudioFrame) {
                firstAudio = (IAudioFrame) shape;
                break;
            }
        }
    } finally {
        presentation.dispose();
    }
}

Remove an Audio Frame

Delete a previously added audio frame.

import com.aspose.slides.*;
import java.io.ByteArrayInputStream;

static void removeAudio() {
    Presentation presentation = new Presentation();
    try {
        ISlide slide = presentation.getSlides().get_Item(0);

        IAudioFrame audioFrame = slide.getShapes().addAudioFrameEmbedded(
                50, 50, 100, 100, new ByteArrayInputStream(new byte[0]));

        // Remove the audio frame.
        slide.getShapes().remove(audioFrame);
    } finally {
        presentation.dispose();
    }
}

Set Audio Playback

Configure the audio frame to play automatically when the slide appears.

import com.aspose.slides.*;
import java.io.ByteArrayInputStream;

static void setAudioPlayback() {
    Presentation presentation = new Presentation();
    try {
        ISlide slide = presentation.getSlides().get_Item(0);
        
        IAudioFrame audioFrame = slide.getShapes().addAudioFrameEmbedded(
                50, 50, 100, 100, new ByteArrayInputStream(new byte[0]));

        // Play automatically when the slide appears.
        audioFrame.setPlayMode(AudioPlayModePreset.Auto);
    } finally {
        presentation.dispose();
    }
}