0 Replies - 3262 Views - Last Post: 27 June 2012 - 11:58 PM Rate Topic: -----

#1 frivolous14  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 10
  • Joined: 26-December 11

Problem in music player

Posted 27 June 2012 - 11:58 PM

hi, i made a music player it opens almost all the songs but while opening some songs it gives this error :

A:/Chrome Downloads/Jhalla_Wallah_(Remix)_-_(MusicTub.Com).mp3
Error 277 for "open "A:\Chrome Downloads\Jhalla_Wallah_(Remix)_-_(MusicTub.Com).mp3" alias mp3_0.878022650438": A problem occurred in initializing MCI.
Error 263 for "set mp3_0.878022650438 time format milliseconds": The specified device is not open or is not recognized by MCI.
Error 263 for "status mp3_0.878022650438 length": The specified device is not open or is not recognized by MCI.
Exception in Tkinter callback
Traceback (most recent call last):
  File "A:\Python26\lib\lib-tk\Tkinter.py", line 1410, in __call__
    return self.func(*args)
  File "A:\Python26\EmoPlayer.py", line 120, in open_file
    self.music = mp3play.load(self.filename.get())
  File "A:\Python26\mp3play\__init__.py", line 10, in load
    return AudioClip(filename)
  File "A:\Python26\mp3play\__init__.py", line 17, in __init__
    self._clip = _PlatformSpecificAudioClip(filename)
  File "A:\Python26\mp3play\windows.py", line 43, in __init__
    self._length_ms = int(buf)
ValueError: invalid literal for int() with base 10: 'The specified device is not open or is not recognized by MCI.'


here is my code:

from Tkinter import *
import mp3play
import tkFileDialog
import Tkinter
import tkFont
import Tkinter as tk

class musicplay:
    def __init__(self):

        open('Paths.txt', 'w').close()
        
        self.music = None
        #self.music_mood = None
        self.play_list = []
        #self.play_list_mood = []
        self.trackLocations = []
        #self.trackLocations_mood = []

        self.root = tk.Tk()
        self.root.title("EmoPlayer")

        self.root.configure(background='Black')
        self.root.geometry('345x350+376+169')

        self.filename = Tkinter.StringVar()
        self.name = Tkinter.StringVar()
        self.play_list = Tkinter.StringVar()

        menubar = Menu(self.root)
        filemenu = Menu(menubar, tearoff=0, bg="black", fg="Orange")
        menubar.add_cascade(label='File', menu = filemenu)
        filemenu.add_command(label='Open', command = self.open_file)
        filemenu.add_separator()
        filemenu.add_command(label='Exit', command = self.Exit)
        self.root.config(menu=menubar)
        
        #images
        play=PhotoImage(file='A:\Python26\images\play.gif')
        pause=PhotoImage(file='A:\Python26\images\pause.gif')
        stop=PhotoImage(file='A:\Python26\images\stop.gif')
        mood=PhotoImage(file='A:\Python26\images\mood.gif')

        #buttons
        mood_button = Button(self.root, width = 90, height = 40,image=mood)
        mood_button.image=mood
        mood_button.grid(row=0, column=4)

        play_button = Button(self.root, width = 40, height = 40, command = self.play, image=play)
        play_button.image=play
        play_button.grid(row=0, column=0, sticky = W)

        stop_button = Button(self.root, width = 40, height = 40, command = self.stop, image=stop)
        stop_button.image=stop
        stop_button.grid(row=0, column=1, sticky = W)

        pause_button = Button(self.root, width = 40, height = 40, command = self.pause, image=pause)
        pause_button.image=pause
        pause_button.grid(row=0, column=2)

        #generate_button = Button(self.root, width = 7, height = 2, text='Generate',
                              #fg='Orange', command = self.generate , bg="black")
        #generate_button.grid(row=0, column=4)

        self.volume_slider = Scale(self.root, label='Volume',
                              orient = 'horizontal', fg = 'black', 
                              command = self.vol, bg="VioletRed2")
        self.volume_slider.grid(row=0, column=6)

        file_name_label = Label(self.root, font=('Comic Sans', 8),
                                fg = 'Orange', wraplength = 300,
                                textvariable=self.name, bg="black")
        file_name_label.grid(row=4, column=0, columnspan=12)

        
        #PLAYLIST
        play_list_window = Label(self.root, height = 150, width = 100)
       # play_list_window.title("Playlist")
        self.play_list_display = Listbox(play_list_window, selectmode=EXTENDED,
                                    width = 50, bg="gainsboro",
                                    fg="Orange")
       
        self.play_list_display.bind("<Double-Button-1>", self.tune_changed)
        self.play_list_display.pack()
        play_list_window.grid(row=5, column=0, columnspan=12)
        

        #MOODYLIST
        play_list_window_mood = Toplevel(self.root, height = 700, width = 250)
        play_list_window_mood.title("MoodyList")
        self.play_list_display_mood = Listbox(play_list_window_mood, selectmode=EXTENDED,
                                    width = 50, bg="gainsboro",
                                    fg="Orange")
        
        #self.play_list_display_mood.bind("<Double-Button-1>", self.tune_changed_play)
        self.play_list_display_mood.pack()
      
        play_list_window_mood.mainloop()
        play_list_window.mainloop()

       
        self.root.mainloop()        

    def open_file(self):                                
        """
        Opens a dialog box to open .mp3 filemusic,
        then sends filename to file_name_label.
        """
        try:
            self.filename.set(tkFileDialog.askopenfilename(
            defaultextension = ".mp3",
            filetypes=[("All Types", ".*"), ("MP3", ".mp3")]))
            self.playlist = self.filename.get()
            playlist_pieces = self.playlist.split("/")
            self.play_list.set (playlist_pieces[-1])
            playl = self.play_list.get()
            self.play_list_display.insert(END, playl)
            print self.filename.get()
            try:
                self.music = mp3play.load(self.filename.get())
            finally:
                pieces = self.filename.get().split("/")
                self.trackLocations += [self.filename.get()]
                self.name.set(pieces[-1])
        except IOError:
            pass
        try:
            # This tries to open an existing file but creates a new file if necessary.
            logfile = open("Paths.txt", "a")
            try:
                logfile.write("\n" + self.filename.get())
                #logfile.write(self.filename.get())
            finally:
                logfile.close()
        except IOError:
            pass

       
        

    def play(self):
        """Plays the .mp3 file"""
        self.music.play()

    def stop(self):
        """Stops the .mp3 file"""
        self.music.stop()                

    def pause(self):
        """Pauses or unpauses the .mp3 file"""
        if self.music.ispaused():
            self.music.unpause()
        else:
            self.music.pause()

    #def mood(self):
        
        

    def vol(self, event):
        """Allows volume to be changed with the slider"""
        v = Scale.get(self.volume_slider)
        try:
            self.music.volume(v)
        except:
            pass

    def tune_changed(self, event):
        idx = event.widget.curselection()[0]
        self.music = mp3play.load(self.trackLocations[int(idx)])
        print ("Now playing %s" % event.widget.get(idx))

    #def tune_changed_play(self,event):
       # idx = event.widget.curselection()[0]
       # self.music_mood = mp3play.load(self.trackLocations_mood[int(idx)])
       # print ("Now playing %s" % event.widget.get(idx))

    #def generate(self):
     #   self.playlist_mood = 'A:/Chrome Downloads/Mind'
      #  playlist_pieces_mood = self.playlist_mood.split("/")
       # self.play_list.set (playlist_pieces_mood[-1])
        #playl_mood = self.play_list.get()
        #self.play_list_display_mood.insert(END, playl_mood)
        #print self.filename.get()
        #self.music = mp3play.load(self.playlist_mood)
        #pieces_mood = self.playlist_mood.split("/")
        #self.trackLocations_mood += [self.playlist_mood]
        
        #self.name.set(pieces_mood[-1])
        
        #self.playlist_mood = 'A:\Chrome Downloads\Flo_Rida_-_Whistle_(www.freshmp3music.ru)'
        #self.trackLocations_mood += [self.playlist_mood]
        #playlist_pieces_mood = self.playlist_mood.split("/")
        #self.play_list.set (playlist_pieces_mood[-1])
        #playl = self.play_list.get()
      #  self.play_list_display_mood.insert(END, playl)
       # print ("Generated ")

    def Exit(self):
        exit()

if __name__ == "__main__":
    musicplay()



and the song in attachment cause this error when opened in my player

Is This A Good Question/Topic? 0
  • +

Page 1 of 1