# Japanese translation for gst-plugins-good.
#
# Takao Fujiwara <takao.fujiwara@sun.com>, 2006.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good HEAD\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2009-02-19 20:06+0000\n"
"PO-Revision-Date: 2006-08-08 19:05+0200\n"
"Last-Translator: Takao Fujiwara <takao.fujiwara@sun.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ext/esd/esdsink.c:258 ext/esd/esdsink.c:363
msgid "Could not establish connection to sound server"
msgstr ""

#: ext/esd/esdsink.c:265
msgid "Failed to query sound server capabilities"
msgstr ""

#: ext/flac/gstflacdec.c:1261 ext/libpng/gstpngdec.c:328
#: ext/libpng/gstpngdec.c:516 ext/wavpack/gstwavpackparse.c:1165
#: gst/avi/gstavidemux.c:4162 gst/avi/gstavidemux.c:4170
msgid "Internal data stream error."
msgstr ""

#: ext/jpeg/gstjpegdec.c:1049
msgid "Failed to decode JPEG image"
msgstr ""

#: ext/shout2/gstshout2.c:558
msgid "Could not connect to server"
msgstr ""

# SUN REVIEWED
#: gst/avi/gstavimux.c:1610
msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "入力オーディオが存在しないか無効であるため、AVI ストリームは壊れます。"

#: gst/qtdemux/qtdemux.c:988 gst/qtdemux/qtdemux.c:2008
msgid "This file contains no playable streams."
msgstr ""

#: gst/qtdemux/qtdemux.c:1106 gst/qtdemux/qtdemux.c:2149
msgid "This file is invalid and cannot be played."
msgstr ""

#: gst/qtdemux/qtdemux.c:1164
msgid "This file is incomplete and cannot be played."
msgstr ""

#: gst/qtdemux/qtdemux.c:2865
msgid "The video in this file might not play correctly."
msgstr ""

#: gst/qtdemux/qtdemux.c:2940
#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""

#: gst/qtdemux/qtdemux.c:3223 gst/qtdemux/qtdemux.c:3918
msgid "This file is corrupt and cannot be played."
msgstr ""

#: gst/wavparse/gstwavparse.c:1887
msgid "Internal data flow error."
msgstr ""

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:98 sys/sunaudio/gstsunaudiomixertrack.c:65
msgid "Volume"
msgstr "音量"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:99
msgid "Bass"
msgstr "低音"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:100
msgid "Treble"
msgstr "高音"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:101
msgid "Synth"
msgstr "シンセ"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:102
msgid "PCM"
msgstr "PCM"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:103
msgid "Speaker"
msgstr "スピーカ"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:104
msgid "Line-in"
msgstr "ラインイン"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:105
msgid "Microphone"
msgstr "マイクロフォン"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:106
msgid "CD"
msgstr "CD"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:107
msgid "Mixer"
msgstr "ミキサー"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:108
msgid "PCM-2"
msgstr "PCM-2"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:109
msgid "Record"
msgstr "録音"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:110
msgid "In-gain"
msgstr "入力ゲイン"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:111
msgid "Out-gain"
msgstr "出力ゲイン"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:112
msgid "Line-1"
msgstr "ライン 1"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:113
msgid "Line-2"
msgstr "ライン 2"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:114
msgid "Line-3"
msgstr "ライン 3"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:115
msgid "Digital-1"
msgstr "デジタル 1"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:116
msgid "Digital-2"
msgstr "デジタル 2"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:117
msgid "Digital-3"
msgstr "デジタル 3"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:118
msgid "Phone-in"
msgstr "フォン入力"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:119
msgid "Phone-out"
msgstr "フォン出力"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:120
msgid "Video"
msgstr "ビデオ"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:121
msgid "Radio"
msgstr "ラジオ"

# SUN REVIEWED
#: sys/oss/gstossmixertrack.c:122 sys/sunaudio/gstsunaudiomixertrack.c:65
msgid "Monitor"
msgstr "モニター"

#: sys/oss/gstosssink.c:406
msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""

#: sys/oss/gstosssink.c:413
msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""

# SUN REVIEWED
#: sys/oss/gstosssink.c:421
#, fuzzy
msgid "Could not open audio device for playback."
msgstr "CD デバイスを読み取り用に開くことができません。"

#: sys/oss/gstosssrc.c:377
msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""

# SUN REVIEWED
#: sys/oss/gstosssrc.c:385
#, fuzzy
msgid "Could not open audio device for recording."
msgstr "CD デバイスを読み取り用に開くことができません。"

# SUN REVIEWED
#: sys/sunaudio/gstsunaudiomixertrack.c:65
msgid "Gain"
msgstr "ゲイン"

# SUN REVIEWED
#: sys/v4l2/gstv4l2src.c:1259
#, fuzzy, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "CD デバイスを読み取り用に開くことができません。"

#: sys/v4l2/gstv4l2src.c:1290
#, c-format
msgid "Got unexpected frame size of %u instead of %u."
msgstr ""

#: sys/v4l2/gstv4l2src.c:1308
#, c-format
msgid "Error reading %d bytes on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:93
#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""

#: sys/v4l2/v4l2_calls.c:132
#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr ""

#: sys/v4l2/v4l2_calls.c:162
#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:205
#, c-format
msgid "Failed to query norm on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:254 sys/v4l2/v4l2_calls.c:332
#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:462
#, c-format
msgid "Cannot identify device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:469
#, c-format
msgid "This isn't a device '%s'."
msgstr ""

# SUN REVIEWED
#: sys/v4l2/v4l2_calls.c:476
#, fuzzy, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "CD デバイスを読み取り用に開くことができません。"

#: sys/v4l2/v4l2_calls.c:483
#, c-format
msgid "Device '%s' is not a capture device."
msgstr ""

#: sys/v4l2/v4l2_calls.c:578
#, c-format
msgid "Failed to set norm for device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:616
#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:658
#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""

#: sys/v4l2/v4l2_calls.c:692
#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:728
#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:763
#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr ""

#: sys/v4l2/v4l2_calls.c:792
#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""

#: sys/v4l2/v4l2_calls.c:814
#, c-format
msgid "Failed to set input %d on device %s."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:360
#, c-format
msgid "Could not enqueue buffers in device '%s'."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:561
#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1139 sys/v4l2/v4l2src_calls.c:1156
#: sys/v4l2/v4l2src_calls.c:1165
#, c-format
msgid "Failed trying to get video frames from device '%s'."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1141
#, c-format
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 ""

#: sys/v4l2/v4l2src_calls.c:1150
#, c-format
msgid "Failed trying to get video frames from device '%s'. Not enough memory."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1150
#, c-format
msgid "insufficient memory to enqueue a user pointer buffer. device %s."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1158
#, c-format
msgid "Failed after %d tries. device %s. system error: %s"
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1167
#, c-format
msgid "No free buffers found in the pool at index %d."
msgstr ""

# SUN REVIEWED
#: sys/v4l2/v4l2src_calls.c:1249
#, fuzzy, c-format
msgid "Could not get parameters on device '%s'"
msgstr "CD デバイスを読み取り用に開くことができません。"

#: sys/v4l2/v4l2src_calls.c:1279
msgid "Video input device did not accept new frame rate setting."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1296
#, c-format
msgid "Device '%s' does not support video capture"
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1304 sys/v4l2/v4l2src_calls.c:1313
#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1322
#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1400
#, c-format
msgid "Could not get buffers from device '%s'."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1409
#, c-format
msgid "Could not get enough buffers from device '%s'."
msgstr ""

# SUN REVIEWED
#: sys/v4l2/v4l2src_calls.c:1418
#, fuzzy, c-format
msgid "Could not map buffers from device '%s'"
msgstr "CD デバイスを読み取り用に開くことができません。"

#: sys/v4l2/v4l2src_calls.c:1426
#, c-format
msgid "The driver of device '%s' does not support any known capture method."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1471
#, c-format
msgid "Error starting streaming capture from device '%s'."
msgstr ""

#: sys/v4l2/v4l2src_calls.c:1515
#, c-format
msgid "Error stopping streaming capture from device '%s'."
msgstr ""

#: sys/ximage/gstximagesrc.c:722
msgid "Changing resolution at runtime is not yet supported."
msgstr ""

#: sys/ximage/gstximagesrc.c:736
msgid "Cannot operate without a clock"
msgstr ""

# SUN REVIEWED
#, fuzzy
#~ msgid "Could not read from CD."
#~ msgstr "ファイル \"%s\" に書き込むことができません。"

# SUN REVIEWED
#, fuzzy
#~ msgid "Disc is not an Audio CD."
#~ msgstr "デバイスが開いていません。"

# SUN REVIEWED
#, fuzzy
#~ msgid "Could not set parameters on device '%s'"
#~ msgstr "CD デバイスを読み取り用に開くことができません。"

# SUN REVIEWED
#~ msgid ""
#~ "GStreamer can play audio using any number of output elements. Some "
#~ "possible choices are osssink, esdsink and alsasink. The audiosink can be "
#~ "a partial pipeline instead of just one element."
#~ msgstr ""
#~ "オーディオを再生するとき、GStreamer は任意の数の出力要素を使用できます。使"
#~ "用できる出力要素は、osssink、esdsink、および alsasink です。audiosink は単"
#~ "なる 1 つの要素ではなく、パイプラインの一部になることができます。"

# SUN REVIEWED
#, fuzzy
#~ 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 は任意の数の出力要素を使用できます。使用で"
#~ "きる出力要素は、xvideosink、sdlvideosink、および aasink です。videosink は"
#~ "単なる 1 つの要素ではなく、パイプラインの一部になることができます。"

# SUN REVIEWED
#~ msgid ""
#~ "GStreamer can put visualization plugins in a pipeline to transform audio "
#~ "stream in video frames. Default is goom but more visualization plugins "
#~ "will be ported soon. The visualization plugin can be a partial pipeline "
#~ "instead of just one element."
#~ msgstr ""
#~ "GStreamer は視覚化プラグインをパイプラインに設定して、オーディオストリーム"
#~ "をビデオフレームに変換できます。デフォルトは goom ですが、より多くの視覚化"
#~ "プラグインがすぐに移植される予定です。視覚化プラグインは単なる 1 つの要素"
#~ "ではなく、パイプラインの一部になることができます。"

# SUN REVIEWED
#~ msgid ""
#~ "GStreamer can record audio using any number of input elements. Some "
#~ "possible choices are osssrc, esdsrc and alsasrc. The audio source can be "
#~ "a partial pipeline instead of just one element."
#~ msgstr ""
#~ "オーディオを記録するとき、GStreamer は任意の数の入力要素を使用できます。使"
#~ "用できる入力要素は、osssrc、esdsrc、および alsasrc です。オーディオソース"
#~ "は単なる 1 つの要素ではなく、パイプラインの一部になることができます。"

# SUN REVIEWED
#~ msgid ""
#~ "GStreamer can record video from any number of input elements. Some "
#~ "possible choices are v4lsrc and videotestsrc. The video source can be a "
#~ "partial pipeline instead of just one element."
#~ msgstr ""
#~ "ビデオを記録するとき、GStreamer は任意の数の入力要素を使用できます。使用で"
#~ "きる入力要素は、v4lsrc および videotestsrc です。ビデオソースは単なる 1 つ"
#~ "の要素ではなく、パイプラインの一部になることができます。"

# SUN REVIEWED
#~ msgid "default GStreamer audio source"
#~ msgstr "デフォルトの GStreamer オーディオソース"

# SUN REVIEWED
#~ msgid "default GStreamer audiosink"
#~ msgstr "デフォルトの GStreamer audiosink"

# SUN REVIEWED
#~ msgid "default GStreamer video source"
#~ msgstr "デフォルトの GStreamer ビデオソース"

# SUN REVIEWED
#~ msgid "default GStreamer videosink"
#~ msgstr "デフォルトの GStreamer videosink"

# SUN REVIEWED
#~ msgid "default GStreamer visualization plugin"
#~ msgstr "デフォルトの GStreamer 視覚化プラグイン"

# SUN REVIEWED
#, fuzzy
#~ msgid "description for default GStreamer audiosink"
#~ msgstr "デフォルトの GStreamer audiosink"

# SUN REVIEWED
#, fuzzy
#~ msgid "description for default GStreamer audiosrc"
#~ msgstr "デフォルトの GStreamer オーディオソース"
