Существует ли какое-либо программное обеспечение, позволяющее приостанавливать (и не приостанавливать) воспроизводимое в настоящее время видео YouTube (или, в идеале, любые онлайн-видео / аудио носители), с помощью сочетания клавиш или удобно доступной кнопки (например, кнопки, которая сидит в строке меню, расположенной в правом верхнем углу экрана)? Чем меньше необходимых кликов, тем лучше.
Ключевым моментом здесь является то, что я хочу иметь возможность приостановить видео в любом приложении, то есть, когда Google Chrome не является основным приложением (например, TextEdit или Microsoft Word является основным приложением).
iOS имеет этот встроенный ярлык. Если пролистать экран снизу вверх, появятся элементы управления мультимедиа. Эти элементы управления могут манипулировать любым звуком, который создается на вкладке Safari.
Мой веб-браузер - Google Chrome.
OS X El Capitan, версия 10.11.6.
Я также был бы открыт для выполнения этого с помощью AppleScript (который затем можно назначить комбинации клавиш в FastScripts.app). Но я не могу себе представить, что такая сложная задача возможна через AppleScript.
источник
Ответы:
********** ОБНОВЛЕННОЕ РЕШЕНИЕ **********
Это обновление является прямым решением оригинального вопроса ОП.
В следующем коде AppleScript будет добавлен элемент меню состояния «Воспроизвести / приостановить YouTube» с параметрами воспроизведения или приостановки любого видео YouTube в Google Chrome или Safari, независимо от того, видны браузеры или нет. Сохраните следующий код AppleScript как приложение «оставайтесь открытым» в Script Editor.app.
Если вы хотите, чтобы ваш новый ... Play Pause YouTube Status Menu.app был виден только в меню состояния, а не в Dock, вы можете щелкнуть правой кнопкой мыши приложение в Finder и выбрать опцию «Показать содержимое пакета». В папке «Содержимое» откройте файл Info.plist в любом текстовом редакторе и добавьте следующие две строки. Затем сохраните и закройте этот файл.
Если вам неудобно редактировать файл .plist напрямую, следующий код AppleScript позволит вам выбрать приложение, которое будет скрыто от Dock во время его работы.
Если выбранное приложение уже настроено на скрытие от Dock, вам будет предоставлена единственная возможность - скрыть приложение от видимого в Dock во время его работы ... И наоборот.
Этот сценарий особенно удобен для сокрытия «оставаться открытыми приложениями» с иконками приложений неактивных обработчиков, появляющихся в Dock во время работы.
************ ОРИГИНАЛЬНОЕ РЕШЕНИЕ ************
Этот скрипт будет нажимать кнопку «Воспроизведение / Пауза» на видео, воспроизводимом на YouTube в Google Chrome, независимо от того, отображается ли Google Chrome.
Это версия скрипта для работы с Safari
Стремясь предоставить оператору OP A полное решение AppleScript, я сделал еще один шаг вперед к своему первоначальному ответу.
ОБНОВИТЬ
Я наконец-то понял. Я создал приложение AppleScript в Xcode. Первоначально мой проект начинался только с помощью окна с одной кнопкой для управления видео YouTube, активными в настоящее время в Chrome или Safari. Этот проект немного вырос в приложение, которое содержит несколько утилит. Этот GIF показывает кнопку паузы YouTube, управляющую YouTube в Chrome и Safari. Я связал действия кнопки с AppleScript, который я изначально написал в редакторе сценариев.
Это снимок приложения Xcode, работающего в файле AppDelegate.applescript.
Вот код в этом файле, который я создал, чтобы программа работала.
Я обновил код, чтобы вкладка YouTube в Chrome не должна была быть видимой или активной вкладкой при нажатии кнопки паузы YouTube, созданной в Xcode
Вот ссылка для загрузки всего проекта XCode
ВНИМАНИЕ: функция заставки рабочего стола остановит приложение. После принудительного выхода и повторного открытия будет работать функция заставки рабочего стола для выхода из активной заставки.
Запоздалая мысль: мне, вероятно, следовало бы обернуть каждый из кодов AppleScript в операторы «try», чтобы избежать всевозможных сообщений об ошибках для тех, кто играет с этим проектом, у которых нет той же системы и типа компьютера, что и у меня. (MacBook Pro 15 "ОС Sierra 10.12.6)
Чтобы функция масштабирования работала, она должна быть включена в системных настройках.
Для правильной работы функции «Диктовка вкл. / Выкл.» Ярлык для включения команд диктовки в системных настройках должен совпадать с ярлыком, используемым в сценарии.
В настоящее время я работаю над возможностью переключения между приложениями, работающими в оконном режиме или только в строке меню.
источник
display dialing ...
вам нужна только одна строка кодаtell application "Google Chrome" to execute front window's active tab javascript "document.getElementsByClassName('ytp-play-button ytp-button')['0'].click();"
. Поскольку ОП хочет «приостановить (и отменить) воспроизводимое в данный момент видео на YouTube», Google уже открыт, и его можно свернуть, если активная вкладка воспроизводится, и вышеупомянутая одна строка кода будет воздействовать на него. Поэтому нет необходимости активировать окно или как в вашем коде, используйте,launch
как это указано в документации, продолжение в следующем комментарии ...Вот как попасть в строку меню с чистого AppleScript. Сохранить как приложение с
stay open after run handler
:PS Я украл код для фактических функций воспроизведения / паузы из @ wch1zpink, поэтому, пожалуйста, выскажите их ответ.
источник
quit
команду вif aTitle is "Quit" then
блок послеcurrent application's ...
строки кода, чтобы решить эту проблему. Вторая проблема заключается в том, что используемые вами символы плохо отображаются, если выбрана строка меню « Использовать темные» и общая системная настройка Dock . Вы действительно не можете видеть символы, пока не наведете на них курсор мыши. Вы можете рассмотреть возможность добавления текста к пункту меню с символами. Например:Play/Pause YouTube ⏯
LSUIElement = 1
добавленную вname.app/Contents/Info.plist
файл. ИМО Нет необходимости показывать плитку приложения в этом дополнительном меню.--http://piyocast.com/as/archives/4502
комментарий в коде больше не действителен, однако этот ответ Applescript запускается из строки меню? Автор оригинального кода содержит оригинальный код, который раньше был по этому URL. В ответ также входитdefaults
команда для скрытия плитки Dock, например:defaults write /Applications/name_of_app.app/Contents/Info.plist LSUIElement -bool yes