Sabtu, 10 Mei 2014

Tugas ke-5 Multimedia (Aplikasi Multimedia)

      Tugas kelima ini merupakan tugas besar, dan tugas berkelompok, kelompok saya adalah Mardhiyah dan Widya Septriani, kami membuat sebuah aplikasi berbasis dekstop yaitu text to speech menggunakan tools Netbeans,  sesuai namanya aplikasi ini membacakan text yang kita inputkan, berikut adalah interfacenya:

dengan source code :

import java.io.*;
import com.sun.speech.freetts.*;

public class tspeech extends javax.swing.JFrame {
    /**
     * Creates new form tspeech
     */
    public tspeech() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        kotak = new javax.swing.JTextArea();
        jButton1 = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        kotak.setColumns(20);
        kotak.setRows(5);
        jScrollPane1.setViewportView(kotak);

        jButton1.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
        jButton1.setText("Talk !");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        jLabel1.setFont(new java.awt.Font("Anjelika Rose Hollow", 1, 24)); // NOI18N
        jLabel1.setForeground(new java.awt.Color(255, 102, 102));
        jLabel1.setText("Aplikasi pengubah teks menjadi suara");

        jLabel2.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
        jLabel2.setForeground(new java.awt.Color(0, 204, 153));
        jLabel2.setText("Chindi Allisya - 09111003054");

        jLabel3.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
        jLabel3.setForeground(new java.awt.Color(0, 204, 153));
        jLabel3.setText("Mardhiyah - 09111003012");

        jLabel4.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
        jLabel4.setForeground(new java.awt.Color(0, 204, 153));
        jLabel4.setText("Widya Septriani - 09111003010");

        jLabel5.setIcon(new javax.swing.ImageIcon("C:\\Users\\TOSHIBA\\Downloads\\chibi\\miku_chibi_by_kenneos-d4l2s2w.png")); // NOI18N
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(10, 10, 10)
                .addComponent(jLabel2))
            .addGroup(layout.createSequentialGroup()
                .addGap(40, 40, 40)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 239, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(layout.createSequentialGroup()
                .addGap(300, 300, 300)
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 380, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGroup(layout.createSequentialGroup()
                .addGap(10, 10, 10)
                .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(layout.createSequentialGroup()
                .addGap(10, 10, 10)
                .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 270, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 590, javax.swing.GroupLayout.PREFERRED_SIZE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(60, 60, 60)
                .addComponent(jLabel2)
                .addGap(58, 58, 58)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 270, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(layout.createSequentialGroup()
                .addGap(230, 230, 230)
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 58, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGroup(layout.createSequentialGroup()
                .addGap(80, 80, 80)
                .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(layout.createSequentialGroup()
                .addGap(100, 100, 100)
                .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 430, javax.swing.GroupLayout.PREFERRED_SIZE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents
    private static final String VOICENAME="kevin16";
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        // TODO add your handling code here:
       
       Voice voice;
       VoiceManager vm=VoiceManager.getInstance();
       voice=vm.getVoice(VOICENAME);
      
       voice.allocate();
      
       try{
           voice.speak(kotak.getText());
       }
       catch(Exception e)
       {
      
       }
       
    }//GEN-LAST:event_jButton1ActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(tspeech.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(tspeech.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(tspeech.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(tspeech.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new tspeech().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextArea kotak;
    // End of variables declaration//GEN-END:variables
}

Selasa, 22 April 2014

Tugas ke-1 Multimedia (Perubahan yang Timbul dalam Kehidupan Masyarakat Akibat Penggunaan Multimedia)

Multimedia adalah penggunaan komputer untuk menyajikan serta menggabungkan teks, suara, gambar, animasi, audio maupun video dengan alat bantu dan koneksi sehingga pengguna dapat berinteraksi, berkarya dan berkomunikasi. Salah satu contoh perkembangan Multimedia pada bidang pendidikan adalah munculnya kegiatan belajar dan mengajar yang dikenal dengan konsep e-Learning.
Menurut Hartley, e-Learning merupakan suatu jenis belajar mengajar yang memungkinkan tersampaikannya bahan ajar ke siswa dengan menggunakan media Internet, Intranet atau media jaringan komputer lain. Pendapat lain dari Matthew Comerchero definisi yang lebih luas mengenai E-learning yaitu sarana pendidikan yang mencakup motivasi diri sendiri, komunikasi, efisiensi, dan teknologi. Karena ada keterbatasan dalam interaksi sosial, siswa harus menjaga diri mereka tetap termotivasi. E-learning efisien karena mengeliminasi jarak dan arus pulang-pergi. Jarak dieliminasi karena isi dari e-learning didesain dengan media yang dapat diakses dari terminal komputer yang memiliki peralatan yang sesuai dan sarana teknologi lainnya yang dapat mengakses jaringan atau Internet.
Sekarang ini metode pembelajaran e-learning cukup digemari dan menjadi salah satu pilihan dosen untuk mengajar mahasiswanya. E-learning atau electronic learning adalah metode pembelajaran jarak jauh yang memanfaatkan sarana teknologi berupa internet (via internet). Metode e-learning ini biasanya digunakan oleh dosen yang sibuk dan dosen-dosen di universitas besar seperti UI, UNSRI, ITS, Unair, ITB dan UB. Hal ini dilakukan karena metode pembelajaran ini tidak membutuhkan tatap muka (face to face) antara mahasiswa dan dosen. Mahasiswa hanya diharuskan duduk di depan komputer atau laptop dan on line di internet. Dosen benar-benar hanya berfungsi sebagi mediator, fasilitator, dan motivator. Dosen cukup memberikan modul perkuliahan maupun soal-soal latihan hingga UTS maupun UAS melaui email maupun website khusus e-learning (misalnya pada UNSRI) mahasiswa harus mencari sumber atau data sendiri dari bahan kuliah atau tugas yang diberikan dosen.
Beberapa keuntungan yang dapat diperoleh mahasiswa dari penggunaan metode ini. sehingga mengubah sedikit kebiasaan. Pertama, metode pembelajaran ini bisa dilakukan kapan saja asal sesuai dan memenuhi target yang diberikan universitas. Kedua, lebih efisien dan efektif. Hal ini karena metode ini dapat menghemat waktu dan tenaga, mahasiswa tidak perlu pergi ke kampus untuk belajar, jadwal kuliah fleksibel karena jadwal kuliah tidak dibakukan dan dapat meminimalisir mahasiswa mengantuk atau bosan ketika mengikuti kuliah. Apabila mahasiswa diberi tugas oleh dosen mereka bisa langsung mencari jawaban dari tugas tersebut lewat browsing di internet langsung. Ketiga, metode ini dapat menghemat biaya yang dikeluarkan mahasiswa. Apabila semua dosen di universitas menggunakan metode ini, maka mahasiswa tidak perlu membayar biaya perkuliahan dalam jumlah besar. Mahasiswa tidak perlu mengeluarkan uang untuk browsing internet karena sebagian besar universitasnya menyediakan fasilitas wi fi. Keempat, mahasiswa harus benar-benar aktif dalam proses belajar, karena dosen hanya bertindak sebagai pengarah, mediator, motivator, dan fasilitator. Kelima, secara tidak langsung metode pembelajaran ini mendorong mahasiswa untuk memanfaatkan teknologi sahingga mahasiswa tidak hanya mendapatkan ilmu tetapi juga supaya tidak gaptek (gagap teknologi). Mengingat di zaman yang maju dan modern seperti ini penguasaan teknologi sangat dibutuhkan. Keenam, dapat menghemat penggunaan kertas yang digunakan untuk mencatat atau mengerjakan tugas sehingga dapat membantu mencegah perluasan atau percepatan global warming. Seperti yang kita ketahui bersama bahwa kertas terbuat dari bahan dasar pohon, padahal pohon merupakan peredam global warming.
Penggunaan metode pembelajaran e-learning ini selain berdampak positif tetapi juga berdampak negatif bagi mahasiswa. Beberapa kerugian yang ditimbulkan dari penggunaan metode e-learning bagi mahasiswa. Pertama, tidak semua mata kuliah menuntut mahasiswa harus aktif sepenuhnya, seperti mata kuliah kalkulus, statistik, akuntansi, fisika atau mata kuliah kantitatif lainnya yang memerlukan bimbingan dari dosennya langsung. Untuk mata kuliah tersebut seperti itu pembelajaran seperti biasanya masih sangat dibutuhkan oleh mahasiswa. Kedua, metode ini membuat mahasiswa menjadi malas karena semuanya serba instant. Ketiga, penggunaan teknologi internet dalam proses belajar mengajar membuat mahasiswa semakin jauh dari buku. Padahal bagaimanapun juga buku adalah jendela dunia. Selain itu pertanggungjawaban dari pelajaran yang diajarkan melalui metode e-learning sulit dibuktikan karena pembelajaran tersebut berada di dunia maya, dimana didunia ini semua bisa dimanipulasi dengan mudah. Kelima, kurangnya atau minimnya tatap muka antara dosen dan mahasiswa membuat komunikasi diantara keduanya kurang, padahal saat ini komunukasi langsung sangat diperlukan. Selain itu, kadang mahasiswa sama sekali tidak tahu siapa dosennya sehingga mahasiswa kurang hormat terhadap dosennya.