m2m_123
چهارشنبه 19 شهریور 1393, 20:24 عصر
سلام دوستان
من می خوام این کد رو اجرا کنم:
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import javax.annotation.*;
import javax.media.*;
import javax.media.control.*;
import javax.media.format.*;
import javax.media.protocol.*;
public class MediaTransmitter {
private MediaLocator mediaLocator = null;
private DataSink dataSink = null;
private Processor mediaProcessor = null;
private static final Format[] FORMATS = new Format[] {
new AudioFormat(AudioFormat.ULAW_RTP)};
private static final ContentDescriptor CONTENT_DESCRIPTOR =
new ContentDescriptor(ContentDescriptor.RAW_RTP);
public MediaTransmitter(MediaLocator locator) {
mediaLocator = locator;
}
public void startTransmitting() throws IOException {
mediaProcessor.start();
dataSink.open();
dataSink.start();
}
public void stopTransmitting() throws IOException {
dataSink.stop();
dataSink.close();
mediaProcessor.stop();
mediaProcessor.close();
}
public void setDataSource(DataSource ds) throws IOException,NoProcessorException, CannotRealizeException, NoDataSinkException {
mediaProcessor = Manager.createRealizedProcessor(
new ProcessorModel(ds, FORMATS, CONTENT_DESCRIPTOR));
dataSink = Manager.createDataSink(mediaProcessor.getDataOutpu t(),
mediaLocator);
}
public static void main(String[] args) {
try {
MediaLocator locator = new MediaLocator("192.168.1.111:333/audio");
MediaTransmitter transmitter = new MediaTransmitter(locator);
System.out.println("-> Created media locator: '" +
locator + "'");
Vector devices=CaptureDeviceManager.getDeviceList ( null );
System.out.println("1");
CaptureDeviceInfo cdi= (CaptureDeviceInfo) devices.elementAt ( 0 );
System.out.println("2");
DataSource source = Manager.createDataSource(cdi.getLocator());
System.out.println("3");
transmitter.setDataSource(source);
System.out.println("4");
System.out.println("-> Set the data source on the transmitter");
transmitter.startTransmitting();
System.out.println("-> Transmitting...");
System.out.println(" Press the Enter key to exit");
System.in.read();
System.out.println("-> Exiting");
transmitter.stopTransmitting();
} catch (Throwable t) {
t.printStackTrace();
}
System.exit(0);
}
}
ولی برنامه این خطا رو میده:
run:-> Created media locator: '192.168.1.111:333/audio'
1
2
java.lang.UnsatisfiedLinkError: JMFSecurityManager: java.lang.UnsatisfiedLinkError: no jmdaudc in java.library.path
javax.media.NoDataSourceException: Error instantiating class: com.sun.media.protocol.dsound.DataSource : java.lang.UnsatisfiedLinkError: JMFSecurityManager: java.lang.UnsatisfiedLinkError: no jmdaudc in java.library.path
at javax.media.Manager.createDataSource(Manager.java: 1017)
at MediaTransmitter.main(MediaTransmitter.java:67)
Picked up _JAVA_OPTIONS: -Xmx512M
BUILD SUCCESSFUL (total time: 0 seconds)
اگه کسی دلیلش رو میدونه راهنمایی کنه لطفا..
من می خوام این کد رو اجرا کنم:
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import javax.annotation.*;
import javax.media.*;
import javax.media.control.*;
import javax.media.format.*;
import javax.media.protocol.*;
public class MediaTransmitter {
private MediaLocator mediaLocator = null;
private DataSink dataSink = null;
private Processor mediaProcessor = null;
private static final Format[] FORMATS = new Format[] {
new AudioFormat(AudioFormat.ULAW_RTP)};
private static final ContentDescriptor CONTENT_DESCRIPTOR =
new ContentDescriptor(ContentDescriptor.RAW_RTP);
public MediaTransmitter(MediaLocator locator) {
mediaLocator = locator;
}
public void startTransmitting() throws IOException {
mediaProcessor.start();
dataSink.open();
dataSink.start();
}
public void stopTransmitting() throws IOException {
dataSink.stop();
dataSink.close();
mediaProcessor.stop();
mediaProcessor.close();
}
public void setDataSource(DataSource ds) throws IOException,NoProcessorException, CannotRealizeException, NoDataSinkException {
mediaProcessor = Manager.createRealizedProcessor(
new ProcessorModel(ds, FORMATS, CONTENT_DESCRIPTOR));
dataSink = Manager.createDataSink(mediaProcessor.getDataOutpu t(),
mediaLocator);
}
public static void main(String[] args) {
try {
MediaLocator locator = new MediaLocator("192.168.1.111:333/audio");
MediaTransmitter transmitter = new MediaTransmitter(locator);
System.out.println("-> Created media locator: '" +
locator + "'");
Vector devices=CaptureDeviceManager.getDeviceList ( null );
System.out.println("1");
CaptureDeviceInfo cdi= (CaptureDeviceInfo) devices.elementAt ( 0 );
System.out.println("2");
DataSource source = Manager.createDataSource(cdi.getLocator());
System.out.println("3");
transmitter.setDataSource(source);
System.out.println("4");
System.out.println("-> Set the data source on the transmitter");
transmitter.startTransmitting();
System.out.println("-> Transmitting...");
System.out.println(" Press the Enter key to exit");
System.in.read();
System.out.println("-> Exiting");
transmitter.stopTransmitting();
} catch (Throwable t) {
t.printStackTrace();
}
System.exit(0);
}
}
ولی برنامه این خطا رو میده:
run:-> Created media locator: '192.168.1.111:333/audio'
1
2
java.lang.UnsatisfiedLinkError: JMFSecurityManager: java.lang.UnsatisfiedLinkError: no jmdaudc in java.library.path
javax.media.NoDataSourceException: Error instantiating class: com.sun.media.protocol.dsound.DataSource : java.lang.UnsatisfiedLinkError: JMFSecurityManager: java.lang.UnsatisfiedLinkError: no jmdaudc in java.library.path
at javax.media.Manager.createDataSource(Manager.java: 1017)
at MediaTransmitter.main(MediaTransmitter.java:67)
Picked up _JAVA_OPTIONS: -Xmx512M
BUILD SUCCESSFUL (total time: 0 seconds)
اگه کسی دلیلش رو میدونه راهنمایی کنه لطفا..