| |
|
|
|
Source wurde al 15.07.2007 de el MMJ-Quellcodesammlung (Dietmar Horn) en el Babyklappe en XProfan.Com abgelegt:
Sound: MP3 abspielen
Mp3 por MCI Dieter Zornow
Declarar MP3error&
Proc MP3_Open
Parámetros MP3File$
If @NEq$(MP3File$,)
@MCISend$(OPEN +@Chr$(34)+MP3File$+@Chr$(34)+ TYPE MPEGVIDEO ALIAS MP3_play)
@MCISend$(set MP3_play time format ms)
@MCISend$(set MP3_play video off)
EndIf
ENDPROC
Proc MP3_Stop
@MCISend$(STOP MP3_play)
@MCISend$(CLOSE MP3_play)
ENDPROC
Proc MP3_Close
@MCISend$(CLOSE MP3_play)
ENDPROC
proc MP3_Error
if %mcierror
declarar tz$,mess$
let tz$=Device Error
let mess$=Sorry, The Player can´t play this File
@messagebox(mess$,tz$,48)
MP3_Stop
MP3_Close
let MP3error&=1
volver MP3error&
endif
let MP3error&=0
volver MP3error&
ENDPROC
Proc MP3_bitspersample wirkt no siempre
Declarar MP3_Result&
Let MP3_Result&=@MCISend$(STATUS WAVE BITSPERSAMPLE) samplerrate
Volver MP3_Result&
ENDPROC
Proc MP3_Play
@MCISend$(PLAY MP3_play)
ENDPROC
Proc MP3_PlayLoop funktioniert no überall
@MCISend$(PLAY MP3_play LOOP)
ENDPROC
Proc MP3_PlayWait
@MCISend$(PLAY MP3_play WAIT)
ENDPROC
Proc MP3_SeekToEnd
@MCISend$(SEEK MP3_play TO FIN) Sucht Vorwärts a para Ende
ENDPROC
Proc MP3_SeekToStart
@MCISend$(SEEK MP3_play TO START) Sucht Rückwärts a para Anfang
ENDPROC
Proc MP3_SeekTO
Parámetros pos$ en ms
@MCISend$(SEEK MP3_play TO +pos$) Sucht a a Position
ENDPROC
Proc MP3_Pause
@MCISend$(PAUSE MP3_play)
ENDPROC
Proc MP3_Resume
@MCISend$(RESUME MP3_play) Spielt después de Pause más a el gleichen Punto, play juega auch más, manchmal auch Doppel pause
ENDPROC
Proc MP3_PlayMode
Declarar MP3_Result$
Let MP3_Result$=@MCISend$(STATUS MP3_play MODE)zeigt el Zustand (stopped, playing, paused, not ready)
Volver MP3_Result$
ENDPROC
Proc MP3_Break Waitplay abbrechen con ESC Taste
@MCISend$(Romper MP3_play on 27)
ENDPROC
Proc MP3_length LengthMP3 más unten benutzen para Umrechnung
Declarar MP3_Result$
Let MP3_Result$=@MCISend$(STATUS MP3_play LENGTH) Longitud el mp3
Volver MP3_Result$
ENDPROC
Proc MP3_position posMp3 más unten benutzen para Umrechnung
Declarar MP3_Result$
Let MP3_Result$=@MCISend$(STATUS MP3_play POSITION) aktuelle Position
Volver MP3_Result$
ENDPROC
Proc LengthMP3 rechnet en Minuten Sekunden el String 00:00
declarar lang&,sek%,wert$,lang$,temp$
MP3_length
Let lang&=@Val(@&(0))
let sek%=@div&(lang&,1000)
let lang&=@div&(sek%,60)
let temp$=add$(str$(lang&),:)
If @equ(@len(temp$),2)
let wert$=@add$(0,temp$)
más
let wert$=temp$
endif
let sek%=@sub(sek%,@mul(lang&,60))
If @lt(sek%,10)
let wert$=@add$(wert$,0)
let wert$=@add$(wert$,@str$(sek%))
más
let wert$=@add$(wert$,@str$(sek%))
endif
Volver wert$
ENDPROC
Proc PosMP3 rechnet en Minuten Sekunden el String 00:00
declarar lang&,sek%,wert$,lang$,temp$
let wert$=00:00
MP3_position
let lang&=@Val(@&(0))
let sek%=@div&(lang&,1000)
let lang&=@div&(sek%,60)
let temp$=add$(str$(lang&),:)
If @equ(@len(temp$),2)
let wert$=@add$(0,temp$)
más
let wert$=temp$
endif
let sek%=@sub(sek%,@mul(lang&,60))
If @lt(sek%,10)
let wert$=@add$(wert$,0)
let wert$=@add$(wert$,@str$(sek%))
más
let wert$=@add$(wert$,@str$(sek%))
endif
Volver wert$
ENDPROC
beispiel
cls
MP3_open C:CDPlayTest_VBR.mp3
MP3_open MP3_02.MP3
MP3_bitspersample
imprimir @&(0)
LengthMP3
imprimir @$(0)
MP3_Play
Imprimir klick para Pause
waitinput
MP3_Pause
Imprimir klick para más y Positon
waitinput
MP3_Resume va auch con play
MP3_SeekToEnd
PosMP3 In schleife abfragen
imprimir @$(0)
waitinput
MP3_Stop
MP3_Close
|
|
|
| |
|
|