الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف نشغل ملف صوتي .mp3 في الكود بصورة متكررة باستعمال jlayer

بدأه المشاكـس5550 في 29 ديسمبر 2012 · 3 رد · 816 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

بدي اعرف كيف يمكننا تكرار الملف الصوتي .mp3 أثناء تنفيذ الكود البرمجي ؟؟

عندي بالكود ، لما بتنتهي مدة المقطع ما بيعيد من جديد وهذا ما لا أريده

import java.io.FileInputStream;
import java.io.IOException;

import javazoom.jl.decoder.JavaLayerException;
import javazoom.jl.player.Player;

public class soundPlay {
	public static void main(String[]args) throws IOException, JavaLayerException{

            FileInputStream fis= new FileInputStream("C:\\Inspire.mp3");
            Player playMp3= new Player(fis);

            playMp3.play();
}
                      }

شكرا الكم

556891961.gif

I am learning from you

it is the programmer eye

#2

عند تشغيل الصوت يتم استدعاء الدالة playbackStarted و عند انتهاء التشغيل يتم استدعاء الدالة playbackFinished لذا يمكنك تشغيل الصوت في الدالة playbackFinished و بالتالي ستتم إعادة المقطع (بشكل مستمر) عند انتهاءه.

#3

لم أجد هاي الدوال !!!

في الكود أعلاه لا يوجد هاي الدوال ، كيف يتم العثور عليها ؟؟

556891961.gif

I am learning from you

it is the programmer eye

#4

تفضل :

import javazoom.jl.player.advanced.AdvancedPlayer;
import javazoom.jl.player.advanced.PlaybackEvent;
import javazoom.jl.player.advanced.PlaybackListener;

public class SoundJLayer extends PlaybackListener implements Runnable {

    private String filePath;
    private AdvancedPlayer player;
    private Thread playerThread;

    public SoundJLayer(String filePath) {
        this.filePath = filePath;
    }

    public void play() {
        try {
            this.player = new AdvancedPlayer(
                    new java.net.URL(filePath).openStream(),
                    javazoom.jl.player.FactoryRegistry.systemRegistry().createAudioDevice());

            this.player.setPlayBackListener(this);

            this.playerThread = new Thread(this, "AudioPlayerThread");

            this.playerThread.start();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

    // PlaybackListener members
    public void playbackStarted(PlaybackEvent playbackEvent) {
        System.out.println("playbackStarted ..");
    }

    public void playbackFinished(PlaybackEvent playbackEvent) {
        System.out.println("playbackEnded ..");
    }

    // Runnable members
    public void run() {
        try {
            this.player.play();
        } catch (javazoom.jl.decoder.JavaLayerException ex) {
            ex.printStackTrace();
        }
    }
}

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…