1

Тема: AHK: Воспроизведение одного звука из mp4

Здравствуйте.

Подскажите как средствами AHK - без открытия посторонних программ - воспроизвести звук файла "C:\звуки 1\1.mp4" ?

2 (изменено: teadrinker, 2019-02-16 10:32:30)

Re: AHK: Воспроизведение одного звука из mp4

Проще всего так:
SoundPlay
Если не захочет играть, тогда так:

; https://docs.microsoft.com/en-us/windows/desktop/WMP/object-model-reference-for-scripting
#Persistent
filePath := "C:\звуки 1\1.mp4"

Player := ComObjCreate("WMPlayer.OCX.7")
ComObjConnect(Player, "WMP_")
Player.Settings.Volume := 50
Player.url := filePath
Return

WMP_StatusChange(wmp) {
   if wmp.PlayState = 1 ; Stopped
      ExitApp
}
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

3

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, скажите - а как заставить этот код бесконечно проигрывать звук ?

4

Re: AHK: Воспроизведение одного звука из mp4

Какой код, первый, или второй?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

5

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, второй код.
Тот который вы к своему сообщению приложили.

6

Re: AHK: Воспроизведение одного звука из mp4

Добавьте строчку

Player.Settings.SetMode("loop", true)
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

7

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, скажите - а вот допустим скрипт 1.ahk  проигрывает звук бесконечно.
Как закрыть этот скрипт, чтобы выключить это проигрывание ?

8

Re: AHK: Воспроизведение одного звука из mp4

Правой кнопкой по иконке скрипта в трее —> Exit.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

9

Re: AHK: Воспроизведение одного звука из mp4

Это понятно.
Я имею ввиду - как другим скриптом выключить скрипт 1.ahk ?

10 (изменено: teadrinker, 2019-02-16 13:23:16)

Re: AHK: Воспроизведение одного звука из mp4

SetTitleMatchMode 2
DetectHiddenWindows, On
WinClose, 1.ahk ahk_class AutoHotkey
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

11

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, не работает.

Сперва запускаю 1.ahk - начинает играть звук.
Потом запускаю последний код - и ничего не происходит.
Звук продолжает проигрываться.

12

Re: AHK: Воспроизведение одного звука из mp4

У меня работает. Попробуйте убрать в конце "ahk_class AutoHotkey".

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

13

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, убрал.
Теперь скрипт выглядит вот так:

SetTitleMatchMode 2
DetectHiddenWindows, On
WinClose, 1.ahk

Но он по-прежнему не закрывает процесс 1.ahk и звук продолжает играть.

14 (изменено: димитрий2, 2019-02-16 14:14:08)

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, я не совсем разбираюсь в ahk.
Поэтому немного непонятно как эти процессы отображаются в диспетчере задач.
У меня постоянно висит в трее - несколько других рабочих скриптов ahk, которых не нужно закрывать.
И как я понял - им всем сопоставлен процесс AutoHotkey.exe

Когда я запускаю 1.ahk - то в диспетчере задач появляется еще один процесс с точно таким же названием AutoHotkey.exe.

15

Re: AHK: Воспроизведение одного звука из mp4

Всё правильно, так и должно быть. Ещё так можно попробовать:

WM_COMMAND := 0x111, ID_FILE_PAUSE := 65403, ID_FILE_CLOSE = 65405
scriptName := "1.ahk ahk_class AutoHotkey"
DetectHiddenWindows, On
SetTitleMatchMode 2

if !hWnd := WinExist(scriptName) {
   MsgBox, Окно не найдено!
   Return
}
PostMessage, WM_COMMAND, ID_FILE_PAUSE
PostMessage, WM_COMMAND, ID_FILE_CLOSE
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

16

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, запускаю этот скрипт, но ничего не происходит.

1.ahk по-прежнему висит в трее и продолжает проигрывать звуковой файл.

17

Re: AHK: Воспроизведение одного звука из mp4

Не знаю тогда, в чём может быть проблема. Разве что 1.ahk запущен от администратора, а тот, которым пытаетесь закрыть — нет.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

18

Re: AHK: Воспроизведение одного звука из mp4

Попробуйте запустить в таком виде:

WM_COMMAND := 0x111, ID_FILE_PAUSE := 65403, ID_FILE_CLOSE = 65405
scriptName := "1.ahk ahk_class AutoHotkey"
DetectHiddenWindows, On
SetTitleMatchMode 2

MsgBox, Закрывающий скрипт запущен

if !hWnd := WinExist(scriptName)
   MsgBox, Окно не найдено!
else
   MsgBox, Окно 1.ahk обнаружено
PostMessage, WM_COMMAND, ID_FILE_PAUSE
MsgBox, % ErrorLevel
PostMessage, WM_COMMAND, ID_FILE_CLOSE
MsgBox, % ErrorLevel

Какие сообщения выдаёт?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

19

Re: AHK: Воспроизведение одного звука из mp4

teadrinker, теперь появилось окно "Закрывающий скрипт запущен".
Затем пишет "Окно 1.ahk обнаружено".
Затем пишет "0".
Затем опять пишет "0" - и звук перестает проигрываться и файл 1.ahk закрывается.

А как это все - без лишних окон сделать ?
Просто закрыть и все.

20

Re: AHK: Воспроизведение одного звука из mp4

Попробуйте так:

WM_COMMAND := 0x111, ID_FILE_PAUSE := 65403, ID_FILE_CLOSE = 65405
scriptName := "1.ahk ahk_class AutoHotkey"
DetectHiddenWindows, On
SetTitleMatchMode 2

if !WinExist(scriptName) {
   MsgBox, Окно не найдено!
   Return
}
PostMessage, WM_COMMAND, ID_FILE_PAUSE
Sleep, 100
PostMessage, WM_COMMAND, ID_FILE_CLOSE
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

21

Re: AHK: Воспроизведение одного звука из mp4

teadrinker,  вот сейчас все заработало.
Большое спасибо вам.

22

Re: AHK: Воспроизведение одного звука из mp4


Gui, Add, ActiveX, vMP, WMPlayer.OCX
MP.url := file ; путь к файлу
gui, show, hide
WP.Play

Остановка:

gui, destroy

23

Re: AHK: Воспроизведение одного звука из mp4

А GUI зачем?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

24

Re: AHK: Воспроизведение одного звука из mp4

teadrinker пишет:

Добавьте строчку

Player.Settings.SetMode("loop", true)

Странный эффект, в WMP из под винды или в большинстве других плееров в момент повторного проигрывания нет мелькания как в ActiveX.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.30.01 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui

25

Re: AHK: Воспроизведение одного звука из mp4

Точнее в момент окончания воспроизведения последний кадр пропадает (так же как и при однократном воспроизведении), то есть становится черная картинка.
Причём такого нет, если ActiveX в точности соответствует размерам видео, то есть по окончании воспроизведения остаётся последний кадр.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.30.01 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui