# Chinese (simplified) translation about gst-plugins-good.
# This file is put in the public domain.
# Funda Wang <fundawang@linux.net.cn>, 2005.
# Ji ZhengYu <zhengyuji@gmail.com>, 2008, 2009
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-12-18 12:05+0100\n"
"PO-Revision-Date: 2009-11-13 22:20+0800\n"
"Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\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 ""

#, fuzzy
msgid "Server does not support seeking."
msgstr "设备‘%s’不支持视频捕获"

#, fuzzy
msgid "Could not resolve server name."
msgstr "无法连接至服务器"

#, fuzzy
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 媒"
"体流。"

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 "无法打开音频设备播放音频。"

#, fuzzy
msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr "无法打开音频设备播放音频。您无权使用这一设备。"

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 ""

#, fuzzy
msgid "Error recording from audio device."
msgstr "从设备‘%2$s’中读取 %1$d 个字节时出错。"

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 "无法打开音频设备录音。"

#, fuzzy
msgid "Record Source"
msgstr "录音"

msgid "Microphone"
msgstr "话筒"

#, fuzzy
msgid "Line In"
msgstr "线路输入(Line-in)"

msgid "Internal CD"
msgstr ""

#, fuzzy
msgid "SPDIF In"
msgstr "SPDIF 输出"

#, fuzzy
msgid "AUX 1 In"
msgstr "AUX 1 输出"

#, fuzzy
msgid "AUX 2 In"
msgstr "AUX 2 输出"

msgid "Codec Loopback"
msgstr ""

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 "从设备‘%2$s’中读取 %1$d 个字节时出错。"

#, 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’的驱动不支持任何已知的捕获方式。"

#, c-format
msgid "Device '%s' is busy"
msgstr ""

#, 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’无法以指定格式捕获"

#, fuzzy, c-format
msgid "Device '%s' does support non-contiguous planes"
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 "视频输入设备不接受新的帧率设置。"

#, fuzzy
msgid "Video device did not provide output format."
msgstr "视频输入设备不接受新的帧率设置。"

msgid "Video device returned invalid dimensions."
msgstr ""

msgid "Video devices uses an unsupported interlacing method."
msgstr ""

msgid "Video devices uses an unsupported pixel format."
msgstr ""

msgid "Failed to configure internal buffer pool."
msgstr ""

#, fuzzy
msgid "Video device did not suggest any buffer size."
msgstr "视频输入设备不接受新的帧率设置。"

msgid "No downstream pool to import from."
msgstr ""

#, fuzzy, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "获取设备 %2$s 上的微调钮 %1$d 的设置时出错"

#, fuzzy, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "从设备‘%2$s’中读取 %1$d 个字节时出错。"

#, 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 "设置设备 %2$s 上的输入 %1$d 时出错。"

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "设置设备 %2$s 上的输入 %1$d 时出错。"

#, fuzzy, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "获取设备‘%s’的信号长度时出错。"

msgid "Failed to allocated required memory."
msgstr ""

msgid "Failed to allocate required memory."
msgstr ""

#, fuzzy, c-format
msgid "Converter on device %s has no supported input format"
msgstr "设备‘%s’的驱动不支持任何已知的捕获方式。"

#, c-format
msgid "Converter on device %s has no supported output format"
msgstr ""

#, c-format
msgid "Encoder on device %s has no supported input format"
msgstr ""

#, c-format
msgid "Encoder on device %s has no supported output format"
msgstr ""

#, fuzzy
msgid "Failed to start decoding thread."
msgstr "解码 JPEG 图像出错"

msgid "Failed to process frame."
msgstr ""

#, 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 "查寻设备 %2$s 中的输入 %1$d 的属性时出错"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "获取设备 %2$s 上的微调钮 %1$d 的设置时出错"

#, fuzzy, 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’不是输出设备。"

#, fuzzy, c-format
msgid "Device '%s' is not a M2M device."
msgstr "‘%s’不是输出设备。"

#, fuzzy, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "无法打开设备‘%s’读写。"

#, fuzzy, 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 Hz 时出错。"

#, 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 "获取设备‘%2$s’的控制器 %1$d 的值出错。"

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "设置设备‘%3$s’的控制器 %2$d 的值为 %1$d 时出错。"

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr "获取设备‘%s’上的当前输入出错。也许它是一个广播设备"

#, fuzzy, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr "获取设备‘%s’上的当前输入出错。也许它是一个广播设备"

#, fuzzy, c-format
msgid "Failed to set output %d on device %s."
msgstr "设置设备 %2$s 上的输入 %1$d 时出错。"

msgid "Changing resolution at runtime is not yet supported."
msgstr "尚不支持在运行时更改分辨率。"

msgid "Cannot operate without a clock"
msgstr "没有时钟的话无法操作"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "查寻音频服务器的服务失败"

#~ msgid "Bass"
#~ msgstr "低音(Bass)"

#~ msgid "Treble"
#~ msgstr "高音(Treble)"

#~ msgid "Synth"
#~ msgstr "合成器"

#~ msgid "PCM"
#~ msgstr "波形(PCM)"

#~ msgid "Speaker"
#~ msgstr "扬声器(Speaker)"

#~ msgid "CD"
#~ msgstr "CD 音频"

#~ msgid "Mixer"
#~ msgstr "混音器"

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

#~ 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 "Got unexpected frame size of %u instead of %u."
#~ msgstr "取得了 %u 的不需要的帧大小，而不是 %u。"

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "读取设备‘%2$s’中的 %1$d 字节时出错。"

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "无法对设备‘%s’中的缓冲区进行排序。"

#~ 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 ""
#~ "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 ""
#~ "不支持的缓冲区类型，或者索引超出范围了，或是还未分配缓冲区，或非法的用户指"
#~ "针或长度。设备 %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 "Failed getting controls attributes on 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 "此文件已加密，无法播放。"
