> Внимание

Внимание! Все вопросы по программам, отсутствующим в этом разделе, задавайте в теме Скорая помощь новичкам.

В ЭТОМ РАЗДЕЛЕ ТОЛЬКО КАТАЛОГ ПРОГРАММ! СОЗДАНИЕ ТЕМ С ВОПРОСАМИ ЗАПРЕЩЕНО! ПОИСК ПРОГРАММ.
Новые темы необходимо создавать только в корневом разделе! В дальнейшем они будут обработаны модераторами.



PlayPause | Управление разными плеерами с кнопки ответа гарнитуры



Реп: (70)
PlayPause

Прикрепленное изображение

Программа позволяет управлять различными плеерами с помощью кнопки ответа на проводной гарнитуре.

Управление:
  • Двойное нажатие - воспроизведение/пауза
  • Длинное нажатие - следующий трек/побудка устройства.
Поддерживает работу с плеерами:
  • HTC Audio Manager
  • CorePlayer (только со включенной опцией Media library)
  • HTC FM Radio
  • MortPlayer
  • Slide2Play
  • Pocket Player
  • Pocket Music
  • GSPlayer
  • режим по умолчанию (redial/SSDialer)
Устанавливать строго в основную память девайса!


В дистрибутив включен модуль, не позволяющий устройству уходить в глубокую спячку, пока к нему подключена гарнитура. То есть, когда вы ставите паузу двойным нажатием, вы не столкнетесь с тем, что через пять минут двойное нажатие не запустит плеер обратно. Это решение, возможно, не очень экономично по отношению к батарее.

Изменения в версии 3.1b:
  • Добавлена поддержка плееров Pocket Player и GSPlayer
  • Добавлен режим по умолчанию (управление плеерами выключено, запускаются redial и ssdialer, на не-HTC девайсах не уверен что заработает)
  • Если на экране открыто что-либо (браузер, читалка) - экран не гаснет (кроме плеера Pocket Music)
  • Программа корректно деинсталлируется.


Изменения в версии 4.0:
  • Добавлена поддержка плеерa PocketMusic
  • Из проги убран весь MortScript, время реакции на нажатие заметно уменьшилось
  • "Умное отключение экрана" заменено галкой в настройках, выключать экран после действия или нет
  • Возможность создавать свои профили настройки: в каталоге приложения создается папка, туда кладутся файлы longpress.exe и doublepress.exe, профиль готов=))
  • Интерфейс на великом и могучем))
  • Прога разучилась сама запускать плееры((


Текущая версия: 4.0rc2
Прикрепленный файлPlayPause_4.0rc2_ru.cab ( 126.76 КБ )


Старые версии программы под катом.

Версии 1.*.
Управление:
Длинное нажатие (~1 сек) - play/pause
Повторное длинное нажатие (возможно несколько) - следующий трек.
Для работы требуют установленный MortScript.
Сборка для AudioManager
Прикрепленный файлPlayPause.cab ( 12.09 КБ )

Сборка для S2P
Прикрепленный файлPlayPause_s2p_.cab ( 12.03 КБ )

Сборка для MortPlayer
Прикрепленный файлPlayPause_mort_.cab ( 12.13 КБ )

Сборка для CorePlayer
Прикрепленный файлPlayPause_core_.cab ( 12.22 КБ )


Версии 2.*.
Управление:
Двойное нажатие - воспроизведение/пауза
Длинное нажатие - следующий трек/запуск плеера/побудка устройства.
Сборка для HTC AudioManager
Прикрепленный файлPlayPause_2.1_AudioManager.cab ( 202.34 КБ )

Сборка для HTC FM Radio
Прикрепленный файлPlayPause_2.2_FMRadio.cab ( 210.65 КБ )


Версии 3.*.
Прикрепленный файлPlayPause_3.0b.cab ( 227.85 КБ )

Прикрепленный файлPlayPause_3.1b.cab ( 227.49 КБ )




Сообщение отредактировал jiles - 19.04.09, 14:57



Реп: (2799)
А для плеера s2p можешь такое сотворить?



Реп: (70)
Для s2p еще проще)) Через полчасика выложу))
UPD: в шапке. проверяй.

Сообщение отредактировал jiles - 19.02.09, 21:07



Реп: (1)
А для Mortplayer можно такое же сделать?



Реп: (39)
jiles,
Вы не могли бы сделать отдельно 3 скрипта которые бы отвечали за управление маниловским плеером...

1) предыдущий трек
2) следующий трек
3) воспроизведение / пауза

Буду Вам очень признателен.



Реп: (70)
2bert1 Для МортПлеера в шапке. Не тестировал, надо проверять.
2Max-r
Предыдущий трек
SendCommand("Audio Manager", 149)
SendLeft("Audio Manager")

Следующий трек
SendCommand("Audio Manager", 149)
SendRight("Audio Manager")

Воспроизведение/пауза
SendCommand("Audio Manager", 149)
SendCR("Audio Manager")

Это без свертывания и выключения экрана. Маниловский плеер управляется плохо (или я не нашел команды), как управлять им не разворачивая я не придумал.



Реп: (7)
что-то с мортплеером не работает. Выдает ошибку: Отсутствует приложение, сопоставленное с PlayPause. Сначала запустите приложение, а потом откройте в нем этот файл.



Реп: (70)
jaralx @ 25.2.2009, 16:16 *
что-то с мортплеером не работает. Выдает ошибку: Отсутствует приложение, сопоставленное с PlayPause. Сначала запустите приложение, а потом откройте в нем этот файл.

Внимательно читаем шапку и ставим перед установкой MortScript ;)
Проверил, все работает.



Реп: (30)
Идея очень интересная!

Возникло несколько вопросов:
1. За отлов долгого (длинного) нажатия отвечает какой-то доп.процесс в памяти (VoiceCommander) или это штатная функция WM?
2. Интереснее реализовать перехват (hook) всех сообщений (т.е. и длинного и короткого нажатия) от кнопки проводной гарнитуры (она вроде же как стандартная кнопка). Я не знаю как отличить длинное нажатие от короткого, возможно , это разные сообщения, или это сделано просто через два сообщения - нажал (down), отжал (up) и процесс, замеряющий время между ними.. на мой дилетантский взгляд можно из всех сообщений системы определить какие именно идут от этой кнопки и перехватывать их . Как думаешь, возможно ли такое сделать?

Пример управление гарнитурой как в айфоне (мне было очень удобно):

Быстрое нажатие - пауза/плей в плеере, ответить на звонок/завершить ,
Дважды быстро - к следующей песне,
Трижды быстро - к предыдущей песне,
Долгое нажатие - отклонить входящий вызов .

Ну можно ещё комбинации придумать , да и разное время нажатия тоже учитывать - масса вариантов.


jiles, можно ещё вопрос, а как ты узнал id кнопок (сообщений отсылаемых плеерам)?
Для ББ была прога winspy (и еще помню стандартную spy++ в комплекте с Visual studio), а вот для кпк такой не могу найти.

Сообщение отредактировал monty69 - 28.02.09, 01:04



Реп: (5)
а для core player можно такое сделать,очень хотелось бы



Реп: (70)
2uzik 007 Выложил в шапку. Забирай ;)
2monty69 Отлов длинного нажатия по-моему виндовая функция. Как перехватывать короткое нажатие - мне самому очень интересно :P А id команд плееров я гуглю=)) Только для АудиоМенеджера пришлось перебором подбирать, и то не смог найти три основных: плей/паузу, вперед и назад=)))
2Модеры Если есть такая возможность, измените, пожалуйста, описание темы на "Управление разными плеерами с кнопки ответа гарнитуры". А то то что сейчас уже стало не совсем актуальным))

Сообщение отредактировал jiles - 28.02.09, 14:20



Реп: (13)
Попробую на смарт поставить версию для Коре



Реп: (30)
Вот интересная тема: TalkButton (тема от 2006).
Там написано что в аудио-вход гарнитуры передается специальная последовательность при нажатии на кнопку гарнитуры и в системе отсутствует специальное сообщение для этой кнопки - т.е. определение нажатия чисто программное.

На xda вообще читал противоположное, что проводная гарнитура состоит из 4-х проводов, три из которых - это наушники и микрофон, а 4-ый - это специальный провод как раз от этой кнопки. Если по этой идее, то в систему должно поступать специальное прерывание от этого провода и генерироваться соответствующее сообщение о нажатии, но в теме TalkButton (выше) выложен перехватчик всех сообщений-нажатий на любые кнопки и в нем нажатие на кнопку гарнитуры не определяется вообще (т.е. сообщение о каком либо нажатии отсутствует). Сообщение о нажатии появляется только если запущена dialer или другая программа анализирующая аудио-вход и выделяющая из него эту определенную последовательность байт, при чем появляющееся сообщение соответствует нажатию зеленой клавиши.

Мне кажется что существует процесс который постоянно следит за аудио-входом подключенной гарнитуры, нужно только выделить его и заменить на свой.

Сообщение отредактировал monty69 - 28.02.09, 19:01



Реп: (13)
На смарте не заработало



Реп: (70)
HP_514 @ 1.3.2009, 12:41 *
На смарте не заработало

Я для КорПлеера немного неправильно собрал каб, он дает возможность поставить прогу на карточку. Этого делать нельзя=))



Реп: (30)
Вот на xda нашел еще один простой способ (но похоже только для htc устройств).

Суть в замене двух стандартных exe'шников на собственные:

\windows\redial.exe - для двойного быстрого
\windows\SDDialer.exe - для долгого

UPD. Немного подумал. Все-таки способ с подменой мне не очень нравится, лучше менять соответствующие ключи реестра, вроде это менее радикально. Найти где спрятался redial и заменить его на перемотку вперед, т.е. получится два быстрых, вместо двух долгих.
M
+ от mk220


Сообщение отредактировал marchello - 10.03.09, 20:37



Реп: (4)
2 jiles
подскажи, пожалуйста, у меня с кнопки гарнитуры запускается VoiceCommander. В папке windows нашёл соответствующий ярлык, открыл его блокнотом, прописал туда путь к Core Player. Теперь по нажатию кнопки гарнитуры запускается плеер. Осталось только сделать так, чтобы при нажатии этой кнопки не плеер запускался, а переключался трек в Core. Можно ли в этот ярлык прописать не путь к плееру, а команду на переключения трека в плеере? Назначение кнопки в плеере позволяет это сделать, но когда тушу экран и ставлю на холд(Asus P526) эта фича не работает. Помогите, пожалуйста!

P.S. Хотелось бы узнать, какой именно ключ реестра для запуска Voice Commander'a затирается при использовании play_pause? Можно его восстановить?

Сообщение отредактировал zakat - 04.03.09, 02:56



Реп: (492)
jiles, если не сложно - для PocketMusik или GSPlayer. Заранее признателен.



Реп: (480)
monty69 @ 28.2.2009, 18:48 *
написано что в аудио-вход гарнитуры передается специальная последовательность при нажатии на кнопку гарнитуры и в системе отсутствует специальное сообщение для этой кнопки - т.е. определение нажатия чисто программное.
Ни каких последовательностей проводная гарнитура не посылает.
Чисто физически (электрически) - четыре провода:
- общий (масса)
- микрофон
- правый наушник
- левый наушник
Оба наушника и микрофон одним концом подключены к соответствующену контакту штекера, а другим - в кучу на массу.
Кнопка закорачивает микрофон.
Где-то в глубинах КПК контроллер засекает сильное изменение сопротивления на микрофонном входе. А дальше - программирование.
Скорее всего, драйвер гарнитуры формирует, как это принято в Windows, события Click (короткое нажатие), Down и Up. Возможно, ещё и в буфер клавы подсовывает последовательность.

Добавлено 05.03.2009, 09:44:

Идея вообще-то интересная, но и от встроенного VoiceCommander отказываться жалко. Звонить-то тоже надо.



Реп: (48)
Я уже задавал тысячу раз вопросы в разных местах. НАконец то хоть кто то хоть немного сдвинул дело с мертвой точки. Любая Нокия может переключать треки и не только в плеере. мне бы даже больше это было нужно в радио!

Qwerty где ты???? Я тебе наушники дал? Дал! Ну помоге человекам!!! и мне!!!



Реп: (52)
вот бы с BT гарнитуры научиться нажатия перехватывать...


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 29.03.24, 11:12