# Bulgarian translation of gst-plugins-ugly.
# Copyright (C) 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-ugly package.
# Alexander Shopov <ash@kambanaria.org>, 2007, 2008, 2009, 2010, 2011.
#
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2013-12-26 17:53+0100\n"
"PO-Revision-Date: 2011-04-26 22:34+0300\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

msgid "Could not read from CD."
msgstr "CD-то не може да бъде прочетено."

msgid "Could not open CD device for reading."
msgstr "Не може да се чете от устройството за CD-та."

msgid "Disc is not an Audio CD."
msgstr "Дискът не е аудио CD."

msgid "Could not open DVD"
msgstr "DVD-то не може да бъде отворено"

#, c-format
msgid "Could not open DVD title %d"
msgstr "Заглавната част %d от DVD-то не може да бъде отворена"

#, c-format
msgid "Failed to go to chapter %d of DVD title %d"
msgstr "Не може да се премине към раздел %d от заглавната част %d на DVD-то"

#, c-format
msgid ""
"Could not open DVD title %d. Interactive titles are not supported by this "
"element"
msgstr ""
"Заглавната част %d от DVD-то не може да бъде отворена. Интерактивни части не "
"се поддържат от този елемент"

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"DVD-то не може да бъде прочетено. Причината може да е, че DVD-то е шифрирано "
"и не е инсталирана библиотека за дешифриране."

msgid "Could not read DVD."
msgstr "DVD-то не може да бъде прочетено."

#, fuzzy
msgid ""
"Failed to configure LAME mp3 audio encoder. Check your encoding parameters."
msgstr ""
"Кодерът TwoLAME не може да бъде настроен. Проверете настройките за кодиране."

#, c-format
msgid ""
"The requested bitrate %d kbit/s for property '%s' is not allowed. The "
"bitrate was changed to %d kbit/s."
msgstr ""
"Поисканата честота в битове %d kbit/s за свойството „%s“ не е позволена. Тя "
"бе променена на %d kbit/s."

msgid "Failed to configure TwoLAME encoder. Check your encoding parameters."
msgstr ""
"Кодерът TwoLAME не може да бъде настроен. Проверете настройките за кодиране."

msgid "This stream contains no data."
msgstr "Потокът не съдържа данни."

msgid "Internal data stream error."
msgstr "Вътрешна грешка в потока от данни."

#, fuzzy
#~ msgid ""
#~ "Failed to configure LAMEMP3ENC encoder. Check your encoding parameters."
#~ msgstr ""
#~ "Кодерът LAME не може да бъде настроен. Проверете настройките за кодиране."
