本文整理汇总了Java中org.kurento.client.PlayerEndpoint.stop方法的典型用法代码示例。如果您正苦于以下问题:Java PlayerEndpoint.stop方法的具体用法?Java PlayerEndpoint.stop怎么用?Java PlayerEndpoint.stop使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.kurento.client.PlayerEndpoint
的用法示例。
在下文中一共展示了PlayerEndpoint.stop方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: doTest
import org.kurento.client.PlayerEndpoint; //导入方法依赖的package包/类
public void doTest(PlayerOperation playerOperation) throws Exception {
// Test data
final String mediaUrl = "http://" + getTestFilesHttpPath() + "/video/format/small.webm";
final int guardTimeSeconds = 10;
// Media Pipeline
MediaPipeline mp = kurentoClient.createMediaPipeline();
PlayerEndpoint playerEp = new PlayerEndpoint.Builder(mp, mediaUrl).build();
WebRtcEndpoint webRtcEp = new WebRtcEndpoint.Builder(mp).build();
playerEp.connect(webRtcEp);
// Subscription to EOS event
final boolean[] eos = new boolean[1];
eos[0] = false;
playerEp.addEndOfStreamListener(new EventListener<EndOfStreamEvent>() {
@Override
public void onEvent(EndOfStreamEvent event) {
log.error("EOS event received: {} {}", event.getType(), event.getTimestamp());
eos[0] = true;
}
});
// WebRTC in receive-only mode
getPage().subscribeEvents("playing");
getPage().initWebRtc(webRtcEp, WebRtcChannel.AUDIO_AND_VIDEO, WebRtcMode.RCV_ONLY);
playerEp.play();
Assert.assertTrue("Not received media (timeout waiting playing event)",
getPage().waitForEvent("playing"));
// Stop/release stream and wait x seconds
switch (playerOperation) {
case STOP:
playerEp.stop();
break;
case RELEASE:
playerEp.release();
break;
}
Thread.sleep(TimeUnit.SECONDS.toMillis(guardTimeSeconds));
// Verify that EOS event has not being received
Assert.assertFalse("EOS event has been received. "
+ "This should not be happenning because the stream has been stopped", eos[0]);
// Release Media Pipeline
mp.release();
}
示例2: doTest
import org.kurento.client.PlayerEndpoint; //导入方法依赖的package包/类
public void doTest(MediaProfileSpecType mediaProfileSpecType, String expectedVideoCodec,
String expectedAudioCodec, String extension) throws Exception {
final CountDownLatch recorderLatch = new CountDownLatch(1);
MediaPipeline mp = null;
// Media Pipeline
mp = kurentoClient.createMediaPipeline();
PlayerEndpoint playerEp1 =
new PlayerEndpoint.Builder(mp, getPlayerUrl("/video/60sec/ball.webm")).build();
PlayerEndpoint playerEp2 =
new PlayerEndpoint.Builder(mp, getPlayerUrl("/video/60sec/smpte.webm")).build();
String recordingFile = getRecordUrl(extension);
RecorderEndpoint recorderEp = new RecorderEndpoint.Builder(mp, recordingFile)
.withMediaProfile(mediaProfileSpecType).build();
// Start play and record
playerEp1.play();
playerEp2.play();
recorderEp.record();
// Switch players
for (int i = 0; i < SWITCH_TIMES; i++) {
if (i % 2 == 0) {
playerEp1.connect(recorderEp);
} else {
playerEp2.connect(recorderEp);
}
Thread.sleep(SWITCH_RATE_MS);
}
// Stop play and record
playerEp1.stop();
playerEp2.stop();
recorderEp.stop(new Continuation<Void>() {
@Override
public void onSuccess(Void result) throws Exception {
recorderLatch.countDown();
}
@Override
public void onError(Throwable cause) throws Exception {
recorderLatch.countDown();
}
});
Assert.assertTrue("Not stop properly",
recorderLatch.await(TIMEOUT, TimeUnit.SECONDS));
// Assessments
long expectedTimeMs = SWITCH_TIMES * SWITCH_RATE_MS;
AssertMedia.assertCodecs(recordingFile, expectedVideoCodec, expectedAudioCodec);
AssertMedia.assertDuration(recordingFile, expectedTimeMs, THRESHOLD_MS);
// Release Media Pipeline
if (mp != null) {
mp.release();
}
}
示例3: testCodeFoundEvent
import org.kurento.client.PlayerEndpoint; //导入方法依赖的package包/类
@Test
public void testCodeFoundEvent() throws InterruptedException {
PlayerEndpoint player = new PlayerEndpoint.Builder(pipeline, URL_BARCODES).build();
player.connect(zbar);
AsyncEventManager<CodeFoundEvent> async = new AsyncEventManager<>("CodeFound event");
zbar.addCodeFoundListener(async.getMediaEventListener());
player.play();
async.waitForResult();
player.stop();
player.release();
}
示例4: testFaceOverlayFilter
import org.kurento.client.PlayerEndpoint; //导入方法依赖的package包/类
/**
* Test if a {@link FaceOverlayFilter} can be created in the KMS. The filter is pipelined with a
* {@link PlayerEndpoint}, which feeds video to the filter. This test depends on the correct
* behaviour of the player and its events.
*
* @throws InterruptedException
*/
@Test
public void testFaceOverlayFilter() throws InterruptedException {
PlayerEndpoint player = new PlayerEndpoint.Builder(pipeline, URL_POINTER_DETECTOR).build();
player.connect(overlayFilter);
AsyncEventManager<EndOfStreamEvent> async = new AsyncEventManager<>("EndOfStream event");
player.addEndOfStreamListener(async.getMediaEventListener());
player.play();
async.waitForResult();
player.stop();
player.release();
}