mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-26 06:26:41 +00:00 
			
		
		
		
	git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| rawplayer is a simple C applet to stream raw music files in place of mpg123
 | |
| 
 | |
| INSTALL
 | |
| 
 | |
| compile the .c file and install:
 | |
| gcc -O2 rawplayer.c -o /usr/bin/rawplayer
 | |
| 
 | |
| 
 | |
| 
 | |
| Converting MP3 to RAW
 | |
| 
 | |
| Make track01.mp3 into track01.raw with sox (if compiled with mp3 support).
 | |
| sox -c 1 track01.mp3 -t raw -r 8000 -c 1 -s -w track01.raw
 | |
| 
 | |
| Otherwise, use whatever app to turn track01.mp3 into track01.wav then use sox on the wav.
 | |
| sox -c 1 track01.wav -t raw -r 8000 -c 1 -s -w track01.raw
 | |
| 
 | |
| 
 | |
| Once you have the raw files put them in any dir on your system (eg /var/lib/asterisk/holdmusic_raw).
 | |
| and set up a class in musiconhold.conf like so:
 | |
| 
 | |
| [classes]
 | |
| default => custom:/var/lib/asterisk/holdmusic_raw,/usr/bin/rawplayer
 | |
| 
 | |
| 
 | |
| This is the most efficient way to implement moh because no cpu usage is required to 
 | |
| explode the very compressed mp3 data then downsample the music to the 8khz mono on the fly
 | |
| instead the data is already stored on the disk in the format that asterisk needs it to be 
 | |
| and the player does little more than pick up frames from the file and hand them to right 
 | |
| to the asterisk pipe where the audio is shared into all the channels who require it.
 | |
| 
 | |
| 
 | |
| If you have cpu to spare and want a simple mp3 solution consider the format_mp3 from
 | |
| asterisk-addons and the files based moh.
 | |
| 
 | |
| 
 | |
| 
 |