текст на экране, а выделить его нельзя

обновлено · автор

поставьте видео на паузу в Safari, «Фото», QuickTime или в быстром просмотре — и Live Text даст выделить текст в кадре, как на веб-странице. это бесплатно и это хорошо, и заканчивается это ровно на границе приложений Apple — почему вы, скорее всего, сюда и пришли.

встроенный способ скопировать текст с видео

  1. поставьте видео на паузу.
  2. наведите курсор на текст в кадре — там, где Live Text что-то нашёл, курсор станет текстовым.
  3. выделите и скопируйте как обычно или нажмите правой кнопкой и выберите копирование.

так работает с macOS Ventura, точно так же работает в 26-й и работает хорошо. список мест короткий, и его стоит запомнить, потому что всё остальное на этой странице из него следует.

где Live Text живёт на самом деле

  • Safari — видео на странице, на паузе.
  • «Фото» — что угодно из вашей медиатеки.
  • «Просмотр» — картинка, которая у вас уже есть файлом.
  • QuickTime Player — локальный файл.
  • быстрый просмотр — то, что открывается пробелом на файле в Finder.
  • TV — под ним тот же плеер, что и у QuickTime, но со звёздочкой, которой ниже отведён отдельный раздел.

под обоими путями работает то же распознавание, которое hop наводит на экран: распознавание текста на Mac

этот список — не про любимчиков Apple. Live Text приходит вместе с тремя конкретными частями macOS — WebKit, быстрый просмотр и видеоплеер AVKit, — и приложение получает его тем, что на одной из них построено. Safari — это WebKit, QuickTime и TV — это AVKit, а всё, что рисует собственную видеоповерхность, не получает ничего, каким бы хорошим приложение ни было.

Apple о выделении текста в кадре (страница английская): работа с текстом на фотографии — Apple Support

и запасной путь, который работает всегда: снимок экрана по ⇧⌘4, потом откройте png. и «Просмотр», и быстрый просмотр запустят на нём Live Text. два лишних шага и файл на рабочем столе, зато бесплатно и без осечек.

где текст с видео скопировать нельзя

  • Chrome, Firefox, Edge, Arc — видео в любом браузере, кроме Safari. это самый крупный случай, и из-за него выдача по теме забита расширениями.
  • VLC, IINA и прочие сторонние плееры.
  • демонстрация экрана в звонке: вам показывают документ, из которого не взять ни строки.
  • видео внутри приложения — плеер курса, настольный клиент, что угодно со своим окном.
  • и за пределами видео: закрытый pdf, скриншот переписки, отсканированная страница.

qr-код на экране — та же задача в другой шляпе: камера в кармане, код на дисплее: прочитать qr-код на Mac

случай, о котором не пишет никто: защищённое видео

есть ещё один отказ, и ни одна инструкция о нём не упоминает: защищённое воспроизведение. на содержимом FairPlay разбор кадра выключен по замыслу: не ухудшен, не ненадёжен, а выключен. взятый напрокат фильм, поток по подписке или почти всё, что вы открываете в TV, не отдадут вам ни строки, каким бы чистым ни был кадр. если на странице с видео в Safari выделение работает, а в приложении стриминга на том же Mac — нет, у вас ничего не настроено неправильно.

инженеры Apple о свойстве, которое включает разбор кадра, и о том, что из него исключено (страница английская): как добавить Live Text в приложение — WWDC22

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

сам движок с вашего Mac никуда не делся. он установлен, он описан, и дотянуться до него из терминала можно за минуту, причём Xcode для этого не нужен — хватает Command Line Tools:

  1. сохраните любой кадр как png — хватит ⇧⌘4.
  2. в ocr.swift подключите Vision, соберите VNRecognizeTextRequest и передайте ему этот файл через VNImageRequestHandler.
  3. запустите swiftc ocr.swift -o ocr, потом ./ocr frame.png — строки вернутся текстом.

на macOS 26.6.2 кадр читается начисто, а на вопрос, какие языки он знает, запрос отвечает тридцатью. с вашего Mac не пропало ничего. пропала только возможность навести это на прямоугольник экрана, не написав перед этим программу.

запрос, который и занимается чтением (страница английская): VNRecognizeTextRequest — Apple Developer

итого: если вы живёте в Safari и «Фото», встроенного пути вам хватает целиком. закрывайте вкладку, бесплатное и уже стоящее на машине ничем не перебить. цена начинается там, где источник — не приложение Apple, и растёт вместе с тем, как часто вы это делаете.

как hop снимает текст с видео

нажмите сочетание hop и обведите рамкой любую часть экрана. текст выйдет в окне, где его можно прочитать, поправить и скопировать, и одновременно ляжет в историю буфера. что под рамкой — неважно: видео на паузе в Chrome, звонок, плеер, диалог, который не даёт скопировать собственный текст ошибки.

читает в обоих случаях одно и то же, под обоими путями Vision. разница в том, что надо знать заранее и сколько раз это повторять:

всё, что вы так снимете, копится, а не затирает предыдущее: найти то, что копировали раньше

что у вас естьвстроенный путьс hop
кадр на паузе в Safari или «Фото»навести и выделить — Live Text прямо здесьне нужен, берите Live Text
тот же кадр в Chrome, VLC или плеере курса⇧⌘4, открыть png, выделить, удалить файлобвести рамкой, текст в буфере
строка с чужой демонстрации экрана, посреди звонкаснять скриншот, потом выйти из звонка, чтобы его прочитатьобвести, пока слайд не сменился
диалог ошибки, который не даёт скопировать свой же текстснять скриншот, потом открыть его в «Просмотре»обвести прямо на месте
двадцать кадров из одного разборадвадцать заходов по четыре шага и двадцать файлов на уборкудвадцать рамок, и все лежат в истории
  • переносы строк сохраняются, поэтому таблица или кусок кода выходят читаемыми, а не одной сплошной строкой. если вы снимаете именно код, это и есть та самая разница.
  • qr-коды и штрихкоды читаются в том же проходе, и у кода с веб-адресом появляется кнопка «открыть ссылку». только веб-адреса: отсканированный код — данные, которым нельзя верить, поэтому телефон или пароль от Wi-Fi остаются обычным текстом, на который вы сначала посмотрите.
  • картинку можно бросить в окно или вставить по ⌘V, когда нужное вам уже лежит файлом.
  • Vision работает на этом Mac, и никуда ничего не уходит — для чужого внутреннего документа это единственный приемлемый ответ.

когда текст с видео снять не выходит

  • в этом приложении не выделяется ничего и ни на одном кадре. сначала проверьте, не защищён ли поток: на содержимом FairPlay разбор выключен, и настройки для этого нет.
  • кадр смазан или пойман в движении. шагайте по одному кадру, если плеер позволяет: распознавание читает пиксели, а смаз нечитаем.
  • текст мелкий. разверните на весь экран и только потом выделяйте: при высоте в восемь пикселей надёжно не читает ничего и никто.
  • светлый текст на пёстром фоне или сильно стилизованный. вшитые в картинку субтитры — самый трудный случай; обрезайте вплотную по строке.
  • язык не из тех тридцати или в кадре смешаны две письменности. на смешанных строках точность падает резко.
  • вам нужны все субтитры целого ролика. инструмент не тот: это расшифровка, а покадрово вы провозитесь дольше, чем длится видео.
  • закрытый pdf текст отдал, но вёрстка рассыпалась. колонки — это вёрстка, а не свойство пикселей, так что собирать их придётся заново.

сняли несколько кадров и кажется, что первые пропали? они за сочетанием клавиш: история буфера обмена на Mac

frequently asked questions

умеет ли macOS копировать текст с видео?
да, начиная с Ventura: поставьте видео на паузу в Safari, «Фото», «Просмотре», QuickTime или быстром просмотре — и Live Text сделает текст в кадре выделяемым. в других браузерах и в сторонних плеерах нет.
почему Live Text не работает в Chrome?
Live Text приходит вместе с WebKit, быстрым просмотром и видеоплеером AVKit, и приложение получает его тем, что на одном из них построено. Safari — это WebKit; Chrome и Firefox рисуют собственную видеоповерхность, и macOS просто не к чему прицепиться.
почему нельзя выделить текст в приложении стриминга или во взятом напрокат фильме?
на содержимом под защитой FairPlay разбор кадра выключен по замыслу, поэтому почти всё, что вы смотрите в TV или в приложении по подписке, выделения не предложит никогда. это не настройка и не поломка на вашей стороне.
как скопировать текст с видео без расширения?
снимите кадр на паузе по ⇧⌘4 и откройте png — «Просмотр» запустит на нём Live Text, и текст выделяется там. цена — файл, который вы потом удалите.
можно ли достать текст из pdf, который не даёт его выделить?
да, если распознавать пиксели, а не спрашивать документ. запрет — это флаг внутри pdf, и распоряжается он выделением, а не тем, что нарисовано у вас на экране.
уходит ли что-нибудь на сервер при распознавании?
в hop нет — работает Vision от Apple прямо на машине, тот самый движок, до которого вы можете дотянуться из терминала сами. это стоит проверять у всего, что вы наводите на рабочий экран: распознавать в облаке умеет изрядная часть таких инструментов.
сколько языков оно читает?
тридцать на macOS 26 — европейский набор, обе китайские письменности, японский, корейский, русский, украинский, арабский, турецкий, тайский и вьетнамский среди них. точность падает там, где в одной строке смешаны две письменности.
сохранится ли оформление таблицы?
переносы строк сохраняются, поэтому строки остаются строками, а блок кода — читаемым. выравнивание колонок — это зрительное расположение, а не символы, так что широкие таблицы придётся подровнять после.

the tool behind this

text recognitionpull text off anything on screen — a video in Chrome or VLC, a locked pdf, another app's window.

done with распознавание текста

other things people do

об авторе

Антон Шакиров, автор hop

создаёт hop

создаёт hop и все страницы этого сайта. девятнадцать инструментов под одной иконкой в menu bar, MIT и открытый код. на issue и письма отвечает сам.

download hopfree · macOS 14+ · Apple silicon and Intel