# Indonesian translations for gst-plugins-ugly package.
# This file is put in the public domain.
# Andhika Padmawan <andhika.padmawan@gmail.com>, 2009-2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-ugly 1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2016-06-09 11:24+0300\n"
"PO-Revision-Date: 2014-01-27 20:04+0700\n"
"Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

msgid "Could not read from CD."
msgstr "Tak dapat membaca dari CD."

msgid "Could not open CD device for reading."
msgstr "Tak dapat membuka divais CD untuk dibaca."

msgid "Disc is not an Audio CD."
msgstr "Cakram bukan CD Audio."

msgid "Could not open DVD"
msgstr "Tak dapat membuka DVD"

#, c-format
msgid "Could not open DVD title %d"
msgstr "Tak dapat membuka judul DVD %d"

#, c-format
msgid "Failed to go to chapter %d of DVD title %d"
msgstr "Gagal pergi ke bab %d dari judul DVD %d"

#, c-format
msgid ""
"Could not open DVD title %d. Interactive titles are not supported by this "
"element"
msgstr ""
"Tak dapat membuka judul DVD %d. Judul interaktif tidak didukung oleh elemen "
"ini"

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"Tak dapat membaca DVD. Hal ini karena DVD terenkripsi dan pustaka dekripsi "
"DVD tidak diinstal."

msgid "Could not read DVD."
msgstr "Tak dapat membaca DVD."

msgid ""
"Failed to configure LAME mp3 audio encoder. Check your encoding parameters."
msgstr "Gagal mengatur penyandi audio mp3 LAME. Cek parameter penyandian anda."

#, c-format
msgid ""
"The requested bitrate %d kbit/s for property '%s' is not allowed. The "
"bitrate was changed to %d kbit/s."
msgstr ""
"Bitrasi %d kbit/s yang diminta untuk properti '%s' tidak diizinkan. Bitrasi "
"diubah ke %d kbit/s."

msgid "Failed to configure TwoLAME encoder. Check your encoding parameters."
msgstr "Gagal mengatur penyandi TwoLAME. Cek parameter penyandian anda."

msgid "This stream contains no data."
msgstr "Arus ini tidak berisi data."

msgid "Internal data stream error."
msgstr "Galat arus data internal."

#~ msgid "Invalid title information on DVD."
#~ msgstr "Informasi judul tidak sah pada DVD."

#~ msgid "Could not read title information for DVD."
#~ msgstr "Tak dapat membaca informasi judul untuk DVD."

#~ msgid "Failed to open DVD device '%s'."
#~ msgstr "Gagal membuka divais DVD '%s'."

#~ msgid "Failed to set PGC based seeking."
#~ msgstr "Gagal mengatur pencarian berbasis PGC."
