[Tutor] playing mp3 files

Kirk Bailey kbailey at howlermonkey.net
Fri Dec 21 00:46:15 CET 2012


the robotradio program is coming along. It plays. it dances. it sings. 
IT selects random libraries and random broadcast files. and it restarts 
itself with consummate ease. Aka, NOW wtf?!? Jim is exchanging letters 
with me on this, but does not yet have a solution.

Here's the code of the hour: BEWARE WORD WRAP!!!

#!c:\Python25\pythonw.exe
# Copyright (c) 2011 by James K. Lawless
# jimbo at radiks.net http://www.mailsend-online.com
# License: MIT / X11
# See: http://www.mailsend-online.com/license.php
# for full license details.
#
from ctypes import *
import os, os.path, sys, time, glob, random
import cgitb; cgitb.enable()
#
# there are 2 directories under this one- com and id. There are also 
numbered folders which
# contain files of old broadcasts. The system only referrs to number 
name directories to play programs
#
#
#
#
#
#
#
#
#
print "Content-Type: text/html \n"
print "<html><head><title>Robot Radio WHEN</title></head>"
print '<body bgcolor="white" text="black" links="blue">'
print '<center><h2>Robot Radio WHEN</h2><br>'
#
winmm = windll.winmm
#
def mciSend(s):
    i=winmm.mciSendStringA(s,0,0,0)
    if i<>0:
       print "Error %d in mciSendString %s" % ( i, s )
#
def playMP3(mp3Name):
    mciSend("Close All")
    mciSend("Open \"%s\" Type MPEGVideo Alias theMP3" % mp3Name)
    mciSend("Play theMP3 Wait")
    mciSend("Close theMP3")
#
def RandomFile():
	files=glob.glob("*.mp3") 				# files is a list of the CURRENT
	file=random.choice(files)				# directories contents
	print "file=",file,"<br>"
	return file
	
os.chdir("./RobotRadio_WHEN/")				# starts in cgi-bin, move to application's
#											# home directory.

print "- - - - - - - - - - - - - - - - - - - - - - - -<p>"
while 1: # this is an endless loop. Get creative to stop it.
	# ok, let's do the loop.
	os.chdir("./ID")				# go to the station identification folder
	playMP3(RandomFile())			# and pick one at random and play it.
	time.sleep(5)					# a breif pause
	os.chdir("../com")				# now back go home, then on to the commercial folder
	playMP3(RandomFile())			# pick one at random and play it.
	time.sleep(5)					# another pause
	os.chdir("..")					# this takes us back to the homne of the application
	#print "cwd=",os.getcwd(),"<br>"	# test code, dummy out later
	dirlist=glob.glob("*")			# get a listing of the directories in this 
directory
	os.chdir(str(1+int(random.random()*len(dirlist)-2))) # randomly select 
a directory and go to it.
	print "cwd=",os.getcwd()		# test code, dummy out later
	# 								# now we pick a program library, then
	#								# pick a program in it at random and play it.
	#
	mp3file=RandomFile()
	print "program=",mp3file,"<br>"
	# os/chdir("./1") #select a program library randomly and make it current.
	print "cwd=",os.getcwd(),"<br>"
	# we will log this to the display screen on the console running this 
program
	print "cwd=",os.getcwd()," play ",mp3file," AT: ", time.strftime("%a, 
%d %b %Y %I:%M %p", time.localtime())
	playMP3(mp3file)
	os.chdir("..")					# go back to the home directory
	print "- - - - - - - - - - - - - - - - - - - - - - - -<p>"
	# Above plays a file named in the variable -mp3file-
	time.sleep(5)					# this gives us some time to do a CNTL-C to break the 
loop.
	sys.exit()						# maybe.


-- 

-Shaboom.

     Kirk Bailey
     CEO, Freehold Marketing LLC
     http://www.OneBuckHosting.com/

Fnord!


More information about the Tutor mailing list