# Translation for gst-plugins-good messages to Russian
# This file is put in the public domain.
#
# Артём Попов <artfwo@gmail.com>, 2009.
# Pavel Maryanov <acid_jack@ukr.net>, 2009.
# Yuri Kozlov <yuray@komyakino.ru>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2013-07-11 15:56+0200\n"
"PO-Revision-Date: 2011-04-26 21:13+0400\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@mx.ru>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"

msgid "Jack server not found"
msgstr ""

msgid "Failed to decode JPEG image"
msgstr "Не удалось декодировать JPEG-изображение"

#. TRANSLATORS: 'song title' by 'artist name'
#, c-format
msgid "'%s' by '%s'"
msgstr "«%s» исполняет «%s»"

msgid "Could not connect to server"
msgstr "Не удалось соединиться с сервером"

msgid "No URL set."
msgstr "URL не задан."

msgid "Server does not support seeking."
msgstr "Сервер не поддерживает поиск."

msgid "Could not resolve server name."
msgstr "Не удалось определить имя сервера."

msgid "Could not establish connection to server."
msgstr "Не удалось установить соединение с сервером."

msgid "Secure connection setup failed."
msgstr "Не удалось настроить защищённое соединение."

msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr "Произошла сетевая ошибка или сервер неожиданно закрыл соединение."

msgid "Server sent bad data."
msgstr "Сервер прислал некорректные данные."

msgid "Internal data stream error."
msgstr "Внутренняя ошибка потока данных."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr ""
"Входящие аудио-данные отсутствуют или недействительны, поток AVI будет "
"повреждён."

msgid "This file contains no playable streams."
msgstr "Файл не содержит воспроизводимых потоков."

msgid "This file is invalid and cannot be played."
msgstr "Файл некорректен и не может быть воспроизведён."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr ""

msgid "This file is corrupt and cannot be played."
msgstr "Файл повреждён и не может быть воспроизведён."

msgid "Invalid atom size."
msgstr "Неверный атомарный размер."

msgid "This file is incomplete and cannot be played."
msgstr "Файл не полон и не может быть воспроизведён."

msgid "The video in this file might not play correctly."
msgstr "Видео из этого файла может быть воспроизведено некорректно."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""
"Файл содержит слишком много потоков. Будет воспроизведёно только первых %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Ни один поток не поддерживается. Возможно требуется установка "
"дополнительного модуля GStreamer RTSP для потоков Real media."

msgid ""
"No supported stream was found. You might need to allow more transport "
"protocols or may otherwise be missing the right GStreamer RTSP extension "
"plugin."
msgstr ""
"Ни один поток не поддерживается. Возможно требуется разрешить дополнительные "
"протоколы передачи или же отсутствует правильный модуль GStreamer RTSP."

msgid "Internal data flow error."
msgstr "Внутренняя ошибка потока данных."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Не удалось открыть аудио-устройство для воспроизведения. Устройство "
"используется другим приложением."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Не удалось открыть аудио-устройство для воспроизведения. Отсутствуют права "
"доступа к устройству."

msgid "Could not open audio device for playback."
msgstr "Не удалось открыть аудио-устройство для воспроизведения."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Не удалось открыть аудио-устройство для воспроизведения. Данная версия Open "
"Sound System не поддерживается этим элементом."

msgid "Playback is not supported by this audio device."
msgstr "Воспроизведение не поддерживается данным аудио-устройством."

msgid "Audio playback error."
msgstr "Ошибка воспроизведения аудио."

msgid "Recording is not supported by this audio device."
msgstr "Запись не поддерживается данным аудио-устройством."

msgid "Error recording from audio device."
msgstr "Ошибка записи с аудио-устройства."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Не удалось открыть аудио-устройство для записи. Отсутствуют права доступа к "
"устройству."

msgid "Could not open audio device for recording."
msgstr "Не удалось открыть аудио-устройство для записи."

msgid "Record Source"
msgstr "Устройство записи"

msgid "Microphone"
msgstr "Микрофон"

msgid "Line In"
msgstr "Линейный вход"

msgid "Internal CD"
msgstr "Внутренний CD"

msgid "SPDIF In"
msgstr "Вход SPDIF"

msgid "AUX 1 In"
msgstr "Вход AUX 1"

msgid "AUX 2 In"
msgstr "Вход AUX 2"

#, fuzzy
msgid "Codec Loopback"
msgstr "Петля"

#, fuzzy
msgid "SunVTS Loopback"
msgstr "Петля"

msgid "Volume"
msgstr "Уровень"

msgid "Gain"
msgstr "Уровень"

msgid "Monitor"
msgstr "Мониторинг"

msgid "Built-in Speaker"
msgstr "Внутренний динамик"

msgid "Headphone"
msgstr "Наушник"

msgid "Line Out"
msgstr "Линейный выход"

msgid "SPDIF Out"
msgstr "Выход SPDIF"

msgid "AUX 1 Out"
msgstr "Выход AUX 1"

msgid "AUX 2 Out"
msgstr "Выход AUX 2"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Ошибка чтения %d байт из устройства «%s»."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""
"Не удалось создать список видео-форматов, с которыми может работать "
"устройство «%s»"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Не удалось распределить буферы устройства «%s»"

#, fuzzy, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr ""
"Драйвер устройства «%s» не поддерживает ни один из известных методов захвата."

#, fuzzy, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr ""
"Драйвер устройства «%s» не поддерживает ни один из известных методов захвата."

#, fuzzy, c-format
msgid "Device '%s' does not support video capture"
msgstr "Устройство «%s» не является устройством вывода."

#, fuzzy, c-format
msgid "Device '%s' is busy"
msgstr "Устройство «%s» не является устройством вывода."

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Устройство «%s» не может осуществлять захват в разрешении %dx%d"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Устройство «%s» не может осуществлять захват в указанном формате"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Не удалось получить параметры устройства «%s»"

#, fuzzy
msgid "Video device did not accept new frame rate setting."
msgstr "Устройство видео-захвата не приняло новый параметр кадровой частоты."

msgid "Video device could not create buffer pool."
msgstr ""

#, fuzzy, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "Ошибка получения установок тюнера %d устройства «%s»."

#, fuzzy, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Ошибка чтения %d байт из устройства «%s»."

#, fuzzy, c-format
msgid "Device '%s' is not a tuner."
msgstr "Устройство «%s» не является устройством вывода."

#, fuzzy, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Не удалось выбрать вход %d для устройства %s."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Не удалось выбрать вход %d для устройства %s."

#, fuzzy, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "Ошибка получения мощности сигнала для устройства «%s»."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Не удаётся распознать устройство «%s»."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Ошибка получения возможностей устройства «%s»: драйвер устройства "
"несовместим с v4l2. Проверьте, не использует ли устройство драйвер v4l1."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Ошибка запроса атрибутов входа %d устройства %s"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "Ошибка получения установок тюнера %d устройства «%s»."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Ошибка запроса стандарта устройства «%s»."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Ошибка получения атрибутов управления устройства «%s»."

#, c-format
msgid "This isn't a device '%s'."
msgstr "«%s» не является устройством."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Не удалось открыть устройство «%s» для чтения и записи."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Устройство «%s» не является устройством захвата."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Устройство «%s» не является устройством вывода."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Ошибка установки стандарта устройства «%s»."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Ошибка получения текущей частоты тюнера устройства «%s»."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr "Ошибка установки текущей частоты тюнера устройства «%s» в %lu Гц."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Ошибка получения мощности сигнала для устройства «%s»."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "Ошибка получения значения управляющего параметра %d устройства «%s»."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr ""
"Ошибка установки значения %d для управляющего параметра %d устройства «%s»."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Не удалось определить активный вход устройства «%s». Возможно, это радио-"
"устройство"

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Не удалось определить активный выход устройства «%s». Возможно, это радио-"
"устройство"

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Не удалось выбрать выход %d для устройства %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr ""
"Изменение разрешения видео во время выполнения не поддерживается в настоящий "
"момент."

msgid "Cannot operate without a clock"
msgstr "Операция невозможна без часов"

#~ msgid "Got unexpected frame size of %u instead of %u."
#~ msgstr "Получен неожиданный размер кадра: %u вместо %u."

#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr "Ошибка при попытке получения кадров видео с устройства «%s»."

#~ msgid "Failed after %d tries. device %s. system error: %s"
#~ msgstr "Ошибка после %d попыток. Устройство: %s. Системная ошибка: %s"

#~ msgid "Bass"
#~ msgstr "Низкие"

#~ msgid "Treble"
#~ msgstr "Высокие"

#~ msgid "Synth"
#~ msgstr "Синтезатор"

#~ msgid "PCM"
#~ msgstr "PCM"

#~ msgid "Speaker"
#~ msgstr "Внутренний динамик"

#~ msgid "Line-in"
#~ msgstr "Линейный вход"

#~ msgid "CD"
#~ msgstr "CD"

#~ msgid "Mixer"
#~ msgstr "Микшер"

#~ msgid "PCM-2"
#~ msgstr "PCM-2"

#~ msgid "Record"
#~ msgstr "Запись"

#~ msgid "In-gain"
#~ msgstr "Усиление на входе"

#~ msgid "Out-gain"
#~ msgstr "Усиление на выходе"

#~ msgid "Line-1"
#~ msgstr "Линейный-1"

#~ msgid "Line-2"
#~ msgstr "Линейный-2"

#~ msgid "Line-3"
#~ msgstr "Линейный-3"

#~ msgid "Digital-1"
#~ msgstr "Цифровой-1"

#~ msgid "Digital-2"
#~ msgstr "Цифровой-2"

#~ msgid "Digital-3"
#~ msgstr "Цифровой-3"

#~ msgid "Phone-in"
#~ msgstr "Тел. вход"

#~ msgid "Phone-out"
#~ msgstr "Тел. выход"

#~ msgid "Video"
#~ msgstr "Видео"

#~ msgid "Radio"
#~ msgstr "Радио"

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr ""
#~ "Не удалось открыть аудио-устройство для обработки параметров микшера."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Не удалось открыть аудио-устройство для обработки параметров микшера. "
#~ "Данная версия Open Sound System не поддерживается этим элементом."

#~ msgid "Master"
#~ msgstr "Общий"

#~ msgid "Front"
#~ msgstr "Фронтальные"

#~ msgid "Rear"
#~ msgstr "Тыловые"

#~ msgid "Headphones"
#~ msgstr "Наушники"

#~ msgid "Center"
#~ msgstr "Центр"

#~ msgid "LFE"
#~ msgstr "Сабвуфер"

#~ msgid "Surround"
#~ msgstr "Объёмный звук"

#~ msgid "Side"
#~ msgstr "Боковые"

#~ msgid "AUX Out"
#~ msgstr "Выход AUX"

#~ msgid "3D Depth"
#~ msgstr "3D глубина"

#~ msgid "3D Center"
#~ msgstr "3D центр"

#~ msgid "3D Enhance"
#~ msgstr "3D улучшение"

#~ msgid "Telephone"
#~ msgstr "Телефон"

#~ msgid "Video In"
#~ msgstr "Видео вход"

#~ msgid "AUX In"
#~ msgstr "Вход AUX"

#~ msgid "Record Gain"
#~ msgstr "Уровень записи"

#~ msgid "Output Gain"
#~ msgstr "Выходной уровень"

#~ msgid "Microphone Boost"
#~ msgstr "Микрофонный усилитель"

#~ msgid "Diagnostic"
#~ msgstr "Диагностика"

#~ msgid "Bass Boost"
#~ msgstr "Усиление баса"

#~ msgid "Playback Ports"
#~ msgstr "Порты воспроизведения"

#~ msgid "Input"
#~ msgstr "Вход"

#~ msgid "Monitor Source"
#~ msgstr "Устройство вывода"

#~ msgid "Keyboard Beep"
#~ msgstr "Озвучка клавиатуры"

#~ msgid "Simulate Stereo"
#~ msgstr "Имитация стерео"

#~ msgid "Stereo"
#~ msgstr "Стерео"

#~ msgid "Surround Sound"
#~ msgstr "Объёмный звук"

#~ msgid "Microphone Gain"
#~ msgstr "Уровень микрофона"

#~ msgid "Speaker Source"
#~ msgstr "Устройство динамика"

#~ msgid "Microphone Source"
#~ msgstr "Устройство микрофона"

#~ msgid "Jack"
#~ msgstr "Jack"

#~ msgid "Center / LFE"
#~ msgstr "Центр / Сабвуфер"

#~ msgid "Stereo Mix"
#~ msgstr "Стерео микширование"

#~ msgid "Mono Mix"
#~ msgstr "Моно микширование"

#~ msgid "Input Mix"
#~ msgstr "Микширование входа"

#~ msgid "Microphone 1"
#~ msgstr "Микрофон 1"

#~ msgid "Microphone 2"
#~ msgstr "Микрофон 2"

#~ msgid "Digital Out"
#~ msgstr "Цифровой выход"

#~ msgid "Digital In"
#~ msgstr "Цифровой вход"

#~ msgid "HDMI"
#~ msgstr "HDMI"

#~ msgid "Modem"
#~ msgstr "Модем"

#~ msgid "Handset"
#~ msgstr "Гарнитура"

#~ msgid "Other"
#~ msgstr "Другой"

#~ msgid "None"
#~ msgstr "Ничего"

#~ msgid "On"
#~ msgstr "Вкл"

#~ msgid "Off"
#~ msgstr "Выкл"

#~ msgid "Mute"
#~ msgstr "Заглушить"

#~ msgid "Fast"
#~ msgstr "Скорость"

#~ msgid "Very Low"
#~ msgstr "Очень низкое"

#~ msgid "Low"
#~ msgstr "Низкое"

#~ msgid "Medium"
#~ msgstr "Среднее"

#~ msgid "High"
#~ msgstr "Высокое"

#~ msgid "Very High"
#~ msgstr "Очень высокое"

#~ msgid "Production"
#~ msgstr "Выдача"

#~ msgid "Front Panel Microphone"
#~ msgstr "Микрофон на передней панели"

#~ msgid "Front Panel Line In"
#~ msgstr "Линейный вход на передней панели"

#~ msgid "Front Panel Headphones"
#~ msgstr "Наушники на передней панели"

#~ msgid "Front Panel Line Out"
#~ msgstr "Линейный выход на передней панели"

#~ msgid "Green Connector"
#~ msgstr "Зелёный разъём"

#~ msgid "Pink Connector"
#~ msgstr "Розовый разъём"

#~ msgid "Blue Connector"
#~ msgstr "Синий разъём"

#~ msgid "White Connector"
#~ msgstr "Белый разъём"

#~ msgid "Black Connector"
#~ msgstr "Чёрный разъём"

#~ msgid "Gray Connector"
#~ msgstr "Серый разъём"

#~ msgid "Orange Connector"
#~ msgstr "Оранжевый разъём"

#~ msgid "Red Connector"
#~ msgstr "Красный разъём"

#~ msgid "Yellow Connector"
#~ msgstr "Жёлтый разъём"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Зелёный разъём на передней панели"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Розовый разъём на передней панели"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Синий разъём на передней панели"

#~ msgid "White Front Panel Connector"
#~ msgstr "Белый разъём на передней панели"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Чёрный разъём на передней панели"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Серый разъём на передней панели"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Оранжевый разъём на передней панели"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Красный разъём на передней панели"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Жёлтый разъём на передней панели"

#~ msgid "Spread Output"
#~ msgstr "Развёрнутый вывод"

#~ msgid "Downmix"
#~ msgstr "Низведение"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Вход виртуального микшера"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Выход виртуального микшера"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Каналы виртуального микшера"

#~ msgid "%s %d Function"
#~ msgstr "Функция %s %d"

#~ msgid "%s Function"
#~ msgstr "Функция %s"

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "Ошибка чтения %d байт из устройства «%s»."

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "Не удалось добавить в очередь буферы устройства «%s»"

#~ msgid "Could not establish connection to sound server"
#~ msgstr "Не удалось установить соединение с сервером звука"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "Ошибка при запросе возможностей сервера звука"

#~ msgid ""
#~ "The buffer type is not supported, or the index is out of bounds, or no "
#~ "buffers have been allocated yet, or the userptr or length are invalid. "
#~ "device %s"
#~ msgstr ""
#~ "Неподдерживаемый тип буфера, либо индекс вне диапазона, либо буферы не "
#~ "были распределены, либо неверные значения длины или userptr (устройство "
#~ "%s)"

#~ msgid ""
#~ "Failed trying to get video frames from device '%s'. Not enough memory."
#~ msgstr ""
#~ "Ошибка при попытке получения кадров видео с устройства «%s». Не хватает "
#~ "памяти."

#~ msgid "insufficient memory to enqueue a user pointer buffer. device %s."
#~ msgstr ""
#~ "не хватает памяти для постановки в очередь буфера пользовательского "
#~ "указателя (устройство %s)"

#~ msgid "No free buffers found in the pool at index %d."
#~ msgstr "В пуле не найдено свободных буферов для индекса %d."

#~ msgid "Could not get buffers from device '%s'."
#~ msgstr "Не удалось получить буферы устройства «%s»"

#~ msgid "Could not get enough buffers from device '%s'."
#~ msgstr "Не удалось получить необходимое количество буферов устройства «%s»"

#~ msgid "Error starting streaming capture from device '%s'."
#~ msgstr "Ошибка при запуске потокового захвата с устройства «%s»."

#~ msgid "Error stopping streaming capture from device '%s'."
#~ msgstr "Ошибка при остановке потокового захвата с устройства «%s»."

#~ msgid "Could not read from CD."
#~ msgstr "Не удалось прочитать CD."

#~ msgid "Disc is not an Audio CD."
#~ msgstr "Диск не является аудио-CD."

#~ msgid "This file is encrypted and cannot be played."
#~ msgstr "Файл зашифрован и не может быть воспроизведён."

#~ msgid "Failed getting controls attributes on device '%s.'"
#~ msgstr "Ошибка получения атрибутов управления устройства «%s»."

#~ msgid "Could not set parameters on device '%s'"
#~ msgstr "Не удалось установить параметры устройства «%s»"

#~ msgid "Device '%s' cannot capture at %d/%d frames per second"
#~ msgstr ""
#~ "Устройство «%s» не может осуществить захват при %d/%d кадрах в секунду"
