*
The moose likes JSF and the fly likes voice chat application Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » JSF
Bookmark "voice chat application" Watch "voice chat application" New topic
Author

voice chat application

zohreh talebi
Ranch Hand

Joined: Sep 01, 2006
Posts: 41
Dear Friends,

I want to write a web base chat application with voice.I did so many search on this topic ,unfortunatly i didn't find useful thing except this codes but i don't know weather it is good for me or not .
Can every one see and guide me or introduse some resources.I would be so glad if see your any ideas.




import java.io.Serializable;
import java.net.InetAddress;
import java.net.Socket;
import javax.swing.JOptionPane;

public class Sc implements Serializable
{
private static InetAddress host;
private static final int PORT = 1234;
public static Socket link;
public String hostName;
public Sc()
{
try{
String d=JOptionPane.showInputDialog(null,"");
hostName =String.valueOf(d) ;
if(hostName==null)
hostName="localhost";
host = InetAddress.getByName(hostName);

link = new Socket(host,PORT);
}catch(Exception e)
{System.out.println("ERROR in sc"+e);
}
JOptionPane.showMessageDialog(null,+PORT+" "+host);
if( PORT==1234)
{ JOptionPane.showMessageDialog(null,"start voice recording");
MicReader m = new MicReader();

try {

m.startRecording();

}catch (Exception e)
{JOptionPane.showMessageDialog(null,"error in SC "+e);
}
}}

public static void main(String args[])
{

Sc t=new Sc();
}}

-----------------------------------------------------------------------------


import java.io.DataInputStream;
import java.io.IOException;
//import java.io.RandomAccessFile;
import java.io.Serializable;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JOptionPane;
public class Ss implements Serializable
{


public static ServerSocket servSocket;
private static final int PORT = 8080;

public static Socket client;
public Ss() throws IOException
{
try {
servSocket = new ServerSocket(PORT);
JOptionPane.showMessageDialog(null," Set Up Port");
} catch (IOException ioe) {

JOptionPane.showMessageDialog(null,"Unable To Set Up Port");
System.exit(1);
}

try
{
client = servSocket.accept();
//RandomAccessFile fout=new RandomAccessFile("Voice1.wav","rw");

int option;
do
{



AudioPlayerTest a=new AudioPlayerTest();
JOptionPane.showMessageDialog(null,"called ap");

a.playFile();

}while(true);

}catch(Exception e)
{
JOptionPane.showMessageDialog(null,"SS"+e);
}

}


public static void main(String args[])
{
try
{

Ss t=new Ss();
}catch(Exception e)
{JOptionPane.showMessageDialog(null,"main exit");
}
}
}

-----------------------------------------------------------------------------
import java.io.DataInputStream;

import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.SourceDataLine;

public class AudioPlayerTest {

//String audioFileName;
SourceDataLine line;
//DataInputStream in;
public AudioPlayerTest() {
//audioFileName = fName;
//in1=in;
try {
AudioFormat aFormat =
new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
44100.0f,
16,
2,
4,
44100.0f,
false);
DataLine.Info info =
new DataLine.Info(SourceDataLine.class, aFormat);
line = (SourceDataLine) AudioSystem.getLine(info);

line.open(aFormat);

}
catch (Exception e) {
System.out.println("Line Exception" + e);
}}

public void playFile() {
byte[] data = new byte[1024];
try {
while(true)
{
DataInputStream In= new DataInputStream(Ss.client.getInputStream());
In.read(data,0,1024);
if(data.equals(null))
System.out.println("no data read");
else
{

line.start();
//JOptionPane.showMessageDialog(null,"satred");

//JOptionPane.showMessageDialog(null,"read");
System.out.println("read"+data);

line.write(data, 0, 1024);
}
//JOptionPane.showMessageDialog(null,"written");
/*line.drain();
line.stop();
line.close();
line = null;*/
}
} catch (Exception e) {
System.out.println("Line Exception" + e);
}

}
}

----------------------------------------------------------------------------
import java.io.DataOutputStream;

import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.TargetDataLine;

public class MicReader extends Thread {

String audioFileName;
AudioInputStream audioLine;
//FileOutputStream fout;
//RandomAccessFile outputFile;
//boolean isOver = false;
TargetDataLine line;
public MicReader() {
//audioFileName = fName;
try {
//File outputFile = new File("voice.wav","rw");
//outputFile=new RandomAccessFile("audioFileName","rws");
AudioFormat aFormat =
new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
44100.0f,
16,
2,
4,
44100.0f,
false);
DataLine.Info info =
new DataLine.Info(TargetDataLine.class, aFormat);
line = (TargetDataLine) AudioSystem.getLine(info);
audioLine = new AudioInputStream(line);
line.open(aFormat);
//FileOutputStream output=(FileOutputStream)outputFile;
//System.out.println("Line Initialized...");
//fout = new FileOutputStream(outputFile);
//outputFile=new RandomAccessFile("audioFileName","w");
//fout=new FileOutputStream(outputFile);

} catch (Exception e) {
System.out.println("Exception " + e);
System.exit(0);

}

}

public void startRecording() {
line.start();
start();

}

public void stopRecording() {
//isOver = true;
}

public void run() {
byte[] data = new byte[1024];

while (true) {

try {
DataOutputStream out=new DataOutputStream(Sc.link.getOutputStream());
int bytes=line.read(data,0,1024);
out.write(data,0,bytes);
out.flush();

} catch (Exception e1) {
System.out.println("micreader" + e1);
}
}


}
}


Thanks
Zohreh
zohreh talebi
Ranch Hand

Joined: Sep 01, 2006
Posts: 41
Please help me
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: voice chat application
 
Similar Threads
voice chat
Clip.start() behaviour
Anyway to convert this to a method...?
Applet not working
Play a .wav file