что такое program association table pat

Структура транспортного потока MPEG

Что такое формат MPEG?. В состав чипсета MPEG энкодера в действительности входит аудио-энкодер и видео-энкодер. Видео-энкодер производит поток MPEG видеоданных, аудио-энкодер производит поток MPEG аудио данных. Эти потоки называются «элементарные MPEG потоки» (MPEG Elementary Streams или кратко ES). Оба аудио и видео элементарные (ES) потоки разбиты на пакеты (например, для видео-декодера пакетом может быть кадр изображения). Результирующие потоки называются MPEG-пакетизированные элементарные потоки (MPEG Packetized Elementary Streams или кратко PES), которые, в свою очередь, мультиплексирует входящий в состав энкодера мультиплексер транспортного потока (Transport Stream Multiplexer). Мультиплексер производит транспортный поток (Transport Stream, TS), который содержит аудио и видео PES потоки вместе с данными синхронизации.

Аудио-данные, видео-данные и данные синхронизации на выходе энкодера вместе уже являются «программой». Данные синхронизации определяют скорость передачи данных и необходимы впоследствии для точного декодирования аудио- и видео-данных программы.

Транспортный поток состоит из TS пакетов длиной 188 байт. Каждый из TS пакетов содержит заголовок и полезную нагрузку данных, например, аудио-, видео-данные, телетекст. Заголовок каждого пакета содержит информацию о содержании этого пакета и является важным для демультиплексера TS. Заголовок начинается со слова синхронизации (47 в hex формате), используемого для распознавания начала пакета. Далее следуют два байта, которые содержат некоторые необходимые флаги (flags) и идентификатор пакета (PID).

PID-код содержит важнейшую информацию о пакете и может быть в диапазоне от 0 до 8191 и используется для идентификации содержания пакета. Например, транспортный поток может содержать пакетизированные элементарные видео-потоки (PES) в пакетах с PID 100, аудио-PES в пакетах с PID 101 и данные синхронизации, принадлежащие к этим потокам в пакетах с PID 102. Но для вторых видео-PES данные синхронизации могут быть в пакетах с PID 200. Итак, в одном транспортном потоке может передаваться много элементарных потоков PES. Но как декодер узнает, какие пакеты (PID-коды) принадлежат определенной программе? Именно для этой цели транспортный поток содержит сервисную информацию (Service Information, SI).

Сервисная информация содержится в нескольких специальных таблицах. Эти таблицы передаются как отдельные потоки, подобно видео- и аудио-потокам. Большинство потоков таблиц сервисной информации имеют фиксированный известный ID, так что декодер всегда может найти их. Ниже приведены наиболее важные SI таблицы с их PID – кодами.

Наименование таблицыPID
Таблица привязки программы PAT, Program Association Table00h
Таблица сетевой информации NIT, Network Information Table10h
Таблица групп программ BAT, Bouquet Association Table11h
Таблица описания сервисной информации SDT, Service Descriptor Table11h
Таблица событий EIT, Event Information Table12h
Таблица запущенных программ RST, Running Status Table13h
Таблица смещения времени TOT, Time Offset Table14h
Таблица структуры программпеременный код
PMT, Program Map Table10h..1FFEh

Наиболее важными являются PAT и PMT таблицы. Таблица PAT содержит названия всех программ в данном потоке и пакетные идентификаторы (PID-коды) для PMT этих программ (таблиц структуры программ). Если ресивером принимается неизвестный транспортный поток, то он вначале дожидается TS пакетов с PID=0, содержащих таблицу PAT, затем, в свою очередь, PAT таблица сообщает ресиверу коды PID таблицы структуры программ PMT в этом потоке.

Другие таблицы сервисной информации SI дают дополнительную информацию о вещателе, транспортном потоке, программах и о событиях в программах.

Кроме таблиц PAT и РМТ, существует еще одна чрезвычайно важная таблица – таблица условного доступа (Conditional Access Table, CAT), которая передается при PID = 0001, когда одна или более программ уплотненного потока скремблируются (шифруются).

Для мониторинга содержания транспортного потока используются так называемые анализаторы транспортного потока, которые позволяют оператору в процессе настройки мультиплексоров фильтровать ненужные сервисы. Для инжекции в транспортный поток необходимой оператору сервисной информации используются PSI/SI генераторы. Поскольку сервисная информация передается в TS как последовательная серия иерархических таблиц, PSI/SI генераторы называют ещё «карусельными» генераторами.

Если у Вас возникли какие либо вопросы, обращайтесь по E-mail: что такое program association table pat. infomail. что такое program association table pat фото. что такое program association table pat-infomail. картинка что такое program association table pat. картинка infomail. или по тел.: (495) 221-81-88. Наши специалисты дадут Вам полную исчерпывающую информацию по любому из интересующих Вас вопросов.

Источник

Транспортный поток MPEG TS: основные понятия

В данной статье мы рассмотрим основные понятия для MPEG TS, который в настоящее время является стандартом и используется в качестве канального уровня в большинстве систем наземного цифрового телевизионного вещания, использующих передачу пакетных данных в транспортных потоках.

Принимая во внимание то, что структура транспортного потока опирается на некоторые фундаментальные концепции вещания, мы кратко рассмотрим их перед тем, как приступить к MPEG TS.

Вещание и необходимость в сервисах

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

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

С развитием цифровой передачи мы перестаем использовать концепцию аналоговых данных, и начинаем использовать концепцию передачи битов. Это означает, что в частотном канале, котором ранее передавались видео и аудио сигналы, теперь передаются двоичные данные (обратите внимание, что эти данные передаются последовательно). Использование бита в качестве единицы передаваемых данных дает гибкость для передачи множества типов файлов, что подразумевает снятие ограничения, при котором в канале передавался только один ТВ канал, один аудиоканал и т.д. Теперь канал – это пакет байтов, которые вещатель может распределять, чтобы передавать пользователям множество типов данных. Однако, как мы можем послать все эти данные без их смешивания. Ответ на этот вопрос – мультиплексирование с временным разделением каналов и MPEG TS, который был разработан для возможности такого способа передачи.

Что такое MPEG TS?

MPEG TS определяет канальный уровень, а также уровни данных сервисной информации (с точки зрения модели OSI, MPEG TS охватывает уровни от канального до транспортного). Вся передача данных выполняется с использованием пакетов фиксированного размера, известных как «TS-пакеты». TS пакеты – это базовые кирпичики, в которых передаются все данные канала, а кроме того, они позволяют реализовать временное мультиплексирование, необходимое для передачи.

Структура TS пакета изображена на рисунке ниже:

что такое program association table pat. ff84d11f29efe1caac022371ed818557a0b544e9. что такое program association table pat фото. что такое program association table pat-ff84d11f29efe1caac022371ed818557a0b544e9. картинка что такое program association table pat. картинка ff84d11f29efe1caac022371ed818557a0b544e9. Структура TS пакета

Любая передача в канале осуществляется путем отправки одного TS пакета за другим (минимальный блок передачи данных составляет 184 байта). Как было показано на рисунке выше, пакет состоит из двух частей:

Полезная нагрузка – это просто двоичные данные для верхних уровней; уровней, которые выходят за рамки темы данной статьи.

4 байта заголовка разделены на несколько секций:

В этой таблице наиболее важными полями являются PID и счетчик непрерывности. В следующем разделе мы кратко рассмотрим их.

Мультиплексирование данных

В начале статьи я упомянул, что одной из ключевых особенностей MPEG TS является возможность мультиплексирования данных. Но как достигается это волшебство? Ну, всё связано с PID.

Значение PID является ключом, который используется в качестве идентификатора типа данных, которые идут через поток. Это означает, что я могу выбрать PID для идентификации видеосигнала, другой PID для идентификации звука для этого видео и, наконец, третий PID, который связывает видео и звук (также известный как таблица структуры программы или «Program Map Table», PMT). Со всеми этими данными приемник может реально показать видео и связанный с ним звук, если он знает, как обнаружить PMT пакеты. И это всё? Конечно, нет! Таким же образом я могу создать множество пар пакетов видео и звука с их PMT и передавать всех их через тот же канал, что дает нам возможность создать мультиплекс из нескольких ТВ каналов, использующих один канал передачи данных! Конечно, приемнику будет нужен четвертый тип пакета, чтобы узнать, какие программы идут в потоке: также известный как таблица программ или «Program Association Table», PAT.

На следующем рисунке приведена идея мультиплексирования программ:

что такое program association table pat. d9277fe636706609b5919404b21a71e43937f4b1. что такое program association table pat фото. что такое program association table pat-d9277fe636706609b5919404b21a71e43937f4b1. картинка что такое program association table pat. картинка d9277fe636706609b5919404b21a71e43937f4b1. Мультиплексирование программ в MPEG TS

На диаграмме выше, у нас три ТВ канала передаются в одном потоке. Все показанные таблицы являются более или менее связанными группами данных. Обратите внимание, что в этом примере, если приемник хочет знать все программы в канале, ему необходимо просто прочитать PAT (которая хоть в данном примере и передается в одном пакете, но это не всегда так делается). Таким образом, приемник знает все программы, которые есть в наличии, и если он хочет настроиться на одну из них, ему просто необходимо прочитать PMT пакет и начать фильтровать все пакеты с необходимыми видео и аудио, отклоняя видео и звук ненастроенных каналов. В заключение отметим, что PID позволяет мультиплексировать данные, а также предоставляет приемнику механизм фильтрации данных, которые необходимо использовать.

MPTS пакеты несут только 184 байта данных полезной нагрузки. Любой человек, который когда-либо использовал видео или аудио файлы, знает, что этот объем данных довольно мал, чтобы переносить какой-либо объем видео/аудио данных. Таким образом, транспортный уровень отвечает за перенос этой информации (уровень выше MPTS), но всё же мы должны знать, как собрать данные полезной нагрузки, и, самое главное, знать, как определить, когда данные полезной нагрузки были потеряны (нам необходима способность обнаружения случаев потери пакета данных!). Механизм обнаружения потери данных предоставляется счетчиком непрерывности.

Счетчик непрерывности (Continuity counter, CC) – это счетчик от 0 до 15, связанный с PID (CC относится только к PID, в котором он был передан). Он увеличивается на единицу каждый раз, когда в поток передается пакет связанного с ним PID. При таком подходе обнаружение потери пакета осуществляется путем анализа потерь значений в циклическом счетчике в принятых пакетах. Таким образом, если в циклическом счетчике потеряется значение, уровень TS сможет сообщить своему верхнему уровню, что он потерял часть переданных данных, позволяя верхнему уровню выбрать действие, которое необходимо выполнить в этом случае (в большинстве случаев происходит отбрасывание поврежденной информации).

Следующие значения CC показывают пример потери данных, которая обнаруживается благодаря нарушению в последовательности значений счетчика непрерывности (для примера мы допустим, что 4 видео TS пакета представляют собой один видео кадр, и, если кадр будет потерян, то декодер выведет на экран сообщение «No signal!»). Обратите внимание, что CC является циклическим.

что такое program association table pat. d7734b6862a54ff6e25a8525d07540880aa345df. что такое program association table pat фото. что такое program association table pat-d7734b6862a54ff6e25a8525d07540880aa345df. картинка что такое program association table pat. картинка d7734b6862a54ff6e25a8525d07540880aa345df. Счетчик непрерывности (Continuity counter, CC)

Вот и всё! Надеюсь, статья оказалась вам полезной. Оставляйте комментарии!

Источник

Что такое program association table pat

Войти

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

[userinfo|livejournal userinfo]
[archive|journal archive]
DVB. Часть 11. Примеры таблиц. PAT[May. 15th, 2008|07:55 am]

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

Таблицы приводятся целиком, без разбивки на отдельные TS-пакеты, в которых они передавались.

Program Association Table (PAT):

Из этого дампа мы можем узнать следующее:
Таблица состоит из одной секции (Last_Section_number = 0) и эту самую секцию (Section_number = 0) мы и рассматриваем.

Таблица передавалась с PIDом 0 (собственно, именно по этому признаку я её и вылавливал).

Table_ID = 0, это значение определено стандартом для PAT, что позволяет дальнейшее содержимое интерпретировать именно как PAT.

Transport_Stream_ID = 2001. Каждому мультиплексированному потоку (фактически, транспондеру) назначается уникальный (в пределах группы мультиплексированных потоков, относящихся к одному вещателю) номер, позволяющий отличить его от других потоков. Данная таблица относится к потоку номер 2001. Дальнейшая информация о нём может быть приведена в NIT, см. следующий выпуск.

current_next_indicator = 1, это версия таблицы, действующая в настоящее время (в таблице для следующего периода этот флаг был бы равен 0).

Version_number = 21, но поскольку я не следил специально за сменами версий, я не могу сказать, как давно существует эта версия и как часто они меняются.

Далее в таблице идут номера программ и PIDы их PMT (program map tables).

Номер программы 0 зарезервирован для указания NIT (network information table), которая идёт на обычном (хоть и не оговорённом стандартом) PIDе 0x0010.

Источник

Что такое program association table pat

НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

СИСТЕМА ПЕРЕДАЧИ ДАННЫХ ПОЛЬЗОВАТЕЛЯ В ЦИФРОВОМ ТЕЛЕВИЗИОННОМ ФОРМАТЕ

Digital television format user’s data broadcasting system. Basic parameters

Дата введения 2007-01-01

Предисловие

1 РАЗРАБОТАН Федеральным государственным унитарным предприятием «Ордена Трудового Красного Знамени Научно-исследовательский институт радио» (ФГУП НИИР)

2 ВНЕСЕН Министерством информационных технологий и связи Российской Федерации

3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 22 ноября 2006 г. N 261-ст

4 Настоящий стандарт разработан с учетом основных нормативных положений Европейского Института по стандартизации в области телекоммуникаций (ETSI): EN 301 192 v.12.1 (1999)*

6 ПЕРЕИЗДАНИЕ. Май 2020 г.

Введение

Использование цифровых технологий для передачи телевизионных программ дает большие возможности для передачи достаточно большого объема данных пользователя.

Настоящий стандарт рассматривает задачи по организации систем передачи данных пользователя по сетям, совместимым со стандартами на цифровое телевизионное вещание, и разработан на основе Рекомендаций Международного союза электросвязи (секторов МСЭ-Т и МСЭ-Р) и Европейских стандартов ETSI.

1 Область применения

Настоящий стандарт распространяется на систему передачи данных пользователя по сети, совместимой со стандартами на цифровое телевизионное вещание.

Стандарт применяют при организации сетей передачи данных пользователя по сетям цифрового телевизионного вещания.

2 Нормативные ссылки

В настоящем стандарте использованы нормативные ссылки на следующие стандарты:

ГОСТ 17657 Передача данных. Термины и определения

ГОСТ 22670 Сеть связи цифровая интегральная. Термины и определения

ГОСТ Р 52210 Телевидение вещательное цифровое. Термины и определения

3 Термины и определения

В настоящем стандарте применены термины по ГОСТ 17657, ГОСТ 22670 и ГОСТ Р 52210, а также следующие термины с соответствующими определениями:

3.1 данные пользователя: Данные, передаваемые по цифровому телевизионному каналу вместе с видео-, аудио- и сервисной информацией и не зависящие от передаваемых телевизионных программ.

3.2 дейтаграмма: Пакет данных пользователя, передаваемый в сети и содержащий адреса и полезные данные.

3.3 декодер: Устройство, преобразующее сигнал в первоначальную форму, которую он имел до прохождения через кодер.

3.4 демультиплексор: Устройство, разделяющее цифровой поток на компоненты.

3.5 дескриптор: Средство описания мультимедийного контента.

3.6 идентификатор пакета; PID (Packet Identifier): 13-битовый указатель в заголовке пакета транспортного потока MPEG-2, указывающий на передачу в данном пакете определенного элементарного потока.

3.7 контент: Содержание, мультимедийный продукт (например, телевизионная программа).

3.8 контент-провайдер: Организация, обеспечивающая предоставление контента.

3.9 интерфейс: Стандартизованная или рекомендуемая совокупность параметров сигналов в точке стыка.

3.10 нулевые пакеты (стаффинговые пакеты): Пакеты транспортного потока, не переносящие информацию и служащие для поддержания скорости потока; состоят из одних единиц и имеют PID 8191 (что такое program association table pat. P00390000. что такое program association table pat фото. что такое program association table pat-P00390000. картинка что такое program association table pat. картинка P00390000.).

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

3.12 ремультиплексирование: Ввод в транспортный поток другого транспортного потока.

3.13 сервисная информация: Информация о службе, позволяющая принимать данные этой службы.

3.14 статистический ремультиплексор пользователя: Устройство, выявляющее наличие в системном транспортном потоке стаффинговых пакетов и помещающее вместо них пакеты с информацией пользователя.

3.16 МАС-адрес: 48-битовый адрес порта или прибора в локальной вычислительной сети.

3.18 транспортный поток: В MPEG-2 это способ организации многопрограммного цифрового потока в виде коротких пакетов фиксированной длины, что позволяет асинхронным образом передавать несколько ТВ-программ и другие данные, не связанные общей временной базой.

3.19 фильтр PID: Устройство, выделяющее из транспортного потока пакеты, имеющие заданные идентификаторы пакетов данных (PID).

4 Сокращения

В настоящем стандарте применены следующие сокращения:

5 Основные параметры системы передачи данных пользователя в цифровом телевизионном формате

5.1 Методы передачи данных пользователя в цифровом телевизионном формате

Данные пользователя передаются в цифровом телевизионном формате в соответствии с EN 301 192 [1] методом конвейерной пересылки данных (Data piping) и методом многопротокольной инкапсуляции (Multiprotocol Encapsulation).

5.1.1.1 Асинхронные данные вводятся непосредственно в полезную нагрузку транспортных пакетов.

5.1.1.2 Конвейерная пересылка данных отличается включением одного или более дескрипторов data_broadcast_descriptor в сервисную информацию по EN 300 468 [2].

5.1.1.3 Каждый дескриптор должен быть связан с конкретным каналом конвейерной пересылки данных посредством идентификатора component_tag.

5.1.1.4 Data_broadcast_descriptor используется следующим образом:

5.1.2.1 Данные и заголовки различных протоколов (в основном TCP/IP) встраиваются внутрь транспортных пакетов MPEG-2.

5.1.2.2 Служба, использующая передачу данных методом многопротокольной инкапсуляции, индицируется дескриптором типа потока stream_type_descriptor, располагаемым либо в таблице описания службы SDT (Service Description Table), либо в таблице информации о событиях EIT (Event Information Table).

Источник

Что такое program association table pat

В телевещании программой (program) или сервисом (service) называется набор логически связанных элементарных потоков данных: аудио-, видео-, телетекст, субтитры, а также дополнительная информация типа расписания передач, названия программы, названия вещателя (провайдера), языков аудиосопровождения, данные для условного доступа к программам и т.п.

Видеопоток в телепрограмме обычно один, реже несколько (например, при трансляции спортивных состязаний с нескольких камер). Если в программе нет ни одного видеопотока, то получается радиопрограмма.

Хотя бы один аудиопоток в программе обычно есть, иногда их бывает несколько, например, на разных языках или, скажем, стерео и многоканальный звук в фильмах. Ни одного аудиопотока в программе бывает редко, хотя теоретически и такой вариант возможен.

Аудио- и видеопотоки (для MPEG2) состоят из PES-пакетов, порезанных на кусочки по 184 байта и разложенных по TS-пакетам.

Таблица состоит из одной или более секций (section). Каждая секция содержит 8-битовый идентификатор таблицы, определяющий её тип, порядковый номер секции и общее количество секций в таблице. Поскольку таблицы могут быть довольно большими, а TS-пакеты могут во время передачи искажаться, такая схема позволяет приёмнику быстрее собрать полную таблицу, дождавшись повторной передачи только нужной секции, а не всей таблицы целиком. [Здесь и далее под словом «приёмник» подразумевается не столько железо, сколько программа, которая управляет его работой]. Для обнаружения искажений при передаче секции снабжаются контрольными суммами (CRC32).

Идентификаторы некоторых таблиц определены в стандартах ISO 13818 и EN 300 468:

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

Содержимое таблиц может время от времени меняться. Чтобы приёмник мог распознать изменения, предусмотрено две возможности. Во-первых, в таблицах может присутствовать флаг «current/next indicator», указывающий, относится ли таблица к настоящему или к следующему периоду, и позволяющий одновременно передавать две разные версии одной таблицы. Имея данные о следующем периоде, приёмник может заранее произвести некоторые подготовительные действия.

Кроме того, в таблицах есть 5-битовый номер версии, который последовательно увеличивается всякий раз, когда данные в таблице изменяются. По достижении максимального значения номер версии сбрасывается в 0 и далее опять увеличивается. Обнаружив изменение номера версии, приёмник может предпринять какие-нибудь действия, например, автоматически показать пользователю название очередной передачи, или перечитать список каналов транспондера.

Кроме аудио, видео и служебных данных, элементарные потоки могут использоваться для передачи IP-пакетов, данных от интерактивных сервисов и прочего.

Чтобы данные от разных элементарных потоков при мультиплексировании не перепутались, каждому элементарному потоку присваивается уникальный (в пределах мультиплексированного потока) номер, который называется PID (packet identifier). Этот номер указывается в заголовках всех пакетов, относящихся к данному элементарному потоку. По значению этого поля демультиплексор в приёмнике и выделяет нужные элементарные потоки.

PID имеет длину 13 бит и может принимать значения от 0x0000 до 0x1FFF.
Значение 0x1FFF никогда не присваивается никакому реальному потоку и используется, когда в служебных таблицах требуется указать PID потока, а реально поток не существует (что-то типа NULL).

Набор таблиц, необходимый и достаточный для демультиплексирования и показа программ, называется PSI (program specific information). К нему относятся следующие таблицы:

В PAT (program association table), которая всегда передаётся с PID’ом 0x0000, находится список программ в виде номеров программ и номеров их PMT (program map tables). Считав PMT от каждой программы, приёмник получает номера PID’ов, с которыми передаются собственно аудио-, видео- и потоки данных условного доступа к этой программе.

Обычно для выбора и показа программы этих данных достаточно.

Кроме ссылок на PMT, в PAT присутствует также ссылка на NIT (network information table). В NIT описываются параметры транспондеров (частота, модуляция, ширина полосы, и т.п.) и передающихся с них мультиплексированных потоков (номер, идентификатор сети, номера и типы программ и пр.) Это позволяет приёмнику, настроившись хотя бы на один транспондер, автоматически узнать параметры других. Очевидно, для выборки данных о программах и их показа NIT не нужна. Тем не менее, по стандарту она включена в состав PSI.

Кроме вышеперечисленных, существуют и другие таблицы, формально не включены в состав PSI, но позволяют получить дополнительные данные о программах для автоматической группировки и более удобного выбора пользователем. В частности, интерес представляет SDT (service description table, PID=0x0011, table_id=0x42 для текущего потока и 0x46 для других потоков), в которой содержатся названия программ. Без содержащихся в этой таблице данных программы пришлось бы обозначать исключительно числовыми идентификаторами или редактировать названия вручную, что не слишком удобно для пользователя.

Дальнейшие примеры с комментариями помогут несколько прояснить эту запутанную картину.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *