diff --git a/src/org/jitsi/impl/neomedia/MediaServiceImpl.java b/src/org/jitsi/impl/neomedia/MediaServiceImpl.java old mode 100644 new mode 100755 index 8ea44913a5f393ff74544d260d990a67d6e0a811..5053cb30427585303d4de639a3b8eccce46f781e --- a/src/org/jitsi/impl/neomedia/MediaServiceImpl.java +++ b/src/org/jitsi/impl/neomedia/MediaServiceImpl.java @@ -863,6 +863,15 @@ public Recorder createRecorder(MediaDevice device) return null; } + /** + * {@inheritDoc} + */ + @Override + public Recorder createRecorder(RTPTranslator translator) + { + return new RecorderRtpImpl(translator); + } + /** * Returns a {@link Map} that binds indicates whatever preferences this * media service implementation may have for the RTP payload type numbers @@ -1782,4 +1791,15 @@ public void windowClosing(WindowEvent event) } } } + + /** + * {@inheritDoc} + */ + @Override + public RecorderEventHandler createRecorderEventHandlerJson(String filename) + throws IOException + { + return new RecorderEventHandlerJSONImpl(filename); + } + } diff --git a/src/org/jitsi/service/neomedia/MediaService.java b/src/org/jitsi/service/neomedia/MediaService.java index 4337bd40f2aa3f1ba5542fdb8aefcdc600fe0448..d41ad218b57f0ed30cfb2017bd06852efa8064cc 100644 --- a/src/org/jitsi/service/neomedia/MediaService.java +++ b/src/org/jitsi/service/neomedia/MediaService.java @@ -7,6 +7,7 @@ package org.jitsi.service.neomedia; import java.beans.*; +import java.io.*; import java.util.*; import org.jitsi.service.neomedia.codec.*; @@ -199,6 +200,16 @@ public MediaStream createMediaStream( */ public Recorder createRecorder(MediaDevice device); + /** + * Creates a new <tt>Recorder</tt> instance that can be used to record media + * from a specific <tt>RTPTranslator</tt>. + * @param translator the <tt>RTPTranslator</tt> for which to create a + * <tt>Recorder</tt> + * @return a new <tt>Recorder</tt> instance that can be used to record media + * from a specific <tt>RTPTranslator</tt>. + */ + public Recorder createRecorder(RTPTranslator translator); + /** * Initializes a new <tt>RTPTranslator</tt> which is to forward RTP and RTCP * traffic between multiple <tt>MediaStream</tt>s. @@ -391,4 +402,17 @@ public Object getVideoPreviewComponent( * libjitsi. */ public String getRtpCname(); + + /** + * Creates a <tt>RecorderEventHandler</tt> instance that saves received + * events in JSON format. + * @param filename the filename into which the created + * <tt>RecorderEventHandler</tt> will save received events. + * @return a <tt>RecorderEventHandler</tt> instance that saves received + * events in JSON format. + * @throws IOException if a <tt>RecorderEventHandler</tt> could not be + * created for <tt>filename</tt>. + */ + public RecorderEventHandler createRecorderEventHandlerJson(String filename) + throws IOException; }