- Katılım
- 12 Eylül 2014
- Mesajlar
- 167
- Tepkime puanı
- 0
- Puanları
- 0
Voice over Internet Protocol yapımı
Client
Server [Ses Bundan Çıkıyor]
Client
Kod:
[B]import java.io.DataInputStream; [/B]
[COLOR=Darkorange][B]import java.io.DataOutputStream;
import java.net.InetAddress;
import java.net.Socket;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.TargetDataLine;
public class Main {
public static boolean run = true;
public static AudioFormat format = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, 44100, 16, 2, 4, 44100, false);
public static **** main(String[] args) {
try {
DataLine.Info dl = new DataLine.Info(TargetDataLine.class, format, 1024);
if (!AudioSystem.isLineSupported(dl)) {
System.out.println("Line is not supported!");
return;
}
TargetDataLine tdl = (TargetDataLine)AudioSystem.getLine(dl);
tdl.open(format);
Socket socket = new Socket(InetAddress.getLocalHost(), 1234);
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.flush();
DataInputStream in = new DataInputStream(socket.getInputStream());
tdl.start();
while (run && socket != null && socket.isConnected() && !socket.isClosed()) {
byte[] byt = new byte[10000];
tdl.read(byt, 0, byt.length);
out.write(byt);
out.flush();
}
socket.close();
}catch (Exception e) {
e.printStackTrace();
}
} [/B][/COLOR][B]} [/B]
Kod:
[/COLOR][/B][B]import java.io.DataInputStream; [/B]
[COLOR=DarkOrange][B]import java.io.DataOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineEvent;
import javax.sound.sampled.LineListener;
public class Main {
public static boolean run = true;
public static AudioFormat format = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, 44100, 16, 2, 4, 44100, false);
public static **** main(String[] args) {
try {
ServerSocket ss = new ServerSocket(1234);
while (run && ss != null && ss.isBound() && !ss.isClosed()) {
new ThreadListen(ss.accept());
}
ss.close();
}catch (Exception e) {
e.printStackTrace();
}
}
public static class ThreadListen extends Thread {
Socket socket = null;
DataInputStream in = null;
DataOutputStream out = null;
public ThreadListen(Socket socket) {
super("threadListen" + System.currentTimeMillis());
this.socket = socket;
try {
out = new DataOutputStream(socket.getOutputStream());
out.flush();
in = new DataInputStream(socket.getInputStream());
this.start();
}catch (Exception e) {
e.printStackTrace();
}
}
public **** run() {
try {
while (socket != null && socket.isConnected() && !socket.isClosed()) {
AudioInputStream ina = new AudioInputStream(in, format, 10000);
final Clip clip = AudioSystem.getClip();
clip.addLineListener(new LineListener() {
public **** update(LineEvent event) {
if (event.getType() == LineEvent.Type.STOP) clip.close();
}
});
clip.open(ina);
clip.start();
}
}catch (Exception e) {
e.printStackTrace();
}
}
} [/B][/COLOR][B]} [/B][B][COLOR=#000000]