Package com.kurento.kmf.media

Examples of com.kurento.kmf.media.PlayerEndpoint


  }

  public void doTest(Browser browserType) throws Exception {
    // Media Pipeline #1
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerRed = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/red.webm").build();
    PlayerEndpoint playerGreen = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/green.webm").build();
    PlayerEndpoint playerBlue = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/blue.webm").build();
    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    RecorderEndpoint recorderEP = mp.newRecorderEndpoint(
        FILE_SCHEMA + getDefaultFileForRecording()).build();

    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(browserType).client(Client.PLAYER).build()) {
      browser.setURL(httpEP.getUrl());

      // red
      playerRed.connect(httpEP);
      playerRed.connect(recorderEP);
      playerRed.play();
      recorderEP.record();
      browser.subscribeEvents("playing", "ended");
      browser.start();
      Assert.assertTrue("Timeout waiting playing event",
          browser.waitForEvent("playing"));
      Thread.sleep(2000);

      // green
      playerGreen.connect(httpEP);
      playerGreen.connect(recorderEP);
      playerGreen.play();
      Thread.sleep(6000);

      // blue
      playerBlue.connect(httpEP);
      playerBlue.connect(recorderEP);
      playerBlue.play();
      Thread.sleep(6000);

      // Assertions
      Assert.assertTrue("Timeout waiting ended event",
          browser.waitForEvent("ended"));
      Assert.assertTrue("Play time must be at least " + PLAYTIME
          + " seconds", browser.getCurrentTime() >= PLAYTIME);

    }

    // Stop and release media elements
    recorderEP.stop();
    playerRed.stop();
    playerGreen.stop();
    playerBlue.stop();
    recorderEP.release();
    playerRed.release();
    playerGreen.release();
    playerBlue.release();

    // Media Pipeline #2
    PlayerEndpoint playerEP2 = mp.newPlayerEndpoint(
        FILE_SCHEMA + getDefaultFileForRecording()).build();
    HttpGetEndpoint httpEP2 = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    playerEP2.connect(httpEP2);

    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(browserType).client(Client.PLAYER).build()) {
      browser.setURL(httpEP2.getUrl());
      browser.subscribeEvents("playing", "ended");
      playerEP2.play();

      browser.start();

      // Assertions
      Assert.assertTrue("Timeout waiting playing event",
View Full Code Here


  }

  public void doTest(Browser browserType) throws Exception {
    // Media Pipeline #1
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerEP = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/green.webm").build();
    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    RecorderEndpoint recorderEP = mp.newRecorderEndpoint(
        FILE_SCHEMA + getDefaultFileForRecording()).build();
    playerEP.connect(httpEP);
    playerEP.connect(recorderEP);

    // Test execution #1. Play the video while it is recorded
    launchBrowser(browserType, httpEP, playerEP, recorderEP);

    // Media Pipeline #2
    PlayerEndpoint playerEP2 = mp.newPlayerEndpoint(
        FILE_SCHEMA + getDefaultFileForRecording()).build();
    HttpGetEndpoint httpEP2 = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    playerEP2.connect(httpEP2);

    // Test execution #2. Play the recorded video
    launchBrowser(browserType, httpEP2, playerEP2, null);
  }
View Full Code Here

  }

  public void doTest(Browser browserType) throws Exception {
    // Media Pipeline
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerEP = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/blue.webm").build();
    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    playerEP.connect(httpEP);

    // Test execution
    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(browserType).client(Client.PLAYER).build()) {
      browser.setURL(httpEP.getUrl());
      browser.subscribeEvents("playing", "ended");
      playerEP.play();
      browser.start();

      // Assertions
      Assert.assertTrue("Timeout waiting playing event",
          browser.waitForEvent("playing"));
View Full Code Here

  @Test
  public void testPlayerSwitch() throws Exception {
    // Media Pipeline
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerRed = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/red.webm").build();
    PlayerEndpoint playerGreen = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/green.webm").build();
    PlayerEndpoint playerBlue = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/blue.webm").build();
    PlayerEndpoint playerSmpte = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/smpte.webm").build();
    PlayerEndpoint playerBall = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/10sec/ball.webm").build();
    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();

    // Test execution
    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(Browser.CHROME).client(Client.PLAYER).build()) {
      browser.setURL(httpEP.getUrl());

      // red
      playerRed.connect(httpEP);
      playerRed.play();
      browser.subscribeEvents("playing", "ended");
      browser.start();
      Assert.assertTrue("Timeout waiting playing event",
          browser.waitForEvent("playing"));
      Thread.sleep(2000);

      // green
      playerGreen.connect(httpEP);
      playerGreen.play();
      Thread.sleep(2000);

      // blue
      playerBlue.connect(httpEP);
      playerBlue.play();
      Thread.sleep(2000);

      // smpte
      playerSmpte.connect(httpEP);
      playerSmpte.play();
      Thread.sleep(2000);

      // ball
      playerBall.connect(httpEP);
      playerBall.play();
      Assert.assertTrue("Timeout waiting ended event",
          browser.waitForEvent("ended"));
      Assert.assertTrue("Play time must be at least 8 seconds",
          browser.getCurrentTime() >= 8);
    }
View Full Code Here

  @Ignore
  @Test
  public void testPlayerPlateDetector() throws Exception {
    // Media Pipeline
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerEP = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/plates.webm").build();
    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    PlateDetectorFilter plateDetectorFilter = mp.newPlateDetectorFilter()
        .build();
    playerEP.connect(plateDetectorFilter);
    plateDetectorFilter.connect(httpEP);
    plateDetectorFilter.setPlateWidthPercentage((float) 0.3);

    final List<EndOfStreamEvent> eosEvents = new ArrayList<>();
    playerEP.addEndOfStreamListener(new MediaEventListener<EndOfStreamEvent>() {
      @Override
      public void onEvent(EndOfStreamEvent event) {
        eosEvents.add(event);
      }
    });

    final List<String> platesDetectedEvents = new ArrayList<>();
    plateDetectorFilter
        .addPlateDetectedListener(new MediaEventListener<PlateDetectedEvent>() {
          @Override
          public void onEvent(PlateDetectedEvent event) {
            log.info("Plate Detected {}", event.getPlate());
            platesDetectedEvents.add(event.getPlate());
          }
        });

    // Test execution
    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(Browser.CHROME).client(Client.PLAYER).build()) {
      browser.setURL(httpEP.getUrl());
      browser.subscribeEvents("playing", "ended");
      playerEP.play();
      browser.start();

      // Assertions
      Assert.assertTrue("Timeout waiting playing event",
          browser.waitForEvent("playing"));
View Full Code Here

  public void onContentRequest(HttpPlayerSession contentSession)
      throws Exception {
    HubPort mixerPort1;
    HubPort mixerPort2;
    HubPort mixerPort3;
    PlayerEndpoint player1;
    PlayerEndpoint player2;
    GStreamerFilter bn;

    MediaPipelineFactory mpf = contentSession.getMediaPipelineFactory();
    mediaPipeline = mpf.create();
    contentSession.releaseOnTerminate(mediaPipeline);
    player1 = mediaPipeline.newPlayerEndpoint(
        VideoURLs.map.get("small-mp4")).build();
    player2 = mediaPipeline.newPlayerEndpoint(
        VideoURLs.map.get("small-mp4")).build();
    bn = mediaPipeline.newGStreamerFilter("videobalance saturation=0.0")
        .build();

    mixer = mediaPipeline.newComposite().build();

    mixerPort1 = mixer.newHubPort().build();
    mixerPort2 = mixer.newHubPort().build();
    mixerPort3 = mixer.newHubPort().build();

    player2.connect(bn);
    player1.connect(mixerPort1);
    bn.connect(mixerPort2);

    playersList = new ArrayList<PlayerConnection>();
View Full Code Here

  @Override
  public ContentCommandResult onContentCommand(
      HttpPlayerSession contentSession, ContentCommand contentCommand)
      throws Exception {
    if (contentCommand.getType().equalsIgnoreCase("newplayer")) {
      PlayerEndpoint player = mediaPipeline.newPlayerEndpoint(
          VideoURLs.map.get("small-mp4")).build();
      HubPort mixerPort = mixer.newHubPort().build();
      player.connect(mixerPort);
      player.play();
      PlayerConnection conection = new PlayerConnection(player, mixerPort);
      playersList.add(conection);
    } else if (contentCommand.getType().equalsIgnoreCase("deleteplayer")) {
      PlayerConnection connection = playersList.get(0);
      connection.player.stop();
View Full Code Here

  @Override
  public void onContentStarted(HttpPlayerSession contentSession)
      throws Exception {
    EventListener.addEvent();
    if (contentSession.getAttribute("player") != null) {
      PlayerEndpoint playerEndpoint = (PlayerEndpoint) contentSession
          .getAttribute("player");
      playerEndpoint.play();
    }
    super.onContentStarted(contentSession);
  }
View Full Code Here

  @Override
  public void onContentStarted(HttpPlayerSession contentSession)
      throws Exception {
    EventListener.addEvent();
    if (contentSession.getAttribute("player") != null) {
      PlayerEndpoint playerEndpoint = (PlayerEndpoint) contentSession
          .getAttribute("player");
      playerEndpoint.play();
    }
    super.onContentStarted(contentSession);
  }
View Full Code Here

  }

  public void doTest(Browser browserType) throws Exception {
    // Media Pipeline
    MediaPipeline mp = pipelineFactory.create();
    PlayerEndpoint playerRed = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/60sec/red.webm").build();
    PlayerEndpoint playerGreen = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/60sec/green.webm").build();
    PlayerEndpoint playerBlue = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/60sec/blue.webm").build();
    PlayerEndpoint playerWhite = mp.newPlayerEndpoint(
        "http://files.kurento.org/video/60sec/white.webm").build();

    Composite composite = mp.newComposite().build();
    HubPort hubPort1 = composite.newHubPort().build();
    HubPort hubPort2 = composite.newHubPort().build();
    HubPort hubPort3 = composite.newHubPort().build();
    HubPort hubPort4 = composite.newHubPort().build();
    HubPort hubPort5 = composite.newHubPort().build();

    HttpGetEndpoint httpEP = mp.newHttpGetEndpoint().terminateOnEOS()
        .build();
    playerRed.connect(hubPort1);
    playerGreen.connect(hubPort2);
    playerBlue.connect(hubPort3);
    playerWhite.connect(hubPort4);

    hubPort5.connect(httpEP);

    // Test execution
    try (BrowserClient browser = new BrowserClient.Builder()
        .browser(browserType).client(Client.PLAYER).build()) {
      browser.setURL(httpEP.getUrl());
      browser.subscribeEvents("playing");
      playerRed.play();
      playerGreen.play();
      playerBlue.play();
      playerWhite.play();
      browser.start();

      // Assertions
      Assert.assertTrue("Timeout waiting playing event",
          browser.waitForEvent("playing"));
View Full Code Here

TOP

Related Classes of com.kurento.kmf.media.PlayerEndpoint

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.