Professional Documents
Culture Documents
Practical No
Practical No
A) Create an Applet or swing based application with play, pause and stop options for playing an Audio file. B) Create an Applet or a swing based application for playing a Video file. Create an applet or swing based application to play separate streams (video and audio) in synchronization. Write a program based on applet or swing based application which will display the list of all the alphabets in a combo. Write a program to mix two different audio stream. Write a program to teach counting of objects (With the help of images and audio) Write a program to design a calculator with audio for basic operations like addition, subtraction, multiplication and division (javax.speech package can be used). Create an animated applet or frame by Using some image files. Write a program to read a text file using Free TTS Package. Using Media tracker, create a slide show. Using Media tracker, create a movie clip.
Multimedia Systems
Topic
Date
Sign
2 3
4 5 6
7 8 9 10
M.Sc. IT Part-II
Practical No:1(A) Code: AudioProgram.java importjavax.swing.*; importjava.awt.*; importjava.awt.event.*; importjava.applet.*; //<applet code="AudioProgram" width=200 height=50></applet> public class AudioProgram extends JApplet implements ActionListener { AudioClip ac; JButton b1,b2,b3; public void init() { Container con=getContentPane(); con.setLayout(new FlowLayout()); b1=new JButton("Play"); con.add(b1); b1.addActionListener(this);
M.Sc. IT Part-II
Multimedia Systems
b2=new JButton("Loop"); con.add(b2); b2.addActionListener(this); b3=new JButton("Stop"); con.add(b3); b3.addActionListener(this); ac=getAudioClip(getDocumentBase(),"notify.wav"); } public void actionPerformed(ActionEventev) { if(ev.getSource()==b1) { ac.play(); } if(ev.getSource()==b2) { ac.loop(); } if(ev.getSource()==b3) { ac.stop(); }}}
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:1(B) CODE : VideoPro.java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.net.*; import java.io.*; import javax.media.*; public class VideoPro extends JFrame { Player player; File f; Container con; public static void main(String[] args)throws IOException { VideoProvp=new VideoPro(); } VideoPro() {
M.Sc. IT Part-II
Multimedia Systems
con=getContentPane(); con.setLayout(new BorderLayout()); setSize(300,300); try { f=new File("camera.mpg"); URL url=f.toURL(); if(player!=null) { player.stop(); } player =Manager.createPlayer(url); ControllerListener listener=new ControllerAdapter() { public void realizeComplete(RealizeCompleteEvent eve) { Component vc=player.getVisualComponent(); if(vc!=null) { con.add(vc,BorderLayout.CENTER); } else
M.Sc. IT Part-II Multimedia Systems
{ con.remove(vc); con.validate(); } Component cpc=player.getControlPanelComponent(); if(cpc!=null) { con.add(cpc,BorderLayout.SOUTH); } else { con.remove(cpc); con.validate(); } pack(); setTitle("VideoPlayer: "+f.getName()); } }; this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) {
M.Sc. IT Part-II
System.exit(0); }
Multimedia Systems
setVisible(true); } }
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:2 CODE : AudioVideo.java import java.io.*; importjavax.swing.*; importjavax.media.*; importjava.awt.*; importjava.awt.event.*; import java.net.*; classAudioVideo extends JFrame implements Runnable { String name; Thread t; Player player; Component center,south; AudioVideo(String threadname) { name = threadname; t = new Thread(this, name); t.start(); } public void run()
M.Sc. IT Part-II
Multimedia Systems
pack(); setVisible(true); Thread.sleep(1000); } if(name == "Two") { File f1 = new File("start.wav"); try { load(f1); }
M.Sc. IT Part-II
Multimedia Systems
} pack(); setVisible(true); Thread.sleep(1000); } } catch (InterruptedException e) { System.out.println(name + "Interrupted"); } } public void load(final File file) throws Exception { URL url = file.toURL(); final Container contentPane =getContentPane(); if (player != null) { player.stop(); } player = Manager.createPlayer(url); ControllerListener listener = new ControllerAdapter() {
M.Sc. IT Part-II
Multimedia Systems
public void realizeComplete(RealizeCompleteEvent event) { Component vc = player.getVisualComponent(); if (vc != null) { contentPane.add(vc,BorderLayout.CENTER); center = vc; } else { if (center != null) { contentPane.remove(center); contentPane.validate(); } } Component cpc = player.getControlPanelComponent(); if (cpc != null) { contentPane.add(cpc,BorderLayout.SOUTH); south = cpc; }
M.Sc. IT Part-II
Multimedia Systems
else { if (south != null) { contentPane.remove(south); contentPane.validate(); } } pack(); setTitle("Video & Audio Player : " +file.getName()); } }; player.addControllerListener(listener); player.start(); this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { System.exit(0); } }); }
M.Sc. IT Part-II
Multimedia Systems
} classVideoAudioMix { public static void main(String args[]) { newAudioVideo("One"); newAudioVideo("Two"); try { Thread.sleep(10000);}
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:3 CODE : ImgAud.java import javax.swing.*; import java.awt.event.*; import java.awt.*; import java.applet.*;
//<applet code="ImgAud" width=300 height=300></applet> public class ImgAud extends JApplet implements ItemListener { JComboBox jcb; private JLabel jlbl; //private String alpha[]={"1","2","3","4"}; private String alpha[]={"A","B","C","D"};//FOR KARU private Icon img[]=new Icon[4]; private AudioClip ac[]=new AudioClip[4]; public void init() { Container con=getContentPane(); con.setLayout(new FlowLayout());
M.Sc. IT Part-II
Multimedia Systems
jcb=new JComboBox(alpha);
jcb.addItemListener(this);
for(int i=0;i<4;i++) { img[i]=new ImageIcon(alpha[i]+".jpg"); ac[i]=getAudioClip(getDocumentBase(),alpha[i]+".wav"); } ac[0].play(); jlbl=new JLabel(img[0]); con.add(jlbl); con.add(jcb); } public void itemStateChanged(ItemEvent e) { jlbl.setIcon(img[jcb.getSelectedIndex()]); ac[jcb.getSelectedIndex()].play(); } }
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:4 CODE : mix .java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.io.*; /*<applet code="mix" width=200 height=100></applet>*/ public class mix extends JApplet implements Runnable { AudioClip ac1,ac2; Thread t1,t2; public void init() { ac1=getAudioClip(getDocumentBase(),"notify.wav"); ac2=getAudioClip(getDocumentBase(),"start.wav"); t1=new Thread(this); t1.start(); System.out.println("t1 started!!!"); t2=new Thread(this); t2.start();
M.Sc. IT Part-II
Multimedia Systems
System.out.println("t2 started!!!");
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:5 CODE : countShapes.java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.net.*; /*<applet code="countShapes" width=500 height=500></applet>*/ public class countShapes extends JApplet implements ActionListener { Container cont; JPanel p; JLabellblCount; JButtonbtCircle,btSquare,btRect,btTria; booleanblnCircle,blnSquare,blnRect,blnTria; int count=0; String shape=""; AudioClipcircleClip,squareClip,rectClip,triaClip; public void init() { cont=getContentPane();
M.Sc. IT Part-II Multimedia Systems
M.Sc. IT Part-II
Multimedia Systems
p.add(btRect); p.add(btTria); cont.add(p,BorderLayout.SOUTH); } public void actionPerformed(ActionEventae) { if(ae.getSource()==btCircle) { if(blnSquare==true||blnRect==true||blnTria==true) { blnSquare=false; blnRect=false; blnTria=false; count=0; } blnCircle=true; shape="CIRCLE"; count++; lblCount.setText(shape+" count : "+count); repaint(); circleClip.play(); }
M.Sc. IT Part-II
Multimedia Systems
if(ae.getSource()==btSquare) { if(blnCircle==true||blnRect==true||blnTria==true) { blnCircle=false; blnRect=false; blnTria=false; count=0; } blnSquare=true; shape="SQUARE"; count++; lblCount.setText(shape+" count : "+count); repaint(); squareClip.play(); } if(ae.getSource()==btRect) { if(blnSquare==true||blnCircle==true||blnTria==true) { blnSquare=false; blnCircle=false;
M.Sc. IT Part-II
Multimedia Systems
blnTria=false; count=0; } blnRect=true; shape="RECTANGLE"; count++; lblCount.setText(shape+" count : "+count); repaint(); rectClip.play(); } if(ae.getSource()==btTria) { if(blnSquare==true||blnRect==true||blnCircle==true) { blnSquare=false; blnRect=false; blnCircle=false; count=0; } blnTria=true; shape="TRIANGLE"; count++;
M.Sc. IT Part-II
Multimedia Systems
lblCount.setText(shape+" count : "+count); repaint(); triaClip.play(); } } public void paint(Graphics g) { cont.paint(cont.getGraphics()); int x=10, y=30, w=30, h=30; if(shape.equals("CIRCLE") || shape.equals("SQUARE")) { for(inti=0;i<count;i++) { if(y>=p.getY()-30) { JOptionPane.showMessageDialog(this,"Exceeding the limit of area for drawing.\n\nChoose different shape."); shape=""; count=0; break; } else {
M.Sc. IT Part-II Multimedia Systems
if(shape.equals("CIRCLE")) g.drawOval(x,y,w,h); else g.drawRect(x,y,w,h); x+=40; if(x>=getWidth()-30) { x=10; y+=40; } } } } x=10;y=30;w=50;h=30; if(shape.equals("RECTANGLE")) { for(inti=0;i<count;i++) { if(y>=p.getY()-30) { JOptionPane.showMessageDialog(this,"Exceeding the limit of area for drawing.\n\nChoose different shape."); shape="";
M.Sc. IT Part-II Multimedia Systems
count=0; lblCount.setText("Shape Count : 0"); break; } else { g.drawRect(x,y,w,h); x+=60; if(x>=getWidth()-60) { x=10; y+=40; } } } } if(shape.equals("TRIANGLE")) { intwp=60,hp=60,xp=10,yp=30; for(inti=0;i<count;i++) { if(yp+hp>=p.getY())
M.Sc. IT Part-II
Multimedia Systems
{ JOptionPane.showMessageDialog(this,"Exceeding the limit of area for drawing.\n\nChoose different shape."); shape=""; count=0; lblCount.setText("Shape Count : 0"); break; } else { int[] xpa={xp+(wp/2),xp,(xp+wp)}; int[] ypa={yp,yp+hp,yp+hp}; g.drawPolygon(xpa,ypa,3); xp+=70; if(xp>=getWidth()-wp) { xp=10; yp+=70; } } } }}}
M.Sc. IT Part-II
Multimedia Systems
OUTPUT:
M.Sc. IT Part-II
Multimedia Systems
Practical No:6
CODE : Calculator.java import java.awt.*; import java.applet.*; import java.io.*; import java.awt.event.*; import javax.swing.*;
public class Calculator extends Applet implements ActionListener { Panel p1 = new Panel(); Panel p2 = new Panel(); TextField text; Button equalto, one, two, three, four, five, six, seven, eight, nine, zero, c, plus, minus, multi, divide; String sText1, sText2,sOperator,str,s; double num1, num2;
M.Sc. IT Part-II Multimedia Systems
p1.add(text);
M.Sc. IT Part-II
Multimedia Systems
p2.add(one);
M.Sc. IT Part-II
Multimedia Systems
M.Sc. IT Part-II
Multimedia Systems
private void initProperty() { setLayout(new BorderLayout()); add(p1,BorderLayout.NORTH); add(p2,BorderLayout.CENTER); p2.setLayout(new GridLayout(4,4)); setSize(150,200); setVisible(true); }
M.Sc. IT Part-II
Multimedia Systems
public void actionPerformed(ActionEvent e) { str = e.getActionCommand(); if (str.equals("C")) { ac = getAudioClip(getCodeBase(),"c.wav"); ac.play(); num1 = 0.0d; num2 = 0.0d; sOperator = ""; text.setText("0"); isFixReg = true; } else if ((str.equals("0")) | (str.equals("1")) | (str.equals("2"))| (str.equals("3")) | (str.equals("4")) | (str.equals("5"))| (str.equals("6")) | (str.equals("7")) | (str.equals("8"))| (str.equals("9"))) { if (isFixReg) sText2 = (String) str; else sText2 = text.getText() + str; text.setText(sText2); isFixReg = false;
M.Sc. IT Part-II Multimedia Systems
if(str.equals("0")) { ac= getAudioClip(getCodeBase(),"0.wav"); ac.play(); } else if(str.equals("1")) { ac= getAudioClip(getCodeBase(),"1.wav"); ac.play(); } else if(str.equals("2")) { ac= getAudioClip(getCodeBase(),"2.wav"); ac.play(); } else if(str.equals("3")) { ac= getAudioClip(getCodeBase(),"3.wav"); ac.play(); } else if(str.equals("4"))
M.Sc. IT Part-II
Multimedia Systems
{ ac= getAudioClip(getCodeBase(),"4.wav"); ac.play(); } else if(str.equals("5")) { ac= getAudioClip(getCodeBase(),"5.wav"); ac.play(); } else if(str.equals("6")) { ac= getAudioClip(getCodeBase(),"6.wav"); ac.play(); } else if(str.equals("7")) { ac= getAudioClip(getCodeBase(),"7.wav"); ac.play(); } else if(str.equals("8")) { ac= getAudioClip(getCodeBase(),"8.wav");
M.Sc. IT Part-II
Multimedia Systems
ac.play(); } else if(str.equals("9")) { ac= getAudioClip(getCodeBase(),"9.wav"); ac.play(); } } else if ((str.equals("+")) | (str.equals("-"))| (str.equals("*")) | (str.equals("/")) | (str.equals("="))) { if(str.equals("+")) { ac= getAudioClip(getCodeBase(),"plus.wav"); ac.play(); } else if(str.equals("-")) { ac= getAudioClip(getCodeBase(),"minus.wav"); ac.play(); } else if(str.equals("*")) {
M.Sc. IT Part-II Multimedia Systems
ac= getAudioClip(getCodeBase(),"multiply.wav"); ac.play(); } else if(str.equals("/")) { ac= getAudioClip(getCodeBase(),"divide.wav"); ac.play(); } else if(str.equals("=")) { ac= getAudioClip(getCodeBase(),"equal.wav"); ac.play(); } sText1 = text.getText(); num2 = (Double.valueOf(sText1)).doubleValue(); num1 = Calculation(sOperator, num1, num2); Double dTemp = new Double(num1); sText2 = dTemp.toString(); text.setText(sText2); sOperator = (String) str; isFixReg = true; }
M.Sc. IT Part-II
Multimedia Systems
} private double Calculation(String sOperator, double num1, double num2) { if ("+".equals(sOperator)) num1 = num1 + num2; else if ("-".equals(sOperator)) num1 = num1 - num2; else if ("*".equals(sOperator)) num1 = num1 * num2; else if ("/".equals(sOperator)) num1 = num1 / num2; else num1 = num2; return num1; } public void paint (Graphics g) { g.drawString(s,6,100); } }
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:7 CODE : Animation.java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.io.*; /*<applet code=Animation width=200 height=150></applet>*/ public class Animation extends JApplet { //ImageIconimg; Image img1; //JLabellblImg; //Icon icn; Thread tAni; inti=0; public void init() { try {
M.Sc. IT Part-II
Multimedia Systems
setLayout(null); Runnable r=new Runnable() { public void run() { try { while(true) { if(i<=45) { img1=Toolkit.getDefaultToolkit().getImage(i+".gif"); i++; if(i==46) //{ i=0; tAni.sleep(300); repaint(); //} } } }
M.Sc. IT Part-II
Multimedia Systems
catch(Exception e) { System.out.println("in runnable "+e); } } }; tAni=new Thread(r); tAni.start(); } catch(Exception e) { System.out.println("in init "+e); } } public void stop() { } public void paint(Graphics g) { try { super.paint(g);
M.Sc. IT Part-II
Multimedia Systems
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:7(B) CODE : Animation.java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.io.*; /*<applet code=Animation width=200 height=150></applet>*/ public class Animation extends JApplet { //ImageIconimg; Image img1; //JLabellblImg; //Icon icn; Thread tAni; inti=0; public void init() { try { setLayout(null);
M.Sc. IT Part-II
Multimedia Systems
Runnable r=new Runnable() { public void run() { try { while(true) { if(i<=5) { img1=Toolkit.getDefaultToolkit().getImage(i+".gif"); i++; if(i==4) //{ i=0; tAni.sleep(300); repaint(); //} } } } catch(Exception e)
M.Sc. IT Part-II
Multimedia Systems
{ System.out.println("in runnable "+e); } } }; tAni=new Thread(r); tAni.start(); } catch(Exception e) { System.out.println("in init "+e); } } public void stop() { } public void paint(Graphics g) { try { super.paint(g); g.drawImage(img1,50,50,this);
M.Sc. IT Part-II
Multimedia Systems
OUTPUT:
M.Sc. IT Part-II
Multimedia Systems
M.Sc. IT Part-II
Multimedia Systems
public class readTextFile1 { public static void main(String[] args) { FileInputStream fin=null; String fileName,strContents="";
M.Sc. IT Part-II
Multimedia Systems
fin.close();
M.Sc. IT Part-II
Multimedia Systems
OUTPUT : t1.txt
M.Sc. IT Part-II
Multimedia Systems
Practical No:9 CODE : slideShow.java import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*;
public class slideShow extends JApplet implements ActionListener { Container con; int h; changeSlide change; MediaTracker tracker; Image[] img = new Image[13]; intcurrent_img=-1, tracked=0, stoppedOnImage; booleanstopFlag, blnDoNotRepaint; blnShowOn=true, blnNext, blnPrev,
public void init() { con = getContentPane(); con.setLayout(new BorderLayout()); p = new JPanel(); btNext = new JButton("Next"); btPrev = new JButton("Previous"); btStart = new JButton("Start"); btStop = new JButton("Stop");
M.Sc. IT Part-II
Multimedia Systems
{ img[i] = getImage(getCodeBase(),i+".jpg"); tracker.addImage(img[i],tracked); tracked++; } change = new changeSlide(this); } public void actionPerformed(ActionEventae) { if(ae.getSource()==btStop) { showStatus("Stopped"); change.t.suspend(); blnShowOn=false; } if(ae.getSource()==btStart) { change.t.resume(); showStatus("Started"); blnShowOn=true; } if(ae.getSource()==btNext)
M.Sc. IT Part-II
Multimedia Systems
{ change.t.suspend(); blnNext=true; nextPrevSlide ns = new nextPrevSlide(this); } if(ae.getSource()==btPrev) { System.out.println(current_img); blnPrev=true; nextPrevSlide ns = new nextPrevSlide(this); }} public void paint(Graphics g) { Graphics ge = p.getGraphics(); p.paint(ge); if(blnShowOn == false) g.drawImage(img[stoppedOnImage],0,40,null); if(blnShowOn) { intdoneCount=0; intcurrentlyLoading=0;
M.Sc. IT Part-II
Multimedia Systems
for(inti=0;i<tracked;i++) { if(tracker.checkID(i,true)==true) { doneCount++; currentlyLoading=i; showStatus("Total " +doneCount+ "Images Loaded, Now Loading...."+currentlyLoading+".jpg image."); } else { showStatus("Total "+doneCount +" Images Loaded, Now Loading...."+currentlyLoading+".jpg image."); } } if(doneCount == tracked) { showStatus("All Images Loaded.."); Image i1 = img[current_img]; g.drawImage(i1,0,40,null); showStatus("Currently showing : "+current_img+".jpg"); stoppedOnImage=current_img; }
M.Sc. IT Part-II Multimedia Systems
else { showStatus("Total "+doneCount+" Images Loaded, Now Loading...."+currentlyLoading+".jpg image."); } } if(blnDoNotRepaint == true) change.t.resume(); } public void start() { stopFlag=false; }
M.Sc. IT Part-II
Multimedia Systems
{ } s.current_img++; if(s.current_img>s.tracked) s.current_img=0; if(s.blnDoNotRepaint) { try { Thread.sleep(3000); } catch(InterruptedException e) { } s.blnDoNotRepaint=false; } } } } } classnextPrevSlide implements Runnable {
M.Sc. IT Part-II
Multimedia Systems
public void run() { booleanblnDecremented = false; if(s.blnPrev) { if(s.current_img==0) { s.current_img=10; s.stoppedOnImage=s.current_img; blnDecremented=true; } if(s.current_img>=1 && !blnDecremented) {
M.Sc. IT Part-II
Multimedia Systems
s.current_img=s.current_img-1; s.stoppedOnImage=s.current_img; blnDecremented=false; } s.blnPrev=false; } if(s.blnNext) { if(s.current_img>=10) { s.current_img=0; s.stoppedOnImage=s.current_img; } else { s.current_img=s.current_img+1; s.stoppedOnImage=s.current_img; } s.blnNext=false; } s.blnDoNotRepaint=true; s.repaint();
M.Sc. IT Part-II
Multimedia Systems
t.stop(); } }
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems
Practical No:10 CODE : movieClip.java import java.awt.*; import javax.swing.*; /* <applet code="movieClip" width=500 height=500> </applet> */ public class movieClip extends JApplet implements Runnable { Container cont; Thread t; int imgCount=1; int totalImages=20; JLabel l; MediaTracker tracker; int tracked=1; public void init() { cont=getContentPane(); cont.setBackground(Color.black); l=new JLabel(new ImageIcon(imgCount+".jpg")); cont.add(l,BorderLayout.CENTER); tracker=new MediaTracker(this); for(int i=1;i<=totalImages;i++) { tracker.addImage((new ImageIcon(i+".jpg")).getImage(),tracked);
M.Sc. IT Part-II Multimedia Systems
tracked++; } } public void start() { t=new Thread(this); t.start(); } public void run() { String loaded=""; int donecount=0; while(true) { for(int i=1;i<=tracked;i++) { if(tracker.checkID(i,true)) { donecount++; loaded+=i+".jpg, "; } } System.out.println("donecount : "+donecount); System.out.println("Tracked : "+tracked); if(donecount==tracked) { if(imgCount<totalImages) { imgCount++; l.setText(null); l.setIcon(new ImageIcon(imgCount+".jpg"));
M.Sc. IT Part-II Multimedia Systems
} else if(imgCount==totalImages) { l.setText(null); l.setIcon(new ImageIcon(imgCount+".jpg")); imgCount=0; } } else { l.setIcon(null); l.setText("Loaded Images are : "+loaded); } donecount=0; loaded=""; try { Thread.sleep(100); }catch(Exception e){} } } }
M.Sc. IT Part-II
Multimedia Systems
OUTPUT :
M.Sc. IT Part-II
Multimedia Systems