Mp3 playback inside APEX?

Hi,
In my head spins the idea for an APEX-application to connect my profession and my hobby (in my rare spare time I use to be a square dance caller).
But, ... for this I need the possibility to play mp3 files from inside APEX. I tried to search this forum but did not really succeed.
Basically, the rough idea is as follows:
- Have a laptop with an Oracle database (XE for the start) and APEX installed. This will normally work stand-alone, with no internet-connection
- store my records as mp3 BLOBs in the database, together with many additional information
like lyrics, date purchased, dates/events used, preferred playback settings (i.e. speed, volume, pitch ) .... and much more
Edit: I could also store the file in the filesystem and put only the filename in the database if this is mor cenvenient.
- have an APEX application to plan and control events (playlists), including the playback of the records (with the stored settings),
display of the record information and the collecting and storing of event-specific information (also from the mp3-player)
I am confident that I'll be able to develop everything - except that playback part!!
So, any help there would be appreciated.
Ralf
Because of its many helpful plug-ins, winamp would be a good choice for the player - but how do I control it from APEX??
Edited by: user569309 on Dec 1, 2009 6:34 PM

Ralf,
If you are looking for a utility to play music on the web you can try XSPF which is an open source music player. Also you can look at Sockso which is an open source music server which uses XSPF. You would be able to get a good understanding on how to use XSPF from their documentation.
Edit
Since Oracle XE only allows 5 gigs of storage I would recommend storing your music files on the file system.
Here is a link to [how to create an XSPF xml file|http://www.xspf.org/quickstart/]
Cheers,
Tyson Jouglet
Edited by: Tyson Jouglet on Dec 1, 2009 10:22 AM

Similar Messages

  • Get the duration of all mp3 files inside a directory

    Hello everyone,
    I am working on a little project done with swing. Since I need an mp3 player inside my swing application, I found a really good solution with JavaFX 2. I have never worked with JavaFX before, therefor it seems to me a little bit strange on some parts.
    Anyway.
    I created a button on my application and as soon as somebody presses that button, the application should scan recursivly a unique directory for mp3 files and store the information of artist, title and track length into a database.
    The mp3 player I created is based on the example from this page:
    http://www.java2s.com/Code/Java/JavaFX/Mp3playerwithmetadataviewandcontrolpanel.htm
    I understand the source code for most parts, but some behaivors are not really clear to me. My thoughts about getting the complete length of the mp3 file was
    media.getDuration
    or
    mediaplayer.getTotalDuration
    but both results are NaN if I call .toMillis();
    Instead I need to create a listener (why?)
    private class TotalDurationListener implements InvalidationListener {
        @Override
        public void invalidated(Observable observable) {
          final MediaPlayer mediaPlayer = songModel.getMediaPlayer();
          final Duration totalDuration = mediaPlayer.getTotalDuration();
          totalDurationLabel.setText(formatDuration(totalDuration));
      }and register this listener on the mediaplayer
    mp.totalDurationProperty().addListener(new TotalDurationListener());I can image that the mediaplayer can "host" several media objects somewho and the listener is called as soon as a new media will be added to the mediaplayer in order
    the calculate the overall duration.
    When is this listener exactly called and is there no other ways to get the total length of the mp3 file?
    Here is a minimal example which should work without any external libs
    package de.hauke.schwimmbad.application.playground;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.File;
    import java.util.ArrayList;
    import java.util.List;
    import javafx.application.Platform;
    import javafx.beans.property.ReadOnlyObjectWrapper;
    import javafx.embed.swing.JFXPanel;
    import javafx.scene.Scene;
    import javafx.scene.layout.BorderPane;
    import javafx.scene.media.Media;
    import javafx.scene.media.MediaPlayer;
    import javafx.scene.paint.Color;
    import javafx.util.Duration;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.UIManager;
    public class Testing10 extends JFrame {
         private MediaPlayer mediaPlayer;
         private final ReadOnlyObjectWrapper<MediaPlayer> mediaPlayerWrapper = new ReadOnlyObjectWrapper<MediaPlayer>(
                   this, "mediaPlayer");
         public static void main(String[] args) {
              try {
                   UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
                   new Testing10();
              } catch (Exception ex) {
                   System.out.println(ex);
         public Testing10() {
              super();
              setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              setLayout(null);
              setSize(500, 500);
              setTitle("Testing");
              setLocationRelativeTo(null);
              setResizable(false);
              JButton button = new JButton("Scan");
              button.setBounds(10, 10, 150, 30);
              add(button);
              button.addActionListener(new ActionListener() {
                   public void actionPerformed(ActionEvent arg0) {
                        scan();
              final JFXPanel fxPanel = new JFXPanel();
              fxPanel.setBounds(30, 80, 300, 300);
              add(fxPanel);
              Platform.runLater(new Runnable() {
                   public void run() {
                        initFX(fxPanel);
              setVisible(true);
         private void scan() {
              File directory = new File("C:\\dev\\mp3");
              List<File> mp3Files = new ArrayList<File>();
              for (File file : directory.listFiles()) {
                   if(file.getName().endsWith("mp3")) {
                        mp3Files.add(file);
              for (File file : mp3Files) {
                   System.out.println(file.getAbsoluteFile());
                   getLength(file);
         private Duration getLength(File file) {
              if(mediaPlayer != null) {
                   mediaPlayer.stop();
              final Media media = new Media(file.toURI().toString());
              mediaPlayer = new MediaPlayer(media);
              mediaPlayerWrapper.setValue(mediaPlayer);
              if(media.durationProperty()==null) System.out.println("durationProperty ist null");
              if(media.durationProperty().get()==null) System.out.println(".get() ist null");
              System.out.println("---> " + media.durationProperty().get().toMillis());
              return media.getDuration();
         private void initFX(JFXPanel fxPanel) {
              BorderPane root = new BorderPane();
              Scene scene = new Scene(root, Color.ALICEBLUE);
              fxPanel.setScene(scene);
    }The other question is why do I need a listener for the meta data to be changed in order to get the meta data?
    media.getMetadata().addListener(new MapChangeListener<String, Object>()Why can't I call something like
    media.getMetadata() --> returns a filled map?
    The metadata problem is not included inside the example from above.
    Sorry for my english but I hope everybody can understand the issue.
    Many greetings,
    Hauke

    The nature of the Media class is that it accesses it asynchronously. This means that when you create an instance of it, and then immediately query it, the data you want may not be available yet. This is all in the Javadoc, see the doc for Media:
    The media information is obtained asynchronously and so not necessarily available immediately after instantiation of the class. All information should however be available if the instance has been associated with a MediaPlayer and that player has transitioned to MediaPlayer.Status.READY statusSo you could associate the Media with a MediaPlayer, and then wait until it goes to the Status READY, and then read the length of the Media.
    As for your 2nd question, getMetadata() returns a Map. You can just loop through it:
      for(Map.Entry<String, Object> entry : media.getMetadata()) {
        // etc
      }However, the same restrictions apply as with Media -- you will probably need to wait before the information is available -- that's why the Listener approach works, because it will notify you as soon as the information is added to the map.

  • Rhythmbox -- which package needs to be installed for mp3 playback

    Hello,
    A quick question here:
    Which package needs to be installed for mp3 playback in Rhythmbox?
    ta, t.

    Thanks, that seemed to be the right plugin.
    ta, t.

  • Player 10 - Slow and Distorted MP3 Playback.

    I began experiencing this problem once I download Flash
    Player 10. The mp3 playback is slow and sounds very distorted.
    This only seems to occur with mp3s at a 48k sample rate. Mp3s
    at a sample rate of 44.1k sound normal. Is there a way to fix this
    without converting the sample rate? Is Adobe working on a solution?
    Thank you.

    I'm getting the same thing. Are all of you on Apple platform? It seems to be the only place this is showing up.
    Macbook Pro - OSX 10.5.6
    When I uninstall flash player and reinstall 9 it works fine. On another not when using CS4 at work the same thing happens locally when I test the movies.
    It's sounds like music on nitrous in hell. .. . .

  • E55 - improve sound on mp3 playback?

    mp3 playback on my E55 is dissappointing; you need to add Bass enhancement just to get a flat frequency response and the music lacks detail even on simplet tracks.
    I know it's not a dedicated mp3 player/'comes with music'/Walkman phone but how can I improve music playback?
    - Is eACC format easier on the processor?
    - Is there a 3rd party mp3/ACC player for E55 that sounds better?

    I should have explained;
    - Yes, I'm using same pair of headphones to compare same tracks played back on E55 and laptop. Laptop is satisfactory and I'm used to what it 'sounds' like, E55 mp3 player is poor.
    - Source is mp3 so ACC/eACC would require an additional conversion (rather than ripping CDs to ACC in the first place).
    Seperate headphone amp is nice idea, but my sound quality expectations aren't quite that high for a phone. Would only bother with headphone amp for CD line output or similar cheers.
    Further testing;
    - Internet Radio on E55 is quite acceptable and dosn't need any bass re-infocement. I conclude the problem is with the mp3 playing software on E55 or the source mp3 - not the S60 OS or E55 hardware.
    - Playing further albums on proved that BOTH the laptop and E55 did justice other mp3 and WMAs including Opera, Rock and Dance.
    Conclusion: "The Haçienda - Acid House Classics" mp3 album is a bit quite and not a great source. But the E55 still needs bass turned on for the music player (but not Internet Radio!) so could be solved with a software update.
    Other sources sound as good as you could expect on the E55: rubbish in ribbish out.
    Now to see if converting from mp3/WMA to ACC/eACC can actually improve the sound. I used to think it impossible to improve a signal with additional processing, but my Sony Hard Disk TV Recorder actually plays back better than the original(!) so maybe converting to ACC will to.

  • MP3 Playback

    I'm having issues trying to get MP3 playback capability on my Arch x86 - Xfce4 install. I have all of the gstreamer plugins installed and my sound card is configured properly (I can listen to audio in swiftfox), but Banshee Audacious and Totem will not play MP3 files. Has anyone seen a situation like mine? I have not found one after taking some time to search these forums. Thanks in advanced for any help.

    [root@celestary wengophone-ng-svn]# pacman -Qs MP3
    local/lame 3.97-1
    An MP3 encoder and graphical frame analyzer
    local/mpg321 0.2.10-2
    A commandline mp3 player
    local/python-eyed3 0.6.12-1
    A Python module and program for processing information about mp3 files
    local/ripperx 2.7.0-1
    GTK program to rip and encode mp3 files
    Here it works perfectly. libmad and lame should be sufficient.
    OGG media plays flawlessly?
    Last edited by chaosgeisterchen (2007-06-17 21:08:14)

  • Stop Streaming MP3 Playback

    Is there an action script to stop the streaming mp3 playback
    in a proceeding frame navigated to?

    SM6601,
    > Is there an action script to stop the streaming mp3
    playback
    > in a proceeding frame navigated to?
    If that sound is initiated by ActionScript (e.g. an instance
    of the
    Sound class), the Sound.stop() method will do it. If not, you
    can always
    try the stopAllSounds() function.
    David Stiller
    Adobe Community Expert
    Dev blog,
    http://www.quip.net/blog/
    "Luck is the residue of good design."

  • Palm Pre - MP3 Playback skips

    Haven't had any troubles with mp3 playback on my Palm Pre until yesterday. Every song I listen to skips intermittently.
    Post relates to: Pre p100eww (Sprint)

    I only had 2 or 3 other cards open at the time of the malfunction (gps, email, phone, and music player). Would that be enough to cause this? I understand that memory is memory, but since multitasking is the cornerstone of the device's design philosophy I think it's fair to expect 4 or so apps to all work at the same time.
    That said, I usually have something closer to 8 apps open, and that has never affected my listening experience.

  • Gstreamer mp3 playback broken

    When I tried to play some mp3's today via Clementine, gstreamer gave me "data flow error"(everything worked yesterday,lol) , and then, when I reinstalled all possible gstreamer plugins(except "ugly") mp3 playback didn't change at all, some mp3 files were played but with (:03, :06, :09 second speed) like it is jumping, no sound of course. Does anybody know how to fix it, and why is this happening?

    [root@celestary wengophone-ng-svn]# pacman -Qs MP3
    local/lame 3.97-1
    An MP3 encoder and graphical frame analyzer
    local/mpg321 0.2.10-2
    A commandline mp3 player
    local/python-eyed3 0.6.12-1
    A Python module and program for processing information about mp3 files
    local/ripperx 2.7.0-1
    GTK program to rip and encode mp3 files
    Here it works perfectly. libmad and lame should be sufficient.
    OGG media plays flawlessly?
    Last edited by chaosgeisterchen (2007-06-17 21:08:14)

  • Instantaneous MP3 playback...

    MP3 playback used to begin immediately even with very large files, but no longer does. What am I missing? It seems there may be some type of "helper" file for other browsers (read Safari, Chrome & Opera) that isn't being taken advantage of to facilitate this "starting play before the download is complete" type of thing...

    The playback time would vary based on any number of factors:
    Temperature, volume, other operations, how long the screen is on, how many times you change the volume, eq settings, if airplane mode is on or off, any calls, e-mails, push on or push off, how often to fetch mail, screen brightness, 3g on or off, wi-fi on or off, location service on or off,etc.
    The 24 hours is based on a specific situation and is not likely to be reproduced with normal use.
    Just use it and see what you get.

  • Mp3 playback battery life /w headphones

    Does anyone know if the mp3 playback time changes if your using a set of headphones, or is the 24 hours assuming you are using headphones?

    The playback time would vary based on any number of factors:
    Temperature, volume, other operations, how long the screen is on, how many times you change the volume, eq settings, if airplane mode is on or off, any calls, e-mails, push on or push off, how often to fetch mail, screen brightness, 3g on or off, wi-fi on or off, location service on or off,etc.
    The 24 hours is based on a specific situation and is not likely to be reproduced with normal use.
    Just use it and see what you get.

  • MP3 playback cutouts, Firefox plug-in

    I've got Firefox 3.5, with QuickTime selected as the MP3 playback plugin. When I click on an MP3 link targeted at a dedicated browser window, Quicktime comes up to play it back. Unless I keep that window in the foreground, and keep sending it events (e.g., hovering the mouse cursor over it and moving it around), the playback audio cuts out. Quicktime's progress indicator proceeds, but there's no audio unless I move the cursor over the window again.
    This happens on TWO different machines (including a MacBook Pro with Windows XP under BootCamp, and a Dell Inspiron 530 with Windows Vista).
    Is this a known bug? Are there any solutions other than installing an MP3 playback plugin other than Quicktime?

    So, after 2 weeks without any response, how do I report this as a bug, and somehow get Apple to look into this?

  • Issues with interlaced H.264 playback inside of Premiere

    I recently recorded a live event with the Blackmagic H.264 Pro Recorder and I'm having some issues with the video inside of Premiere Pro CC 2014. I recorded it in 1080i which was the output of the camera. The video files play fine in quicktime, VLC, etc. Once I pull them into premiere, or any adobe software, I have all kinds of issues. Once in a timeline, the audio plays fine(works as it should the whole time), and at first the video looks fine, but after about 15 seconds the video will skip to a random part of the file. After the initial playback anytime I play it after that the audio and video are no where close to being in sync with each other. When I scrub to go somewhere else in the timeline I get the same thing. When I've recorded progressive sources in the past with the Blackmagic H.264 Pro Recorder I  have never have this issue, just with interlaced. Doesn't matter what the resolution is. I created the timeline from the video source like I do with most of my videos so I don't think the problem lies within the sequence settings. I work with interlaced files in the ProRes format on a weekly basis and never have this issue. I can't say that I have ever worked with any interlaced h.264 files except the ones I've created with the Blackmagic H.264 Pro Recorder so I'm not sure is the problem is coming from premiere or the capture device.

    A camera that doesn't record?  Strange.
    You might try conversion.  I've used a couple of programs to convert my non-standard stuff to something PP could work with.  Both are safe to install on a production rig.
    http://www.videohelp.com/software/XMedia-Recode
    XviD4PSP 5.10.346 / 7.0.122 Beta

  • Has anyone experienced this?  Slow MP3 playback in Flash player

    I'm wondering if anyone has experienced the issue I'm having...
    Some of the mp3s that I'm pulling into my Flash/XML audio player, of songs created in Garageband, are playing at a slower pitch.
    Because It only happens to some MP3s it makes me think that it's not Flash but something to do with the MP3. The one thing they all have in common is that they were all songs that were created in Garageband, then exported to iTunes as an AIF and then converted to MP3. I have yet to experience a problem with songs that I've downloaded or ripped from CDs.
    Here's the link to the player and two songs. Both songs were done in Garageband and converted to MP3 the exact same way, yet while the first songs plays fine, the second plays back much slower that it's source.
    http://www.theheavycoats.com/music/newstuff/testaudio.htm
    Below are the direct links to the MP3s so you can see that the source MP3 plays fine on its own.
    http://www.theheavycoats.com/music/newstuff/answeredprayers_new.mp3
    http://www.theheavycoats.com/music/newstuff/seasong_new.mp3
    I've also posted on Adobe's forum. What do you guys think?
    Thanks.
    Quicksilver   Mac OS X (10.4.8)  

    nlyttle wrote:
    > Thanks for taking a look. Just want to be sure... The
    first song in the player SHOULD play fine, and the second, for me,
    does not. But for you BOTH songs play fine?
    Sorry for misleading information.
    The first song indeed plays fine and the second Does Not. I
    was checking the first one
    all the way.
    Anyhow, I still keep up with my Sample Rate suggestion.
    Flash has preference when comes to sound:
    best to use 16-bit 22 kHz mono sounds (stereo uses twice as
    much data as mono),
    Flash can import either 8- or 16-bit sounds at sample rates
    of 11, 22, or 44 kHz.
    Other samples rates result in playback problems.
    The first Mp3 is 44Khz just as flash likes it, the second one
    is 48Khz
    I believe changing it to 44 will solve your problem. Try it
    please and let me know.
    Best Regards
    Urami
    !!!!!!! Merry Christmas !!!!!!!
    Happy New Year
    <urami>
    If you want to mail me - DO NOT LAUGH AT MY ADDRESS
    </urami>

  • Executing APEX_INSTANCE_ADMIN inside APEX Application

    Hi,
    I'm having trobule when I try to execute APEX_INSTANCE_ADMIN.SET_PARAMETER from an apex application.( For further information, I'm trying to implement this Re: Changing SMTP server from Apex Application )
    I have the following scenario:
    1) An Oracle Schema associated to an APEX Workspace (with one application inside)
    2) Oracle Schema has been granted with APEX_ADMINISTRATOR_ROLE
    3) If I execute (via SQL Developer) from my Oracle Schema:
    begin
       execute immediate 'ALTER SESSION SET CURRENT_SCHEMA = APEX_040100';
       APEX_INSTANCE_ADMIN.SET_PARAMETER('SMTP_HOST_ADDRESS','localhost');
    end;It works fine.
    4) So I put that code inside a PL/SQL Package
    5) Then, I try to execute package from Apex Application, and I get:
    Error:ORA-20987: APEX - User requires ADMIN privilege to perform this operation. - Contact your application administrator.What am I missing? Who is executing my package code when calling it from APEX? Do I have to grant APEX_ADMINISTRATOR_ROL to other users?
    Thanks

    jcoves wrote:
    Hi,
    I'm having trobule when I try to execute APEX_INSTANCE_ADMIN.SET_PARAMETER from an apex application.( For further information, I'm trying to implement this Re: Changing SMTP server from Apex Application )
    I have the following scenario:
    1) An Oracle Schema associated to an APEX Workspace (with one application inside)
    2) Oracle Schema has been granted with APEX_ADMINISTRATOR_ROLE
    3) If I execute (via SQL Developer) from my Oracle Schema:
    begin
    execute immediate 'ALTER SESSION SET CURRENT_SCHEMA = APEX_040100';
    APEX_INSTANCE_ADMIN.SET_PARAMETER('SMTP_HOST_ADDRESS','localhost');
    end;It works fine.
    4) So I put that code inside a PL/SQL Package
    5) Then, I try to execute package from Apex Application, and I get:
    Error:ORA-20987: APEX - User requires ADMIN privilege to perform this operation. - Contact your application administrator.What am I missing? Who is executing my package code when calling it from APEX? Do I have to grant APEX_ADMINISTRATOR_ROL to other users?
    YES
    Look at this {message:id=10266929}

Maybe you are looking for

  • Using aol it will not search for specific old emails by name

    USING FIREFOX V.34.0 AND AOL TOOLBAR 2.2 WITH WINDOWS 7. WHEN I USE THE SEARCH FIELD IN AOL TO SEARCH FOR AN OLD OR NEW EMAIL BY NAME IT WILL NO LONGER FIND ANY EMAILS. IT USE TO. WHAT DO I NEED TO DO TO RESOLVE THIS PROBLEM

  • Trying to be a good neighbor

    My next door neighbors have just gotten a notebook computer (they're in their 70s), and I'm letting them piggyback on my wireless signal. Problem is, I'm moving to the apartment right across the hall from them, but three flights up! Does anyone know

  • Explicit BAPI Commit in Inbound FM

    I want to commit a BAPI BAPI_GOODSMVT_CREATE , which I will use in an implicit enhancement in FM IDOC_INPUT_INVOIC_MRM. This FM is called during Inbound IDOC incoming. I want to commit this BAPI BAPI_GOODSMVT_CREATE before IDOC is posted. So if I cre

  • Why i cant install photoshop cs3

    i cant continue installing adobe photoshop cs3 in my computer, it says.... installation cannot continue until the following applications are closed... - internet explorer but all the application in my desktop are closed.... whats wrong with this....?

  • Toshiba Satellite L650 - 14F : Experiences?

    Hi, I just bought new laptop recently. Because of my job I had to make a quick start so I installed win 7 on it etc... Now I have a little bit of time to fiddle around with linux, so I thought of installing Arch distro. Did it a few times on a virtua