# 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: 2012-10-24 14:11+0100\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"

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

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

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

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 "No URL set."
msgstr "URL не задан."

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 "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 recording. You don't have permission to open "
"the device."
msgstr ""
"Не удалось открыть аудио-устройство для записи. Отсутствуют права доступа к "
"устройству."

msgid "Could not open audio device for recording."
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 "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 ""
"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 "Cannot identify 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 "Microphone"
#~ 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 "Line In"
#~ msgstr "Линейный вход"

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

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

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

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

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

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

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

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

#~ msgid "Loopback"
#~ msgstr "Петля"

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

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

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

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

#~ msgid "Record Source"
#~ 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 "SPDIF In"
#~ msgstr "Вход SPDIF"

#~ 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 кадрах в секунду"
