с6.3 abc Как воспроизвести в кларион звук.файл
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- ✯ Ветеран ✯
- Сообщения: 4960
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 6 раз
- Поблагодарили: 19 раз
с6.3 abc Как воспроизвести в кларион звук.файл
Давай свой текст и заодно файл звуковой.
We are hard at work… for you.
с6.3 abc Как воспроизвести в кларион звук.файл
Вот. В global описал api по buton пытался прозвучать- Каша там щас правда
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
с6.3 abc Как воспроизвести в кларион звук.файл
В вашей каше разбираться не хочется.
Вот пример рабочий.
Вот пример рабочий.
Код: Выделить всё
PROGRAM
MAP
MODULE('Windows API')
mciGetErrorString(ULONG,*CSTRING,USHORT),SHORT,PASCAL,RAW,PROC,NAME('mciGetErrorStringA')
mciSendString(*CSTRING,*CSTRING,USHORT,USHORT),ULONG,PASCAL,RAW,PROC,NAME('mciSendStringA')
END
END
MCICommand CSTRING(256)
MCIReturn CSTRING(128)
CODE
MCICommand='capability waveaudio can play'
Err# = MCISendString(MCICommand,MCIReturn,128,0)
IF Err#
MESSAGE('Ошибка при выполнении команды: '&Err#)
END
IF UPPER(MCIReturn) <> 'TRUE'
MESSAGE('Ваш компьютер не поддерживает вывод звука!')
RETURN
END
! WAVE
MCICommand='OPEN "Alarm01.wav" TYPE MpegVideo ALIAS MP3'
! MP3
!MCICommand='OPEN "Redalert.mp3" TYPE MpegVideo ALIAS MP3'
Err# = MCISendString(MCICommand, MCIReturn, 128, 0{Prop:Handle})
IF Err#
MESSAGE('Ошибка при открытии: '&Err#)
END
! не ждать
MCICommand='PLAY MP3'
! ждать окончания проигрывания
!MCICommand='PLAY MP3 WAIT'
Err# = MCISendString(MCICommand, MCIReturn, 128, 0{Prop:Handle})
IF Err#
MESSAGE('Ошибка при проигрывании: '&Err#)
END
!ВНИМАНИЕ: если убрать MESSAGE звук даже не успеет начать проигрываться!
MESSAGE('Звук проигрывается!','Внимание',ICON:Asterisk)
MCICommand='stop MP3'
Err# = MCISendString(MCICommand,MCIReturn,128,0{prop:handle})
IF Err#
MESSAGE('Ошибка при остановке проигрывания: '&Err#)
END
MCICommand='close all'
Err# = MCISendString(MCICommand,MCIReturn,128,0{prop:handle})
IF Err#
MESSAGE('Ошибка при закрытии: '&Err#)
END
- Вложения
-
- playwave.zip
- (376.51 КБ) 140 скачиваний
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
с6.3 abc Как воспроизвести в кларион звук.файл
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
с6.3 abc Как воспроизвести в кларион звук.файл
на другом компе все работает и мой безумный проект тоже... Че то с виндой и встроенным плеером у меня похоже
Всем спасибо и мои извинения
Всем спасибо и мои извинения
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
с6.3 abc Как воспроизвести в кларион звук.файл
Попробуйте еще этот вариант (Самый простой для проигрывания WAV файла):
Код: Выделить всё
PROGRAM
MAP
MODULE('Windows API')
sndPlaySound(*CSTRING,USHORT),SHORT,PASCAL,RAW,PROC,NAME('sndPlaySoundA')
END
END
SND_SYNC EQUATE(00h)
SND_ASYNC EQUATE(01h)
FileName CSTRING(256)
CODE
FileName='Alarm01.wav'
IF sndPlaySound(FileName, SND_ASYNC) = 0
MESSAGE('Ошибка при проигрывании файла')
END
MESSAGE('Конец!')
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
с6.3 abc Как воспроизвести в кларион звук.файл
Ну что то со звуковой подсистемой.
Винда то музыку играет?
Дрова обновить, винду обновить.
Винда то музыку играет?
Дрова обновить, винду обновить.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
с6.3 abc Как воспроизвести в кларион звук.файл
SndPlaySound проигрывает только Wav, ограниченного размера и не упакованные (Riff Wave, например, не играет). Пришлось в конце прошлого тысячелетия срочно искать альтернативу...Admin писал(а): ↑19 Июль 2017, 7:25Попробуйте еще этот вариант (Самый простой для проигрывания WAV файла):Код: Выделить всё
PROGRAM FileName='Alarm01.wav' IF sndPlaySound(FileName, SND_ASYNC) = 0 MESSAGE('Ошибка при проигрывании файла') END
с6.3 abc Как воспроизвести в кларион звук.файл
Возможно, кодеки нужны. Типа K-lite Kodec Pack. Сейчас все плееры содержат кодеки внутре, а Windows не снабжается...
Тип файла (Mp3Video) тоже давным-давно не используется, когда-то это дело прописывалось в Win.ini со ссылками на кодек.
Бросим каку...
Откроем файл без всякого типа...
Код: Выделить всё
Ext=UPPER(Sub(Loc:File,Len(Clip(Loc:File))-2,3))
CASE EXT
OF 'WAV' OROF 'MP3' OROF 'OGG' OROF 'MP4' OROF 'M4A' OROF 'WMA'
MCICommand='open "'&soundname&'" alias sound'
MCISendString(MCICommand,MCIReturn,128,0)
MCICommand='play sound'
Код: Выделить всё
MCICommand='capability waveaudio can play'
MCISendString(MCICommand,MCIReturn,128,0)
If Upper(MCIReturn)<>'TRUE'
Return('0')
End
И, наконец, у нас контора разрабатывает обучающие программы. Там звуки есть ВСЕГДА! И работают...