Incrustar video en PowerPoint usando Java

Las presentaciones de PowerPoint a menudo contienen cuadros de video para demostrar algo o para atraer a la audiencia. En muchos casos, los videos se utilizan para ahorrar tiempo y hacer que las presentaciones sean efectivas. En este artículo, aprenderá cómo trabajar con videos en archivos de PowerPoint mediante programación. En particular, el artículo cubrirá cómo incrustar o extraer un video en una presentación de PowerPoint usando Java.

API de Java para incrustar video en presentaciones de PowerPoint

Para incrustar o extraer videos en presentaciones de PowerPoint, usaremos Aspose.Slides for Java. La API está diseñada para crear y manipular documentos de PowerPoint y OpenOffice. Puede descargar el JAR de la API o instalarlo usando las siguientes configuraciones de Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.8</version>
    <classifier>jdk16</classifier>
</dependency>

Incrustar un video en una presentación de PowerPoint usando Java

Los siguientes son los pasos para incrustar un video en una presentación de PowerPoint usando Java.

El siguiente ejemplo de código muestra cómo incrustar un video en una presentación de PowerPoint usando Java.

// Cargar presentación o crear una nueva
Presentation pres = new Presentation();
try {
    // Obtener la primera diapositiva
    ISlide sld = pres.getSlides().get_Item(0);
    
    // Agregar video dentro de la presentación
    IVideo vid = pres.getVideos().addVideo(new FileInputStream(new File("Wildlife.mp4")));

    // Agregar cuadro de video
    IVideoFrame vf = sld.getShapes().addVideoFrame(50, 150, 300, 350, vid);

    // Establecer video en cuadro de video
    vf.setEmbeddedVideo(vid);

    // Establecer el modo de reproducción y el volumen del video
    vf.setPlayMode(VideoPlayModePreset.Auto);
    vf.setVolume(AudioVolumeMode.Loud);

    // Escriba el archivo PPTX en el disco
    pres.save("VideoFrame.pptx", SaveFormat.Pptx);
} catch (Exception e) {
} finally {
    if (pres != null) pres.dispose();
}

Incrustar video desde una fuente web usando Java

También puede incrustar un video en las presentaciones de PowerPoint desde una fuente web. Los siguientes son los pasos para lograrlo.

El siguiente ejemplo de código muestra cómo incrustar un video en la presentación desde una fuente web.

// Crear una presentación o cargar una existente
Presentation pres = new Presentation("presentation");
try {
      // agregar videoFrame
      IVideoFrame videoFrame = pres.getSlides().get_Item(0).getShapes().addVideoFrame(
              10, 10, 427, 240, "https://www.youtube.com/embed/Tj75Arhq5ho");
      videoFrame.setPlayMode(VideoPlayModePreset.Auto);

      // cargar miniatura
      String thumbnailUri = "http://img.youtube.com/vi/Tj75Arhq5ho/hqdefault.jpg";
      URL url;

      // Establecer miniatura
      try {
          url = new URL(thumbnailUri);
          videoFrame.getPictureFormat().getPicture().setImage(pres.getImages().addImage(url.openStream()));
      } catch (MalformedURLException e) {
          e.printStackTrace();
      } catch (IOException e) {
          e.printStackTrace();
      }
      // Guardar presentación
      pres.save("out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Extraer video de una presentación de PowerPoint en Java

Aspose.Slides for Java también le permite extraer un video de una presentación. A continuación se detallan los sencillos pasos para lograrlo.

El siguiente ejemplo de código muestra cómo extraer videos de una presentación de PowerPoint usando Java.

// Cargar presentación
Presentation pres = new Presentation("VideoSample.pptx");
try {
    // Bucle a través de diapositivas
    for (ISlide slide : pres.getSlides()) 
    {
        // Bucle a través de formas
        for (IShape shape : slide.getShapes()) 
        {
            if (shape instanceof VideoFrame) 
            {
                IVideoFrame vf = (IVideoFrame) shape;
                String type = vf.getEmbeddedVideo().getContentType();
                int ss = type.lastIndexOf('-');
                byte[] buffer = vf.getEmbeddedVideo().getBinaryData();

                //Obtener extensión de archivo
                int charIndex = type.indexOf("/");
                type = type.substring(charIndex + 1);

                FileOutputStream fop = new FileOutputStream("testing2." + type);
                fop.write(buffer);
                fop.flush();
                fop.close();
            }
        }
    }
} catch (IOException e) {
} finally {
    if (pres != null) pres.dispose();
}

Obtenga una licencia de API gratuita

Puede usar Aspose.Slides for Java sin limitaciones de evaluación solicitando una licencia temporal.

Conclusión

En este artículo, ha aprendido a incrustar videos en presentaciones de PowerPoint utilizando Java. Además, ha visto cómo extraer videos de una presentación mediante programación. Además de esto, puede visitar la documentación para explorar más sobre Aspose.Slides for Java. Además, puede publicar sus consultas en nuestro foro.

Ver también

Información: Aspose desarrolló recientemente una aplicación web gratuita MP4 a MP3 que se puede usar para extraer audio de archivos de video.