с6.3 abc Как воспроизвести в кларион звук.файл

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение kreator »

Давай свой текст и заодно файл звуковой.
We are hard at work… for you. :)
talgat55
Ветеран
Сообщения: 307
Зарегистрирован: 11 Сентябрь 2008, 12:53
Благодарил (а): 2 раза

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение talgat55 »

Вот. В global описал api по buton пытался прозвучать- Каша там щас правда
PLY.rar
(351.77 КБ) 133 скачивания
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение Admin »

В вашей каше разбираться не хочется. :)
Вот пример рабочий.

Код: Выделить всё

    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 Как воспроизвести в кларион звук.файл

Сообщение Admin »

talgat55 писал(а): 19 Июль 2017, 5:27Каша там щас правда
Честно попытался. Но вы сильнее! :idied:
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
talgat55
Ветеран
Сообщения: 307
Зарегистрирован: 11 Сентябрь 2008, 12:53
Благодарил (а): 2 раза

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение talgat55 »

Спасибо. Запустилось но все молчит...
talgat55
Ветеран
Сообщения: 307
Зарегистрирован: 11 Сентябрь 2008, 12:53
Благодарил (а): 2 раза

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение talgat55 »

на другом компе все работает и мой безумный проект тоже... Че то с виндой и встроенным плеером у меня похоже
Всем спасибо и мои извинения
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение Admin »

talgat55 писал(а): 19 Июль 2017, 7:09Всем спасибо и мои извинения
Попробуйте еще этот вариант (Самый простой для проигрывания 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('Конец!')
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
talgat55
Ветеран
Сообщения: 307
Зарегистрирован: 11 Сентябрь 2008, 12:53
Благодарил (а): 2 раза

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение talgat55 »

Выдает - Ошибка при проигрывании файла
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение Admin »

Ну что то со звуковой подсистемой.
Винда то музыку играет?
Дрова обновить, винду обновить.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение Yufil »

Admin писал(а): 19 Июль 2017, 7:25
talgat55 писал(а): 19 Июль 2017, 7:09Всем спасибо и мои извинения
Попробуйте еще этот вариант (Самый простой для проигрывания WAV файла):

Код: Выделить всё

    PROGRAM
  FileName='Alarm01.wav'
  IF sndPlaySound(FileName, SND_ASYNC) = 0
    MESSAGE('Ошибка при проигрывании файла')
  END
SndPlaySound проигрывает только Wav, ограниченного размера и не упакованные (Riff Wave, например, не играет). Пришлось в конце прошлого тысячелетия срочно искать альтернативу...
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

с6.3 abc Как воспроизвести в кларион звук.файл

Сообщение Yufil »

talgat55 писал(а): 19 Июль 2017, 7:09на другом компе все работает и мой безумный проект тоже... Че то с виндой и встроенным плеером у меня похоже
Всем спасибо и мои извинения
Возможно, кодеки нужны. Типа 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'
Ну и, наконец, полезно проверить вообще мультимедийность компа. Случаи запуска ( и слетания ) на серверных компьютерах под Win NT или Win2000 сервер были

Код: Выделить всё

    MCICommand='capability waveaudio can play'
    MCISendString(MCICommand,MCIReturn,128,0)
    If Upper(MCIReturn)<>'TRUE'
       Return('0')
    End

И, наконец, у нас контора разрабатывает обучающие программы. Там звуки есть ВСЕГДА! И работают...
Ответить