# Vietnamese translation for GST Plugins Bad.
# Bản dịch tiếng Việt dành cho GST Plugins Bad.
# Copyright © 2016 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-bad package.
# Clytie Siddall <clytie@riverland.net.au>, 2007-2010.
# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2014, 2015, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 1.10.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2016-11-17 15:03+0200\n"
"PO-Revision-Date: 2016-11-02 13:38+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
"Language: vi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Language-Team-Website: <http://translationproject.org/team/vi.html>\n"
"X-Generator: Gtranslator 2.91.7\n"

msgid "failed to draw pattern"
msgstr "gặp lỗi khi vẽ mẫu"

msgid "A GL error occured"
msgstr "Đã nảy sinh lỗi GL"

msgid "format wasn't negotiated before get function"
msgstr "định dạng không được dàn xếp trước hàm"

msgid "OpenCV failed to load template image"
msgstr "OpenCV gặp lỗi khi tải ảnh tạm thời"

msgid "Could not read title information for DVD."
msgstr "Không thể đọc thông tin tựa đề của đĩa DVD."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Gặp lỗi khi mở thiết bị đĩa DVD “%s”."

msgid "Failed to set PGC based seeking."
msgstr "Gặp lỗi khi đặt chức năng di chuyển vị trí đọc dựa vào PGC."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"Không thể đọc DVD. Nguyên nhân có thể là DVD đã bị mã hõa mà thư viện giải "
"mã DVD lại chưa được cài đặt."

msgid "Could not read DVD."
msgstr "Không thể đọc DVD."

msgid "This file contains no playable streams."
msgstr "Tập tin này không chứa luồng dữ liệu có thể phát."

msgid "Could not open sndfile stream for reading."
msgstr "Không thể mở luồng dữ liệu tập tin snd để đọc."

msgid "Could not establish connection to sndio"
msgstr "Không thể thiết lập kết nối tới sndio"

msgid "Failed to query sndio capabilities"
msgstr "Gặp lỗi khi truy vấn khả năng của sndio"

msgid "Could not configure sndio"
msgstr "Không thể cấu hình sndio"

msgid "Could not start sndio"
msgstr "Không thể khởi chạy sndio"

msgid "Generated file has a larger preroll time than its streams duration"
msgstr ""
"Tập tin đã tạo có thời gian cuộn trước lớn hơn thời lượng của dòng dữ liệu"

#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr "Thiếu phần tử “%s” — hãy kiểm tra lại phần cài đặt GStreamer."

msgid "File location is set to NULL, please set it to a valid filename"
msgstr ""
"Vị trí tập tin được đặt thành “NULL”. xin hãy đặt một tên tập tin hợp lệ"

msgid "Digitalzoom element couldn't be created"
msgstr "Không thể tạo phần tử thu phóng số"

msgid "Subpicture format was not configured before data flow"
msgstr "Định dạng ảnh phụ chưa được cấu hình trước khi dữ liệu truyền đến"

msgid "Failed to get fragment URL."
msgstr "Gặp lỗi khi lấy URL phân mảnh."

msgid "Couldn't download fragments"
msgstr "Không thể tải về các phân mảnh"

msgid "Internal data stream error."
msgstr "Lỗi luồng dữ liệu nội bộ."

msgid "No file name specified for writing."
msgstr "Chưa chỉ định tên tập tin để ghi vào."

#, c-format
msgid "Given file name \"%s\" can't be converted to local file name encoding."
msgstr ""
"Tên tập tin đã cho “%s” không thể chuyển đổi bảng mã tên tập tin nội bộ."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "Không thể mở tập tin “%s” để ghi."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Thiết bị “%s” không tồn tại."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Không thể mở thiết bị mặt tiền “%s”."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Không thể lấy các cài đặt từ thiết bị giao diện (mặt tiền) “%s”."

#, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr ""
"Không thể liệt kê các hệ thống phân phối từ thiết bị giao diện (mặt tiền) "
"“%s”."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Không thể mở tập tin “%s” để đọc."

msgid "Couldn't find channel configuration file"
msgstr "Không thể tìm thấy tập tin cấu hình kênh"

#, c-format
msgid "Couldn't load channel configuration file: '%s'"
msgstr "Không thể tải tập tin cấu hình kênh: “%s”"

#, c-format
msgid "Couldn't find details for channel '%s'"
msgstr "Không thể tìm thấy chi tiết cho kênh “%s”"

#, c-format
msgid "No properties for channel '%s'"
msgstr "Không có thuộc tính cho kênh “%s”"

#, c-format
msgid "Failed to set properties for channel '%s'"
msgstr "Gặp lỗi khi đặt thuộc tính cho kênh “%s”"

#, c-format
msgid "Couldn't find channel configuration file: '%s'"
msgstr "Không thể tìm thấy tập tin cấu hình kênh: “%s”"

msgid "Channel configuration file doesn't contain any channels"
msgstr "Tập tin cấu hình kênh chẳng chứa kênh nào cả"

#~ msgid "default GStreamer sound events audiosink"
#~ msgstr "các sự kiện âm thanh GStreamer mặc định cho “audiosink”"

#~ msgid ""
#~ "GStreamer can play audio using any number of output elements. Some "
#~ "possible choices are osssink, pulsesink and alsasink. The audiosink can "
#~ "be a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer có thể phát nhạc với bất kỳ số lượng phần tử đầu ra nào. Một số "
#~ "có thể chọn lựa là osssink, pulsesink và alsasink. “audiosink” có thể là "
#~ "đường ống đặc biệt thay vì chỉ một phần tử."

#~ msgid "description for default GStreamer sound events audiosink"
#~ msgstr ""
#~ "mô tả cho các sự kiện âm thanh GStreamer mặc định dành cho “audiosink”"

#~ msgid "Describes the selected audiosink element."
#~ msgstr "Mô tả về phần tử “audiosink” đã chọn."

#~ msgid "default GStreamer audiosink for Audio/Video Conferencing"
#~ msgstr "“GStreamer audiosink” mặc định dành cho Hội nghị Nhạc/Phim"

#~ msgid ""
#~ "description for default GStreamer audiosink for Audio/Video Conferencing"
#~ msgstr "mô tả cho GStreamer audiosink mặc định dành cho Hội nghị Nhạc/Phim"

#~ msgid "default GStreamer audiosink for Music and Movies"
#~ msgstr "GStreamer audiosink mặc định dành cho Âm nhạc và Phim"

#~ msgid "description for default GStreamer audiosink for Music and Movies"
#~ msgstr "mô tả cho GStreamer audiosink mặc định dành cho Âm nhạc và Phim"

#~ msgid "default GStreamer videosink"
#~ msgstr "GStreamer videosink mặc định"

#~ msgid ""
#~ "GStreamer can play video using any number of output elements. Some "
#~ "possible choices are xvimagesink, ximagesink, sdlvideosink and aasink. "
#~ "The videosink can be a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer có thể chạy phim với bất kỳ số lượng phần tử đầu ra nào. Một số "
#~ "có thể chọn lựa là xvimagesink, ximagesink, sdlvideosink và aasink. "
#~ "“videosink” có thể là đường ống đặc biệt thay vì chỉ một phần tử."

#~ msgid "description for default GStreamer videosink"
#~ msgstr "mô tả phần tử nguồn hình ảnh GStreamer mặc định"

#~ msgid "Describes the selected videosink element."
#~ msgstr "Mô tả phần tử videosink đã chọn."

#~ msgid "default GStreamer audiosrc"
#~ msgstr "nguồn âm thanh GStreamer mặc định"

#~ msgid ""
#~ "GStreamer can record audio using any number of input elements. Some "
#~ "possible choices are osssrc, pulsesrc and alsasrc. The audio source can "
#~ "be a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer có thể ghi âm thanh dùng bao nhiêu phần tử đầu vào cũng được. "
#~ "Một số lựa chọn là osssrc, plusesrc và alsasrc. Nguồn âm thanh có thể là "
#~ "các đường ống cục bộ nào đó thay vì chỉ một phần tử nguồn."

#~ msgid "description for default GStreamer audiosrc"
#~ msgstr "mô tả phần tử nguồn âm thanh GStreamer mặc định"

#~ msgid "Describes the selected audiosrc element."
#~ msgstr "Mô tả phần tử nguồn âm thanh đã chọn."

#~ msgid "default GStreamer videosrc"
#~ msgstr "nguồn hình ảnh GStreamer mặc định"

#~ msgid ""
#~ "GStreamer can record video from any number of input elements. Some "
#~ "possible choices are v4lsrc, v4l2src and videotestsrc. The video source "
#~ "can be a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer có thể chạy phim với bất kỳ số lượng phần tử đầu vào nào. Một "
#~ "số có thể chọn lựa là v4lsrc, v4l2src và videotestsrc. Nguồn hình có thể "
#~ "là đường ống đặc biệt thay vì chỉ một phần tử."

#~ msgid "description for default GStreamer videosrc"
#~ msgstr "mô tả cho nguồn hình GStreamer mặc định"

#~ msgid "Describes the selected videosrc element."
#~ msgstr "Mô tả phần tử nguồn hình ảnh đã chọn."

#~ msgid "default GStreamer visualization"
#~ msgstr "hiện hình GStreamer mặc định"

#~ msgid ""
#~ "GStreamer can put visualization plugins in a pipeline to transform audio "
#~ "streams in video frames. Some possible choices are goom, goom2k1 and "
#~ "synaesthesia. The visualization plugin can be a partial pipeline instead "
#~ "of just one element."
#~ msgstr ""
#~ "GStreamer có thể đặt phần bổ xung hiện hình trong một đường ống để mà "
#~ "chuyển dạng luồng dữ liệu âm thanh trong khung hình phim. Một số có thể "
#~ "chọn lựa là goom, goom2k1 và synaesthesia. Phần bổ xung hiện hình có thể "
#~ "là đường ống đặc biệt thay vì chỉ một phần tử."

#~ msgid "description for default GStreamer visualization"
#~ msgstr "mô tả về hiện hình GStreamer mặc định"

#~ msgid "Describes the selected visualization element."
#~ msgstr "Mô tả về phần tử hiện hình đã chọn."

#~ msgid "Internal data flow error."
#~ msgstr "Lỗi tràn luồng dữ liệu nội bộ."

#~ msgid "Couldn't get the Manifest's URI"
#~ msgstr "Không thể lấy URI của Manifest"

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "Không thể ghi vào tập tin “%s”."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Không thể mở thiết bị âm thanh để quản lý điều khiển máy hòa tiếng."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Không thể mở thiết bị âm thanh để quản lý điều khiển máy hòa tiếng. Phiên "
#~ "bản Hệ thống Âm thanh Mở này không được yếu tố này hỗ trợ."

#~ msgid "Volume"
#~ msgstr "Âm"

#~ msgid "Master"
#~ msgstr "Chủ"

#~ msgid "Front"
#~ msgstr "Trước"

#~ msgid "Rear"
#~ msgstr "Sau"

#~ msgid "Headphones"
#~ msgstr "Tai nghe"

#~ msgid "Center"
#~ msgstr "Giữa"

#~ msgid "LFE"
#~ msgstr "LFE"

#~ msgid "Surround"
#~ msgstr "Vòm"

#~ msgid "Side"
#~ msgstr "Bên"

#~ msgid "Built-in Speaker"
#~ msgstr "Loa dựng sẵn"

#~ msgid "AUX 1 Out"
#~ msgstr "AUX 1 Ra"

#~ msgid "AUX 2 Out"
#~ msgstr "AUX 2 Ra"

#~ msgid "AUX Out"
#~ msgstr "AUX Ra"

#~ msgid "Bass"
#~ msgstr "Trầm"

#~ msgid "Treble"
#~ msgstr "Cao"

#~ msgid "3D Depth"
#~ msgstr "Sâu 3D"

#~ msgid "3D Center"
#~ msgstr "Giữa 3D"

#~ msgid "3D Enhance"
#~ msgstr "Tăng cường 3D"

#~ msgid "Telephone"
#~ msgstr "Điện thoại"

#~ msgid "Microphone"
#~ msgstr "Máy vi âm"

#~ msgid "Line Out"
#~ msgstr "Dây Ra"

#~ msgid "Line In"
#~ msgstr "Dây Vào"

#~ msgid "Internal CD"
#~ msgstr "CD nội bộ"

#~ msgid "Video In"
#~ msgstr "Phim Vào"

#~ msgid "AUX 1 In"
#~ msgstr "AUX 1 Vào"

#~ msgid "AUX 2 In"
#~ msgstr "AUX 2 Vào"

#~ msgid "AUX In"
#~ msgstr "AUX Vào"

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

#~ msgid "Record Gain"
#~ msgstr "Khuếch đại Thu"

#~ msgid "Output Gain"
#~ msgstr "Khuếch đại Xuất"

#~ msgid "Microphone Boost"
#~ msgstr "Tăng Máy vi âm"

#~ msgid "Loopback"
#~ msgstr "Mạch nội bộ"

#~ msgid "Diagnostic"
#~ msgstr "Chẩn đoán"

#~ msgid "Bass Boost"
#~ msgstr "Tăng Trầm"

#~ msgid "Playback Ports"
#~ msgstr "Cổng Phát lại"

#~ msgid "Input"
#~ msgstr "Vào"

#~ msgid "Record Source"
#~ msgstr "Nguồn Thu"

#~ msgid "Monitor Source"
#~ msgstr "Nguồn Màn hình"

#~ msgid "Keyboard Beep"
#~ msgstr "Bíp Bàn phím"

#~ msgid "Monitor"
#~ msgstr "Màn hình"

#~ msgid "Simulate Stereo"
#~ msgstr "Mô phỏng Âm lập thể"

#~ msgid "Stereo"
#~ msgstr "Âm lập thể"

#~ msgid "Surround Sound"
#~ msgstr "Âm thanh Vòm"

#~ msgid "Microphone Gain"
#~ msgstr "Khuếch đại Máy vi âm"

#~ msgid "Speaker Source"
#~ msgstr "Nguồn Loa"

#~ msgid "Microphone Source"
#~ msgstr "Nguồn Máy vi âm"

#~ msgid "Jack"
#~ msgstr "Ổ cắm"

#~ msgid "Center / LFE"
#~ msgstr "Giữa/LFE"

#~ msgid "Stereo Mix"
#~ msgstr "Trộn Âm lập thể"

#~ msgid "Mono Mix"
#~ msgstr "Trộn Nguồn đơn"

#~ msgid "Input Mix"
#~ msgstr "Trộn Đầu vào"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF Vào"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF Ra"

#~ msgid "Microphone 1"
#~ msgstr "Máy vi âm 1"

#~ msgid "Microphone 2"
#~ msgstr "Máy vi âm 2"

#~ msgid "Digital Out"
#~ msgstr "Thuật số Ra"

#~ msgid "Digital In"
#~ msgstr "Thuật số Vào"

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

#~ msgid "Modem"
#~ msgstr "Bộ điều giải"

#~ msgid "Handset"
#~ msgstr "Cầm tay"

#~ msgid "Other"
#~ msgstr "Khác"

#~ msgid "None"
#~ msgstr "Không có"

#~ msgid "On"
#~ msgstr "Bật"

#~ msgid "Off"
#~ msgstr "Tắt"

#~ msgid "Mute"
#~ msgstr "Câm"

#~ msgid "Fast"
#~ msgstr "Nhanh"

#~ msgid "Very Low"
#~ msgstr "Rất thấp"

#~ msgid "Low"
#~ msgstr "Thấp"

#~ msgid "Medium"
#~ msgstr "Vừa"

#~ msgid "High"
#~ msgstr "Cao"

#~ msgid "Very High"
#~ msgstr "Rất cao"

#~ msgid "Production"
#~ msgstr "Sản xuất"

#~ msgid "Front Panel Microphone"
#~ msgstr "Máy vi âm bảng trước"

#~ msgid "Front Panel Line In"
#~ msgstr "Dây vào bảng trước"

#~ msgid "Front Panel Headphones"
#~ msgstr "Tai nghe bảng trước"

#~ msgid "Front Panel Line Out"
#~ msgstr "Dây ra bảng trước"

#~ msgid "Green Connector"
#~ msgstr "Đầu kẹp lục"

#~ msgid "Pink Connector"
#~ msgstr "Đầu kẹp hồng"

#~ msgid "Blue Connector"
#~ msgstr "Đầu kẹp xanh"

#~ msgid "White Connector"
#~ msgstr "Đầu kẹp trắng"

#~ msgid "Black Connector"
#~ msgstr "Đầu kẹp đen"

#~ msgid "Gray Connector"
#~ msgstr "Đầu kẹp xám"

#~ msgid "Orange Connector"
#~ msgstr "Đầu kẹp cam"

#~ msgid "Red Connector"
#~ msgstr "Đầu kẹp đỏ"

#~ msgid "Yellow Connector"
#~ msgstr "Đầu kẹp vàng"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Đầu kẹp lục bảng trước"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Đầu kẹp hồng bảng trước"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Đầu kẹp xanh bảng trước"

#~ msgid "White Front Panel Connector"
#~ msgstr "Đầu kẹp trắng bảng trước"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Đầu kẹp đen bảng trước"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Đầu kẹp xám bảng trước"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Đầu kẹp cam bảng trước"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Đầu kẹp đỏ bảng trước"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Đầu kẹp vàng bảng trước"

#~ msgid "Spread Output"
#~ msgstr "Giăng ra kết xuất"

#~ msgid "Downmix"
#~ msgstr "Trộn xuống"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Đầu vào Trộn Ảo"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Đầu ra Trộn Ảo"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Kênh Trộn Ảo"

#~ msgid "%s Function"
#~ msgstr "Hàm %s"

#~ msgid "%s %d"
#~ msgstr "%s %d"

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "Không thể mở thiết bị âm thanh để phát lại. Thiết bị này đang được ứng "
#~ "dụng khác sử dụng."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr ""
#~ "Không thể mở thiết bị âm thanh để phát lại. Bạn không có quyền mở thiết "
#~ "bị này."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Không thể mở thiết bị âm thanh để phát lại."

#~ msgid ""
#~ "Could not open audio device for playback. This version of the Open Sound "
#~ "System is not supported by this element."
#~ msgstr ""
#~ "Không thể mở thiết bị âm thanh để phát lại. Phiên bản Hệ thống Âm thanh "
#~ "Mở này không được yếu tố này hỗ trợ."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Thiết bị âm thanh này không hỗ trợ chức năng phát lại."

#~ msgid "Audio playback error."
#~ msgstr "Lỗi phát lại âm thanh."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Thiết bị âm thanh này không hỗ trợ chức năng thu."

#~ msgid "Error recording from audio device."
#~ msgstr "Lỗi thu từ thiết bị âm thanh."
