Система и способ для ускорения поисков в базе данных для множественных синхронизированных потоков данных
Иллюстрации
Показать всеИзобретение относится к идентификации объектов аудиовизуальной информации в потоках вещаемой аудиовизуальной информации. Техническим результатом является повышение быстродействия сервера за счет эффективного предоставления услуг по идентификации, одновременно, большему числу пользователей. В способе осуществляют передачу каждому из множества компьютеров-клиентов, на постоянной основе, сгенерированные клиентом «следы» потока аудиовизуальной информации; для каждого переданного «следа» используют сервер для поиска в кэше «следов» совпадающего «следа» для этого «следа»; причем каждый «след» в кэше «следов» содержит заранее заданное время существования, и при этом любой «след», время существования которого истекло, удаляется из кэша «следов» вместе с любой связанной с ним идентификационной информацией об объекте аудиовизуальной информации; в случае если база данных «характерных отпечатков» содержит совпадающий «характерный отпечаток», передают из сервера соответствующему клиенту идентификационную информацию об объекте аудиовизуальной информации, связанную с этим «характерным отпечатком». 3 н. и 21 з.п. ф-лы, 4 ил.
Реферат
Область техники, к которой относится изобретение
Изобретение относится к идентификации объектов аудиовизуальной информации в потоках вещаемой аудиовизуальной информации, и, в частности, к системе и способу для обеспечения одновременной производимой на сервере идентификации объектов аудиовизуальной информации, таких как песни, в синхронизированных потоках данных, для большого количества индивидуальных клиентов, при минимизации поисковой нагрузки на базу данных сервера.
Уровень техники
Существует множество схем для выделения «признаков» из сигнала для их использования в целях идентификации. Например, в том, что касается одномерного сигнала, такого как аудиосигнал или файл аудиоданных, то выделение аудиопризнака использовалось в качестве необходимого этапа для решения задач классификации, поиска и идентификации в отношении объектов аудиовизуальной информации в аудиосигнале. Для идентификации выделенные признаки или «следы» обычно сравниваются с известным «характерным отпечатком» с тем, чтобы идентифицировать либо элементы в составе аудиосигнала, либо весь аудиосигнал. Такие хорошо известные схемы идентификации объектов аудиовизуальной информации традиционно известны под наименованием «снятие характерных отпечатков аудиосигнала».
В целом ряде традиционных схем такие технологии «снятия характерных отпечатков» аудиосигнала были приспособлены для обеспечения идентификации конкретных песен в потоке аудиоданных, таком как радио- или Интернет-вещание. Например, пользователь, слушающий поток аудиоданных, может услышать некоторую песню, о которой он или она хотел бы узнать: наименование, исполнителя, альбом и т.д. В таком случае традиционные технологии «снятия характерных отпечатков аудиосигнала» используются для выделения одного или более «следов» из образцов, взятых из этой песни. Обычно, эти «следы» затем сравниваются с характерными отпечатками, хранящимися в базе данных известных музыкальных произведений, с тем, чтобы идентифицировать совпадение, причем, результаты этого затем предоставляются пользователю.
Кроме того, такие технологии также были приспособлены к ряду традиционных услуг с целью предоставления на платной основе услуги по идентификации или поиску песен, которая обычно основывается на технологиях «снятия характерных отпечатков аудиосигнала» и сравнениях с базой данных. Например, для идентификации конкретных песен для пользователей, осуществляемой через сеть сотовой телефонной связи, функционирует несколько служб идентификации песен, таких как относительно хорошо известная служба идентификации музыкальных произведений «Shazam». В частности, системы, такие как система, предлагаемая «Shazam», обычно функционируют таким образом, что сначала требуют от пользователя набрать некоторый номер на его телефонном аппарате сотовой связи, а затем удерживать этот телефонный аппарат направленным на источник музыки в течение приблизительно от 15 до 30 секунд. После этого служба «Shazam» идентифицирует музыкальное произведение, сравнивая это музыкальное произведение (или «следы», вычисленные на основе этого музыкального произведения) с базой данных известных музыкальных произведений. После этого служба «Shazam» возвращает пользователю текстовое сообщение, содержащее наименование, данные об исполнителе, альбоме и тому подобную информацию об идентифицированной песне.
К сожалению, одна из проблем с поисковыми службами вышеописанного типа заключается в том, что по мере того, как увеличивается количество пользователей, осуществляющих доступ к системе идентификации музыкальных произведений в любой данный момент времени, количество запросов на поиск в базе данных, приходящееся на одну секунду, также увеличивается. Эта проблема смягчается, например, в случае таких услуг, как услуги, предоставляемые службой «Shazam», поскольку пользователь должен оплачивать телефонный звонок и саму эту услугу за каждую песню, которую он желает идентифицировать, поскольку результат взимания такого рода платы с пользователей имеет тенденцию ограничивать количество одновременных пользователей системы, тем самым сокращая общую нагрузку на сервер. Другая проблема с такого рода системой заключается в том, что она требует, чтобы образцы полной песни (находящиеся под действием ограничений по частоте/ширине полосы, накладываемых телефонной службой) передавались на сервер, от которого затем требуется вычислить «следы», на основе переданного образца потока аудиовизуальной информации.
Следовательно, по мере того, как количество одновременно обращающихся пользователей становится во все возрастающей степени большим, вычислительная нагрузка при вычислении «следов» или «характерных отпечатков» на основе поступающих музыкальных произведений, проведении поисков в базе данных с целью идентификации этих «характерных отпечатков» и дачи ответа индивидуальным пользователям может быстро вызвать перегрузку даже относительно больших групп специализированных серверов. В результате существует тенденция ограничивать такие схемы допущением того, что количество одновременно обращающихся пользователей будет относительно низким. Кроме того, хотя существует возможность нарастить такие схемы с тем, чтобы обеспечить достаточное количество серверов для работы с большим количеством одновременно обращающихся пользователей, потенциально исчисляемого десятками миллионов пользователей, денежные затраты на такую систему вероятно будут непомерно высоки.
Таким образом, существует потребность в системе и способе для обеспечения идентификации песен в реальном масштабе времени. Кроме того, такие система и способ должны быть способны обеспечить эффективное предоставление услуг по идентификации песен большим количествам одновременно обращающихся пользователей, при этом минимизируя нагрузку на сервер и поиски в базе данных. Наконец, такие система и способ должны еще более минимизировать нагрузку на сервер, сняв с него бремя вычисления «следов» на основе образцов потока аудиовизуальной информации, потребовав, чтобы эта задача выполнялась каждым из множества компьютеров-клиентов.
Раскрытие изобретения
«Средство идентификации аудиовизуальной информации», в том виде, в котором оно описано в данном описании, функционирует таким образом, чтобы решить вышеописанные проблемы, обеспечивая индивидуальным клиентам осуществляемую в реальном масштабе времени на стороне сервера идентификацию объектов аудиовизуальной информации, включенных в вещание потоковой аудиовизуальной информации, такого как, например, радио-, телевизионное или Интернет-вещание. Эти объекты аудиовизуальной информации включают в себя, например, песни, рекламные ролики, музыкальные заставки, позывные станций и т.д. Вообще, это Средство идентификации аудиовизуальной информации функционирует, предоставляя, по меньшей мере, один сервер, который обеспечивает осуществляемую в реальном масштабе времени идентификацию объектов аудиовизуальной информации в потоке вещаемой аудиовизуальной информации, для индивидуальных клиентов, посредством сравнения «следов», вычисляемых каждым клиентом на основе частей потока аудиовизуальной информации, взятых в качестве образцов, с базой данных известных «характерных отпечатков». Вообще, вычисленные «следы» посылаются каждым клиентом на сервер и сравниваются либо напрямую, либо через имеющийся на стороне сервера кэш «следов», с большой базой данных хранящихся заранее вычисленных «следов» (именуемых в данном документе «характерными отпечатками», чтобы отличать их от «следов», сгенерированных клиентом), идентификационные данные которых известны.
В частности, для каждого клиента сегменты фиксированной длины из поступающего потока аудиовизуальной информации используются для вычисления через повторяющиеся промежутки времени «следов», имеющих малую размерность. В протестированном варианте осуществления изобретения такие «следы» вычислялись и посылались каждым клиентом примерно около шести раз в секунду на основе образцов потока аудиовизуальной информации, имеющих длительность приблизительно шесть секунд. Очевидно, что может быть использовано большее или меньшее количество «следов», использующих более длинные или более короткие продолжительности образцов, причем, эти параметры обычно зависят от конкретных технологий, используемых для вычисления «следов».
Вычисление «следов» на основе потока аудиовизуальной информации выполняется с использованием традиционных технологий, таких как, например, система, описанная в публикации заявки на патент США, имеющей номер US 2003/0236661 и озаглавленной «System and Method for Noise-Robust Feature Extraction» («Система и способ для шумоустойчивого выделения признака»), содержание которой включено в настоящее описание посредством этой ссылки. Вообще, такие системы функционируют, беря образцы из поступающего потока аудиовизуальной информации и вычисляя на основе взятого в качестве образца сигнала векторы-признаки малой размерности (то есть, «следы»). Вычисление «следа» на основе подвергаемых взятию образцов потоков аудиовизуальной информации известно специалистам в данной области техники и не будет здесь описываться подробно.
«Характерные отпечатки», составляющие базу данных «характерных отпечатков», обычно вычисляются тем же самым способом, что и «следы», используя те же самые алгоритмы. Однако в отличие от «следов» «характерные отпечатки» вычисляются только один раз на основе одного или более образцов каждого известного объекта аудиовизуальной информации с тем, чтобы сформировать базу данных известных «характерных отпечатков». Будучи один раз созданной, эта база данных затем просто является объектом доступа со стороны сервера без необходимости повторного вычисления «характерных отпечатков» для известных объектов аудиовизуальной информации. Однако база данных известных «характерных отпечатков» может впоследствии обновляться с внесением в нее новых «характерных отпечатков» по мере того, как создаются новые объекты аудиовизуальной информации (песни и т.д.). По этой причине предпочтительно, чтобы база данных известных «характерных отпечатков» создавалась в автономном режиме и после этого просто предоставлялась серверу, так чтобы устранить любую дополнительную вычислительную нагрузку на сервер во время операций идентификации аудиовизуальной информации, исполняемых описанным здесь Средством идентификации аудиовизуальной информации.
После этого для каждого клиента сервер использует неточное отождествление для того, чтобы определить, совпадает ли какой-либо из «следов» с каким-либо из «характерных отпечатков» в базе данных в пределах некоторой пороговой величины или допуска. Использование таких технологий неточного отождествления является предпочтительным по сравнению с технологиями точного отождествления, поскольку «следы», вычисленные какими-либо из клиентов, могут различаться вследствие шума, помех, ослабления сигнала и т.д. даже в том случае, когда «следы» вычислены на основе в точности тех же самых частей потока аудиовизуальной информации. Кроме того, использование неточного отождествления также учитывает небольшие временные смещения во взятых как образцы частях потока аудиовизуальной информации, на основе которых были вычислены «следы». В одном варианте осуществления изобретения неточное отождествление использует для повышения точности перенормализацию по «характерному отпечатку», что известно в данной области техники и, например, описано в публикации, озаглавленной «Distortion Discriminant Analysis for Audio Fingerprinting» («Распознающий искажения анализ для снятия «характерных отпечатков»»), которая имеет своими авторами: Кристофера Дж. К. Берджеса (Christopher J. C. Burges), Джона К. Платта (John C. Platt) и Соумя Джана (Soumya Jana), опубликована в IEEE Transactions on Speech and Audio Processing (Трудах Института инженеров по электротехнике и радиоэлектронике, раздел «Обработка речи и аудиоинформации»), а именно IEEE Transactions on Speech and Audio Processing, Том 11, № 3, страницы 165 - 174, май 2003 г., и содержание которой включено в настоящее описание посредством этой ссылки.
Всякий раз, когда «след», полученный от какого-нибудь клиента, совпадает с «характерным отпечатком», сервер сообщает этому клиенту идентификационные данные конкретного объекта аудиовизуальной информации, соответствующего этому «следу». В случае таких объектов аудиовизуальной информации, как песни, эти идентификационные данные обычно включают в себя такую информацию, как, например, исполнитель, наименование песни, наименование альбома, жанр и т.д. Очевидно, что если объект аудиовизуальной информации известен, то с «характерными отпечатками» в базе данных, которые используются для идентификации этого объекта аудиовизуальной информации, может быть связана любая необходимая информация.
Однако вместо того, чтобы проводить требующий больших усилий поиск в базе данных «характерных отпечатков» по каждому «следу», присланному на сервер, описанное здесь Средство идентификации аудиовизуальной информации вводит дополнительный расположенный на стороне сервера кэш, который использует тот факт, что в любой момент времени многие из сгенерированных пользователями «следов», вероятно, являются почти идентичными, если предположить, что имеется ограниченное количество потоков аудиовизуальной информации, и что обычно в любой данный момент времени имеется большое количество пользователей, принимающих один и тот же поток аудиовизуальной информации. Иначе говоря, в любой данный момент времени вероятно, что имеется множество, потенциально десятки тысяч или даже миллионы, людей, слушающих один и тот же поток аудиовизуальной информации, такой как конкретные вещательные передачи радио-, телевизионного или Интернет-вещания. Это наблюдение позволяет создать на стороне сервера кэш, который кэширует как поступающие «следы», так и результаты поиска в базе данных на предмет совпадающих с ними «характерных отпечатков».
В частности, каждый поступающий от каждого клиента «след» сначала проверяется по кэшу, который содержит в себе некоторое количество «следов». Если этот «след» в кэше отсутствует, то производится поиск в полной базе данных, и результаты этого поиска в базе данных как положительные, так и отрицательные, сохраняются в кэше вместе со «следом», присланным клиентом. Поиски как в кэше, так и в базе данных могут выполняться с использованием традиционных технологий, таких как, например, линейный перебор (то есть, последовательно) с наложением ограничений (известный способ ускорения сравнений отклонений с использованием линейного перебора).
В другом варианте осуществления изобретения поиски в базе данных ускорены за счет использования битового векторного индексирования, что описано в заявке на патент США, которая находится на рассмотрении одновременно с данной заявкой, озаглавлена «Multidimensional Data Object Searching Using Bit Vector Indices» («Поиск объектов многомерных данных с использованием битовых векторных индексов»), имеет дату подачи 23 июня 2003 года и присвоенный ей порядковый номер 10/602,438, и содержание которой включено в настоящее описание посредством этой ссылки. Этот подход, заключающийся в битовом векторном индексировании, также описан в публикации, которая озаглавлена «Indexing High Dimensional Rectangles for Fast Multimedia Identification» («Индексирование многомерных прямоугольников для быстрой идентификации мультимедиа»), имеет своими авторами Джона К. Платта (John C. Platt) и Кристофера Дж. К. Берджеса (Christopher J. C. Burges), опубликована в Microsoft Technical Report (Технический отчет компании «Microsoft») MSR-TR-2003-38, датированном 28 октября 2003 г., и содержание которой включено в настоящее описание посредством этой ссылки.
Вообще, способы битового векторного индексирования, описанные в вышеупомянутых заявке на патент США и соответствующем Техническом отчете компании «Microsoft», рассматривают проблему быстрого осуществления точечных запросов в отношении многомерных областей. Такие запросы полезны при решении становящихся все более важными задач идентификации и поиска мультимедиа, в которых различные элементы базы данных имеют различные показатели сходства. В противоположность обычному индексированию в базе данных, которое сосредоточено на индексировании для многомерных запросов о ближайшем соседнем элементе и эпсилон-интервале, индексирование для точечных запросов в отношении многомерных областей, предоставляет эффективный способ индексирования, в котором для достижения значительных выигрышей в производительности сделана ставка на сочетание избыточности и битового векторного индексирования. Было отмечено, что такие способы обеспечивают значительное повышение производительности по сравнению с характерными для реального мира способами линейного перебора.
Отрицательные результаты поиска в базе данных, то есть данные об отсутствии совпадения «следа» с «характерными отпечатками» в базе данных, не посылаются назад клиенту. Положительные результаты поиска в базе данных, то есть данные о совпадении «следа» и «характерного отпечатка», посылаются назад клиенту, чтобы идентифицировать объект аудиовизуальной информации, на основе которого был вычислен этот «след». Как отмечалось выше, поиск в кэше с целью идентифицировать совпадающие «следы» осуществляется перед поиском в базе данных «характерных отпечатков». Следовательно, если обнаружено совпадение со «следами», хранящимися в кэше, то не требуется никакого последующего поиска в базе данных, поскольку «след», хранящийся в кэше, будет либо содержать идентификационные данные связанного с ним объекта аудиовизуальной информации, либо будет просто указывать, что совпадающий «характерный отпечаток» отсутствует. В случае, когда «след» совпадает с «характерным отпечатком» в базе данных, назад клиенту будет послана любая идентификационная информация, связанная с этим совпадающим «характерным отпечатком».
Одно из преимуществ расположенного на стороне сервера кэша, предусмотренного Средством идентификации аудиовизуальной информации, заключается в том, что размер кэша относительно мал, что делает поиски в кэше чрезвычайно быстрыми. В частности размер кэша является функцией максимальной ожидаемой задержки между приемом клиентами некоторой точки в потоке аудиовизуальной информации и количества уникальных потоков аудиовизуальной информации, для которых предоставляются услуги по идентификации. Кроме того, следует отметить, что размер кэша не является функцией количества пользователей.
В частности, каждый конкретный поток вещания аудиовизуальной информации приблизительно синхронизирован по каждому клиенту, который принимает этот конкретный поток аудиовизуальной информации. Например, любые два или более клиентов, принимающих одну и ту же радиостанцию, вероятно, принимают один и тот же сигнал в пределах очень небольшого временного смещения примерно около одной секунды или около того. То же самое верно также и для большинства вещательных передач потоковой аудиовизуальной информации Интернет- или сетевого вещания.
По этой причине нет необходимости держать «следы» в кэше аудиовизуальной информации в течение промежутка времени, превышающего некоторое малое кратное максимального ожидаемого времени задержки (причем, время задержки также включает в себя максимальную ожидаемую задержку по каждому клиенту на вычисление и передачу «следа» на сервер). Иначе говоря, эта задержка представляет собой просто максимальное значение времени между приемом сервером первого «следа» для данной части конкретного объекта аудиовизуальной информации и приемом сервером последнего «следа» (от самого медленного клиента) для этой части того же самого объекта аудиовизуальной информации. Следовательно, следы необходимо держать в кэше только в течение короткого промежутка времени длительностью примерно несколько секунд. В результате отсутствует необходимость в большом кэше для хранения всех уникальных поступающих на сервер «следов».
В родственном варианте осуществления изобретения, вместо попыток определить или оценить максимальные значения времени задержки для установления сроков жизни «следов» в кэше, предлагается более простое решение, которое заключается в том, чтобы просто удалять «следы» из кэша после того, как они не совпали ни с какими поступающими «следами» в течение некоторого короткого промежутка времени длительностью примерно в одну секунду или около того. В дополнительных альтернативных вариантах осуществления изобретения также могут быть использованы другие схемы кэширования, включая, например, использование фиксированного размера кэша, который удаляет «следы» основываясь на традиционной логике удаления элементов с наиболее давним использованием.
Ввиду вышеописанной сущности изобретения, должно быть ясно, что Средство идентификации аудиовизуальной информации, описанное в данном документе, предоставляет уникальные систему и способ для обеспечения идентификации аудиовизуальной информации в реальном масштабе времени для большого количества одновременно поступающих клиентских запросов по синхронным потокам вещания аудиовизуальной информации. В дополнение к только что описанным выгодам, другие преимущества Средства идентификации аудиовизуальной информации станут очевидны из подробного описания, которое следует ниже, при рассмотрении его совместно с прилагаемыми чертежами.
Перечень фигур чертежей
Конкретные признаки, аспекты и преимущества настоящего изобретения станут более понятны при рассмотрении нижеследующего описания, прилагаемой формулы изобретения и сопровождающих их чертежей, на которых:
Фиг.1 - общая схема системы, изображающая вычислительное устройство общего назначения, которое составляет приводимую в качестве примера систему, реализующую «Средство идентификации аудиовизуальной информации» в том виде, как оно описано в данном документе.
Фиг.2 - приводимая в качестве примера структурная схема системы, которая иллюстрирует общее отношение между функциональными компонентами для реализации «Средства идентификации аудиовизуальной информации» в том виде, как оно описано в данном документе.
Фиг.3 - приводимая в качестве примера укрупненная блок-схема алгоритма, которая иллюстрирует программные модули для реализации «Средства идентификации аудиовизуальной информации» в том виде, как оно описано в данном документе.
Фиг.4 - блок-схема последовательности операций, которая иллюстрирует общее функционирование одного варианта осуществления Средства идентификации аудиовизуальной информации в том виде, как оно описано в данном документе.
Осуществление изобретения
В нижеследующем описании предпочтительных вариантов осуществления настоящего изобретения делается ссылка на прилагаемые чертежи, которые образуют часть этого описания и на которых в порядке иллюстрации показаны конкретные варианты осуществления, в которых это изобретение может быть практически реализовано. При этом понимается, что могут быть использованы и другие варианты осуществления изобретения, и в изобретение могут быть внесены структурные изменения, что не выходит за пределы объема настоящего изобретения.
1.0 Приводимая в качестве примера операционная среда:
На Фиг.1 проиллюстрирован пример подходящей вычислительной системной среды (100), в которой может быть реализовано данное изобретение. Вычислительная системная среда (100) представляет собой только один пример подходящей вычислительной среды и не имеет своей целью предложить какое-либо ограничение в отношении объема использования или функциональных возможностей изобретения. Равным образом вычислительная среда (100) не должна толковаться как имеющая какую-либо зависимость или требование, относящиеся к какому-либо компоненту или сочетанию компонентов, проиллюстрированных в приводимой в качестве примера операционной среде (100).
Изобретение способно работать и с многочисленными другими вычислительными системными средами или конфигурациями. Примерами хорошо известных вычислительных систем, сред и/или конфигураций, которые могут быть пригодны для использования с данным изобретением, включают в себя, но не в смысле ограничения, персональные компьютеры; компьютеры-серверы; переносной, портативный или мобильный компьютер или устройства связи, такие как телефонные аппараты сотовой связи и персональные цифровые секретари (PDA); многопроцессорные системы; системы, основанные на микропроцессорах; блоки управления; программируемая бытовая радиоэлектронная аппаратура, сетевые персональные компьютеры (РС), мини-компьютеры, универсальные компьютеры, распределенные вычислительные среды, которые включают в себя любые из вышеописанных систем или устройств и тому подобное.
Изобретение может быть описано в общем контексте машиноисполняемых команд, таких как программные модули, исполняемые компьютером, в сочетании с модулями аппаратного обеспечения, включающих в себя компоненты матрицы (198) микрофонов. Обычно, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., выполняющие конкретные задачи или реализующие определенные абстрактные типы данных. Изобретение также может быть практически реализовано в распределенных вычислительных средах, в которых задачи выполняются удаленными устройствами обработки данных, связанными через сеть связи. В распределенной вычислительной среде программные модули могут быть размещены как в локальных, так и в удаленных компьютерных носителях информации, включая запоминающие устройства. Согласно Фиг.1 приводимая в качестве примера система для реализации изобретения содержит вычислительное устройство общего назначения в виде компьютера (110).
Компоненты компьютера (110) могут содержать, но не в ограничительном смысле, процессор (120), системную память (130) и системную шину (121), которая соединяет различные компоненты системы, включая системную память, с процессором (120). Системная шина (121) может относиться к любому из нескольких типов структур шины, включая шину памяти или контроллер памяти, периферийную шину и локальную шину, использующие любую из множества архитектур шины. В качестве примера, но не ограничения, такие архитектуры включают в себя шину архитектуры отраслевого стандарта (ISA), шину микроканальной архитектуры (МСА), усовершенствованную шину ISA (ЕISA), локальную шину Ассоциации по стандартам в области видеоэлектроники (VESA) и шину межсоединения периферийных компонентов (PCI), также известную как мезонинная шина.
Компьютер (110) обычно содержит разнообразные машиночитаемые носители информации. Машиночитаемые носители информации могут представлять собой любые доступные носители информации, к которым может осуществлять доступ компьютер (110), и включают в себя как энергозависимые, так и энергонезависимые носители информации, как съемные, так и несъемные носители информации. В качестве примера, но не ограничения, машиночитаемые носители информации могут включать в себя компьютерные носители информации и среду передачи данных. Компьютерные носители информации включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители информации, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или другие данные.
Компьютерные носители информации включают в себя, но не в ограничительном смысле, оперативное запоминающее устройство (ОЗУ, RAM), постоянное запоминающее устройство (ПЗУ, ROM), стираемое программируемое постоянное запоминающее устройство (СППЗУ, EPROM), электрически стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ, EEPROM), флэш-память или память, использующую другую технологию; постоянное запоминающее устройство на компакт-диске (CD-ROM), универсальные цифровые диски (DVD) или другой оптический дисковый накопитель; магнитные кассеты, магнитную ленту, магнитный дисковый накопитель или другие магнитные запоминающие устройства или любой другой носитель, который может быть использован для хранения необходимой информации и к которому может осуществлять доступ компьютер (100). Среда передачи данных обычно воплощает машиночитаемые команды, структуры данных, программные модули или другие данные в сигнале, модулированном данными, таком как несущая или другой механизм переноса информации, и включает в себя любые среды доставки информации. Термин «сигнал, модулированный данными» означает сигнал, одна или более характеристик которого устанавливается или изменяется таким образом, чтобы обеспечить кодирование информации в сигнале. В качестве примера, но не ограничения, среда передачи данных включает в себя проводную среду, такую как проводная сеть или прямое кабельное соединение, и беспроводную среду, такую как акустическая, радиочастотная, инфракрасная и другие беспроводные среды. Комбинации любых упомянутых выше сред также должны быть включены в диапазон машиночитаемых носителей информации.
Системная память (130) включает в себя компьютерный носитель информации в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ПЗУ, ROM) (131) и оперативное запоминающее устройство (ОЗУ, RAM) (132). Обычно в ПЗУ (131) хранится базовая система (133) ввода/вывода (BIOS), содержащая базовые процедуры, способствующие передаче информации между элементами внутри компьютера (110), например, при запуске. ОЗУ (132) обычно содержит данные и/или программные модули, к которым можно осуществить доступ немедленно и/или которыми в текущий момент оперирует процессор (120). В качестве примера, но не ограничения, на Фиг.1 проиллюстрированы операционная система (134), прикладные программы (135), другие программные модули (136) и данные (137) программ.
Компьютер (110) также может содержать другие съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители информации. Исключительно в качестве примера на Фиг.1 проиллюстрированы накопитель (141) на жестких магнитных дисках, который осуществляет считывание с несъемных энергонезависимых магнитных носителей информации или запись на них, дисковод (151) для магнитного диска, который осуществляет считывание со съемного энергонезависимого магнитного диска (152) или запись на него, и дисковод (155) для оптического диска, который осуществляет считывание со съемного энергонезависимого оптического диска (156), такого как компакт-диск CD-ROM, или других оптических носителей информации или запись на них. Другие съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители информации, которые могут быть использованы в этой приводимой в качестве примера операционной среде, включают в себя, но не в ограничительном смысле, кассеты с магнитной лентой, карточки флэш-памяти, универсальные цифровые диски, цифровую видеомагнитофонную ленту, твердотельное ОЗУ, твердотельное ПЗУ и тому подобное. Накопитель (141) на жестких магнитных дисках обычно подсоединен к системной шине (121) посредством интерфейса несъемной памяти, такого как интерфейс (140), а дисковод (151) для магнитного диска и дисковод (155) для оптического диска обычно подсоединены к системной шине (121) посредством интерфейса съемной памяти, такого как интерфейс (150).
Дисководы и соответствующие им компьютерные носители информации, описанные выше и проиллюстрированные на Фиг.1, обеспечивают хранение машиночитаемых команд, структур данных, программных модулей и других данных для компьютера (110). Например, на Фиг.1 накопитель (141) на жестких магнитных дисках проиллюстрирован как хранящий операционную систему (144), прикладные программы (145), другие программные модули (146) и данные (147) программ. Следует отметить, что эти компоненты могут либо быть идентичными операционной системе (134), прикладным программам (135), другим программным модулям (136) и данным (137) программ, либо отличаться от них. Операционной системе (144), прикладным программам (145), другим программным модулям (146) и данные (147) программ даны здесь другие ссылочные позиции для того, чтобы проиллюстрировать тот факт, что, как минимум, они являются другими копиями. Пользователь может осуществлять ввод команд и информации в компьютер (110) посредством устройств ввода, таких как клавиатура (162) и координатно-указательное устройство (161), обычно именуемое мышью, шаровым манипулятором или сенсорной панелью.
В число других устройств ввода (не показанных на чертеже) могут входить джойстик, игровая панель, спутниковая антенна, сканер, радиоприемник и телевизионный приемник или приемник видеовещания или подобные им устройства. Часто эти и другие устройства ввода соединены с процессором (120) посредством проводного или беспроводного интерфейса (160) пользовательского ввода, подсоединенного к системной шине (121), но они могут быть соединены с процессором посредством другого интерфейса и других структур шины, таких, например, как параллельный порт, игровой порт, универсальная последовательная шина (USB), интерфейс стандарта IEEE 1394 (стандарт Института инженеров по электротехнике и радиоэлектронике), интерфейс Bluetooth™, беспроводный интерфейс стандарта IEEE 802.11(стандарт Института инженеров по электротехнике и радиоэлектронике) и т.д. Помимо этого, компьютер (110) может также содержать устройство ввода речи или аудиоинформации, такое как микрофон или матрица (198) микрофонов, равно как и громкоговоритель (197) или другое устройство вывода, соединенных посредством аудиоинтерфейса (199), также включающего в себя традиционные проводные или беспроводные интерфейсы, такие, например, как параллельный интерфейс, последовательный интерфейс, интерфейс USB, интерфейс IEEE 1394, интерфейс Bluetooth™ и т.д.
Также к системной шине (121) посредством интерфейса, такого как видеоинтерфейс (190), подсоединен монитор (191) или другой тип устройства отображения. В дополнение к монитору компьютеры могут также содержать другие периферийные устройства вывода, такие как принтер (196), который может быть подсоединен посредством периферийного интерфейса (195) вывода.
Компьютер (110) может функционировать в сетевой среде, используя логические соединения с одним или более удаленными компьютерами, такими как удаленный компьютер (180). Удаленный компьютер (180) может представлять собой персональный компьютер, сервер, маршрутизатор, сетевой персональный компьютер (РС), одноранговое устройство или другой узел общей сети и обычно включает в себя многие или все элементы, описанные выше в отношении компьютера (110), хотя на Фиг.1 проиллюстрировано только запоминающее устройство (181). Логические соединения, изображенные на Фиг.1, включают в себя локальную сеть (LAN) (171) и глобальную сеть (WAN) (173), но могут также включать в себя и другие сети. Такие сетевые среды часто используются в офисах, сетях масштаба предприятия, интрасетях и в сети Интернет.
При использовании в сетевой среде LAN компьютер (110) соединен с LAN (171) посредством сетевого интерфейса или адаптера (170). При использовании в сетевой среде WAN компьютер (110) обычно содержит модем (172) или другое средство для установления связи через сеть WAN (173), такую как сеть Интернет. Модем (172), который может быть внутренним или внешним, может быть подсоединен к системной шине (121) посредством интерфейса (160) пользовательского ввода или другого соответствующего механизма. В сетевой среде программные модули, изображенные в отношении компьютера (110), или их части могут храниться в удаленном запоминающем устройстве. В качестве примера, но не ограничения, Фиг.1 изображает удаленные прикладные программы (185), как размещенные на запоминающем устройстве (181). Следует понимать, что показанные сетевые соединения приводятся в качестве примера и могут быть использованы и другие средства установления линии связи между компьютерами.
Приводимая в качестве примера операционная среда рассмотрена, оставшаяся часть этого описания будет посвящена рассмотрению программных модулей и процессов, воплощающих Средство идентификации аудиовизуальной информации, которое обеспечивает клиентам осуществляемую в реальном масштабе времени на стороне сервера идентификацию объектов аудиовизуальной информац