ukui-media-3.1.1.2/0000755000175000017500000000000014565521701012334 5ustar fengfengukui-media-3.1.1.2/AUTHORS0000644000175000017500000000133214565521701013403 0ustar fengfengUKUI: Hao Lee MATE: Perberos Steve Zesch Stefano Karapetsas Michal Ratajsky GNOME Maintainers: Marc-Andre Lureau Bastien Nocera GNOME Authors: Andreas Hyden (grecord) Seth Nickell (gst-mixer) Ronald Bultje (gst-mixer) Thomas Vander Stichele (profiles) William Jon McCann (mate-volume-control) ukui-media-3.1.1.2/Makefile.am0000644000175000017500000000155214565521701014373 0ustar fengfengNULL = SUBDIRS = data po man DISTCHECK_CONFIGURE_FLAGS = \ --enable-more-warnings \ --enable-compile-warnings=maximum \ --enable-deprecated DIST_SUBDIRS = \ data \ po \ man \ $(NULL) EXTRA_DIST = \ .version \ autogen.sh \ configure \ ChangeLog \ COPYING \ COPYING-DOCS \ build-aux/git-version-gen \ $(INTLTOOL_BUILT:=.in) \ $(NULL) DISTCLEANFILES = \ po/.intltool-merge-cache \ $(NULL) ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} # see build-aux/git-version-get for details BUILT_SOURCES = $(top_srcdir)/.version $(top_srcdir)/.version: echo $(VERSION) > $@-t && mv $@-t $@ # Build ChangeLog from GIT history ChangeLog: $(AM_V_GEN) if test -d $(top_srcdir)/.git; then \ GIT_DIR="$(top_srcdir)/.git" git log --stat > $@; \ fi dist: ChangeLog .PHONY: ChangeLog -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/scripts/0000755000175000017500000000000014565521701014023 5ustar fengfengukui-media-3.1.1.2/scripts/detection_output_mode.sh0000755000175000017500000000155014565521701020765 0ustar fengfeng#!/bin/bash for USER in $(who | grep tty | awk '{print $1}' | sort | uniq);do USER_NAME=$USER # USER_NAME=$USER USER_ID=$(id -u "$USER_NAME") PULSE_SERVER="unix:/run/user/"$USER_ID"/pulse/native" OUTPUT_MODE="not available" FIND_STR=" analog-output" sudo -H -u ${USER_NAME} pactl --server $PULSE_SERVER list cards |grep analog-output > /tmp/kylin_headphone.tmp while read line;do index="$line" echo $line if [ -n "$index" ];then OUTPUT_MODE=${index#*usec, } OUTPUT_MODE=${OUTPUT_MODE%%)} echo "输出模式为" $OUTPUT_MODE fi if [[ $line =~ "analog-output-speaker" ]] && [[ $OUTPUT_MODE == "available" ]];then exit 0 elif [[ $line =~ "analog-output-headphone" ]] && [[ $OUTPUT_MODE == "available" ]];then exit 1 fi done < /tmp/kylin_headphone.tmp done rm -rf /tmp/kylin_headphone.tmp exit -1 ukui-media-3.1.1.2/ukui-media-control-led/0000755000175000017500000000000014567025031016603 5ustar fengfengukui-media-3.1.1.2/ukui-media-control-led/ukui-media-control-led.pro0000644000175000017500000000206514565521701023605 0ustar fengfeng#------------------------------------------------- # # Project created by QtCreator 2021-01-03T20:04:12 # #------------------------------------------------- QT += core gui dbus #greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = ukui-media-control-led TEMPLATE = app # The following define makes your compiler emit warnings if you use # any feature of Qt which as been marked as deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS # You can also make your code fail to compile if you use deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 target.path = /usr/bin SOURCES += \ main.cpp \ ukui_media_control_led.cpp HEADERS += \ ukui_media_control_led.h INSTALLS += \ target ukui-media-3.1.1.2/ukui-media-control-led/ukui_media_control_led.cpp0000644000175000017500000000501114567025031024004 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include UkuiMediaControlLed::UkuiMediaControlLed() { QDBusConnection::systemBus().connect(QString(),"/","org.ukui.media","systemOutputVolumeIsMute",this,SLOT(outputMuteChanged(QString))); QDBusConnection::systemBus().connect(QString(),"/","org.ukui.media","systemInputVolumeIsMute",this,SLOT(inputMuteChanged(QString))); } void UkuiMediaControlLed::outputMuteChanged(QString str) { QFile file("/sys/class/leds/platform::mute/brightness"); if(!file.exists()){ qDebug() << " THE DIRECTORY OR FILE IS NOT EXIST "; return; } qDebug() << "sink muted" << str; if (strstr(str.toLatin1().data(),"mute")) { qDebug() << "输出音量静音"; system("echo 1 > /sys/class/leds/platform::mute/brightness"); } else if (strstr(str.toLatin1().data(),"no")) { qDebug() << "输出音量取消静音"; system("echo 0 > /sys/class/leds/platform::mute/brightness"); } } void UkuiMediaControlLed::inputMuteChanged(QString str) { QFile file("/sys/class/leds/platform::micmute/brightness"); if(!file.exists()){ qDebug() << " THE DIRECTORY OR FILE IS NOT EXIST "; return; } qDebug() << "source muted" << str; if (strstr(str.toLatin1().data(),"mute")) { qDebug() << "输入音量静音"; system("echo 1 > /sys/class/leds/platform::micmute/brightness"); } else if (strstr(str.toLatin1().data(),"no")) { qDebug() << "输入音量取消静音"; system("echo 0 > /sys/class/leds/platform::micmute/brightness"); } } UkuiMediaControlLed::~UkuiMediaControlLed() { } ukui-media-3.1.1.2/ukui-media-control-led/ukui_media_control_led.h0000644000175000017500000000213514567025031023455 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include class UkuiMediaControlLed : public QObject { Q_OBJECT public: UkuiMediaControlLed(); ~UkuiMediaControlLed(); private slots: void outputMuteChanged(QString str); void inputMuteChanged(QString str); private: }; #endif // MATE_MEDIA_CONTROL_LED_H ukui-media-3.1.1.2/ukui-media-control-led/main.cpp0000644000175000017500000000165014567025031020235 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); UkuiMediaControlLed control; return a.exec(); } ukui-media-3.1.1.2/audio/0000755000175000017500000000000014604740356013440 5ustar fengfengukui-media-3.1.1.2/audio/customstyle.h0000644000175000017500000001760214565521701016207 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include "ukmedia_slider_tip_label_helper.h" /*! * \brief The CustomStyle class * \details * 自定义QStyle * 基于QProxyStyle,默认使用QProxyStyle的实例绘制控件,你需要针对某一个控件重新实现若干对应的接口。 * QProxyStyle可以从现有的qt style实例化,我们只需要知道这个style的名字即可。 * 这种做法带来了不错的扩展性和自由度,因为我们不需要将某个style的代码直接引入我们的项目中, * 也能够“继承”这个style类进行二次开发。 * * 下面的方法展现了QStyle的所有的接口,使用QStyle进行控件的绘制使得qt应用能够进行风格的切换, * 从而达到不修改项目源码却对应用外观产生巨大影响的效果。 * * \note * 需要注意QStyle与QSS并不兼容,因为QSS本身其实上也是QStyle的一种实现,对一个控件而言,本身理论上只能 * 在同一时间调用唯一一个QStyle进行绘制。 */ class CustomStyle : public QProxyStyle { Q_OBJECT public: explicit CustomStyle(const QString &proxyStyleName = "windows", QObject *parent = nullptr); ~CustomStyle(); /*! * \brief drawComplexControl * \param control 比如ScrollBar,对应CC枚举类型 * \param option * \param painter * \param widget * \details * drawComplexControl用于绘制具有子控件的复杂控件,它本身一般不直接绘制控件, * 而是通过QStyle的其它方法将复杂控件分解成子控件再调用其它的draw方法绘制。 * 如果你需要重新实现一个复杂控件的绘制方法,首先考虑的应该是在不改变它原有的绘制流程的情况下, * 对它调用到的其它方法进行重写。 * * 如果你不想使用原有的绘制流程,那你需要重写这个接口,然后自己实现一切, * 包括背景的绘制,子控件的位置和状态计算,子控件的绘制等。 * 所以,你需要对这个控件有足够的了解之后再尝试直接重写这个接口。 */ virtual void drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const; /*! * \brief drawControl * \param element 比如按钮,对应CE枚举类型 * \param option * \param painter * \param widget * \details * drawControl用于绘制基本控件元素,它本身一般只负责绘制控件的一部分或者一层。 * 如果你想要知道控件具体如何绘制,你需要同时研究这个控件的源码和QStyle中的源码, * 因为它们都有可能改变控件的绘制流程。 * * QStyle一般会遵循QCommonStyle的绘制流程,QCommenStyle是大部分主流style的最基类, * 它本身不能完全称之为一个主题,如果你直接使用它,你的控件将不能被正常绘制,因为它有可能只是 * 在特定的时候执行了特定却未实现的绘制方法,它更像一个框架或者规范。 */ virtual void drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; virtual void drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const; virtual void drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const; /*! * \brief drawPrimitive * \param element 背景绘制,对应PE枚举类型 * \param option * \param painter * \param widget * \details * drawPrimitive用于绘制控件背景,比如按钮和菜单的背景, * 我们一般需要判断控件的状态来绘制不同的背景, * 比如按钮的hover和点击效果。 */ virtual void drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const; virtual QStyle::SubControl hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const; virtual QRect itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const; virtual QRect itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const; //virtual int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option, const QWidget *widget); virtual int pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const; /*! * \brief polish * \param widget * \details * polish用于对widget进行预处理,一般我们可以在polish中修改其属性, * 另外,polish是对动画和特效实现而言十分重要的一个方法, * 通过polish我们能够使widget和特效和动画形成对应关系。 */ virtual void polish(QWidget *widget); virtual void polish(QApplication *application); virtual void polish(QPalette &palette); virtual void unpolish(QWidget *widget); virtual void unpolish(QApplication *application); virtual QSize sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const; virtual QIcon standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const; virtual QPalette standardPalette() const; /*! * \brief styleHint * \param hint 对应的枚举是SH * \param option * \param widget * \param returnData * \return * \details * styleHint比较特殊,通过它我们能够改变一些控件的绘制流程或者方式,比如说QMenu是否可以滚动。 */ virtual int styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const; /*! * \brief subControlRect * \param control * \param option * \param subControl * \param widget * \return * \details * subControlRect返回子控件的位置和大小信息,这个方法一般在内置流程中调用, * 如果我们要重写某个绘制方法,可能需要用到它 */ virtual QRect subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const; /*! * \brief subElementRect * \param element * \param option * \param widget * \return * \details * 与subControlRect类似 */ virtual QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const; Q_SIGNALS: public Q_SLOTS: private: SliderTipLabelHelper *m_helpTip; }; #endif // CUSTOMSTYLE_H ukui-media-3.1.1.2/audio/ukmedia_input_widget.cpp0000644000175000017500000001655114565521701020352 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukmedia_input_widget.h" #include #include #include UkmediaInputWidget::UkmediaInputWidget(QWidget *parent) : QWidget(parent) { m_pInputWidget = new QFrame(this); m_pVolumeWidget = new QFrame(m_pInputWidget); m_pInputLevelWidget = new QFrame(m_pInputWidget); m_pInputSlectWidget = new QFrame(m_pInputWidget); m_pNoiseReducteWidget = new QFrame(m_pInputWidget); m_pInputWidget->setFrameShape(QFrame::Shape::Box); m_pVolumeWidget->setFrameShape(QFrame::Shape::Box); m_pInputLevelWidget->setFrameShape(QFrame::Shape::Box); m_pInputSlectWidget->setFrameShape(QFrame::Shape::Box); m_pNoiseReducteWidget->setFrameShape(QFrame::Shape::Box); //设置大小 m_pInputWidget->setMinimumSize(550,244); m_pInputWidget->setMaximumSize(16777215,244); m_pVolumeWidget->setMinimumSize(550,60); m_pVolumeWidget->setMaximumSize(16777215,60); m_pInputLevelWidget->setMinimumSize(550,60); m_pInputLevelWidget->setMaximumSize(16777215,60); m_pInputSlectWidget->setMinimumSize(550,60); m_pInputSlectWidget->setMaximumSize(16777215,60); m_pNoiseReducteWidget->setMinimumSize(550,60); m_pNoiseReducteWidget->setMaximumSize(16777215,60); m_pInputLabel = new TitleLabel(this); //~ contents_path /Audio/Input m_pInputLabel->setText(tr("Input")); m_pInputLabel->setStyleSheet("color: palette(windowText);}"); //~ contents_path /Audio/Input Device m_pInputDeviceLabel = new QLabel(tr("Input Device"),m_pInputSlectWidget); m_pInputDeviceSelectBox = new QComboBox(m_pInputSlectWidget); //~ contents_path /Audio/Volume m_pIpVolumeLabel = new QLabel(tr("Volume"),m_pVolumeWidget); m_pInputIconBtn = new UkuiButtonDrawSvg(m_pVolumeWidget); m_pIpVolumeSlider = new AudioSlider(); m_pIpVolumePercentLabel = new QLabel(m_pVolumeWidget); //~ contents_path /Audio/Input Level m_pInputLevelLabel = new QLabel(tr("Input Level"),m_pInputLevelWidget); m_pInputLevelProgressBar = new QProgressBar(m_pInputLevelWidget); m_pInputLevelProgressBar->setStyle(new CustomStyle); m_pInputLevelProgressBar->setTextVisible(false); m_pInputIconBtn->setFocusPolicy(Qt::NoFocus); //~ contents_path /audio/Noise m_pNoiseReducteLabel = new QLabel(tr("Noise Reduction")); m_pNoiseReducteButton = new KSwitchButton(); //输入设备添加布局 m_pInputDeviceLabel->setFixedSize(120,40); m_pInputDeviceSelectBox->setFixedHeight(40); QHBoxLayout *inputdeviceSlectLayout = new QHBoxLayout(); inputdeviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); inputdeviceSlectLayout->addWidget(m_pInputDeviceLabel); inputdeviceSlectLayout->addItem(new QSpacerItem(113,20,QSizePolicy::Fixed)); inputdeviceSlectLayout->addWidget(m_pInputDeviceSelectBox); inputdeviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); inputdeviceSlectLayout->setSpacing(0); m_pInputSlectWidget->setLayout(inputdeviceSlectLayout); m_pInputSlectWidget->layout()->setContentsMargins(0,0,0,0); //主音量添加布局 QHBoxLayout *m_pMasterLayout = new QHBoxLayout(m_pVolumeWidget); m_pIpVolumeLabel->setFixedSize(110,40); m_pInputIconBtn->setFixedSize(24,24); m_pIpVolumeSlider->setFixedHeight(55); m_pIpVolumePercentLabel->setFixedSize(55,20); m_pIpVolumePercentLabel->setAlignment(Qt::AlignCenter); m_pMasterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); m_pMasterLayout->addWidget(m_pIpVolumeLabel); m_pMasterLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); m_pMasterLayout->addWidget(m_pInputIconBtn); m_pMasterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); m_pMasterLayout->addWidget(m_pIpVolumeSlider); m_pMasterLayout->addItem(new QSpacerItem(13,20,QSizePolicy::Maximum)); m_pMasterLayout->addWidget(m_pIpVolumePercentLabel); m_pMasterLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Maximum)); m_pMasterLayout->setSpacing(0); m_pVolumeWidget->setLayout(m_pMasterLayout); m_pVolumeWidget->layout()->setContentsMargins(0,0,0,0); //输入反馈添加布局 QHBoxLayout *m_pSoundLayout = new QHBoxLayout(m_pInputLevelWidget); m_pInputLevelLabel->setFixedSize(110,40); m_pSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); m_pSoundLayout->addWidget(m_pInputLevelLabel); m_pSoundLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); m_pSoundLayout->addWidget(m_pInputLevelProgressBar); m_pSoundLayout->addItem(new QSpacerItem(5,20,QSizePolicy::Fixed)); m_pSoundLayout->setSpacing(0); m_pInputLevelWidget->setLayout(m_pSoundLayout); m_pInputLevelWidget->layout()->setContentsMargins(0,0,0,0); //智能降噪 QHBoxLayout *noiseReducteLayout = new QHBoxLayout(m_pNoiseReducteWidget); noiseReducteLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); noiseReducteLayout->addWidget(m_pNoiseReducteLabel); noiseReducteLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); noiseReducteLayout->addWidget(m_pNoiseReducteButton); noiseReducteLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); noiseReducteLayout->setSpacing(0); m_pNoiseReducteWidget->setLayout(noiseReducteLayout); m_pNoiseReducteWidget->layout()->setContentsMargins(0,0,0,0); QFrame *inputselectAndVolume = myLine(); QFrame *volumeAndInputLevel = myLine(); //进行整体布局 m_pVlayout = new QVBoxLayout(m_pInputWidget); m_pVlayout->addWidget(m_pInputSlectWidget); m_pVlayout->addWidget(inputselectAndVolume); m_pVlayout->addWidget(m_pVolumeWidget); m_pVlayout->addWidget(volumeAndInputLevel); m_pVlayout->addWidget(m_pInputLevelWidget); m_pVlayout->addWidget(myLine()); m_pVlayout->addWidget(m_pNoiseReducteWidget); m_pVlayout->setSpacing(0); m_pInputWidget->setLayout(m_pVlayout); m_pInputWidget->layout()->setContentsMargins(0,0,0,0); QVBoxLayout *m_pVlayout1 = new QVBoxLayout(this); m_pVlayout1->addWidget(m_pInputLabel); m_pVlayout1->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); m_pVlayout1->addWidget(m_pInputWidget); this->setLayout(m_pVlayout1); this->layout()->setContentsMargins(0,0,0,0); } QFrame* UkmediaInputWidget::myLine() { QFrame *line = new QFrame(this); line->setMinimumSize(QSize(0, 1)); line->setMaximumSize(QSize(16777215, 1)); line->setLineWidth(0); line->setFrameShape(QFrame::HLine); line->setFrameShadow(QFrame::Sunken); return line; } UkmediaInputWidget::~UkmediaInputWidget() { } ukui-media-3.1.1.2/audio/ukmedia_output_widget.cpp0000644000175000017500000002326614565521701020554 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukmedia_output_widget.h" #include "ukui_list_widget_item.h" #include #include UkmediaOutputWidget::UkmediaOutputWidget(QWidget *parent) : QWidget(parent) { connect(qApp, &QApplication::paletteChanged, this, &UkmediaOutputWidget::onPaletteChanged); //加载qss样式文件 QFile QssFile("://combox.qss"); QssFile.open(QFile::ReadOnly); if (QssFile.isOpen()){ sliderQss = QLatin1String(QssFile.readAll()); QssFile.close(); } else { qDebug()<<"combox.qss is not found"<setFrameShape(QFrame::Shape::Box); m_pMasterVolumeWidget->setFrameShape(QFrame::Shape::Box); m_pChannelBalanceWidget->setFrameShape(QFrame::Shape::Box); m_pOutputSlectWidget->setFrameShape(QFrame::Shape::Box); m_pVolumeIncreaseWidget->setFrameShape(QFrame::Shape::Box); //设置大小 m_pOutputWidget->setMinimumSize(550,0); m_pOutputWidget->setMaximumSize(16777215,274); m_pMasterVolumeWidget->setMinimumSize(550,60); m_pMasterVolumeWidget->setMaximumSize(16777215,60); m_pChannelBalanceWidget->setMinimumSize(550,60); m_pChannelBalanceWidget->setMaximumSize(16777215,60); m_pOutputSlectWidget->setMinimumSize(550,60); m_pOutputSlectWidget->setMaximumSize(16777215,60); m_pVolumeIncreaseWidget->setMinimumSize(550,90); m_pVolumeIncreaseWidget->setMaximumSize(16777215,90); m_pOutputLabel = new TitleLabel(this); //~ contents_path /Audio/Output m_pOutputLabel->setText(tr("Output")); m_pOutputLabel->setStyleSheet("QLabel{color: palette(windowText);}"); //~ contents_path /Audio/Output Device m_pOutputDeviceLabel = new QLabel(tr("Output Device"),m_pOutputSlectWidget); m_pDeviceSelectBox = new QComboBox(m_pOutputSlectWidget); //~ contents_path /Audio/Master Volume m_pOpVolumeLabel = new QLabel(tr("Master Volume"),m_pMasterVolumeWidget); m_pOutputIconBtn = new UkuiButtonDrawSvg(m_pMasterVolumeWidget); m_pOpVolumeSlider = new AudioSlider(m_pMasterVolumeWidget); m_pOpVolumePercentLabel = new QLabel(m_pMasterVolumeWidget); //~ contents_path /Audio/Balance m_pOpBalanceLabel = new QLabel(tr("Balance"),m_pChannelBalanceWidget); m_pLeftBalanceLabel = new QLabel(tr("Left"),m_pChannelBalanceWidget); m_pOpBalanceSlider = new UkmediaVolumeSlider(m_pChannelBalanceWidget); m_pRightBalanceLabel = new QLabel(tr("Right"),m_pChannelBalanceWidget); //~ contents_path /audio/Noise VolumeIncreaseTipsWidget = new QWidget(m_pVolumeIncreaseWidget); m_pVolumeIncreaseLabel = new QLabel(tr("Volume Increase"),VolumeIncreaseTipsWidget); VolumeIncreaseTipsLabel = new QLabel(tr("Volume above 100% can cause sound distortion and damage your speakers."),VolumeIncreaseTipsWidget); m_pVolumeIncreaseButton = new KSwitchButton(); QPalette palette = VolumeIncreaseTipsLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); VolumeIncreaseTipsLabel->setPalette(palette); QVBoxLayout *vlay = new QVBoxLayout(this); vlay->addStretch(); vlay->addWidget(m_pVolumeIncreaseLabel); vlay->addWidget(VolumeIncreaseTipsLabel); vlay->addStretch(); vlay->setSpacing(0); VolumeIncreaseTipsWidget->setLayout(vlay); VolumeIncreaseTipsWidget->layout()->setContentsMargins(0,0,0,0); m_pOutputIconBtn->setFocusPolicy(Qt::NoFocus); //选择输出设备框添加布局 m_pOutputDeviceLabel->setFixedSize(140,20); m_pDeviceSelectBox->setFixedHeight(40); QHBoxLayout *deviceSlectLayout = new QHBoxLayout(); deviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); deviceSlectLayout->addWidget(m_pOutputDeviceLabel); deviceSlectLayout->addItem(new QSpacerItem(93,20,QSizePolicy::Fixed)); deviceSlectLayout->addWidget(m_pDeviceSelectBox); deviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); deviceSlectLayout->setSpacing(0); m_pOutputSlectWidget->setLayout(deviceSlectLayout); m_pOutputSlectWidget->layout()->setContentsMargins(0,0,0,0); //主音量添加布局 QHBoxLayout *masterLayout = new QHBoxLayout(m_pMasterVolumeWidget); m_pOpVolumeLabel->setFixedSize(140,20); m_pOutputIconBtn->setFixedSize(24,24); m_pOpVolumeSlider->setFixedHeight(55); m_pOpVolumePercentLabel->setFixedSize(55,20); m_pOpVolumePercentLabel->setAlignment(Qt::AlignCenter); masterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); masterLayout->addWidget(m_pOpVolumeLabel); masterLayout->addItem(new QSpacerItem(93,20,QSizePolicy::Fixed)); masterLayout->addWidget(m_pOutputIconBtn); masterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); masterLayout->addWidget(m_pOpVolumeSlider); masterLayout->addItem(new QSpacerItem(14,20,QSizePolicy::Fixed)); masterLayout->addWidget(m_pOpVolumePercentLabel); masterLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Fixed)); masterLayout->setSpacing(0); m_pMasterVolumeWidget->setLayout(masterLayout); m_pMasterVolumeWidget->layout()->setContentsMargins(0,0,0,0); //声道平衡添加布局 QHBoxLayout *soundLayout = new QHBoxLayout(m_pChannelBalanceWidget); m_pOpBalanceLabel->setFixedSize(110,20); m_pLeftBalanceLabel->setFixedSize(40,30); m_pOpBalanceSlider->setFixedHeight(55); m_pRightBalanceLabel->setFixedSize(55,30); m_pRightBalanceLabel->setAlignment(Qt::AlignCenter); soundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); soundLayout->addWidget(m_pOpBalanceLabel); soundLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); soundLayout->addWidget(m_pLeftBalanceLabel); // soundLayout->addItem(new QSpacerItem(26,20,QSizePolicy::Fixed)); soundLayout->addWidget(m_pOpBalanceSlider); soundLayout->addItem(new QSpacerItem(14,20,QSizePolicy::Fixed)); soundLayout->addWidget(m_pRightBalanceLabel); soundLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Fixed)); soundLayout->setSpacing(0); m_pChannelBalanceWidget->setLayout(soundLayout); m_pChannelBalanceWidget->layout()->setContentsMargins(0,0,0,0); //音量增强 QHBoxLayout *volumeIncreaseLayout = new QHBoxLayout(m_pVolumeIncreaseWidget); volumeIncreaseLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); volumeIncreaseLayout->addWidget(VolumeIncreaseTipsWidget); volumeIncreaseLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); volumeIncreaseLayout->addWidget(m_pVolumeIncreaseButton); volumeIncreaseLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); volumeIncreaseLayout->setSpacing(0); m_pVolumeIncreaseWidget->setLayout(volumeIncreaseLayout); m_pVolumeIncreaseWidget->layout()->setContentsMargins(0,0,0,0); QFrame *outputselectAndVolume = myLine(); QFrame *volumeAndBalance = myLine(); //进行整体布局 m_pVlayout = new QVBoxLayout(m_pOutputWidget); m_pVlayout->setContentsMargins(0,0,0,0); m_pVlayout->addWidget(m_pOutputSlectWidget); m_pVlayout->addWidget(outputselectAndVolume); m_pVlayout->addWidget(m_pMasterVolumeWidget); m_pVlayout->addWidget(volumeAndBalance); m_pVlayout->addWidget(m_pChannelBalanceWidget); m_pVlayout->addWidget(myLine()); m_pVlayout->addWidget(m_pVolumeIncreaseWidget); m_pVlayout->setSpacing(0); // m_pOutputWidget->setLayout(m_pVlayout); // m_pOutputWidget->layout()->setContentsMargins(0,0,0,0); QVBoxLayout *vLayout1 = new QVBoxLayout(this); vLayout1->addWidget(m_pOutputLabel); vLayout1->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); vLayout1->addWidget(m_pOutputWidget); this->setLayout(vLayout1); this->layout()->setContentsMargins(0,0,0,0); m_pMasterVolumeWidget->setObjectName("masterVolumeWidget"); //设置样式 m_pOutputLabel->setObjectName("m_pOutputLabel"); } void UkmediaOutputWidget::setOutputVolumeSliderRang(bool status) { if (status) m_pOpVolumeSlider->setRange(0,125); else m_pOpVolumeSlider->setRange(0,100); } QFrame* UkmediaOutputWidget::myLine() { QFrame *line = new QFrame(this); line->setMinimumSize(QSize(0, 1)); line->setMaximumSize(QSize(16777215, 1)); line->setLineWidth(0); line->setFrameShape(QFrame::HLine); line->setFrameShadow(QFrame::Sunken); return line; } void UkmediaOutputWidget::onPaletteChanged(){ QPalette palette = VolumeIncreaseTipsLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); VolumeIncreaseTipsLabel->setPalette(palette); } UkmediaOutputWidget::~UkmediaOutputWidget() { } ukui-media-3.1.1.2/audio/ukui_custom_style.cpp0000644000175000017500000002646014565521701017740 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukui_custom_style.h" #include #include #include #include #include #include #include #include #include AudioSlider::AudioSlider(QWidget *parent) : KSlider(parent) { Q_UNUSED(parent); setRange(0,100); setSliderType(SmoothSlider); setOrientation(Qt::Horizontal); setFocusPolicy(Qt::StrongFocus); setNodeVisible(false); } void AudioSlider::wheelEvent(QWheelEvent *e) { if (this->value() - blueValue >= 10 || blueValue - this->value() >= 10) { blueValue = value(); Q_EMIT blueValueChanged(blueValue); } return KSlider::wheelEvent(e); } void AudioSlider::keyReleaseEvent(QKeyEvent *e) { Q_EMIT blueValueChanged(this->value()); return KSlider::keyReleaseEvent(e); } void AudioSlider::mouseMoveEvent(QMouseEvent *e) { isMouseWheel = true; if (this->value() - blueValue >= 10 || blueValue - this->value() >= 10) { blueValue = value(); Q_EMIT blueValueChanged(blueValue); } return KSlider::mouseMoveEvent(e); } void AudioSlider::mouseReleaseEvent(QMouseEvent *e) { isMouseWheel = false; Q_EMIT blueValueChanged(this->value()); return KSlider::mouseReleaseEvent(e); } AudioSlider::~AudioSlider() { } UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent) : KSlider(parent) { Q_UNUSED(parent); setRange(-100,100); setSingleStep(100); setTickInterval(100); setSliderType(SmoothSlider); setOrientation(Qt::Horizontal); setFocusPolicy(Qt::StrongFocus); this->installEventFilter(this); } void UkmediaVolumeSlider::showTooltip() { QString percent = QString::number(this->value()); percent.append("%"); QStyleOptionSlider opt; this->initStyleOption(&opt); QRect handleRect = this->style()->subControlRect(QStyle::CC_Slider, &opt, QStyle::SC_SliderHandle, this); QPoint point = this->mapToGlobal(handleRect.topLeft()); QFontMetrics fontMetrics = QFontMetrics(this->font()); QRect fontRect = fontMetrics.boundingRect(percent); QToolTip::showText(point - QPoint(fontRect.width()/2 +3, fontRect.height() + 35), percent); return; } bool UkmediaVolumeSlider::eventFilter(QObject *watched, QEvent *event) { if (watched == this) { if (event->type() == QEvent::HoverEnter || event->type() == QEvent::KeyRelease || event->type() == QEvent::MouseMove || event->type() == QEvent::MouseButtonRelease) { showTooltip(); } } return KSlider::eventFilter(watched, event); } void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) { KSlider::initStyleOption(option); } UkmediaVolumeSlider::~UkmediaVolumeSlider() { } void UkuiButtonDrawSvg::init(QImage img, QColor color) { mImage = img; mColor = color; } void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) { QStyleOption opt; opt.init(this); QPainter p(this); p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); p.setPen(Qt::NoPen); QPainterPath path; opt.rect.adjust(0,0,0,0); path.addRoundedRect(opt.rect,6,6); p.setRenderHint(QPainter::Antialiasing); // 反锯齿; p.drawRoundedRect(opt.rect,6,6); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } QRect UkuiButtonDrawSvg::IconGeometry() { QRect res = QRect(QPoint(0,0),QSize(24,24)); res.moveCenter(QRect(0,0,width(),height()).center()); return res; } void UkuiButtonDrawSvg::draw(QPaintEvent* e) { Q_UNUSED(e); QPainter painter(this); QRect iconRect = IconGeometry(); if (mImage.size() != iconRect.size()) { mImage = mImage.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); QRect r = mImage.rect(); r.moveCenter(iconRect.center()); iconRect = r; } this->setProperty("fillIconSymbolicColor", true); filledSymbolicColoredPixmap(mImage,mColor); painter.drawImage(iconRect, mImage); } bool UkuiButtonDrawSvg::event(QEvent *event) { switch (event->type()) { case QEvent::Paint: draw(static_cast(event)); break; case QEvent::Move: case QEvent::Resize: { QRect rect = IconGeometry(); } break; case QEvent::MouseButtonPress: case QEvent::MouseButtonRelease: case QEvent::MouseButtonDblClick: event->accept(); break; default: break; } return QPushButton::event(event); } UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) { Q_UNUSED(parent); } UkuiButtonDrawSvg::~UkuiButtonDrawSvg() { } QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) { for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { int hue = color.hue(); if (!qAbs(hue - symbolic_color.hue()) < 10) { color.setRed(baseColor.red()); color.setGreen(baseColor.green()); color.setBlue(baseColor.blue()); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } CustomSound::CustomSound() { } CustomSound::~CustomSound() { delete(file); delete(doc); file->close(); } bool CustomSound::createAudioFile() { //打开或创建文件 QFile *file; QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; if(!QFile::exists(audioPath)){ file = new QFile(audioPath); if(!file->open(QFile::WriteOnly)) return false; //写入xml头部 QDomDocument doc; QDomProcessingInstruction instruction; //添加处理命令 instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); doc.appendChild(instruction); //添加根节点 QDomElement root = doc.createElement("root"); doc.appendChild(root); //添加子节点 QDomElement node = doc.createElement("firstRun"); QDomElement init = doc.createElement("init"); //创建子元素 QDomText text = doc.createTextNode("true"); init.appendChild(text); node.appendChild(init); root.appendChild(node); //输出到文件 QTextStream out_stream(file); doc.save(out_stream,4); //缩进4格 file->close(); return true; } return true; } //判断某个节点是否存在 bool CustomSound::isExist(QString nodeName) { if (nodeName == "") return false; //打开文件 QString errorStr; int errorLine; int errorCol; QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); if(!file.exists()) createAudioFile(); if(file.open(QFile::ReadOnly)){ QDomDocument doc; if(doc.setContent(&file,true,&errorStr,&errorLine,&errorCol)){ file.close(); QDomElement root = doc.documentElement(); QDomElement ele = root.firstChildElement(); nodeName.remove(" "); nodeName.remove("/"); nodeName.remove("("); nodeName.remove(")"); nodeName.remove("["); nodeName.remove("]"); if(nodeName.at(0)>='0' && nodeName.at(0)<='9'){ nodeName = "Audio_"+nodeName; } while(!ele.isNull()) { if(ele.nodeName() == nodeName) return true; ele = ele.nextSiblingElement(); } } else { qDebug() << errorStr << "line: " << errorLine << "col: " << errorCol; } file.close(); } return false; } //添加第一个子节点及其子元素 int CustomSound::addXmlNode(QString nodeName, bool initState) { //打开文件 QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); QDomDocument doc;//增加一个一级子节点以及元素 if(file.open(QFile::ReadOnly)){ if(doc.setContent(&file)){ file.close(); } else { file.close(); return -1; } } else return -1; //添加新节点 nodeName.remove(" "); nodeName.remove("/"); nodeName.remove("("); nodeName.remove(")"); nodeName.remove("["); nodeName.remove("]"); if(nodeName.at(0)>='0' && nodeName.at(0)<='9'){ nodeName = "Audio_"+nodeName; } QDomElement root=doc.documentElement(); QDomElement node=doc.createElement(nodeName); QDomElement init=doc.createElement("init"); QDomText text; if(initState) text = doc.createTextNode("true"); else text = doc.createTextNode("false"); init.appendChild(text); node.appendChild(init); root.appendChild(node); qDebug() << "addXmlNode" << nodeName ; //修改first-run状态 QDomElement ele = root.firstChildElement(); while(!ele.isNull()) { if(ele.nodeName() == "firstRun"){ QString value = ele.firstChildElement().firstChild().nodeValue(); if(value == "true") ele.firstChildElement().firstChild().setNodeValue("false"); } ele = ele.nextSiblingElement(); } if(file.open(QFile::WriteOnly|QFile::Truncate)) { //输出到文件 QTextStream out_stream(&file); doc.save(out_stream,4); //缩进4格 file.close(); } return 0; } bool CustomSound::isFirstRun() { QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); if(!file.exists()){ createAudioFile(); } if(file.open(QFile::ReadOnly)){ QDomDocument doc; if(doc.setContent(&file)){ file.close(); QDomElement root = doc.documentElement(); QDomElement ele = root.firstChildElement(); qDebug()<<"===================ele.nodeName() :"< #endif #include #include #include #include #include #include #include #include #include //pa_sink_info *m_pDefaultSink; /* Used for profile sorting */ int reconnect_timeout; struct profile_prio_compare { bool operator() (pa_card_profile_info2 const * const lhs, pa_card_profile_info2 const * const rhs) const { if (lhs->priority == rhs->priority) return strcmp(lhs->name, rhs->name) > 0; return lhs->priority > rhs->priority; } }; struct sink_port_prio_compare { bool operator() (const pa_sink_port_info& lhs, const pa_sink_port_info& rhs) const { if (lhs.priority == rhs.priority) return strcmp(lhs.name, rhs.name) > 0; return lhs.priority > rhs.priority; } }; struct source_port_prio_compare { bool operator() (const pa_source_port_info& lhs, const pa_source_port_info& rhs) const { if (lhs.priority == rhs.priority) return strcmp(lhs.name, rhs.name) > 0; return lhs.priority > rhs.priority; } }; UkmediaVolumeControl::UkmediaVolumeControl(): canRenameDevices(false), m_connected(false), m_config_filename(nullptr) { profileNameMap.clear(); connectToPulse(this); } /* * 设置输出设备静音 */ bool UkmediaVolumeControl::setSinkMute(bool status) { pa_operation* o; if (!(o = pa_context_set_sink_mute_by_index(getContext(), sinkIndex, status, nullptr, nullptr))) { showError(tr("pa_context_set_sink_volume_by_index() failed").toUtf8().constData()); return false; } return true; } /* * 设置输出设备音量 */ bool UkmediaVolumeControl::setSinkVolume(int index,int value) { pa_cvolume v = m_pDefaultSink->volume; v.channels = channel; for (int i=0;ivolume; v.channels = inputChannel; for (int i=0;ivolume; v.channels = channel; for (int i=0;ivolume; v.channels = sinkInputChannel; for (int i=0;ivolume; v.channels = sourceOutputChannel; for (int i=0;i= 13) { pa_operation* o; if (peakDetectIndex != -1){ qDebug() <<"killall source output index from setDefaultSource" << peakDetectIndex; if (!(o = pa_context_kill_source_output(getContext(), peakDetectIndex, nullptr, nullptr))) showError(tr("pa_context_set_default_source() failed").toUtf8().constData()); } if (sourceOutputVector.count()) sourceOutputVector.removeAt(0); sourceOutputVector.append(sourceIndex); peak = createMonitorStreamForSource(sourceIndex, -1, !!(sourceFlags & PA_SOURCE_NETWORK)); } }); return true; } /* * 设置输出设备的端口 */ bool UkmediaVolumeControl::setSinkPort(const gchar *sinkName, const gchar *portName) { qDebug() << "setSinkPort" << sinkName << portName; pa_operation* o; if (!(o = pa_context_set_sink_port_by_name(getContext(), sinkName, portName, nullptr, nullptr))) { showError(tr("pa_context_set_sink_port_by_name() failed").toUtf8().constData()); return false; } return true; } /* * 设置输入设备端口 */ bool UkmediaVolumeControl::setSourcePort(const gchar *sourceName, const gchar *portName) { qDebug() << "setSourcePort" << sourceName << portName; pa_operation* o; if (!(o = pa_context_set_source_port_by_name(getContext(), sourceName, portName, nullptr, nullptr))) { showError(tr("pa_context_set_source_port_by_name() failed").toUtf8().constData()); return false; } return true; } UkmediaVolumeControl::~UkmediaVolumeControl() { while (!clientNames.empty()) { auto i = clientNames.begin(); g_free(i->second); clientNames.erase(i); } } static void updatePorts(UkmediaVolumeControl *d, std::map &ports) { std::map::iterator it; PortInfo p; for (auto & port : d->dPorts) { QByteArray desc; it = ports.find(port.first); if (it == ports.end()) continue; p = it->second; desc = p.description; if (p.available == PA_PORT_AVAILABLE_YES) desc += UkmediaVolumeControl::tr(" (plugged in)").toUtf8().constData(); else if (p.available == PA_PORT_AVAILABLE_NO) { if (p.name == "analog-output-speaker" || p.name == "analog-input-microphone-internal") desc += UkmediaVolumeControl::tr(" (unavailable)").toUtf8().constData(); else desc += UkmediaVolumeControl::tr(" (unplugged)").toUtf8().constData(); } port.second = desc; qDebug() << "updatePorts" << p.name << p.description; } Q_EMIT d->updatePortSignal(); it = ports.find(d->activePort); if (it != ports.end()) { p = it->second; // d->setLatencyOffset(p.latency_offset); } } static void setIconByName(QLabel* label, const char* name) { QIcon icon = QIcon::fromTheme(name); int size = label->style()->pixelMetric(QStyle::PM_ToolBarIconSize); QPixmap pix = icon.pixmap(size, size); label->setPixmap(pix); } void UkmediaVolumeControl::updateCard(UkmediaVolumeControl *c, const pa_card_info &info) { bool insertInputPort = false; bool insertOutputPort = false; bool is_new = false; const char *description; QMap tempInput; QMap tempOutput; QList profileName; QMapportMap; QMap outputPortNameLabelMap; QMapinputPortNameLabelMap; QMap profilePriorityMap; std::set profile_priorities; description = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_DESCRIPTION);//获取device.description字符串 hasSinks = c->hasSources = false; profile_priorities.clear(); for (pa_card_profile_info2 ** p_profile = info.profiles2; *p_profile != nullptr; ++p_profile) { // c->hasSinks = c->hasSinks || ((*p_profile)->n_sinks > 0); // c->hasSources = c->hasSources || ((*p_profile)->n_sources > 0); profile_priorities.insert(*p_profile); profileName.append((*p_profile)->name); profilePriorityMap.insertMulti((*p_profile)->name,(*p_profile)->priority); } // cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); QList> cardProfilePriorityMapList; if(cardProfilePriorityMap.isEmpty()) cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); cardProfilePriorityMapList = cardProfilePriorityMap.values(); if(!cardProfilePriorityMapList.contains(profilePriorityMap)) cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); c->ports.clear(); for (uint32_t i = 0; i < info.n_ports; ++i) { PortInfo p; p.name = info.ports[i]->name; p.description = info.ports[i]->description; p.priority = info.ports[i]->priority; p.available = info.ports[i]->available; p.direction = info.ports[i]->direction; p.latency_offset = info.ports[i]->latency_offset; if (info.ports[i]->profiles2) for (pa_card_profile_info2 ** p_profile = info.ports[i]->profiles2; *p_profile != nullptr; ++p_profile) { p.profiles.push_back((*p_profile)->name); } if (p.direction == 1 && p.available != PA_PORT_AVAILABLE_NO) { // portMap.insertMulti(p.name,p.description.data()); insertOutputPort = true; //新增UI设计,combobox显示portname+description QString outputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) QString outputPortName_and_description = outputPortName + "(" + description + ")"; qDebug() << "add sink port name "<< info.index << p.name << p.description.data() << description ; tempOutput.insertMulti(p.name,outputPortName_and_description); QList portProfileName; for (auto p_profile : p.profiles) { portProfileName.append(p_profile.data()); outputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); qDebug() << "ctf profilename map insert -----------" << p.description.data() << p_profile.data(); } profileNameMap.insert(info.index,outputPortNameLabelMap); cardProfileMap.insert(info.index,portProfileName); } else if (p.direction == 2 && p.available != PA_PORT_AVAILABLE_NO){ insertInputPort = true; //新增UI设计,combobox显示portname+description QString inputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) QString inputPortName_and_description = inputPortName + "(" + description + ")"; qDebug() << "add source port name "<< info.index << p.name << p.description.data(); tempInput.insertMulti(p.name,inputPortName_and_description); QList portProfileName; for (auto p_profile : p.profiles) { portProfileName.append(p_profile.data()); inputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); } inputPortProfileNameMap.insert(info.index,inputPortNameLabelMap); cardProfileMap.insert(info.index,portProfileName); } c->ports[p.name] = p; } if (insertInputPort) { inputPortMap.insert(info.index,tempInput); } else { inputPortMap.remove(info.index); } if (insertOutputPort) { outputPortMap.insert(info.index,tempOutput); } else { outputPortMap.remove(info.index); } cardActiveProfileMap.insert(info.index,info.active_profile->name); c->profiles.clear(); for (auto p_profile : profile_priorities) { bool hasNo = false, hasOther = false; std::map::iterator portIt; QByteArray desc = p_profile->description; for (portIt = c->ports.begin(); portIt != c->ports.end(); portIt++) { PortInfo port = portIt->second; if (std::find(port.profiles.begin(), port.profiles.end(), p_profile->name) == port.profiles.end()) continue; if (port.available == PA_PORT_AVAILABLE_NO) hasNo = true; else { hasOther = true; break; } } if (hasNo && !hasOther) desc += tr(" (unplugged)").toUtf8().constData(); if (!p_profile->available) desc += tr(" (unavailable)").toUtf8().constData(); c->profiles.push_back(std::pair(p_profile->name, desc)); if (p_profile->n_sinks == 0 && p_profile->n_sources == 0) c->noInOutProfile = p_profile->name; } c->activeProfile = info.active_profile ? info.active_profile->name : ""; /* Because the port info for sinks and sources is discontinued we need * to update the port info for them here. */ updatePorts(c,c->ports); if (is_new) updateDeviceVisibility(); Q_EMIT checkDeviceSelectionSianal(&info); // c->updating = false; } /* * Update output device when the default output device or port is updated */ bool UkmediaVolumeControl::updateSink(UkmediaVolumeControl *w,const pa_sink_info &info) { bool is_new = false; m_defaultSinkVolume = info.volume; QMaptemp; int volume; if (info.volume.channels >= 2) volume = MAX(info.volume.values[0],info.volume.values[1]); else volume = info.volume.values[0]; //默认的输出音量 if (info.name && strcmp(defaultSinkName.data(),info.name) == 0) { //channel和sinkIndex在此处必须更新 channel = info.volume.channels; sinkIndex= info.index; balance = pa_cvolume_get_balance(&info.volume,&info.channel_map); defaultChannelMap = info.channel_map; channelMap = info.channel_map; if (info.active_port) { sinkActivePortMap.insert(info.name,info.active_port->name);//huawei特殊处理 if(strcmp(sinkPortName.toLatin1().data(),info.active_port->name) != 0){ sinkPortName = info.active_port->name; QTimer::singleShot(100,this,SLOT(timeoutSlot())); } else sinkPortName = info.active_port->name; } defaultOutputCard = info.card; /* bug:96232、95568、95523 解决 hw-panguw 机型,找不到对于sinkPortName导致音量无法同步、静音按钮只能按一次等问题 */ QString temp = ""; if (sinkPortName.contains("histen-algo",Qt::CaseInsensitive)) { sinkPortName = findSinkActivePortName(PANGUW_SINK); temp = "histen-algo"; } if (sinkVolume != volume || sinkMuted != info.mute) { if(temp != "") sinkPortName = temp; sinkVolume = volume; sinkMuted = info.mute; Q_EMIT updateVolume(sinkVolume,sinkMuted); } } if (info.ports) { for (pa_sink_port_info ** sinkPort = info.ports; *sinkPort != nullptr; ++sinkPort) { temp.insertMulti(info.name,(*sinkPort)->name); } QList > sinkPortMapList; if(sinkPortMap.isEmpty()) sinkPortMap.insertMulti(info.card,temp); sinkPortMapList = sinkPortMap.values(); if(!sinkPortMapList.contains(temp)) sinkPortMap.insertMulti(info.card,temp); qDebug() << "updateSink" << "defauleSinkName:" << defaultSinkName.data() << "sinkport" << sinkPortName << "sinkVolume" << sinkVolume ; const char *icon; // std::map::iterator cw; std::set port_priorities; port_priorities.clear(); for (uint32_t i=0; iports.clear(); } if (is_new) updateDeviceVisibility(); return is_new; } QString UkmediaVolumeControl::findSinkActivePortName(QString name) { QString portName = ""; QMap::iterator at; for (at=sinkActivePortMap.begin();at!=sinkActivePortMap.end();++at) { if (at.key() == name) { portName = at.value(); break; } } return portName; } QString UkmediaVolumeControl::stringRemoveUnrecignizedChar(QString str) { str.remove(" "); str.remove("/"); str.remove("("); str.remove(")"); str.remove("["); str.remove("]"); return str; } /* * stream suspend callback */ static void suspended_callback(pa_stream *s, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (pa_stream_is_suspended(s)) w->updateVolumeMeter(pa_stream_get_device_index(s), PA_INVALID_INDEX, -1); } void UkmediaVolumeControl::readCallback(pa_stream *s, size_t length, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); const void *data; double v; int index; index = pa_stream_get_device_index(s); QString deviceName = pa_stream_get_device_name(s); QString sourceName = w->defaultSourceName; if(strcmp(deviceName.toLatin1().data(),sourceName.toLatin1().data()) == 0) { if (pa_stream_peek(s, &data, &length) < 0) { w->showError(UkmediaVolumeControl::tr("Failed to read data from stream").toUtf8().constData()); return; } } else { return; } if (!data) { /* nullptr data means either a hole or empty buffer. * Only drop the stream when there is a hole (length > 0) */ if (length) pa_stream_drop(s); return; } assert(length > 0); assert(length % sizeof(float) == 0); v = ((const float*) data)[length / sizeof(float) -1]; pa_stream_drop(s); if (v < 0) v = 0; if (v > 1) v = 1; // qDebug() << "readCallback" << index << w->sourceIndex; if(/*index == w->sourceIndex && */strcmp(deviceName.toLatin1().data(),sourceName.toLatin1().data()) == 0 && !strstr(deviceName.toLatin1().data(),"monitor")) { w->updateVolumeMeter(index,pa_stream_get_monitor_stream(s),v); } } pa_stream* UkmediaVolumeControl::createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx = -1, bool suspend = false) { pa_stream *s; char t[16]; pa_buffer_attr attr; pa_sample_spec ss; pa_stream_flags_t flags; ss.channels = 1; ss.format = PA_SAMPLE_FLOAT32; ss.rate = 25; memset(&attr, 0, sizeof(attr)); attr.fragsize = sizeof(float); attr.maxlength = (uint32_t) -1; snprintf(t, sizeof(t), "%u", source_idx); m_pPaContext = getContext(); if (!(s = pa_stream_new(getContext(), tr("Peak detect").toUtf8().constData(), &ss, nullptr))) { showError(tr("Failed to create monitoring stream").toUtf8().constData()); return nullptr; } if (stream_idx != (uint32_t) -1) pa_stream_set_monitor_stream(s, stream_idx); pa_stream_set_read_callback(s, readCallback, this); pa_stream_set_suspended_callback(s, suspended_callback, this); flags = (pa_stream_flags_t) (PA_STREAM_DONT_MOVE | PA_STREAM_PEAK_DETECT | PA_STREAM_ADJUST_LATENCY | (suspend ? PA_STREAM_DONT_INHIBIT_AUTO_SUSPEND : PA_STREAM_NOFLAGS) /*| (!showVolumeMetersCheckButton->isChecked() ? PA_STREAM_START_CORKED : PA_STREAM_NOFLAGS)*/); if (pa_stream_connect_record(s, t, &attr, flags) < 0) { showError(tr("Failed to connect monitoring stream").toUtf8().constData()); pa_stream_unref(s); return nullptr; } return s; } void UkmediaVolumeControl::updateSource(const pa_source_info &info) { bool is_new = false; int volume; if (info.volume.channels >= 2) volume = MAX(info.volume.values[0],info.volume.values[1]); else volume = info.volume.values[0]; if(pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) masterDevice = pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE); //默认的输出音量 if (info.name && strcmp(defaultSourceName.data(),info.name) == 0) { //sourceIndex和inputChannel必须在此处刷新 sourceIndex = info.index; inputChannel = info.volume.channels; defaultInputCard = info.card; if(masterDevice != "" && strcmp(info.name,NOISE_REDUCE_SOURCE) == 0){ int cardIndex = findPortSourceIndex(masterDevice); if(cardIndex){ defaultInputCard = cardIndex; sourcePortName = findSourcePortName(cardIndex); QTimer::singleShot(100,this,SLOT(timeoutSlot())); } } if (info.active_port) { if(strcmp(sourcePortName.toLatin1().data(),info.active_port->name) != 0) { sourcePortName = info.active_port->name; QTimer::singleShot(100,this,SLOT(timeoutSlot())); } else sourcePortName = info.active_port->name; } if (sourceVolume != volume || sourceMuted != info.mute) { sourceVolume = volume; sourceMuted = info.mute; Q_EMIT updateSourceVolume(sourceVolume,sourceMuted); } } if (info.index == sourceIndex && !strstr(info.name,".monitor") && !sourceOutputVector.contains(info.index) && pa_context_get_server_protocol_version(getContext()) >= 13) { sourceFlags = info.flags; qDebug() << "createMonitorStreamForSource" <temp; if(info.ports) { for (pa_source_port_info ** sourcePort = info.ports; *sourcePort != nullptr; ++sourcePort) { temp.insertMulti(info.name,(*sourcePort)->name); } QList> sourcePortMapList; if(sourcePortMap.isEmpty()) sourcePortMap.insertMulti(info.card,temp); sourcePortMapList = sourcePortMap.values(); if(!sourcePortMapList.contains(temp)){ sourcePortMap.insertMulti(info.card,temp); } qDebug() << "update Source" << "defauleSourceName:" << defaultSourceName.data() << "sourcePortName" << sourcePortName << "sourceVolume" << sourceVolume ; } if (is_new) updateDeviceVisibility(); } void UkmediaVolumeControl::setIconFromProplist(QLabel *icon, pa_proplist *l, const char *def) { const char *t; if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_WINDOW_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_APPLICATION_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ROLE))) { if (t && strcmp(t, "video") == 0 || strcmp(t, "phone") == 0) goto finish; if (strcmp(t, "music") == 0) { t = "audio"; goto finish; } if (strcmp(t, "game") == 0) { t = "applications-games"; goto finish; } if (strcmp(t, "event") == 0) { t = "dialog-information"; goto finish; } } t = def; finish: setIconByName(icon, t); } void UkmediaVolumeControl::updateSinkInput(const pa_sink_input_info &info) { sinkInputChannel = info.volume.channels; const char *t; if ((t = pa_proplist_gets(info.proplist, "module-stream-restore.id"))) { if (t && strcmp(t, "sink-input-by-media-role:event") == 0) { g_debug("%s", tr("Ignoring sink-input due to it being designated as an event and thus handled by the Event widget").toUtf8().constData()); return; } } const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); const gchar *appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); //没制定应用名称的不加入到应用音量中 if (description && !strstr(description,"QtPulseAudio")) { if (!info.corked) { sinkInputMap.insert(description,info.volume.values[0]); if (!sinkInputList.contains(description)) { sinkInputList.append(description); Q_EMIT addSinkInputSignal(description,appId,info.index); } } else { Q_EMIT removeSinkInputSignal(description); sinkInputList.removeAll(description); QMap::iterator it; for(it = sinkInputMap.begin();it!=sinkInputMap.end();) { if(it.key() == description) { sinkInputMap.erase(it); break; } ++it; } } } } void UkmediaVolumeControl::updateSourceOutput(const pa_source_output_info &info) { sourceOutputChannel = info.volume.channels; const char *app; // bool is_new = false; if(info.name && strstr(info.name,"Peak detect") && !sourceOutputVector.contains(info.source)) { pa_operation* o; qDebug() <<"killall source output index====" <::iterator it; for(it = sourceOutputMap.begin();it!=sourceOutputMap.end();) { if(it.key() == description) { sourceOutputMap.erase(it); break; } ++it; } } } } void UkmediaVolumeControl::updateClient(const pa_client_info &info) { g_free(clientNames[info.index]); clientNames[info.index] = g_strdup(info.name); } void UkmediaVolumeControl::updateServer(const pa_server_info &info) { m_pServerInfo = &info; defaultSourceName = info.default_source_name ? info.default_source_name : ""; defaultSinkName = info.default_sink_name ? info.default_sink_name : ""; qDebug() << "updateServer" << "default_sink:" << info.default_sink_name << "default_source:" << info.default_source_name; } void UkmediaVolumeControl::updateVolumeMeter(uint32_t index, uint32_t sinkInputIdx, double v) { Q_UNUSED(index); Q_UNUSED(sinkInputIdx); if (lastPeak >= DECAY_STEP) if (v < lastPeak - DECAY_STEP) v = lastPeak - DECAY_STEP; lastPeak = v; for(int i=0;ireallyUpdateDeviceVisibility(); idleSource = 0; return FALSE; } void UkmediaVolumeControl::setConnectionState(gboolean connected) { if (m_connected != connected) { m_connected = connected; if (m_connected) { // connectingLabel->hide(); // notebook->show(); } else { // notebook->hide(); // connectingLabel->show(); } } } void UkmediaVolumeControl::updateDeviceVisibility() { if (idleSource) return; idleSource = g_idle_add(idleCb, this); } void UkmediaVolumeControl::reallyUpdateDeviceVisibility() { bool is_empty = true; // for (auto & sinkInputWidget : sinkInputWidgets) { // SinkInputWidget* w = sinkInputWidget.second; // if (sinkWidgets.size() > 1) { // w->directionLabel->show(); // w->deviceButton->show(); // } else { // w->directionLabel->hide(); // w->deviceButton->hide(); // } // if (showSinkInputType == SINK_INPUT_ALL || w->type == showSinkInputType) { // w->show(); // is_empty = false; // } else // w->hide(); // } // if (eventRoleWidget) // is_empty = false; // if (is_empty) // noStreamsLabel->show(); // else // noStreamsLabel->hide(); is_empty = true; // for (auto & sourceOutputWidget : sourceOutputWidgets) { // SourceOutputWidget* w = sourceOutputWidget.second; // if (sourceWidgets.size() > 1) { // w->directionLabel->show(); // w->deviceButton->show(); // } else { // w->directionLabel->hide(); // w->deviceButton->hide(); // } // if (showSourceOutputType == SOURCE_OUTPUT_ALL || w->type == showSourceOutputType) { // w->show(); // is_empty = false; // } else // w->hide(); // } // if (is_empty) // noRecsLabel->show(); // else // noRecsLabel->hide(); // is_empty = true; // for (auto & sinkWidget : sinkWidgets) { // SinkWidget* w = sinkWidget.second; // if (showSinkType == SINK_ALL || w->type == showSinkType) { // w->show(); // is_empty = false; // } else // w->hide(); // } // if (is_empty) // noSinksLabel->show(); // else // noSinksLabel->hide(); // is_empty = true; // for (auto & cardWidget : cardWidgets) { // CardWidget* w = cardWidget.second; // w->show(); // is_empty = false; // } // if (is_empty) // noCardsLabel->show(); // else // noCardsLabel->hide(); // is_empty = true; // for (auto & sourceWidget : sourceWidgets) { // SourceWidget* w = sourceWidget.second; // if (showSourceType == SOURCE_ALL || // w->type == showSourceType || // (showSourceType == SOURCE_NO_MONITOR && w->type != SOURCE_MONITOR)) { // w->show(); // is_empty = false; // } else // w->hide(); // } // if (is_empty) // noSourcesLabel->show(); // else // noSourcesLabel->hide(); // /* Hmm, if I don't call hide()/show() here some widgets will never // * get their proper space allocated */ // sinksVBox->hide(); // sinksVBox->show(); // sourcesVBox->hide(); // sourcesVBox->show(); // streamsVBox->hide(); // streamsVBox->show(); // recsVBox->hide(); // recsVBox->show(); // cardsVBox->hide(); // cardsVBox->show(); } void UkmediaVolumeControl::removeCard(uint32_t index) { // if (!cardWidgets.count(index)) // return; // delete cardWidgets[index]; // cardWidgets.erase(index); updateDeviceVisibility(); } //移除对应声卡下的对应sink void UkmediaVolumeControl::removeCardSink(int cardIndex,QString sinkName) { QMap>::iterator it1; QMap::iterator it2; for(it1=sinkPortMap.begin();it1!=sinkPortMap.end();) { //1、找到对应声卡 if(it1.key()==cardIndex) { for(it2=it1.value().begin();it2!=it1.value().end();) { //2、找到对应声卡下的对应sink,进行移除 if(it2.key()==sinkName) { it2 = it1->erase(it2); return; } ++it2; } } ++it1; } } void UkmediaVolumeControl::removeSink(uint32_t index) { QMap>::iterator it1; QMap::iterator it2; for (it1=sinkMap.begin();it1!=sinkMap.end();) { if (it1.key() == index) { qDebug() << "removeSink" << index << it1.value(); for(it2=it1.value().begin();it2!=it1.value().end();) { //it2.key()=cardIndex,it2.value()=sinkName,找到对应声卡下的对应sink进行删除 removeCardSink(it2.key(),it2.value()); ++it2; } sinkMap.erase(it1); break; } ++it1; } updateDeviceVisibility(); } //移除对应声卡下的对应source void UkmediaVolumeControl::removeCardSource(int cardIndex,QString sourceName) { QMap>::iterator it1; QMap::iterator it2; for(it1=sourcePortMap.begin();it1!=sourcePortMap.end();) { //1、找到对应声卡 if(it1.key()==cardIndex) { for(it2=it1.value().begin();it2!=it1.value().end();) { //2、找到对应声卡下的对应sink,进行移除 if(it2.key()==sourceName) { it2 = it1->erase(it2); return; } ++it2; } } ++it1; } } void UkmediaVolumeControl::removeSource(uint32_t index) { QMap>::iterator it1; QMap::iterator it2; for (it1=sourceMap.begin();it1!=sourceMap.end();) { if (it1.key() == index) { qDebug() << "removeSource" << index << it1.value(); for(it2=it1.value().begin();it2!=it1.value().end();) { //it2.key()=cardIndex,it2.value()=sourceName,找到对应声卡下的对应source进行删除 removeCardSource(it2.key(),it2.value()); ++it2; } sourceMap.erase(it1); break; } ++it1; } updateDeviceVisibility(); } void UkmediaVolumeControl::removeSinkInput(uint32_t index) { updateDeviceVisibility(); } void UkmediaVolumeControl::removeSourceOutput(uint32_t index) { updateDeviceVisibility(); } void UkmediaVolumeControl::removeClient(uint32_t index) { g_free(clientNames[index]); clientNames.erase(index); } void UkmediaVolumeControl::setConnectingMessage(const char *string) { QByteArray markup = ""; if (!string) markup += tr("Establishing connection to PulseAudio. Please wait...").toUtf8().constData(); else markup += string; markup += ""; // connectingLabel->setText(QString::fromUtf8(markup)); } void UkmediaVolumeControl::showError(const char *txt) { char buf[256]; snprintf(buf, sizeof(buf), "%s: %s", txt, pa_strerror(pa_context_errno(context))); qDebug() <get_window()->set_cursor(); w->setConnectionState(true); } } void UkmediaVolumeControl::cardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Card callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->cardMap.insert(i->index,i->name); w->updateCard(w,*i); } void UkmediaVolumeControl::sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } int volume; if(i->volume.channels >= 2) volume = MAX(i->volume.values[0],i->volume.values[1]); else volume = i->volume.values[0]; w->channel = i->volume.channels; w->defaultOutputCard = i->card; w->sinkIndex = i->index; w->balance = pa_cvolume_get_balance(&i->volume,&i->channel_map); if(i->active_port) w->sinkPortName = i->active_port->name; else w->sinkPortName = ""; if(w->sinkVolume != volume || w->sinkMuted != i->mute){ w->sinkVolume = volume; w->sinkMuted = i->mute; Q_EMIT w->updateVolume(w->sinkVolume,w->sinkMuted); } } void UkmediaVolumeControl::sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } int volume; if(i->volume.channels >= 2) volume = MAX(i->volume.values[0],i->volume.values[1]); else volume = i->volume.values[0]; w->defaultInputCard = i->card; w->sourceIndex = i->index; if(i->active_port) w->sourcePortName = i->active_port->name; else w->sourcePortName = ""; if(w->masterDevice != "" && strcmp(i->name,NOISE_REDUCE_SOURCE) == 0){ int cardIndex = w->findPortSourceIndex(w->masterDevice); if(cardIndex){ w->defaultInputCard = cardIndex; w->sourcePortName = w->findSourcePortName(cardIndex); } } if(w->sourceVolume != volume || w->sourceMuted != i->mute){ w->sourceVolume = volume; w->sourceMuted = i->mute; Q_EMIT w->updateSourceVolume(w->sourceVolume,w->sourceMuted); } if (!w->sourceOutputVector.contains(w->sourceIndex) && !strstr(i->name,".monitor") && pa_context_get_server_protocol_version(w->getContext()) >= 13) { pa_operation* o; if (w->peakDetectIndex != -1){ qDebug() <<"killall source output index form sourceIndexCb" <peakDetectIndex; if (!(o = pa_context_kill_source_output(w->getContext(), w->peakDetectIndex, nullptr, nullptr))) w->showError(tr("pa_context_set_default_source() failed").toUtf8().constData()); } if (w->sourceOutputVector.count()) w->sourceOutputVector.removeAt(0); w->sourceOutputVector.append(w->sourceIndex); w->peak = w->createMonitorStreamForSource(w->sourceIndex, -1, !!(w->sourceFlags & PA_SOURCE_NETWORK)); } if(!strstr(i->name,".monitor")) w->Q_EMIT peakChangedSignal(0); qDebug() << "sourceIndexCb "; } void UkmediaVolumeControl::sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->m_pDefaultSink = i; qDebug() << "SinkCb" << i->index << i->name; QMap temp; temp.insert(i->card,i->name); w->sinkMap.insert(i->index,temp); w->updateSink(w,*i); } void UkmediaVolumeControl::sourceCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->m_pDefaultSource = i; qDebug() << "sourceCb" << i->index << i->name; QMap temp; temp.insert(i->card,i->name); w->sourceMap.insert(i->index,temp); w->updateSource(*i); } void UkmediaVolumeControl::sinkInputCb(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->updateSinkInput(*i); } void UkmediaVolumeControl::sourceOutputCb(pa_context *c, const pa_source_output_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source output callback failure").toUtf8().constData()); return; } if (eol > 0) { if (n_outstanding > 0) { /* At this point all notebook pages have been populated, so * let's open one that isn't empty */ // if (default_tab != -1) { // if (default_tab < 1 || default_tab > w->notebook->count()) { // if (!w->sinkInputWidgets.empty()) // w->notebook->setCurrentIndex(0); // else if (!w->sourceOutputWidgets.empty()) // w->notebook->setCurrentIndex(1); // else if (!w->sourceWidgets.empty() && w->sinkWidgets.empty()) // w->notebook->setCurrentIndex(3); // else // w->notebook->setCurrentIndex(2); // } else { // w->notebook->setCurrentIndex(default_tab - 1); // } // default_tab = -1; // } } decOutstanding(w); return; } if (i->source == PA_ID_INVALID) return; if (i->name) qDebug() << "sourceOutputCb" << i->name << i->source <sourceOutputVector.contains(i->index)) { // w->sourceOutputVector.append(i->index); if (i->name && strstr(i->name,"Peak detect")) w->peakDetectIndex = i->index; w->updateSourceOutput(*i); qDebug() << "update source output" << w->peakDetectIndex <name; } } void UkmediaVolumeControl::clientCb(pa_context *c, const pa_client_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Client callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } // qDebug() << "clientCb" << i->name; w->updateClient(*i); } void UkmediaVolumeControl::serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (!i) { w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); return; } pa_operation *o; qDebug() << "serverInfoIndexCb" << i->default_sink_name << i->default_source_name; w->updateServer(*i); decOutstanding(w); } void UkmediaVolumeControl::serverInfoCb(pa_context *, const pa_server_info *i, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (!i) { w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); return; } pa_operation *o; //默认的输出设备改变时需要获取默认的输出音量 if(!(o = pa_context_get_sink_info_by_name(w->getContext(),i->default_sink_name,sinkIndexCb,w))) { } if(!(o = pa_context_get_source_info_by_name(w->getContext(),i->default_source_name,sourceIndexCb,w))) { } qDebug() << "serverInfoCb" << i->user_name << i->default_sink_name << i->default_source_name; w->updateServer(*i); QTimer::singleShot(50, w, SLOT(timeoutSlot())); decOutstanding(w); } void UkmediaVolumeControl::timeoutSlot() { Q_EMIT deviceChangedSignal(); } void UkmediaVolumeControl::extStreamRestoreReadCb( pa_context *c, const pa_ext_stream_restore_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { decOutstanding(w); g_debug(QObject::tr("Failed to initialize stream_restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); return; } if (eol > 0) { decOutstanding(w); return; } // qDebug() << "extStreamRestoreReadCb" << i->name; // w->updateRole(*i); } void UkmediaVolumeControl::extStreamRestoreSubscribeCb(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); pa_operation *o; if (!(o = pa_ext_stream_restore_read(c, extStreamRestoreReadCb, w))) { w->showError(QObject::tr("pa_ext_stream_restore_read() failed").toUtf8().constData()); return; } qDebug() << "extStreamRestoreSubscribeCb" ; pa_operation_unref(o); } void UkmediaVolumeControl::extDeviceManagerReadCb( pa_context *c, const pa_ext_device_manager_info *, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { decOutstanding(w); g_debug(QObject::tr("Failed to initialize device manager extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); return; } w->canRenameDevices = true; if (eol > 0) { decOutstanding(w); return; } qDebug() << "extDeviceManagerReadCb"; /* Do something with a widget when this part is written */ } void UkmediaVolumeControl::extDeviceManagerSubscribeCb(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); pa_operation *o; if (!(o = pa_ext_device_manager_read(c, extDeviceManagerReadCb, w))) { w->showError(QObject::tr("pa_ext_device_manager_read() failed").toUtf8().constData()); return; } qDebug() << "extDeviceManagerSubscribeCb"; pa_operation_unref(o); } void UkmediaVolumeControl::subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); switch (t & PA_SUBSCRIPTION_EVENT_FACILITY_MASK) { case PA_SUBSCRIPTION_EVENT_SINK: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSink(index); else { pa_operation *o; if (!(o = pa_context_get_sink_info_by_index(c, index, sinkCb, w))) { w->showError(QObject::tr("pa_context_get_sink_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SOURCE: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSource(index); else { pa_operation *o; if (!(o = pa_context_get_source_info_by_index(c, index, sourceCb, w))) { w->showError(QObject::tr("pa_context_get_source_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SINK_INPUT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSinkInput(index); else { pa_operation *o; if (!(o = pa_context_get_sink_input_info(c, index, sinkInputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSourceOutput(index); else { pa_operation *o; if (!(o = pa_context_get_source_output_info(c, index, sourceOutputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_CLIENT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeClient(index); else { pa_operation *o; if (!(o = pa_context_get_client_info(c, index, clientCb, w))) { w->showError(QObject::tr("pa_context_get_client_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SERVER: { pa_operation *o; if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_CARD: //remove card if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) { qDebug() << "remove cards------"; //移除outputPort w->removeSinkPortMap(index); w->removeSourcePortMap(index); w->removeOutputPortMap(index); w->removeInputPortMap(index); Q_EMIT w->updatePortSignal(); w->removeCardMap(index); w->removeCardProfileMap(index); w->removeProfileMap(index); w->removeInputProfile(index); w->removeCard(index); } else { pa_operation *o; if (!(o = pa_context_get_card_info_by_index(c, index, cardCb, w))) { w->showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; } } void UkmediaVolumeControl::contextStateCallback(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); g_assert(c); switch (pa_context_get_state(c)) { case PA_CONTEXT_UNCONNECTED: case PA_CONTEXT_CONNECTING: case PA_CONTEXT_AUTHORIZING: case PA_CONTEXT_SETTING_NAME: break; case PA_CONTEXT_READY: { pa_operation *o; qDebug() << "pa_context_get_state" << "PA_CONTEXT_READY" << pa_context_get_state(c); reconnect_timeout = 1; /* Create event widget immediately so it's first in the list */ pa_context_set_subscribe_callback(c, subscribeCb, w); if (!(o = pa_context_subscribe(c, (pa_subscription_mask_t) (PA_SUBSCRIPTION_MASK_SINK| PA_SUBSCRIPTION_MASK_SOURCE| PA_SUBSCRIPTION_MASK_SINK_INPUT| PA_SUBSCRIPTION_MASK_SOURCE_OUTPUT| PA_SUBSCRIPTION_MASK_CLIENT| PA_SUBSCRIPTION_MASK_SERVER| PA_SUBSCRIPTION_MASK_CARD), nullptr, nullptr))) { w->showError(QObject::tr("pa_context_subscribe() failed").toUtf8().constData()); return; } pa_operation_unref(o); /* Keep track of the outstanding callbacks for UI tweaks */ n_outstanding = 0; if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_client_info_list(c, clientCb, w))) { w->showError(QObject::tr("pa_context_client_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_card_info_list(c, cardCb, w))) { w->showError(QObject::tr("pa_context_get_card_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_sink_info_list(c, sinkCb, w))) { w->showError(QObject::tr("pa_context_get_sink_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_source_info_list(c, sourceCb, w))) { w->showError(QObject::tr("pa_context_get_source_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_sink_input_info_list(c, sinkInputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; if (!(o = pa_context_get_source_output_info_list(c, sourceOutputCb, w))) { w->showError(QObject::tr("pa_context_get_source_output_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); n_outstanding++; Q_EMIT w->paContextReady(); break; } case PA_CONTEXT_FAILED: w->setConnectionState(false); w->updateDeviceVisibility(); pa_context_unref(w->m_pPaContext); w->m_pPaContext = nullptr; if (reconnect_timeout > 0) { g_debug("%s", QObject::tr("Connection failed, attempting reconnect").toUtf8().constData()); // g_timeout_add_seconds(reconnect_timeout, connectToPulse, w); } return; case PA_CONTEXT_TERMINATED: default: return; } } pa_context* UkmediaVolumeControl::getContext(void) { return context; } gboolean UkmediaVolumeControl::connectToPulse(gpointer userdata) { pa_glib_mainloop *m = pa_glib_mainloop_new(g_main_context_default()); api = pa_glib_mainloop_get_api(m); pa_proplist *proplist = pa_proplist_new(); pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, QObject::tr("Ukui Media Volume Control").toUtf8().constData()); pa_proplist_sets(proplist, PA_PROP_APPLICATION_ID, "org.PulseAudio.pavucontrol"); pa_proplist_sets(proplist, PA_PROP_APPLICATION_ICON_NAME, "audio-card"); pa_proplist_sets(proplist, PA_PROP_APPLICATION_VERSION, "PACKAGE_VERSION"); context = pa_context_new_with_proplist(api, nullptr, proplist); g_assert(context); pa_proplist_free(proplist); pa_context_set_state_callback(getContext(), contextStateCallback, this); if (pa_context_connect(getContext(), nullptr, PA_CONTEXT_NOFAIL, nullptr) < 0) { if (pa_context_errno(getContext()) == PA_ERR_INVALID) { /*w->setConnectingMessage(QObject::tr("Connection to PulseAudio failed. Automatic retry in 5s\n\n" "In this case this is likely because PULSE_SERVER in the Environment/X11 Root Window Properties\n" "or default-server in client.conf is misconfigured.\n" "This situation can also arrise when PulseAudio crashed and left stale details in the X11 Root Window.\n" "If this is the case, then PulseAudio should autospawn again, or if this is not configured you should\n" "run start-pulseaudio-x11 manually.").toUtf8().constData());*/ qFatal("connect pulseaudio failed") ; } else { // g_timeout_add_seconds(5,connectToPulse,w); } } return false; } /* * 根据名称获取sink input音量 */ int UkmediaVolumeControl::getSinkInputVolume(const gchar *name) { QMap::iterator it; int value = 0; for(it = sinkInputMap.begin();it!=sinkInputMap.end();) { if(it.key() == name) { qDebug() << "getSinkInputVolume" << "name:" <::iterator it; int value = 0; for(it = sourceOutputMap.begin();it!=sourceOutputMap.end();) { if(it.key() == name) { qDebug() << "getSourceOutputVolume" << "name:" <(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->sinkInputMuted = i->mute; if (i->volume.channels >= 2) w->sinkInputVolume = MAX(i->volume.values[0],i->volume.values[1]); else w->sinkInputVolume = i->volume.values[0]; qDebug() << "sinkInputCallback" <sinkInputVolume ; } /* * 更新output port map */ void UkmediaVolumeControl::updateOutputPortMap() { QMap::iterator at; QMap::iterator cardNameMap; // if (firstEntry == true) { // for(at = outputPortMap.begin();at!=w->outputPortMap.end();) // { // UkuiListWidgetItem *itemW = new UkuiListWidgetItem(w); // QListWidgetItem * item = new QListWidgetItem(w->m_pOutputWidget->m_pOutputListWidget); // item->setSizeHint(QSize(200,64)); //QSize(120, 40) spacing: 12px; // w->m_pOutputWidget->m_pOutputListWidget->blockSignals(true); // w->m_pOutputWidget->m_pOutputListWidget->setItemWidget(item, itemW); // w->m_pOutputWidget->m_pOutputListWidget->blockSignals(false); // QString cardName; // for(cardNameMap = w->cardMap.begin();cardNameMap!=w->cardMap.end();) // { // if (cardNameMap.key() == at.key()) { // cardName = cardNameMap.value(); // break; // } // ++cardNameMap; // } // itemW->setLabelText(at.value(),cardName); // w->m_pOutputWidget->m_pOutputListWidget->blockSignals(true); // w->m_pOutputWidget->m_pOutputListWidget->insertItem(i++,item); // w->m_pOutputWidget->m_pOutputListWidget->blockSignals(false); // ++at; // } // for(at = w->inputPortLabelMap.begin();at!=w->inputPortLabelMap.end();) // { // UkuiListWidgetItem *itemW = new UkuiListWidgetItem(w); // QListWidgetItem * item = new QListWidgetItem(w->m_pInputWidget->m_pInputListWidget); // item->setSizeHint(QSize(200,64)); //QSize(120, 40) spacing: 12px; // w->m_pInputWidget->m_pInputListWidget->setItemWidget(item, itemW); // QString cardName; // for(cardNameMap = w->cardMap.begin();cardNameMap!=w->cardMap.end();) // { // if (cardNameMap.key() == at.key()) { // cardName = cardNameMap.value(); // break; // } // ++cardNameMap; // } // itemW->setLabelText(at.value(),cardName); // w->m_pInputWidget->m_pInputListWidget->blockSignals(true); // w->m_pInputWidget->m_pInputListWidget->insertItem(i++,item); // w->m_pInputWidget->m_pInputListWidget->blockSignals(false); // ++at; // } // } // else { // //记录上一次output label // for (i=0;im_pOutputWidget->m_pOutputListWidget->count();i++) { // QListWidgetItem *item = w->m_pOutputWidget->m_pOutputListWidget->item(i); // UkuiListWidgetItem *wid = (UkuiListWidgetItem *)w->m_pOutputWidget->m_pOutputListWidget->itemWidget(item); // int index; // for (at=w->cardMap.begin();at!=w->cardMap.end();) { // if (wid->deviceLabel->text() == at.value()) { // index = at.key(); // break; // } // ++at; // } // w->currentOutputPortLabelMap.insertMulti(index,wid->portLabel->text()); // w->m_pCurrentOutputPortLabelList->append(wid->portLabel->text()); // w->m_pCurrentOutputCardList->append(wid->deviceLabel->text()); // //qDebug() << index << "current output item ************" << item->text() <portLabel->text() << w->m_pOutputPortLabelList->count() ;//<< w->m_pOutputPortLabelList->at(i); // } // for (i=0;im_pInputWidget->m_pInputListWidget->count();i++) { // QListWidgetItem *item = w->m_pInputWidget->m_pInputListWidget->item(i); // UkuiListWidgetItem *wid = (UkuiListWidgetItem *)w->m_pInputWidget->m_pInputListWidget->itemWidget(item); // int index; // int count; // for (at=w->cardMap.begin();at!=w->cardMap.end();) { // if (wid->deviceLabel->text() == at.value()) { // index = at.key(); // break; // } // ++at; // ++count; // } // w->currentInputPortLabelMap.insertMulti(index,wid->portLabel->text()); // w->m_pCurrentInputPortLabelList->append(wid->portLabel->text()); // w->m_pCurrentInputCardList->append(wid->deviceLabel->text()); // qDebug() <<"current input port label insert " << index << wid->deviceLabel->text(); // } //// w->m_pInputWidget->m_pInputListWidget->blockSignals(true); //// w->deleteNotAvailableOutputPort(); //// w->addAvailableOutputPort(); //// w->deleteNotAvailableInputPort(); //// w->addAvailableInputPort(); //// w->m_pInputWidget->m_pInputListWidget->blockSignals(false); // } } /* * 移除指定索引的output port */ void UkmediaVolumeControl::removeOutputPortMap(int index) { QMap>::iterator it; for (it=outputPortMap.begin();it!=outputPortMap.end();) { if (it.key() == index) { qDebug() << "removeoutputport" <>::iterator it; for (it=inputPortMap.begin();it!=inputPortMap.end();) { if (it.key() == index) { inputPortMap.erase(it); break; } ++it; } } /* * 移除指定索引的card */ void UkmediaVolumeControl::removeCardMap(int index) { QMap::iterator it; for (it=cardMap.begin();it!=cardMap.end();) { if (it.key() == index) { cardMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeCardProfileMap(int index) { QMap>::iterator it; QMap>::iterator at; for (it=cardProfileMap.begin();it!=cardProfileMap.end();) { if (it.key() == index) { cardProfileMap.erase(it); break; } ++it; } for (at=cardProfilePriorityMap.begin();at!=cardProfilePriorityMap.cend();) { if (at.key() == index) { cardProfilePriorityMap.erase(at); if(cardProfilePriorityMap.keys().contains(index)) cardProfilePriorityMap.remove(index); break; } ++at; } } void UkmediaVolumeControl::removeSinkPortMap(int index) { qDebug() << "removeSinkPortMap///"; QMap>::iterator it; for(it=sinkPortMap.begin();it!=sinkPortMap.end();){ if(it.key() == index) { sinkPortMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeSourcePortMap(int index) { qDebug() << "removeSinkPortMap///"; QMap>::iterator it; for(it=sourcePortMap.begin();it!=sourcePortMap.end();){ if(it.key() == index) { sourcePortMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeProfileMap(int index) { QMap>::iterator it; qDebug() << "removeProfileMap" << index << profileNameMap; for (it=profileNameMap.begin();it!=profileNameMap.end();) { if(it.key() == index){ profileNameMap.erase(it); break; } ++it; } } bool UkmediaVolumeControl::isExitOutputPort(QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for (it=outputPortMap.begin();it!=outputPortMap.end();) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (at.value() == name) return true; ++at; } ++it; } return false; } void UkmediaVolumeControl::removeInputProfile(int index) { QMap>::iterator it; qDebug() << "removeInputProfile" << index << inputPortProfileNameMap; for (it=inputPortProfileNameMap.begin();it!=inputPortProfileNameMap.end();) { if(it.key() == index){ inputPortProfileNameMap.erase(it); break; } ++it; } } bool UkmediaVolumeControl::isExitInputPort(QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for (it=inputPortMap.begin();it!=inputPortMap.end();) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (at.value() == name) return true; ++at; } ++it; } return false; } int UkmediaVolumeControl::findPortSourceIndex(QString name) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; int cardIndex = -1; for (it=sourcePortMap.begin();it!=sourcePortMap.end();) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.key() == name) { cardIndex = it.key(); break; } ++tempMap; } ++it; } return cardIndex; } QString UkmediaVolumeControl::findSourcePortName(int cardIndex) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString portName = ""; for (it=inputPortMap.begin();it!=inputPortMap.end();) { if(it.key() == cardIndex){ portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { portName = tempMap.key(); break; } ++tempMap; } ++it; } return portName; } ukui-media-3.1.1.2/audio/ukui_custom_style.h0000644000175000017500000000544714565521701017407 0ustar fengfeng /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef UKUICUSTOMSTYLE_H #define UKUICUSTOMSTYLE_H #include #include #include #include #include #include #include "titlelabel.h" #include "kslider.h" #include #include #include #include using namespace kdk; static QColor symbolic_color = Qt::gray; class AudioSlider : public KSlider { Q_OBJECT public: AudioSlider(QWidget *parent = nullptr); ~AudioSlider(); bool isMouseWheel = false; private: int blueValue = 0; Q_SIGNALS: void blueValueChanged(int value); //针对蓝牙a2dp模式下滑动条跳动,以10为间隔设置音量 protected: void wheelEvent(QWheelEvent *e); void keyReleaseEvent(QKeyEvent *e); void mouseMoveEvent(QMouseEvent *e); void mouseReleaseEvent(QMouseEvent *e); }; class UkmediaVolumeSlider : public KSlider { Q_OBJECT public: UkmediaVolumeSlider(QWidget *parent = nullptr); ~UkmediaVolumeSlider(); void initStyleOption(QStyleOptionSlider *option); void showTooltip(); protected: bool eventFilter(QObject *watched, QEvent *event); }; class UkuiButtonDrawSvg:public QPushButton { Q_OBJECT public: UkuiButtonDrawSvg(QWidget *parent = nullptr); ~UkuiButtonDrawSvg(); QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); QRect IconGeometry(); void draw(QPaintEvent* e); void init(QImage image ,QColor color); friend class UkmediaMainWidget; protected: void paintEvent(QPaintEvent *event); bool event(QEvent *e); private: QImage mImage; QColor mColor; bool mousePress = false; }; class CustomSound { public: CustomSound(); ~CustomSound(); bool createAudioFile(); bool isExist(QString nodeName); int addXmlNode(QString nodeNane, bool initState); bool isFirstRun(); public: QFile *file; private: QDomDocument *doc; QString audioPath; }; #endif // UKUICUSTOMSTYLE_H ukui-media-3.1.1.2/audio/translations/0000755000175000017500000000000014565521701016156 5ustar fengfengukui-media-3.1.1.2/audio/translations/bo_CN.ts0000644000175000017500000005616414565521701017522 0ustar fengfeng Audio Audio སྒྲ་ཕབ། UkccPlugin ཝུའུ་ཁི་ལན་གྱི་ཕུའུ་ལུའུ་ཀིན། /UkccPlugin/UkccPlugin ukccplugin test ukccplugin ཚད་ལེན་ཚོད་ལྟ། /UkccPlugin/ukccplugin test QObject pa_context_get_server_info() failed pa_context_get_server_info()ཕམ་ཉེས་བྱུང་བ། Card callback failure བྱང་བུ་ཕྱིར་སློག་བྱེད་མ་ཐུབ་པ། Sink callback failure ཕྱིར་ལྡོག་བྱེད་པར་ཕམ་ཉེས་བྱུང་བ། Source callback failure འབྱུང་ཁུངས་ཕྱིར་ལྡོག་བྱེད་མ་ཐུབ་པ། Sink input callback failure མ་དངུལ་འཇོག་པའི་ཕྱིར་ལྡོག་ལ་ཕམ་ཉེས་བྱུང Source output callback failure འབྱུང་ཁུངས་ཕྱིར་ལྡོག་བྱེད་པར་ཕམ་ཉེས་བྱུང་བ། Client callback failure མངགས་བཅོལ་བྱེད་མཁན་གྱིས་ཕྱིར་སློག་ Server info callback failure ཞབས་ཞུའི་ཡོ་བྱད་ཀྱི་ཆ་འཕྲིན་ཕྱིར་ལྡོག་བྱེད་མ་ཐུབ Failed to initialize stream_restore extension: %s stream_restore་རིང་དུ་གཏོང་བའི་ཐོག་མའི་དུས་ཚོད་ལ་སླེབས་མ་ཐུབ་པ། %s pa_ext_stream_restore_read() failed pa_ext_stream_restore_read()ཕམ་ཁ་བྱུང་བ་རེད། Failed to initialize device manager extension: %s སྒྲིག་ཆས་དོ་དམ་གྱི་དུས་འགྱངས་ལ་ཐོག་མའི་དུས་འགྱངས་བྱེད་མ་ཐུབ་པ། %s pa_ext_device_manager_read() failed pa_ext_device_manager_read()ཕམ་ཉེས་བྱུང་བ། pa_context_get_sink_info_by_index() failed pa_context_get_sink_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_source_info_by_index() failed pa_context_get_source_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_sink_input_info() failed pa_context_get_sink_input_info()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_client_info() failed pa_context_get_client_info()ཕམ་ཉེས་བྱུང་བ། pa_context_get_card_info_by_index() failed pa_context_get_card_info_by_index()ཕམ་ཉེས་བྱུང་བ། pa_context_subscribe() failed pa_context_subscribe()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_client_info_list() failed pa_context_client_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_card_info_list() failed pa_context_get_card_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_sink_info_list() failed pa_context_get_sink_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_source_info_list() failed pa_context_get_source_info_list()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_sink_input_info_list() failed pa_context_get_sink_input_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_source_output_info_list() failed pa_context_get_source_output_info_list()ཕམ་ཁ་བྱུང་བ་རེད། Connection failed, attempting reconnect འབྲེལ་མཐུད་བྱེད་མ་ཐུབ་པར་ཡང་བསྐྱར་འབྲེལ་མཐུད་བྱེད་རྩིས་བྱས། Ukui Media Volume Control ཝུའུ་ཁི་ལན་གྱི་སྨྱན་སྦྱོར་གྱི་བོངས་ UkmediaInputWidget Input མ་དངུལ་འཇོག་པ། /Audio/Input Input Device ནང་འཇུག་སྒྲིག་ཆས། /Audio/Input Device Volume བོངས་ཚད། /Audio/Volume Input Level མ་དངུལ་འཇོག་པའི་ཆུ་ཚད /Audio/Input Level Noise Reduction སུན་སྒྲ་ཇེ་ཉུང་དུ་གཏོང /audio/Noise UkmediaMainWidget None གཅིག་ཀྱང་མེད། UkmediaOutputWidget Output ཐོན་ཚད། /Audio/Output Output Device ཐོན་སྐྱེད་སྒྲིག་ཆས། /Audio/Output Device Master Volume སློབ་དཔོན་གྱི་བམ་པོ། /Audio/Master Volume Balance དོ་མཉམ་ /Audio/Balance Left གཡོན་ཕྱོགས་པ། Right གཡས་ཕྱོགས་པ། Volume Increase གྲངས་འབོར་འཕར་སྣོན་བྱུང་བ /audio/Noise Volume above 100% can cause sound distortion and damage your speakers. སྒྲ་ཚད་བརྒྱ་ཆ་༡༠༠ལས་བརྒལ་ན་སྒྲ་ནུས་བདེན་མེད་དང་ཁྱོད་ཀྱི་སྒྲ་ཕབ་ཆས་ལ་གནོད་པ་བྱེད་སྲིད།. UkmediaSoundEffectsWidget System Sound མ་ལག་འཐུས་སྒོ་ཚང་བ Sound Theme སྒྲའི་བརྗོད་བྱ་གཙོ་བོ། /Audio/Sound Theme Alert Sound ཉེན་བརྡའི་སྒྲ་ /Audio/Alert Sound Beep Switch སྦྲང་མའི་གློག་སྒོ། /Audio/Beep Switch Poweroff Music སྒུལ་ཤུགས་རོལ་དབྱངས། /Audio/Poweroff Music Startup Music གསར་གཏོད་རོལ་དབྱངས། /Audio/Startup Music Wakeup Music གཉིད་ལས་སད་པའི་རོལ་མོ། /Audio/Wakeup Music Volume Change སྒྲ་གདངས་འགྱུར་ལྡོག /Audio/Volume Change Logout Music ཐོ་འགོད་རོལ་དབྱངས། /Audio/Logout Music UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_sink_volume_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_mute_by_index() failed pa_context_set_source_mute_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_volume_by_index() failed pa_context_set_source_volume_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_output_volume() failed pa_context_set_source_output_volume()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_output_mute() failed pa_context_set_source_output_mute()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_card_profile_by_index() failed pa_context_set_card_profile_by_index()ཕམ་ཉེས་བྱུང་བ། pa_context_set_default_sink() failed pa_context_set_default_sink()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_default_source() failed pa_context_set_default_source()ཕམ་ཉེས་བྱུང་བ། pa_context_set_sink_port_by_name() failed pa_context_set_sink_port_by_name()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_port_by_name() failed pa_context_set_source_port_by_name()ཕམ་ཉེས་བྱུང་བ། (plugged in) (ནང་དུ་བཅུག་པ་)། (unavailable) (སྤྱོད་གོ་མི་ཆོད་པ)། (unplugged) (ཁ་ཐོར་ཡ་བྲལ་དུ་སོང་བ་)། Failed to read data from stream ཆུ་ཕྲན་ནས་གཞི་གྲངས་ཀློག་མ་ཐུབ་པ། Peak detect ཡང་རྩེར་ཞིབ་དཔྱད་ཚད་ལེན Failed to create monitoring stream ལྟ་ཞིབ་ཚད་ལེན་གྱི་ཆུ་ཕྲན་གསར་སྐྲུན་བྱེད་མ་ཐུབ་པ Failed to connect monitoring stream ལྟ་ཞིབ་ཚད་ལེན་གྱི་ཆུ་ཕྲན་སྦྲེལ་མཐུད་བྱེད་མ་ཐུབ་པ Ignoring sink-input due to it being designated as an event and thus handled by the Event widget དོན་རྐྱེན་ཞིག་ཏུ་བརྩིས་ནས་དོན་རྐྱེན་ཆུང་ཆུང་ཞིག་ཏུ་བརྩིས་ནས་ཐག་གཅོད་བྱས་པའི་རྐྱེན་གྱིས་ཆུ་ནང་དུ་འཛུལ་བར་སྣང་མེད་བྱས་པ་རེད། Establishing connection to PulseAudio. Please wait... ཕུའུ་ལུའུ་ཧྲི་ཨོ་ཏོ་དང་འབྲེལ་བ་བཙུགས་པ་རེད། སྐུ་མཁྱེན་སྒུག་རོགས།... ukui-media-3.1.1.2/audio/translations/zh_CN.ts0000644000175000017500000004462214565521701017537 0ustar fengfeng Audio Audio 声音 UkccPlugin /UkccPlugin/UkccPlugin ukccplugin test /UkccPlugin/ukccplugin test QObject pa_context_get_server_info() failed Card callback failure Sink callback failure Source callback failure Sink input callback failure Source output callback failure Client callback failure Server info callback failure Failed to initialize stream_restore extension: %s pa_ext_stream_restore_read() failed Failed to initialize device manager extension: %s pa_ext_device_manager_read() failed pa_context_get_sink_info_by_index() failed pa_context_get_source_info_by_index() failed pa_context_get_sink_input_info() failed pa_context_get_client_info() failed pa_context_get_card_info_by_index() failed pa_context_subscribe() failed pa_context_client_info_list() failed pa_context_get_card_info_list() failed pa_context_get_sink_info_list() failed pa_context_get_source_info_list() failed pa_context_get_sink_input_info_list() failed pa_context_get_source_output_info_list() failed Connection failed, attempting reconnect Ukui Media Volume Control UkmediaInputWidget Input 输入 /Audio/Input Input Device 选择输入设备 /Audio/Input Device Volume 音量 /Audio/Volume Input Level 音量反馈 /Audio/Input Level Noise Reduction 智能降噪 /audio/Noise UkmediaMainWidget Light-Seeking 寻光 HeYin 和印 None UkmediaOutputWidget Output 输出 /Audio/Output Output Device 选择输出设备 /Audio/Output Device Master Volume 音量 /Audio/Master Volume Balance 声道平衡 /Audio/Balance Left Right Volume Increase 音量增强 Volume above 100% can cause sound distortion and damage your speakers. 音量超过100%时可能会导致音效失真并损害你的扬声器。 UkmediaSoundEffectsWidget System Sound 系统音效 Sound Theme 音效主题 /Audio/Sound Theme Alert Sound 通知 Beep Switch 提示音 /Audio/Beep Switch Poweroff Music 关机 /Audio/Poweroff Music Startup Music 开机 /Audio/Startup Music Wakeup Music 唤醒 /Audio/Wakeup Music Volume Change 音量调节 Logout Music 注销 /Audio/Logout Music UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_source_mute_by_index() failed pa_context_set_source_volume_by_index() failed pa_context_set_source_output_volume() failed pa_context_set_source_output_mute() failed pa_context_set_card_profile_by_index() failed pa_context_set_default_sink() failed pa_context_set_default_source() failed pa_context_set_sink_port_by_name() failed pa_context_set_source_port_by_name() failed (plugged in) (unavailable) (unplugged) Failed to read data from stream Peak detect Failed to create monitoring stream Failed to connect monitoring stream Ignoring sink-input due to it being designated as an event and thus handled by the Event widget Establishing connection to PulseAudio. Please wait... ukui-media-3.1.1.2/audio/translations/tr.ts0000644000175000017500000004506714565521701017167 0ustar fengfeng Audio Audio UkccPlugin /UkccPlugin/UkccPlugin ukccplugin test /UkccPlugin/ukccplugin test QObject pa_context_get_server_info() failed Card callback failure Sink callback failure Source callback failure Sink input callback failure Source output callback failure Client callback failure Server info callback failure Failed to initialize stream_restore extension: %s pa_ext_stream_restore_read() failed Failed to initialize device manager extension: %s pa_ext_device_manager_read() failed pa_context_get_sink_info_by_index() failed pa_context_get_source_info_by_index() failed pa_context_get_sink_input_info() failed pa_context_get_client_info() failed pa_context_get_card_info_by_index() failed pa_context_subscribe() failed pa_context_client_info_list() failed pa_context_get_card_info_list() failed pa_context_get_sink_info_list() failed pa_context_get_source_info_list() failed pa_context_get_sink_input_info_list() failed pa_context_get_source_output_info_list() failed Connection failed, attempting reconnect Ukui Media Volume Control UkmediaInputWidget Input /Audio/Input Input Device /Audio/Input Device Volume /Audio/Volume Input Level /Audio/Input Level Noise Reduction /audio/Noise UkmediaMainWidget xunguang None UkmediaOutputWidget Output /Audio/Output Output Device /Audio/Output Device Master Volume /Audio/Master Volume Balance /Audio/Balance Left Right Volume Increase /audio/Noise UkmediaSoundEffectsWidget System Sound Sound Theme /Audio/Sound Theme Alert Sound /Audio/Alert Sound Beep Switch /Audio/Beep Switch Poweroff Music /Audio/Poweroff Music Startup Music /Audio/Startup Music Wakeup Music /Audio/Wakeup Music Volume Change /Audio/Volume Change Logout Music /Audio/Logout Music UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_source_mute_by_index() failed pa_context_set_source_volume_by_index() failed pa_context_set_source_output_volume() failed pa_context_set_source_output_mute() failed pa_context_set_card_profile_by_index() failed pa_context_set_default_sink() failed pa_context_set_default_source() failed pa_context_set_sink_port_by_name() failed pa_context_set_source_port_by_name() failed (plugged in) (unavailable) (unplugged) Failed to read data from stream Peak detect Failed to create monitoring stream Failed to connect monitoring stream Ignoring sink-input due to it being designated as an event and thus handled by the Event widget Establishing connection to PulseAudio. Please wait... ukui-media-3.1.1.2/audio/translations/bo.ts0000644000175000017500000004506714565521701017142 0ustar fengfeng Audio Audio UkccPlugin /UkccPlugin/UkccPlugin ukccplugin test /UkccPlugin/ukccplugin test QObject pa_context_get_server_info() failed Card callback failure Sink callback failure Source callback failure Sink input callback failure Source output callback failure Client callback failure Server info callback failure Failed to initialize stream_restore extension: %s pa_ext_stream_restore_read() failed Failed to initialize device manager extension: %s pa_ext_device_manager_read() failed pa_context_get_sink_info_by_index() failed pa_context_get_source_info_by_index() failed pa_context_get_sink_input_info() failed pa_context_get_client_info() failed pa_context_get_card_info_by_index() failed pa_context_subscribe() failed pa_context_client_info_list() failed pa_context_get_card_info_list() failed pa_context_get_sink_info_list() failed pa_context_get_source_info_list() failed pa_context_get_sink_input_info_list() failed pa_context_get_source_output_info_list() failed Connection failed, attempting reconnect Ukui Media Volume Control UkmediaInputWidget Input /Audio/Input Input Device /Audio/Input Device Volume /Audio/Volume Input Level /Audio/Input Level Noise Reduction /audio/Noise UkmediaMainWidget xunguang None UkmediaOutputWidget Output /Audio/Output Output Device /Audio/Output Device Master Volume /Audio/Master Volume Balance /Audio/Balance Left Right Volume Increase /audio/Noise UkmediaSoundEffectsWidget System Sound Sound Theme /Audio/Sound Theme Alert Sound /Audio/Alert Sound Beep Switch /Audio/Beep Switch Poweroff Music /Audio/Poweroff Music Startup Music /Audio/Startup Music Wakeup Music /Audio/Wakeup Music Volume Change /Audio/Volume Change Logout Music /Audio/Logout Music UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_source_mute_by_index() failed pa_context_set_source_volume_by_index() failed pa_context_set_source_output_volume() failed pa_context_set_source_output_mute() failed pa_context_set_card_profile_by_index() failed pa_context_set_default_sink() failed pa_context_set_default_source() failed pa_context_set_sink_port_by_name() failed pa_context_set_source_port_by_name() failed (plugged in) (unavailable) (unplugged) Failed to read data from stream Peak detect Failed to create monitoring stream Failed to connect monitoring stream Ignoring sink-input due to it being designated as an event and thus handled by the Event widget Establishing connection to PulseAudio. Please wait... ukui-media-3.1.1.2/audio/ukmedia_main_widget.h0000644000175000017500000003120614565521701017576 0ustar fengfeng /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef WIDGET_H #define WIDGET_H #include #include "ukmedia_volume_control.h" #include "ukmedia_output_widget.h" #include "ukmedia_input_widget.h" #include "ukmedia_sound_effects_widget.h" #include "ukui_list_widget_item.h" #include #include #include #include #include #include #include #include extern "C" { #include #include #include #include #include #include #include #include } #include #include #include #include #include #include #include #include #include #include #include #define UKUI_THEME_SETTING "org.ukui.style" #define UKUI_THEME_NAME "style-name" #define UKUI_THEME_WHITE "ukui-white" #define UKUI_THEME_BLACK "ukui-black" #define UKUI_INPUT_REAR_MIC "analog-input-rear-mic" //后置麦克风 #define UKUI_INPUT_FRONT_MIC "analog-input-front-mic" //前置麦克风 #define UKUI_OUTPUT_HEADPH "analog-output-headphones" //模拟耳机 #define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" #define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" #define MAX_CUSTOM_SHORTCUTS 1000 #define FILENAME_KEY "filename" #define NAME_KEY "name" #define KEY_SOUNDS_SCHEMA "org.ukui.sound" #define UKUI_SWITCH_SETTING "org.ukui.session" #define UKUI_STARTUP_MUSIC_KEY "startup-music" #define UKUI_POWEROFF_MUSIC_KEY "poweroff-music" #define UKUI_LOGOUT_MUSIC_KEY "logout-music" #define UKUI_WAKEUP_MUSIC_KEY "weakup-music" #define STARTUP_MUSIC "startup-music" #define VOLUME_INCREASE "volume-increase" #define DNS_NOISE_REDUCTION "dns-noise-reduction" #define EVENT_SOUNDS_KEY "event-sounds" #define INPUT_SOUNDS_KEY "input-feedback-sounds" #define SOUND_THEME_KEY "theme-name" #define UKUI_GLOBALTHEME_SETTINGS "org.ukui.globaltheme.settings" #define GLOBAL_THEME_NAME "global-theme-name" #define DEFAULT_ALERT_ID "__default" #define CUSTOM_THEME_NAME "__custom" #define NO_SOUNDS_THEME_NAME "__no_sounds" #define PA_VOLUME_NORMAL 65536.0 #define UKMEDIA_VOLUME_NORMAL 100.0 #ifdef __GNUC__ #define CA_CLAMP(x, low, high) \ __extension__ ({ typeof(x) _x = (x); \ typeof(low) _low = (low); \ typeof(high) _high = (high); \ ((_x > _high) ? _high : ((_x < _low) ? _low : _x)); \ }) #else #define CA_CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x))) #endif typedef enum { GVC_LEVEL_SCALE_LINEAR, GVC_LEVEL_SCALE_LOG } LevelScale; class UkmediaMainWidget : public QWidget { Q_OBJECT public: UkmediaMainWidget(QWidget *parent = nullptr); ~UkmediaMainWidget(); void initWidget(); //初始化界面 void initGsettings(); //初始化gsetting值 void initButtonSliderStatus(QString key); void dealSlot(); //处理槽函数 int valueToPaVolume(int value); //滑动条值转换成音量 int paVolumeToValue(int value); //音量值转换成滑动条值 void themeChangeIcons(); static int connectContext(gpointer userdata); static int caProplistMergeAp(ca_proplist *p, va_list ap); static int caPlayForWidget(UkmediaMainWidget *w, uint32_t id, ...); static int caProplistSetForWidget(ca_proplist *p, UkmediaMainWidget *widget); QPixmap drawDarkColoredPixmap(const QPixmap &source); QPixmap drawLightColoredPixmap(const QPixmap &source); void inputVolumeDarkThemeImage(int value,bool status); void outputVolumeDarkThemeImage(int value,bool status); int getInputVolume(); int getOutputVolume(); // void comboboxCurrentTextInit(); QList listExistsPath(); QString findFreePath(); void addValue(QString name,QString filename); // static void onKeyChanged (GSettings *settings,gchar *key,UkmediaMainWidget *w); static void updateTheme (UkmediaMainWidget *w); static void setupThemeSelector (UkmediaMainWidget *w); static void soundThemeInDir (UkmediaMainWidget *w,GHashTable *hash,const char *dir); static char *loadIndexThemeName (const char *index,char **parent); static void setComboxForThemeName (UkmediaMainWidget *w,const char *name); static void updateAlertsFromThemeName (UkmediaMainWidget *w,const gchar *name); static void updateAlert (UkmediaMainWidget *w,const char *alert_id); static int getFileType (const char *sound_name,char **linked_name); static char *customThemeDirPath (const char *child); // static void populateModelFromDir (UkmediaMainWidget *w,const char *dirname); // static void populateModelFromFile (UkmediaMainWidget *w,const char *filename); // static void populateModelFromNode (UkmediaMainWidget *w,xmlNodePtr node); static xmlChar *xmlGetAndTrimNames (xmlNodePtr node); static void playAlretSoundFromPath (UkmediaMainWidget *w,QString path); static gboolean saveAlertSounds (QComboBox *combox,const char *id); static void deleteOldFiles (const char **sounds); static void deleteOneFile (const char *sound_name, const char *pattern); static void deleteDisabledFiles (const char **sounds); static void addCustomFile (const char **sounds, const char *filename); static gboolean cappletFileDeleteRecursive (GFile *file, GError **error); static gboolean directoryDeleteRecursive (GFile *directory, GError **error); static void createCustomTheme (const char *parent); static void customThemeUpdateTime (void); static gboolean customThemeDirIsEmpty (void); //TEST输出 void initOutputComboboxItem();//初始化输出的Combobox选项框 void initInputComboboxItem();//初始化输入的Combobox选项框 void findOutputComboboxItem(QString cardName,QString portLabel); //初始化Combobox output/input list widget的选项 void addComboboxAvailableOutputPort(); void addComboboxOutputListWidgetItem(QString portName, QString cardName); void deleteNotAvailableComboboxOutputPort();//删除不可用的端口 int indexOfOutputPortInOutputCombobox(QString portName); bool comboboxOutputPortIsNeedAdd(int index,QString name);//port是否需要在Combobox list中添加 bool comboboxOutputPortIsNeedDelete(int index,QString name);//port是否需要在Combobox list删除 void findInputComboboxItem(QString cardName,QString portLabel); //初始化Combobox output/input list widget的选项 void addComboboxAvailableInputPort(); void addComboboxInputListWidgetItem(QString portName, QString cardName); //添加input listwidget item void deleteNotAvailableComboboxInputPort(); int indexOfInputPortInInputCombobox(QString portName);//获取输入combobox当前的选项框的index bool comboboxInputPortIsNeedAdd(int index,QString name);//port是否需要在Combobox list中添加 bool comboboxInputPortIsNeedDelete(int index,QString name);//port是否需要在Combobox list删除 int findCardIndex(QString cardName, QMap cardMap);//查找声卡指定的索引 QString findCardName(int index,QMap cardMap); QString findHighPriorityProfile(int index,QString profile); QString findPortSink(int cardIndex,QString portName); QString findPortSource(int cardIndex,QString portName); bool inputComboboxDeviceContainBluetooth(); QString blueCardNameInCombobox();//记录蓝牙声卡名称 void inputStreamMapCardName(QString streamName,QString cardName); void outputStreamMapCardName(QString streamName,QString cardName); QString findInputStreamCardName(QString streamName); QString findOutputStreamCardName(QString streamName); bool exitBluetoochDevice(); QString findOutputPortName(int index,QString portLabel); //找到outputPortLabel对应的portName QString findInputPortName(int index,QString portLabel); //找到inputPortLabel对应的portName QString findOutputPortLabel(int index,QString portName); //查找名为portName对应的portLabel QString findInputPortLabel(int index,QString portName); //查找名为portName对应的portLabel void setCardProfile(QString name,QString profile); //设置声卡的配置文件 void setDefaultOutputPortDevice(QString devName,QString portName); //设置默认的输出端口 void setDefaultInputPortDevice(QString devName,QString portName); //设置默认的输入端口 QString findCardActiveProfile(int index); //查找声卡的active profile private Q_SLOTS: void initVoulmeSlider(); //初始化音量滑动条的值 void themeComboxIndexChangedSlot(int index); //主题下拉框改变 // void comboxIndexChangedSlot(int index); void outputWidgetSliderChangedSlot(int v); //输出音量改变 void outputWidgetSliderChangedSlotInBlue(int value); //蓝牙模式下调节音量特殊处理 void inputWidgetSliderChangedSlot(int v); //输入滑动条更改 void inputMuteButtonSlot(); //输入音量静音控制 void outputMuteButtonSlot(); //输出音量静音控制 void balanceSliderChangedSlot(int v); //平衡值改变 void peakVolumeChangedSlot(double v); //输入等级 void updateCboxDevicePort(); //更新combobox设备端口 void updateComboboxListWidgetItemSlot(); void timeSliderSlot(); void ukuiThemeChangedSlot(const QString &); void onKeyChanged (const QString &); void startupButtonSwitchChangedSlot(bool status); //开机音乐开关 void poweroffButtonSwitchChangedSlot(bool status); //关机音乐开关 void logoutMusicButtonSwitchChangedSlot(bool status); //注销音乐开关 void wakeButtonSwitchChangedSlot(bool status); //唤醒音乐开关 void alertSoundButtonSwitchChangedSlot(bool status); void noiseReductionButtonSwitchChangedSlot(bool status); //降噪开关 void volumeIncreaseBtuuonSwitchChangedSlot(bool status); void bootMusicSettingsChanged(); // void windowClosedComboboxChangedSlot(int index); // void volumeChangedComboboxChangeSlot(int index); // void settingMenuComboboxChangedSlot(int index); void cboxoutputListWidgetCurrentRowChangedSlot(int row);//combobox output list widget选项改变 void cboxinputListWidgetCurrentRowChangedSlot(int row);//combobox input list widget选项改变 private: UkmediaInputWidget *m_pInputWidget; UkmediaOutputWidget *m_pOutputWidget; UkmediaSoundEffectsWidget *m_pSoundWidget; UkmediaVolumeControl *m_pVolumeControl; QStringList *m_pSoundList; QStringList *m_pThemeNameList; QStringList *m_pSoundThemeList; QStringList *m_pSoundThemeDirList; QStringList *m_pSoundThemeXmlNameList; QStringList *m_pSoundNameList; QStringList *eventList; QStringList *eventIdNameList; QGSettings *m_pSoundSettings; QGSettings *m_pBootSetting; QGSettings *m_pThemeSetting; // QGSettings *m_pWindowClosedSetting; QString mThemeName; QGSettings *m_pSoundThemeSetting; bool m_hasMusic; bool firstEnterSystem = true; const gchar* m_privOutputPortLabel = ""; int callBackCount = 0; bool firstEntry = true; bool cboxfirstEntry = true; QMap currentOutputPortLabelMap; QMap currentInputPortLabelMap; QMap inputCardStreamMap; QMap outputCardStreamMap; QMap currentCboxOutputPortLabelMap; QMap currentCboxInputPortLabelMap; bool updatePort = true; bool setDefaultstream = true; int reconnectTime; QTimer *time; QTimer *timeSlider; bool mousePress = false; bool mouseReleaseState = false; QTimer *timeSliderBlance; bool mousePressBlance = false; bool mouseReleaseStateBlance = false; }; #endif // WIDGET_H ukui-media-3.1.1.2/audio/ukmedia_slider_tip_label_helper.cpp0000644000175000017500000001254414565521701022502 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include "ukui_custom_style.h" MediaSliderTipLabel::MediaSliderTipLabel(){ setAttribute(Qt::WA_TranslucentBackground); } MediaSliderTipLabel::~MediaSliderTipLabel(){ } void MediaSliderTipLabel::paintEvent(QPaintEvent *e) { QStyleOptionFrame opt; initStyleOption(&opt); QStylePainter p(this); // p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x33))); p.setPen(Qt::NoPen); p.drawRoundedRect(this->rect(), 1, 1); QPainterPath path; path.addRoundedRect(opt.rect,6,6); p.setRenderHint(QPainter::Antialiasing); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); QLabel::paintEvent(e); } SliderTipLabelHelper::SliderTipLabelHelper(QObject *parent) :QObject(parent) { m_pTiplabel = new MediaSliderTipLabel(); m_pTiplabel->setWindowFlags(Qt::ToolTip); qApp->installEventFilter(new AppEventFilter(this)); m_pTiplabel->setFixedSize(52,30); m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); } void SliderTipLabelHelper::registerWidget(QWidget *w) { w->removeEventFilter(this); w->installEventFilter(this); } void SliderTipLabelHelper::unregisterWidget(QWidget *w) { w->removeEventFilter(this); } bool SliderTipLabelHelper::eventFilter(QObject *obj, QEvent *e) { auto slider = qobject_cast(obj); if (obj == slider) { switch (e->type()) { case QEvent::MouseMove: { QMouseEvent *event = static_cast(e); mouseMoveEvent(obj, event); return false; } case QEvent::MouseButtonRelease: { QMouseEvent *event = static_cast(e); mouseReleaseEvent(obj, event); return false; } case QEvent::MouseButtonPress:{ QMouseEvent *event = static_cast(e); mousePressedEvent(obj,event); } default: return false; } } return QObject::eventFilter(obj,e); } void SliderTipLabelHelper::mouseMoveEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(e); QRect rect; QStyleOptionSlider m_option; auto slider = qobject_cast(obj); slider->initStyleOption(&m_option); rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); QPoint gPos = slider->mapToGlobal(rect.topLeft()); QString percent; percent = QString::number(slider->value()); percent.append("%"); m_pTiplabel->setText(percent); m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); m_pTiplabel->show(); } void SliderTipLabelHelper::mouseReleaseEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(obj); Q_UNUSED(e); m_pTiplabel->hide(); } void SliderTipLabelHelper::mousePressedEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(e); QStyleOptionSlider m_option; auto slider = qobject_cast(obj); QRect rect; //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) double pos = e->pos().x() / (double)slider->width(); slider->setValue(pos *(slider->maximum() - slider->minimum()) + slider->minimum()); //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 QEvent evEvent(static_cast(QEvent::User + 1)); QCoreApplication::sendEvent(obj, &evEvent); int value = pos *(slider->maximum() - slider->minimum()) + slider->minimum(); slider->initStyleOption(&m_option); rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); QPoint gPos = slider->mapToGlobal(rect.topLeft()); QString percent; percent = QString::number(slider->value());//(m_option.sliderValue); percent.append("%"); m_pTiplabel->setText(percent); m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); m_pTiplabel->show(); } // AppEventFilter AppEventFilter::AppEventFilter(SliderTipLabelHelper *parent) : QObject(parent) { m_wm = parent; } bool AppEventFilter::eventFilter(QObject *obj, QEvent *e) { Q_UNUSED(obj); Q_UNUSED(e); return false; } ukui-media-3.1.1.2/audio/audio.ui0000644000175000017500000000206014565521701015073 0ustar fengfeng Audio 0 0 800 710 0 0 16777215 16777215 Audio 0 0 0 32 48 ukui-media-3.1.1.2/audio/audio.h0000644000175000017500000000377514565521701014723 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef AUDIO_H #define AUDIO_H #include #include #include #include #include "ukmedia_main_widget.h" #include #include #include #if defined(LIBUKCC_LIBRARY) # define LIBUKCC_EXPORT Q_DECL_EXPORT #else # define LIBUKCC_EXPORT Q_DECL_IMPORT #endif namespace Ui { class Audio; } class Audio : public QObject, CommonInterface { Q_OBJECT Q_PLUGIN_METADATA(IID "org.ukcc.CommonInterface") Q_INTERFACES(CommonInterface) public: Audio(); ~Audio(); QString plugini18nName() Q_DECL_OVERRIDE; int pluginTypes() Q_DECL_OVERRIDE; QWidget *pluginUi() Q_DECL_OVERRIDE; bool isEnable() const Q_DECL_OVERRIDE; const QString name() const Q_DECL_OVERRIDE; bool isShowOnHomePage() const Q_DECL_OVERRIDE; QIcon icon() const Q_DECL_OVERRIDE; QString translationPath() const Q_DECL_OVERRIDE; private: QString pluginName; int pluginType; QWidget *widget; bool mFirstLoad; private: void initSearchText(); // 搜索翻译 }; #endif // AUDIO_H ukui-media-3.1.1.2/audio/ukmedia_input_widget.h0000644000175000017500000000412514565521701020011 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef UKMEDIAINPUTWIDGET_H #define UKMEDIAINPUTWIDGET_H #include #include #include #include #include "ukmedia_output_widget.h" #include #include #include #include #include "ukui_custom_style.h" #include "switchbutton.h" #include "kswitchbutton.h" using namespace kdk; class UkmediaInputWidget : public QWidget { Q_OBJECT public: explicit UkmediaInputWidget(QWidget *parent = nullptr); ~UkmediaInputWidget(); friend class UkmediaMainWidget; Q_SIGNALS: private: QFrame* myLine(); QFrame *m_pInputWidget; QFrame *m_pVolumeWidget; QFrame *m_pInputLevelWidget; QFrame *m_pNoiseReducteWidget; TitleLabel *m_pInputLabel; QLabel *m_pInputDeviceLabel; QLabel *m_pIpVolumeLabel; QLabel *m_pInputLevelLabel; QLabel *m_pIpVolumePercentLabel; QLabel *m_pNoiseReducteLabel; UkuiButtonDrawSvg *m_pInputIconBtn; AudioSlider *m_pIpVolumeSlider; QProgressBar *m_pInputLevelProgressBar; KSwitchButton *m_pNoiseReducteButton; QString sliderQss; QVBoxLayout *m_pVlayout; QComboBox *m_pInputDeviceSelectBox; QFrame *m_pInputSlectWidget; }; #endif // UKMEDIAINPUTWIDGET_H ukui-media-3.1.1.2/audio/titlelabel.h0000644000175000017500000000207214565521701015730 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef TITLE_LABEL_H #define TITLE_LABEL_H #include class TitleLabel : public QLabel { Q_OBJECT public: TitleLabel(QWidget *parent = nullptr); ~TitleLabel(); }; #endif // TITLE_LABEL_H ukui-media-3.1.1.2/audio/ukui_list_widget_item.h0000644000175000017500000000405614565521701020204 0ustar fengfeng#ifndef UKUILISTWIDGETITEM_H #define UKUILISTWIDGETITEM_H /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include #include #include #include #include #include #include #include class UkuiListWidget : public QListWidget { Q_OBJECT public: UkuiListWidget(QWidget *parent = nullptr); ~UkuiListWidget(); protected: void paintEvent(QPaintEvent*event) { int i; for (i = 0 ;i < this->count();i++) { QListWidgetItem *item = this->item(i); // item->setTextColor(QColor(0,0,0,0)); delete item; } QListWidget::paintEvent(event); } }; class UkuiListWidgetItem : public QWidget { Q_OBJECT public: UkuiListWidgetItem(QWidget *parent = 0); ~UkuiListWidgetItem(); public: void setLabelText(QString portText,QString deviceLabel); // void setLabelTextIsWhite(bool selected); void setSelected(bool selected); // QString text(); QString portName; QLabel * portLabel; QLabel * deviceLabel; protected: // void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *ev); private: QWidget * widget; }; #endif // UKUILISTWIDGETITEM_H ukui-media-3.1.1.2/audio/switchbutton.cpp0000644000175000017500000002151714565521701016704 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "switchbutton.h" #include #define THEME_QT_SCHEMA "org.ukui.style" #define THEME_GTK_SCHEMA "org.mate.interface" #define TIMER_INTERVAL 5 //每隔5ms动画移动一次 #define MOVING_STEPS 40 //动画总共移动40次 SwitchButton::SwitchButton(QWidget *parent) : QWidget(parent) { // this->resize(QSize(52, 24)); this->setFixedSize(QSize(50, 24)); checked = false; hover = false; disabled = false; isMoving = false; isAnimation = true; space = 4; rectRadius = height()/2; mStep = width()/MOVING_STEPS;//也就是40次动画就可以走完,每次时间间隔是固定的5ms mStartX = 0; mEndX= 0; mTimer = new QTimer(this); mTimer->setInterval(TIMER_INTERVAL);//动画更新时间 connect(mTimer, SIGNAL(timeout()), this, SLOT(updatevalue())); if(QGSettings::isSchemaInstalled(THEME_GTK_SCHEMA) && QGSettings::isSchemaInstalled(THEME_QT_SCHEMA)) { QByteArray qtThemeID(THEME_QT_SCHEMA); QByteArray gtkThemeID(THEME_GTK_SCHEMA); m_gtkThemeSetting = new QGSettings(gtkThemeID,QByteArray(),this); m_qtThemeSetting = new QGSettings(qtThemeID,QByteArray(),this); QString style = m_qtThemeSetting->get("styleName").toString(); changeColor(style); connect(m_qtThemeSetting,&QGSettings::changed, [this] (const QString &key) { QString style = m_qtThemeSetting->get("styleName").toString(); if (key == "styleName") { changeColor(style); } }); } } SwitchButton::~SwitchButton() { } void SwitchButton::paintEvent(QPaintEvent *){ QPainter painter(this); //启用反锯齿 painter.setRenderHint(QPainter::Antialiasing, true); painter.setCompositionMode(QPainter::CompositionMode_Source); drawBg(&painter); if(!isAnimation)//动画如果禁用,则圆形滑块isMoving始终为false isMoving =false; if(isMoving) animation(&painter); drawSlider(&painter); painter.end(); } void SwitchButton::changeColor(const QString &themes) { if (hover) { return ;//在鼠标下,禁止切换颜色鼠标离开时切换颜色 } if (themes == "ukui-dark" || themes == "ukui-black") { bgColorOff = QColor(OFF_BG_DARK_COLOR); bgColorOn = QColor(ON_BG_DARK_COLOR); rectColorEnabled = QColor(ENABLE_RECT_DARK_COLOR); rectColorDisabled = QColor(DISABLE_RECT_DARK_COLOR); sliderColorDisabled = QColor(DISABLE_RECT_DARK_COLOR); sliderColorEnabled = QColor(ENABLE_RECT_DARK_COLOR); bgHoverOnColor = QColor(ON_HOVER_BG_DARK_COLOR); bgHoverOffColor = QColor(OFF_HOVER_BG_DARK_COLOR); bgColorDisabled = QColor(DISABLE_DARK_COLOR); } else { bgColorOff = QColor(OFF_BG_LIGHT_COLOR); bgColorOn = QColor(ON_BG_LIGHT_COLOR); rectColorEnabled = QColor(ENABLE_RECT_LIGHT_COLOR); rectColorDisabled = QColor(DISABLE_RECT_LIGHT_COLOR); sliderColorDisabled = QColor(DISABLE_RECT_LIGHT_COLOR); sliderColorEnabled = QColor(ENABLE_RECT_LIGHT_COLOR); bgHoverOnColor = QColor(ON_HOVER_BG_LIGHT_COLOR); bgHoverOffColor = QColor(OFF_HOVER_BG_LIGHT_COLOR); bgColorDisabled = QColor(DISABLE_LIGHT_COLOR); } } //动画绘制 void SwitchButton::animation(QPainter *painter){ painter->save(); int h = height(); int w = width(); painter->setPen(Qt::NoPen); //颜色设置 if(checked){ //开关在左侧时 painter->setBrush(bgColorOn); rect.setRect(0,0,h+mStartX,h); }else{ painter->setBrush(bgColorOff); rect.setRect(mStartX,0,w-mStartX,h); } painter->drawRoundedRect(rect,rectRadius,rectRadius); painter->restore(); } //绘制背景 void SwitchButton::drawBg(QPainter *painter){ int w = width(); int h = height(); painter->save(); painter->setPen(Qt::NoPen); if (disabled) { painter->setPen(Qt::NoPen); painter->setBrush(bgColorDisabled); } else { if(checked){ if(isMoving){ painter->setBrush(bgColorOff); rect.setRect(mStartX,0,w-mStartX,h); }else { painter->setBrush(bgColorOn); rect.setRect(0, 0, w, h); } }else{ if(isMoving){ painter->setBrush(bgColorOn); rect.setRect(0,0,mStartX+h,h); } else { painter->setBrush(bgColorOff); rect.setRect(0, 0, w, h); } } } //半径为高度的一半 painter->drawRoundedRect(rect,rectRadius,rectRadius); painter->restore(); } //绘制滑块,也就是圆形按钮 void SwitchButton::drawSlider(QPainter *painter){ painter->save(); painter->setPen(Qt::NoPen); if (!disabled){ painter->setBrush(sliderColorEnabled); } else painter->setBrush(sliderColorDisabled); if (disabled) { if (!checked){ QRect smallRect(8, height() / 2 - 2, 10 , 4); painter->drawRoundedRect(smallRect,3,3); }else{ QRect smallRect(width() - 8 * 2, height() / 2 - 2, 10 , 4); painter->drawRoundedRect(smallRect,3,3); } } QRect rect(0, 0, width(), height()); int sliderWidth = rect.height() - space * 2; QRect sliderRect(mStartX + space, space, sliderWidth, sliderWidth); painter->drawEllipse(sliderRect); painter->restore(); } void SwitchButton::mousePressEvent(QMouseEvent *){ qDebug()<start(); isMoving = true; } } void SwitchButton::resizeEvent(QResizeEvent *){ //每次开始的x坐标都是跳过圆角,从直线的地方开始计算 mStep = width() / MOVING_STEPS; if (checked){ //circle out // startX = width() - height() + space; //circle in mStartX = width() - height(); } else mStartX = 0; rectRadius = height()/2; update(); } void SwitchButton::enterEvent(QEvent *event) { bgColorOn = bgHoverOnColor; bgColorOff = bgHoverOffColor; hover = true; update(); return QWidget::enterEvent(event); } void SwitchButton::leaveEvent(QEvent *event) { hover = false; QString style = m_qtThemeSetting->get("styleName").toString(); changeColor(style); update(); return QWidget::leaveEvent(event); } //根据事件向左还是向右移动 void SwitchButton::updatevalue(){ if (checked) if (mStartX < mEndX-mStep){ mStartX = mStartX + mStep; } else{ mStartX = mEndX; mTimer->stop(); isMoving = false; } else{ if (mStartX > mEndX+mStep){ mStartX = mStartX - mStep; } else{ mStartX = mEndX; mTimer->stop(); isMoving = false; } } update(); } void SwitchButton::setChecked(bool checked){ if (this->checked != checked){ this->checked = checked; Q_EMIT checkedChanged(checked); update(); } mStep = width() / MOVING_STEPS; if (checked){ //circle out // endX = width() - height() + space; //circle in mEndX = width() - height(); } else{ mEndX = 0; } mTimer->start(); isMoving = true; } bool SwitchButton::isChecked(){ return this->checked; } void SwitchButton::setDisabledFlag(bool value) { disabled = value; update(); } bool SwitchButton::getDisabledFlag() { return disabled; } void SwitchButton::setAnimation(bool on){ isAnimation = on; } ukui-media-3.1.1.2/audio/switchbutton.h0000644000175000017500000000602514565521701016346 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef SWITCHBUTTON_H #define SWITCHBUTTON_H #include #include #include #include #include #include #define OFF_BG_DARK_COLOR "#404040" #define OFF_HOVER_BG_DARK_COLOR "#666666" #define ON_BG_DARK_COLOR "#3790FA" #define ON_HOVER_BG_DARK_COLOR "#40A9FB" #define DISABLE_DARK_COLOR "#474747" #define DISABLE_RECT_DARK_COLOR "#6E6E6E" #define ENABLE_RECT_DARK_COLOR "#FFFFFF" #define OFF_BG_LIGHT_COLOR "#E0E0E0" #define OFF_HOVER_BG_LIGHT_COLOR "#B3B3B3" #define ON_BG_LIGHT_COLOR "#3790FA" #define ON_HOVER_BG_LIGHT_COLOR "#40A9FB" #define DISABLE_LIGHT_COLOR "#E9E9E9" #define DISABLE_RECT_LIGHT_COLOR "#B3B3B3" #define ENABLE_RECT_LIGHT_COLOR "#FFFFFF" class SwitchButton : public QWidget { Q_OBJECT public: SwitchButton(QWidget *parent = 0); ~SwitchButton(); void setChecked(bool checked); void setAnimation(bool on); bool isChecked(); void setDisabledFlag(bool); bool getDisabledFlag(); protected: void mousePressEvent(QMouseEvent *); void resizeEvent(QResizeEvent *); void paintEvent(QPaintEvent *); void enterEvent(QEvent *event); void leaveEvent(QEvent *event); void drawBg(QPainter * painter); void drawSlider(QPainter * painter); void changeColor(const QString &themes); private: bool checked; //切换的判断 bool disabled; void animation(QPainter *painter); QRect rect; bool isMoving; //滑块动作判断 bool isAnimation; // 是否允许动画执行 QColor bgColorOff; QColor bgColorOn; QColor bgHoverOnColor; QColor bgHoverOffColor; QColor bgColorDisabled; QColor sliderColorEnabled; QColor sliderColorDisabled; QColor rectColorEnabled; QColor rectColorDisabled; QColor sliderColorOff; QColor sliderColorOn; QGSettings *m_qtThemeSetting; QGSettings *m_gtkThemeSetting; int space; //滑块离背景间隔 int rectRadius; //圆角角度 int mStep; //移动步长 int mStartX; int mEndX; bool hover; QTimer * mTimer; private Q_SLOTS: void updatevalue(); Q_SIGNALS: void checkedChanged(bool checked); }; #endif // SWITCHBUTTON_H ukui-media-3.1.1.2/audio/ukmedia_slider_tip_label_helper.h0000644000175000017500000000346614565521701022152 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include "ukui_custom_style.h" class MediaSliderTipLabel:public QLabel { public: MediaSliderTipLabel(); ~MediaSliderTipLabel(); protected: void paintEvent(QPaintEvent*); }; class SliderTipLabelHelper : public QObject { Q_OBJECT friend class AppEventFilter; public: SliderTipLabelHelper(QObject *parent = nullptr); ~SliderTipLabelHelper() {} void registerWidget(QWidget *w); void unregisterWidget(QWidget *w); bool eventFilter(QObject *obj, QEvent *e); void mouseMoveEvent(QObject *obj, QMouseEvent *e); void mouseReleaseEvent(QObject *obj, QMouseEvent *e); void mousePressedEvent(QObject *obj,QMouseEvent *e); private: MediaSliderTipLabel *m_pTiplabel; }; class AppEventFilter : public QObject { friend class SliderTipLabelHelper; Q_OBJECT private: explicit AppEventFilter(SliderTipLabelHelper *parent); ~AppEventFilter() {} bool eventFilter(QObject *obj, QEvent *e); SliderTipLabelHelper *m_wm = nullptr; }; #endif // SLIDERTIPLABELHELPER_H ukui-media-3.1.1.2/audio/audio.cpp0000644000175000017500000000463114565521701015246 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "audio.h" #include "ui_audio.h" #include #include #include Audio::Audio() : mFirstLoad(true) { #ifndef QT_NO_TRANSLATION QString translatorFileName = QLatin1String("qt_"); translatorFileName += QLocale::system().name(); QTranslator *pTranslator = new QTranslator(); if (pTranslator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) QApplication::installTranslator(pTranslator); #endif QTranslator *translator = new QTranslator(this); translator->load("/usr/share/ukui-media/translations/audio/" + QLocale::system().name()); QApplication::installTranslator(translator); pluginName = tr("Audio"); pluginType = SYSTEM; } Audio::~Audio() { } QString Audio::plugini18nName() { return pluginName; } int Audio::pluginTypes() { return pluginType; } QWidget *Audio::pluginUi() { if (mFirstLoad) { mFirstLoad = false; widget = new UkmediaMainWidget; } return widget; } bool Audio::isEnable() const { return true; } const QString Audio::name() const { return QStringLiteral("Audio"); } bool Audio::isShowOnHomePage() const { return true; } QIcon Audio::icon() const { return QIcon::fromTheme("audio-volume-high-symbolic"); } QString Audio::translationPath() const { return "/usr/share/ukui-media/translations/audio/%1.ts"; } void Audio::initSearchText() { //~ contents_path /UkccPlugin/UkccPlugin tr("UkccPlugin"); //~ contents_path /UkccPlugin/ukccplugin test tr("ukccplugin test"); } ukui-media-3.1.1.2/audio/ukmedia_output_widget.h0000644000175000017500000000470414565521701020215 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef UKMEDIAOUTPUTWIDGET_H #define UKMEDIAOUTPUTWIDGET_H #include #include #include #include #include #include #include #include #include #include "ukui_custom_style.h" #include "ukui_list_widget_item.h" #include "customstyle.h" #include #include #include "switchbutton.h" #include "kswitchbutton.h" #include using namespace kdk; class UkmediaOutputWidget : public QWidget { Q_OBJECT public: explicit UkmediaOutputWidget(QWidget *parent = nullptr); ~UkmediaOutputWidget(); void setOutputVolumeSliderRang(bool status); friend class UkmediaMainWidget; Q_SIGNALS: public Q_SLOTS: void onPaletteChanged(); private: QFrame* myLine(); QFrame *m_pOutputWidget; QFrame *m_pMasterVolumeWidget; QFrame *m_pChannelBalanceWidget; QFrame *m_pVolumeIncreaseWidget; QWidget *VolumeIncreaseTipsWidget; TitleLabel *m_pOutputLabel; QLabel *m_pOutputDeviceLabel; QLabel *m_pOpVolumeLabel; QLabel *m_pOpVolumePercentLabel; QLabel *m_pOpBalanceLabel; QLabel *VolumeIncreaseTipsLabel; QLabel *m_pLeftBalanceLabel; QLabel *m_pRightBalanceLabel; QLabel *m_pVolumeIncreaseLabel; QComboBox *m_pDeviceSelectBox; QFrame *m_pOutputSlectWidget; UkuiButtonDrawSvg *m_pOutputIconBtn; AudioSlider *m_pOpVolumeSlider; UkmediaVolumeSlider *m_pOpBalanceSlider; KSwitchButton *m_pVolumeIncreaseButton; QVBoxLayout *m_pVlayout; QString sliderQss; }; #endif // UKMEDIAOUTPUTWIDGET_H ukui-media-3.1.1.2/audio/audio.pro0000644000175000017500000000367614567025031015271 0ustar fengfeng#------------------------------------------------- # # Project created by QtCreator 2019-05-30T09:45:54 # #------------------------------------------------- #include(../../../env.pri) QT += widgets xml dbus TEMPLATE = lib CONFIG += plugin #include($$PROJECT_COMPONENTSOURCE/switchbutton.pri) #include($$PROJECT_COMPONENTSOURCE/label.pri) INCLUDEPATH += ../../.. \ $$PROJECT_COMPONENTSOURCE \ TARGET = $$qtLibraryTarget(audio) DESTDIR = ../ target.path = $$[QT_INSTALL_LIBS]/ukui-control-center CONFIG += c++11 \ no_keywords link_pkgconfig PKGCONFIG += gio-2.0 \ libxml-2.0 \ Qt5Multimedia \ gsettings-qt \ libcanberra \ dconf \ libpulse \ libpulse-mainloop-glib \ kysdk-qtwidgets #DEFINES += QT_DEPRECATED_WARNINGS SOURCES += \ audio.cpp \ ukmedia_input_widget.cpp \ ukmedia_main_widget.cpp \ ukmedia_output_widget.cpp \ ukmedia_sound_effects_widget.cpp \ ukmedia_volume_control.cpp \ ukui_custom_style.cpp \ customstyle.cpp \ ukmedia_slider_tip_label_helper.cpp \ ukui_list_widget_item.cpp \ titlelabel.cpp \ switchbutton.cpp HEADERS += \ audio.h \ ukmedia_input_widget.h \ ukmedia_main_widget.h \ ukmedia_output_widget.h \ ukmedia_sound_effects_widget.h \ ukmedia_volume_control.h \ ukui_custom_style.h \ customstyle.h \ ukmedia_slider_tip_label_helper.h \ ukui_list_widget_item.h \ titlelabel.h \ switchbutton.h FORMS += \ audio.ui TRANSLATIONS += \ translations/zh_CN.ts \ translations/tr.ts \ translations/bo.ts isEmpty(PREFIX) { PREFIX = /usr } qm_files.path = $${PREFIX}/share/ukui-media/translations/audio/ qm_files.files = translations/*.qm CONFIG(release, debug|release) { !system($$PWD/translate_generation.sh): error("Failed to generate translation") } INSTALLS += target \ qm_files \ ukui-media-3.1.1.2/audio/ukmedia_main_widget.cpp0000664000175000017500000032747414604740356020155 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukmedia_main_widget.h" #include #include #include #include #include #include #include #include #include #include #include #define MATE_DESKTOP_USE_UNSTABLE_API #define VERSION "1.12.1" #define GVC_DIALOG_DBUS_NAME "org.mate.VolumeControl" #define KEY_SOUNDS_SCHEMA "org.ukui.sound" #define GVC_SOUND_SOUND (xmlChar *) "sound" #define GVC_SOUND_NAME (xmlChar *) "name" #define GVC_SOUND_FILENAME (xmlChar *) "filename" #define SOUND_SET_DIR "/usr/share/ukui-media/sounds" #define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" #define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" #define MAX_CUSTOM_SHORTCUTS 1000 #define FILENAME_KEY "filename" #define NAME_KEY "name" guint appnum = 0; extern bool isCheckBluetoothInput; enum { SOUND_TYPE_UNSET, SOUND_TYPE_OFF, SOUND_TYPE_DEFAULT_FROM_THEME, SOUND_TYPE_BUILTIN, SOUND_TYPE_CUSTOM }; UkmediaMainWidget::UkmediaMainWidget(QWidget *parent) : QWidget(parent) { m_pVolumeControl = new UkmediaVolumeControl; initWidget(); m_pThemeNameList = new QStringList; // m_pSoundList = new QStringList; // m_pSoundNameList = new QStringList; // m_pSoundThemeList = new QStringList; // m_pSoundThemeDirList = new QStringList; // m_pSoundThemeXmlNameList = new QStringList; initGsettings(); setupThemeSelector(this); updateTheme(this); // 报警声音,从指定路径获取报警声音文件 // populateModelFromDir(this,SOUND_SET_DIR);/*SOUND_SET_DIR*/ // 初始化combobox的值 // comboboxCurrentTextInit(); time = new QTimer(); dealSlot();//处理槽函数 } /* * 初始化界面 */ void UkmediaMainWidget::initWidget() { m_pOutputWidget = new UkmediaOutputWidget(); m_pInputWidget = new UkmediaInputWidget(); m_pSoundWidget = new UkmediaSoundEffectsWidget(); cboxfirstEntry = true; mThemeName = UKUI_THEME_WHITE; QVBoxLayout *m_pvLayout = new QVBoxLayout(); m_pvLayout->addWidget(m_pOutputWidget); m_pvLayout->addWidget(m_pInputWidget); m_pvLayout->addWidget(m_pSoundWidget); m_pvLayout->setSpacing(40); m_pvLayout->addStretch(); this->setLayout(m_pvLayout); this->setMinimumWidth(0); this->setMaximumWidth(16777215); this->layout()->setContentsMargins(0,0,0,0); m_pInputWidget->m_pInputLevelProgressBar->setMaximum(101); } QList UkmediaMainWidget::listExistsPath() { char ** childs; int len; DConfClient * client = dconf_client_new(); childs = dconf_client_list (client, KEYBINDINGS_CUSTOM_DIR, &len); g_object_unref (client); QList vals; for (int i = 0; childs[i] != NULL; i++){ if (dconf_is_rel_dir (childs[i], NULL)){ char * val = g_strdup (childs[i]); vals.append(val); } } g_strfreev (childs); return vals; } QString UkmediaMainWidget::findFreePath(){ int i = 0; char * dir; bool found; QList existsdirs; existsdirs = listExistsPath(); for (; i < MAX_CUSTOM_SHORTCUTS; i++){ found = true; dir = QString("custom%1/").arg(i).toLatin1().data(); for (int j = 0; j < existsdirs.count(); j++) if (!g_strcmp0(dir, existsdirs.at(j))){ found = false; break; } if (found) break; } if (i == MAX_CUSTOM_SHORTCUTS){ qDebug() << "Keyboard Shortcuts" << "Too many custom shortcuts"; return ""; } return QString("%1%2").arg(KEYBINDINGS_CUSTOM_DIR).arg(QString(dir)); } void UkmediaMainWidget::addValue(QString name,QString filename) { //在创建setting表时,先判断是否存在该设置,存在时不创建 QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); g_warning("full path: %s", allpath); qDebug() << filenameStr << FILENAME_KEY <set(FILENAME_KEY, filename); settings->set(NAME_KEY, name); } } /* * 初始化gsetting */ void UkmediaMainWidget::initGsettings() { //获取声音gsettings值 if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ m_pSoundSettings = new QGSettings(KEY_SOUNDS_SCHEMA); bool status; if (m_pSoundSettings->keys().contains("eventSounds")) { status = m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); m_pSoundWidget->m_pAlertSoundSwitchButton->setChecked(status); } if (m_pSoundSettings->keys().contains("dnsNoiseReduction")) { status = m_pSoundSettings->get(DNS_NOISE_REDUCTION).toBool();; m_pInputWidget->m_pNoiseReducteButton->setChecked(status); } if (m_pSoundSettings->keys().contains("volumeIncrease")) { status = m_pSoundSettings->get(VOLUME_INCREASE).toBool();; m_pOutputWidget->m_pVolumeIncreaseButton->setChecked(status); m_pOutputWidget->setOutputVolumeSliderRang(status); } if(m_pSoundSettings->keys().contains("themeName")) { QString soundThemeStr = m_pSoundSettings->get(SOUND_THEME_KEY).toString(); if(soundThemeStr != "custom"){ int index = m_pSoundWidget->m_pSoundThemeCombobox->findData(soundThemeStr); m_pSoundWidget->m_pSoundThemeCombobox->setCurrentIndex(index); } } connect(m_pSoundSettings, SIGNAL(changed(const QString &)),this,SLOT(onKeyChanged(const QString &))); } //检测系统主题 if (QGSettings::isSchemaInstalled(UKUI_THEME_SETTING)){ m_pThemeSetting = new QGSettings(UKUI_THEME_SETTING); if (m_pThemeSetting->keys().contains("styleName")) { mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); } connect(m_pThemeSetting, SIGNAL(changed(const QString &)),this,SLOT(ukuiThemeChangedSlot(const QString &))); } //检测设计开关机音乐 if (QGSettings::isSchemaInstalled(UKUI_SWITCH_SETTING)) { m_pBootSetting = new QGSettings(UKUI_SWITCH_SETTING); // if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ // if (m_pSoundSettings->keys().contains("startupMusic")) { // m_pSoundWidget->m_pStartupButton->setChecked(m_pSoundSettings->get(STARTUP_MUSIC).toBool());//开机音乐 // } // } if (m_pBootSetting->keys().contains("startupMusic")) { bool startup = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool();//开机音乐 m_pSoundWidget->m_pStartupButton->setChecked(startup); } if (m_pBootSetting->keys().contains("poweroffMusic")) { bool poweroff = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool();//关机音乐 m_pSoundWidget->m_pPoweroffButton->setChecked(poweroff); } if (m_pBootSetting->keys().contains("logoutMusic")) { bool logout = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool();//注销音乐 m_pSoundWidget->m_pLogoutButton->setChecked(logout); } if (m_pBootSetting->keys().contains("weakupMusic")) { bool m_hasMusic = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool();//休眠音乐 m_pSoundWidget->m_pWakeupMusicButton->setChecked(m_hasMusic); } connect(m_pBootSetting,SIGNAL(changed(const QString &)),this,SLOT(bootMusicSettingsChanged())); } if(m_pSoundWidget->m_pAlertSoundSwitchButton->isChecked()) { m_pSoundWidget->m_pThemeWidget->show(); m_pSoundWidget->line1->show(); } else { m_pSoundWidget->m_pThemeWidget->hide(); m_pSoundWidget->line1->hide(); } } void UkmediaMainWidget::initButtonSliderStatus(QString key) { if (key == "dnsNoiseReduction") { if (m_pSoundSettings->keys().contains("dnsNoiseReduction")) m_pInputWidget->m_pNoiseReducteButton->setChecked(m_pSoundSettings->get(DNS_NOISE_REDUCTION).toBool()); } else if (key == "volumeIncrease") { if (m_pSoundSettings->keys().contains("volumeIncrease")) { m_pOutputWidget->m_pVolumeIncreaseButton->setChecked(m_pSoundSettings->get(VOLUME_INCREASE).toBool()); m_pOutputWidget->setOutputVolumeSliderRang(m_pSoundSettings->get(VOLUME_INCREASE).toBool()); } } else if(key == "themeName") { if (m_pSoundSettings->keys().contains("themeName")) { QString soundThemeStr = m_pSoundSettings->get(SOUND_THEME_KEY).toString(); if(soundThemeStr != "custom"){ int index = m_pSoundWidget->m_pSoundThemeCombobox->findData(soundThemeStr); m_pSoundWidget->m_pSoundThemeCombobox->setCurrentIndex(index); } } } } /* * 处理槽函数 */ void UkmediaMainWidget::dealSlot() { QTimer::singleShot(50, this, SLOT(initVoulmeSlider())); connect(m_pInputWidget->m_pInputIconBtn,SIGNAL(clicked()),this,SLOT(inputMuteButtonSlot())); connect(m_pOutputWidget->m_pOutputIconBtn,SIGNAL(clicked()),this,SLOT(outputMuteButtonSlot())); connect(m_pSoundWidget->m_pStartupButton,SIGNAL(stateChanged(bool)),this,SLOT(startupButtonSwitchChangedSlot(bool))); connect(m_pSoundWidget->m_pPoweroffButton,SIGNAL(stateChanged(bool)),this,SLOT(poweroffButtonSwitchChangedSlot(bool))); connect(m_pSoundWidget->m_pLogoutButton,SIGNAL(stateChanged(bool)),this,SLOT(logoutMusicButtonSwitchChangedSlot(bool))); connect(m_pSoundWidget->m_pWakeupMusicButton,SIGNAL(stateChanged(bool)),this,SLOT(wakeButtonSwitchChangedSlot(bool))); connect(m_pSoundWidget->m_pAlertSoundSwitchButton,SIGNAL(stateChanged(bool)),this,SLOT(alertSoundButtonSwitchChangedSlot(bool))); //输出音量控制 //输出滑动条音量控制 timeSlider = new QTimer(this); connect(timeSlider,SIGNAL(timeout()),this,SLOT(timeSliderSlot())); //输出滑动条改变 connect(m_pOutputWidget->m_pOpVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(outputWidgetSliderChangedSlot(int))); connect(m_pOutputWidget->m_pOpVolumeSlider,SIGNAL(blueValueChanged(int)),this,SLOT(outputWidgetSliderChangedSlotInBlue(int))); //输入滑动条音量控制 connect(m_pInputWidget->m_pIpVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(inputWidgetSliderChangedSlot(int))); //输入等级 connect(m_pVolumeControl,SIGNAL(peakChangedSignal(double)),this,SLOT(peakVolumeChangedSlot(double))); connect(m_pVolumeControl,SIGNAL(updatePortSignal()),this,SLOT(updateCboxDevicePort())); connect(m_pVolumeControl,SIGNAL(deviceChangedSignal()),this,SLOT(updateComboboxListWidgetItemSlot())); //切换输出设备或者音量改变时需要同步更新音量 connect(m_pVolumeControl,&UkmediaVolumeControl::updateVolume,this,[=](int value,bool state){ qDebug() << "Sink Volume Changed" << value << paVolumeToValue(value) << state; bool isChecked = m_pOutputWidget->m_pVolumeIncreaseButton->isChecked(); if(!isChecked && value > PA_VOLUME_NORMAL){ m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,PA_VOLUME_NORMAL); return; } QString percent = QString::number(paVolumeToValue(value)); float balanceVolume = m_pVolumeControl->getBalanceVolume(); m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(true); m_pOutputWidget->m_pOpBalanceSlider->setValue(balanceVolume*100); m_pOutputWidget->m_pOpVolumeSlider->setValue(paVolumeToValue(value)); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(false); initOutputComboboxItem(); themeChangeIcons(); }); connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceVolume,this,[=](int value,bool state){ qDebug() << "Source Volume Changed" << value << paVolumeToValue(value) << state; QString percent = QString::number(paVolumeToValue(value)); m_pInputWidget->m_pIpVolumePercentLabel->setText(percent+"%"); m_pInputWidget->m_pIpVolumeSlider->blockSignals(true); m_pInputWidget->m_pIpVolumeSlider->setValue(paVolumeToValue(value)); m_pInputWidget->m_pIpVolumeSlider->blockSignals(false); //当所有可用的输入设备全部移除,台式机才会出现该情况 if(strstr(m_pVolumeControl->defaultSourceName,"monitor")) m_pInputWidget->m_pInputLevelProgressBar->setValue(0); initInputComboboxItem(); themeChangeIcons(); }); connect(m_pOutputWidget->m_pOpBalanceSlider,SIGNAL(valueChanged(int)),this,SLOT(balanceSliderChangedSlot(int))); //点击报警音量时播放报警声音 connect(m_pSoundWidget->m_pSoundThemeCombobox,SIGNAL(currentIndexChanged(int)),this,SLOT(themeComboxIndexChangedSlot(int))); // connect(m_pSoundWidget->m_pAlertSoundCombobox,SIGNAL(currentIndexChanged(int)),this,SLOT(comboxIndexChangedSlot(int))); // connect(m_pSoundWidget->m_pLagoutCombobox ,SIGNAL(currentIndexChanged(int)),this,SLOT(comboxIndexChangedSlot(int))); // connect(m_pSoundWidget->m_pVolumeChangeCombobox,SIGNAL(currentIndexChanged (int)),this,SLOT(volumeChangedComboboxChangeSlot(int))); //输入输出Combobox槽函数的设置 connect(m_pOutputWidget->m_pDeviceSelectBox,SIGNAL(currentIndexChanged(int)),this,SLOT(cboxoutputListWidgetCurrentRowChangedSlot(int))); connect(m_pInputWidget->m_pInputDeviceSelectBox,SIGNAL(currentIndexChanged(int)),this,SLOT(cboxinputListWidgetCurrentRowChangedSlot(int))); connect(m_pInputWidget->m_pNoiseReducteButton,SIGNAL(stateChanged(bool)),this,SLOT(noiseReductionButtonSwitchChangedSlot(bool))); connect(m_pOutputWidget->m_pVolumeIncreaseButton,SIGNAL(stateChanged(bool)),this,SLOT(volumeIncreaseBtuuonSwitchChangedSlot(bool))); } /* * 初始化滑动条的值 */ void UkmediaMainWidget::initVoulmeSlider() { int sinkVolume = paVolumeToValue(m_pVolumeControl->getSinkVolume()); int sourceVolume = paVolumeToValue(m_pVolumeControl->getSourceVolume()); QString percent = QString::number(sinkVolume); float balanceVolume = m_pVolumeControl->getBalanceVolume(); qDebug() <<"initVolumeSlider" << "sourceVolume" << sourceVolume << "sinkVolume" << sinkVolume; m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); percent = QString::number(sourceVolume); m_pInputWidget->m_pIpVolumePercentLabel->setText(percent+"%"); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(true); m_pInputWidget->m_pIpVolumeSlider->blockSignals(true); m_pOutputWidget->m_pOpBalanceSlider->setValue(balanceVolume*100); m_pOutputWidget->m_pOpVolumeSlider->setValue(sinkVolume); m_pInputWidget->m_pIpVolumeSlider->setValue(sourceVolume); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(false); m_pInputWidget->m_pIpVolumeSlider->blockSignals(false); initOutputComboboxItem(); initInputComboboxItem(); themeChangeIcons(); this->update(); } void UkmediaMainWidget::themeChangeIcons() { int nInputValue = paVolumeToValue(m_pVolumeControl->getSourceVolume()); int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); bool inputStatus = m_pVolumeControl->getSourceMute(); bool outputStatus = m_pVolumeControl->getSinkMute(); qDebug() << "themeChangeIcons" << nInputValue << inputStatus; inputVolumeDarkThemeImage(nInputValue,inputStatus); outputVolumeDarkThemeImage(nOutputValue,outputStatus); m_pOutputWidget->m_pOutputIconBtn->repaint(); m_pInputWidget->m_pInputIconBtn->repaint(); } /* * 滑动条值转换成音量值 */ int UkmediaMainWidget::valueToPaVolume(int value) { return value / UKMEDIA_VOLUME_NORMAL * PA_VOLUME_NORMAL; } /* * 音量值转换成滑动条值 */ int UkmediaMainWidget::paVolumeToValue(int value) { return (value / PA_VOLUME_NORMAL * UKMEDIA_VOLUME_NORMAL) + 0.5; } QPixmap UkmediaMainWidget::drawDarkColoredPixmap(const QPixmap &source) { // QColor currentcolor=HighLightEffect::getCurrentSymbolicColor(); QColor gray(255,255,255); QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); } else { color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } QPixmap UkmediaMainWidget::drawLightColoredPixmap(const QPixmap &source) { // QColor currentcolor=HighLightEffect::getCurrentSymbolicColor(); QColor gray(255,255,255); QColor standard (0,0,0); QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); } else { color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } /* * 初始化combobox的值 */ #if 0 void UkmediaMainWidget::comboboxCurrentTextInit() { QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); int index = 0; for (int i=0;icount();i++) { QString str = m_pSoundList->at(i); if (str.contains(filenameStr,Qt::CaseSensitive)) { index = i; break; } } if (nameStr == "alert-sound") { QString displayName = m_pSoundNameList->at(index); m_pSoundWidget->m_pAlertSoundCombobox->setCurrentText(displayName); continue; } if (nameStr == "window-close") { QString displayName = m_pSoundNameList->at(index); continue; } else if (nameStr == "volume-changed") { QString displayName = m_pSoundNameList->at(index); m_pSoundWidget->m_pVolumeChangeCombobox->setCurrentText(displayName); continue; } else if (nameStr == "system-setting") { QString displayName = m_pSoundNameList->at(index); continue; } } else { continue; } } } #endif /* * 是否播放开机音乐 */ void UkmediaMainWidget::startupButtonSwitchChangedSlot(bool status) { // if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ // if (m_pSoundSettings->keys().contains("startupMusic")) { // m_pSoundSettings->set(STARTUP_MUSIC,status); // } // } bool bBootStatus = true; if (m_pBootSetting->keys().contains("startupMusic")) { bBootStatus = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool(); if (bBootStatus != status) { m_pBootSetting->set(UKUI_STARTUP_MUSIC_KEY,status); } } } /* * 是否播放关机音乐 */ void UkmediaMainWidget::poweroffButtonSwitchChangedSlot(bool status) { bool bBootStatus = true; if (m_pBootSetting->keys().contains("poweroffMusic")) { bBootStatus = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool(); if (bBootStatus != status) { m_pBootSetting->set(UKUI_POWEROFF_MUSIC_KEY,status); } } } /* * 是否播放注销音乐 */ void UkmediaMainWidget::logoutMusicButtonSwitchChangedSlot(bool status) { bool bBootStatus = true; if (m_pBootSetting->keys().contains("logoutMusic")) { bBootStatus = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool(); if (bBootStatus != status) { m_pBootSetting->set(UKUI_LOGOUT_MUSIC_KEY,status); } } } /* * 是否播放唤醒音乐 */ void UkmediaMainWidget::wakeButtonSwitchChangedSlot(bool status) { bool bBootStatus = true; if (m_pBootSetting->keys().contains("weakupMusic")) { bBootStatus = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool(); if (bBootStatus != status) { m_pBootSetting->set(UKUI_WAKEUP_MUSIC_KEY,status); } } } /* * 提示音的开关 */ void UkmediaMainWidget::alertSoundButtonSwitchChangedSlot(bool status) { if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("eventSounds")) { m_pSoundSettings->set(EVENT_SOUNDS_KEY,status); } } if (status == true) { m_pSoundWidget->m_pThemeWidget->show(); m_pSoundWidget->line1->show(); } else { m_pSoundWidget->m_pThemeWidget->hide(); m_pSoundWidget->line1->hide(); } } void UkmediaMainWidget::noiseReductionButtonSwitchChangedSlot(bool status) { if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("dnsNoiseReduction")) { m_pSoundSettings->set(DNS_NOISE_REDUCTION,status); } } } void UkmediaMainWidget::volumeIncreaseBtuuonSwitchChangedSlot(bool status) { if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("volumeIncrease")) { m_pSoundSettings->set(VOLUME_INCREASE,status); m_pOutputWidget->setOutputVolumeSliderRang(status); } } } void UkmediaMainWidget::bootMusicSettingsChanged() { bool bBootStatus = true; bool status; // if (m_pBootSetting->keys().contains("startupMusic")) { // bBootStatus = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool(); // if (status != bBootStatus ) { // m_pSoundWidget->m_pStartupButton->setChecked(bBootStatus); // } // } if (m_pBootSetting->keys().contains("poweroffMusic")) { bBootStatus = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool(); if (status != bBootStatus ) { m_pSoundWidget->m_pPoweroffButton->setChecked(bBootStatus); } } if (m_pBootSetting->keys().contains("logoutMusic")) { bBootStatus = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool(); if (status != bBootStatus ) { m_pSoundWidget->m_pLogoutButton->setChecked(bBootStatus); } } if (m_pBootSetting->keys().contains("weakupMusic")) { bBootStatus = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool(); if (status != bBootStatus ) { m_pSoundWidget->m_pWakeupMusicButton->setChecked(bBootStatus); } } } /* * 系统主题更改 */ void UkmediaMainWidget::ukuiThemeChangedSlot(const QString &themeStr) { if (m_pThemeSetting->keys().contains("styleName")) { mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); } int nInputValue = getInputVolume(); int nOutputValue = getOutputVolume(); bool inputStatus = m_pVolumeControl->getSourceMute(); bool outputStatus = m_pVolumeControl->getSinkMute(); inputVolumeDarkThemeImage(nInputValue,inputStatus); outputVolumeDarkThemeImage(nOutputValue,outputStatus); m_pOutputWidget->m_pOutputIconBtn->repaint(); // m_pSoundWidget->m_pAlertIconBtn->repaint(); m_pInputWidget->m_pInputIconBtn->repaint(); Q_EMIT qApp->paletteChanged(qApp->palette()); this->repaint(); } /* * 获取输入音量值 */ int UkmediaMainWidget::getInputVolume() { return m_pInputWidget->m_pIpVolumeSlider->value(); } /* * 获取输出音量值 */ int UkmediaMainWidget::getOutputVolume() { return m_pOutputWidget->m_pOpVolumeSlider->value(); } /* * 深色主题时输出音量图标 */ void UkmediaMainWidget::outputVolumeDarkThemeImage(int value,bool status) { QImage image; QColor color = QColor(0,0,0,216); if (mThemeName == UKUI_THEME_WHITE || mThemeName == "ukui-default") { color = QColor(0,0,0,216); } else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-dark") { color = QColor(255,255,255,216); } m_pOutputWidget->m_pOutputIconBtn->mColor = color; if (status) { image = QIcon::fromTheme("audio-volume-muted-symbolic").pixmap(24,24).toImage(); } else if (value <= 0) { image = QIcon::fromTheme("audio-volume-muted-symbolic").pixmap(24,24).toImage(); } else if (value > 0 && value <= 33) { image = QIcon::fromTheme("audio-volume-low-symbolic").pixmap(24,24).toImage(); } else if (value >33 && value <= 66) { image = QIcon::fromTheme("audio-volume-medium-symbolic").pixmap(24,24).toImage(); } else { image = QIcon::fromTheme("audio-volume-high-symbolic").pixmap(24,24).toImage(); } m_pOutputWidget->m_pOutputIconBtn->mImage = image; } /* * 输入音量图标 */ void UkmediaMainWidget::inputVolumeDarkThemeImage(int value,bool status) { QImage image; QColor color = QColor(0,0,0,190); if (mThemeName == UKUI_THEME_WHITE || mThemeName == "ukui-default") { color = QColor(0,0,0,190); } else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-dark") { color = QColor(255,255,255,190); } m_pInputWidget->m_pInputIconBtn->mColor = color; if (status) { image = QIcon::fromTheme("microphone-sensitivity-muted-symbolic").pixmap(24,24).toImage(); } else if (value <= 0) { image = QIcon::fromTheme("microphone-sensitivity-muted-symbolic").pixmap(24,24).toImage(); } else if (value > 0 && value <= 33) { image = QIcon::fromTheme("microphone-sensitivity-low-symbolic").pixmap(24,24).toImage(); } else if (value >33 && value <= 66) { image = QIcon::fromTheme("microphone-sensitivity-medium-symbolic").pixmap(24,24).toImage(); } else { image = QIcon::fromTheme("microphone-sensitivity-high-symbolic").pixmap(24,24).toImage(); } m_pInputWidget->m_pInputIconBtn->mImage = image; } //void UkmediaMainWidget::onKeyChanged (GSettings *settings,gchar *key,UkmediaMainWidget *m_pWidget) void UkmediaMainWidget::onKeyChanged (const QString &key) { // Q_UNUSED(settings); qDebug() << "onKeyChanged" <m_pSoundSettings->keys().contains("inputFeedbackSound")) { feedBackEnabled = m_pWidget->m_pSoundSettings->get(INPUT_SOUNDS_KEY).toBool(); } if (m_pWidget->m_pSoundSettings->keys().contains("eventSounds")) { eventsEnabled = m_pWidget->m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); } if (eventsEnabled) { if (m_pWidget->m_pSoundSettings->keys().contains("themeName")) { pThemeName = m_pWidget->m_pSoundSettings->get(SOUND_THEME_KEY).toString(); } } else { pThemeName = g_strdup (NO_SOUNDS_THEME_NAME); } } qDebug() << "updateTheme" << pThemeName; //设置combox的主题 setComboxForThemeName (m_pWidget, pThemeName.toLatin1().data()); updateAlertsFromThemeName (m_pWidget, pThemeName.toLatin1().data()); } /* * 设置主题名到combox */ void UkmediaMainWidget::setupThemeSelector (UkmediaMainWidget *m_pWidget) { g_debug("setup theme selector"); GHashTable *hash; const char * const *dataDirs; const char *m_pDataDir; char *dir; guint i; /* Add the theme names and their display name to a hash table, * makes it easy to avoid duplicate themes */ hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); dataDirs = g_get_system_data_dirs (); for (i = 0; dataDirs[i] != nullptr; i++) { dir = g_build_filename (dataDirs[i], "sounds", nullptr); soundThemeInDir (m_pWidget,hash, dir); } m_pDataDir = g_get_user_data_dir (); dir = g_build_filename (m_pDataDir, "sounds", nullptr); soundThemeInDir (m_pWidget,hash, dir); /* If there isn't at least one theme, make everything * insensitive, LAME! */ if (g_hash_table_size (hash) == 0) { g_warning ("Bad setup, install the freedesktop sound theme"); g_hash_table_destroy (hash); return; } /* Add the themes to a combobox */ g_hash_table_destroy (hash); } /* * 主题名所在目录 */ void UkmediaMainWidget::soundThemeInDir (UkmediaMainWidget *m_pWidget,GHashTable *hash,const char *dir) { Q_UNUSED(hash); qDebug() << "sound theme in dir" << dir; GDir *d; const char *m_pName; d = g_dir_open (dir, 0, nullptr); if (d == nullptr) { return; } while ((m_pName = g_dir_read_name (d)) != nullptr) { char *m_pDirName, *m_pIndex, *m_pIndexName; /* Look for directories */ m_pDirName = g_build_filename (dir, m_pName, nullptr); if (g_file_test (m_pDirName, G_FILE_TEST_IS_DIR) == FALSE) { continue; } /* Look for index files */ m_pIndex = g_build_filename (m_pDirName, "index.theme", nullptr); /* Check the name of the theme in the index.theme file */ m_pIndexName = loadIndexThemeName (m_pIndex, nullptr); if (m_pIndexName == nullptr) { continue; } if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ QString themeName; if (m_pWidget->m_pSoundSettings->keys().contains("themeName")) { themeName = m_pWidget->m_pSoundSettings->get(SOUND_THEME_KEY).toString(); } qDebug() << "sound theme in dir" << "displayname:" << m_pIndexName << "theme name:" << m_pName << "theme:"<< themeName; if (m_pName && !strstr(m_pName,"ubuntu") && !strstr(m_pName,"freedesktop") && !strstr(m_pName,"custom")) { m_pWidget->m_pThemeNameList->append(m_pName); m_pWidget->m_pSoundWidget->m_pSoundThemeCombobox->addItem(m_pIndexName,m_pName); } } } g_dir_close (d); } /* * 加载下标的主题名 */ char *UkmediaMainWidget::loadIndexThemeName (const char *index,char **parent) { g_debug("load index theme name"); GKeyFile *file; char *indexname = nullptr; gboolean hidden; file = g_key_file_new (); if (g_key_file_load_from_file (file, index, G_KEY_FILE_KEEP_TRANSLATIONS, nullptr) == FALSE) { g_key_file_free (file); return nullptr; } /* Don't add hidden themes to the list */ hidden = g_key_file_get_boolean (file, "Sound Theme", "Hidden", nullptr); if (!hidden) { indexname = g_key_file_get_locale_string (file,"Sound Theme","Name",nullptr,nullptr); /* Save the parent theme, if there's one */ if (parent != nullptr) { *parent = g_key_file_get_string (file,"Sound Theme","Inherits",nullptr); } } g_key_file_free (file); return indexname; } /* * 设置combox的主题名 */ void UkmediaMainWidget::setComboxForThemeName (UkmediaMainWidget *m_pWidget,const char *name) { g_debug("set combox for theme name"); gboolean found; int count = 0; /* If the name is empty, use "freedesktop" */ if (name == nullptr || *name == '\0') { name = "freedesktop"; } QString value = ""; int index = -1; while(!found) { if (m_pWidget->m_pThemeNameList->count() > 0) value = m_pWidget->m_pThemeNameList->at(count); found = (value != "" && value == name); count++; if( count >= m_pWidget->m_pThemeNameList->size() || found) { count = 0; break; } } if (m_pWidget->m_pThemeNameList->contains(name)) { index = m_pWidget->m_pThemeNameList->indexOf(name); value = m_pWidget->m_pThemeNameList->at(index); m_pWidget->m_pSoundWidget->m_pSoundThemeCombobox->setCurrentIndex(index); } /* When we can't find the theme we need to set, try to set the default * one "freedesktop" */ if (found) { } else if (strcmp (name, "freedesktop") != 0) {//设置为默认的主题 qDebug() << "设置为默认的主题" << "freedesktop"; g_debug ("not found, falling back to fdo"); setComboxForThemeName (m_pWidget, "freedesktop"); } } /* * 更新报警音 */ void UkmediaMainWidget::updateAlertsFromThemeName (UkmediaMainWidget *m_pWidget,const gchar *m_pName) { g_debug("update alerts from theme name"); if (strcmp (m_pName, CUSTOM_THEME_NAME) != 0) { /* reset alert to default */ updateAlert (m_pWidget, DEFAULT_ALERT_ID); } else { int sound_type; char *linkname; linkname = nullptr; sound_type = getFileType ("bell-terminal", &linkname); g_debug ("Found link: %s", linkname); if (sound_type == SOUND_TYPE_CUSTOM) { updateAlert (m_pWidget, linkname); } } } /* 更新报警声音 */ void UkmediaMainWidget::updateAlert (UkmediaMainWidget *pWidget,const char *alertId) { Q_UNUSED(alertId) g_debug("update alert"); QString themeStr; char *theme; char *parent; gboolean is_custom; gboolean is_default; gboolean add_custom = false; gboolean remove_custom = false; QString nameStr; int index = -1; /* Get the current theme's name, and set the parent */ index = pWidget->m_pSoundWidget->m_pSoundThemeCombobox->currentIndex(); if (index != -1) { themeStr = pWidget->m_pThemeNameList->at(index); nameStr = pWidget->m_pThemeNameList->at(index); } else { themeStr = "freedesktop"; nameStr = "freedesktop"; } QByteArray ba = themeStr.toLatin1(); theme = ba.data(); QByteArray baParent = nameStr.toLatin1(); parent = baParent.data(); is_custom = strcmp (theme, CUSTOM_THEME_NAME) == 0; is_default = strcmp (alertId, DEFAULT_ALERT_ID) == 0; if (! is_custom && is_default) { /* remove custom just in case */ remove_custom = TRUE; } else if (! is_custom && ! is_default) { createCustomTheme (parent); saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); add_custom = TRUE; } else if (is_custom && is_default) { saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); /* after removing files check if it is empty */ if (customThemeDirIsEmpty ()) { remove_custom = TRUE; } } else if (is_custom && ! is_default) { saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); } if (add_custom) { setComboxForThemeName (pWidget, CUSTOM_THEME_NAME); } else if (remove_custom) { setComboxForThemeName (pWidget, parent); } } /* 获取声音文件类型 */ int UkmediaMainWidget::getFileType (const char *sound_name,char **linked_name) { g_debug("get file type"); char *name, *filename; *linked_name = nullptr; name = g_strdup_printf ("%s.disabled", sound_name); filename = customThemeDirPath (name); if (g_file_test (filename, G_FILE_TEST_IS_REGULAR) != FALSE) { return SOUND_TYPE_OFF; } /* We only check for .ogg files because those are the * only ones we create */ name = g_strdup_printf ("%s.ogg", sound_name); filename = customThemeDirPath (name); g_free (name); if (g_file_test (filename, G_FILE_TEST_IS_SYMLINK) != FALSE) { *linked_name = g_file_read_link (filename, nullptr); g_free (filename); return SOUND_TYPE_CUSTOM; } g_free (filename); return SOUND_TYPE_BUILTIN; } /* 自定义主题路径 */ char *UkmediaMainWidget::customThemeDirPath (const char *child) { g_debug("custom theme dir path"); static char *dir = nullptr; const char *data_dir; if (dir == nullptr) { data_dir = g_get_user_data_dir (); dir = g_build_filename (data_dir, "sounds", CUSTOM_THEME_NAME, nullptr); } if (child == nullptr) return g_strdup (dir); return g_build_filename (dir, child, nullptr); } /* 获取报警声音文件的路径 */ #if 0 void UkmediaMainWidget::populateModelFromDir (UkmediaMainWidget *m_pWidget,const char *dirname)//从目录查找报警声音文件 { g_debug("populate model from dir"); GDir *d; const char *name; char *path; d = g_dir_open (dirname, 0, nullptr); if (d == nullptr) { return; } while ((name = g_dir_read_name (d)) != nullptr) { if (! g_str_has_suffix (name, ".xml")) { continue; } QString themeName = name; QStringList temp = themeName.split("-"); themeName = temp.at(0); if (!m_pWidget->m_pSoundThemeList->contains(themeName)) { m_pWidget->m_pSoundThemeList->append(themeName); m_pWidget->m_pSoundThemeDirList->append(dirname); m_pWidget->m_pSoundThemeXmlNameList->append(name); } path = g_build_filename (dirname, name, nullptr); } if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ QString pThemeName; if (m_pWidget->m_pSoundSettings->keys().contains("themeName")) { pThemeName = m_pWidget->m_pSoundSettings->get(SOUND_THEME_KEY).toString(); } int themeIndex; if(m_pWidget->m_pSoundThemeList->contains(pThemeName)) { themeIndex = m_pWidget->m_pSoundThemeList->indexOf(pThemeName); if (themeIndex < 0 ) return; } else { themeIndex = 1; } themeIndex=0; QString dirName = m_pWidget->m_pSoundThemeDirList->at(themeIndex); QString xmlName = m_pWidget->m_pSoundThemeXmlNameList->at(themeIndex); path = g_build_filename (dirName.toLatin1().data(), xmlName.toLatin1().data(), nullptr); m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(true); m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->clear(); m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(false); } populateModelFromFile (m_pWidget, path); //初始化声音主题 g_free (path); g_dir_close (d); } /* 获取报警声音文件 */ void UkmediaMainWidget::populateModelFromFile (UkmediaMainWidget *m_pWidget,const char *filename) { g_debug("populate model from file"); xmlDocPtr doc; xmlNodePtr root; xmlNodePtr child; gboolean exists; qDebug() << "populateModelFromFile" <children; child; child = child->next) { if (xmlNodeIsText (child)) { continue; } if (xmlStrcmp (child->name, GVC_SOUND_SOUND) != 0) { continue; } populateModelFromNode (m_pWidget, child); } xmlFreeDoc (doc); } /* 从节点查找声音文件并加载到组合框中 */ void UkmediaMainWidget::populateModelFromNode (UkmediaMainWidget *m_pWidget,xmlNodePtr node) { g_debug("populate model from node"); xmlNodePtr child; xmlChar *filename; xmlChar *name; filename = nullptr; name = xmlGetAndTrimNames (node); for (child = node->children; child; child = child->next) { if (xmlNodeIsText (child)) { continue; } if (xmlStrcmp (child->name, GVC_SOUND_FILENAME) == 0) { filename = xmlNodeGetContent (child); } else if (xmlStrcmp (child->name, GVC_SOUND_NAME) == 0) { /* EH? should have been trimmed */ } } //将找到的声音文件名设置到combox中 if (filename != nullptr && name != nullptr) { m_pWidget->m_pSoundList->append((const char *)filename); m_pWidget->m_pSoundNameList->append((const char *)name); m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->addItem((char *)name); m_pWidget->m_pSoundWidget->m_pLagoutCombobox->addItem((char *)name); m_pWidget->m_pSoundWidget->m_pVolumeChangeCombobox->addItem((char *)name); } xmlFree (filename); xmlFree (name); } #endif /* Adapted from yelp-toc-pager.c */ xmlChar *UkmediaMainWidget::xmlGetAndTrimNames (xmlNodePtr node) { g_debug("xml get and trim names"); xmlNodePtr cur; xmlChar *keep_lang = nullptr; xmlChar *value; int j, keep_pri = INT_MAX; const gchar * const * langs = g_get_language_names (); value = nullptr; for (cur = node->children; cur; cur = cur->next) { if (! xmlStrcmp (cur->name, GVC_SOUND_NAME)) { xmlChar *cur_lang = nullptr; int cur_pri = INT_MAX; cur_lang = xmlNodeGetLang (cur); if (cur_lang) { for (j = 0; langs[j]; j++) { if (g_str_equal (cur_lang, langs[j])) { cur_pri = j; break; } } } else { cur_pri = INT_MAX - 1; } if (cur_pri <= keep_pri) { if (keep_lang) xmlFree (keep_lang); if (value) xmlFree (value); value = xmlNodeGetContent (cur); keep_lang = cur_lang; keep_pri = cur_pri; } else { if (cur_lang) xmlFree (cur_lang); } } } /* Delete all GVC_SOUND_NAME nodes */ cur = node->children; while (cur) { xmlNodePtr p_this = cur; cur = cur->next; if (! xmlStrcmp (p_this->name, GVC_SOUND_NAME)) { xmlUnlinkNode (p_this); xmlFreeNode (p_this); } } return value; } /* * 播放报警声音 */ void UkmediaMainWidget::playAlretSoundFromPath (UkmediaMainWidget *w,QString path) { g_debug("play alert sound from path"); QString themeName; if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (w->m_pSoundSettings->keys().contains("themeName")) { themeName = w->m_pSoundSettings->get(SOUND_THEME_KEY).toString(); } } if (strcmp (path.toLatin1().data(), DEFAULT_ALERT_ID) == 0) { if (themeName != NULL) { caPlayForWidget (w, 0, CA_PROP_APPLICATION_NAME, _("Sound Preferences"), CA_PROP_EVENT_ID, "bell-window-system", CA_PROP_CANBERRA_XDG_THEME_NAME, themeName.toLatin1().data(), CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), CA_PROP_CANBERRA_CACHE_CONTROL, "never", CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", #ifdef CA_PROP_CANBERRA_ENABLE CA_PROP_CANBERRA_ENABLE, "1", #endif NULL); } else { caPlayForWidget (w, 0, CA_PROP_APPLICATION_NAME, _("Sound Preferences"), CA_PROP_EVENT_ID, "bell-window-system", CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), CA_PROP_CANBERRA_CACHE_CONTROL, "never", CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", #ifdef CA_PROP_CANBERRA_ENABLE CA_PROP_CANBERRA_ENABLE, "1", #endif NULL); } } else { caPlayForWidget (w, 0, CA_PROP_APPLICATION_NAME, _("Sound Preferences"), CA_PROP_MEDIA_FILENAME, path.toLatin1().data(), CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), CA_PROP_CANBERRA_CACHE_CONTROL, "never", CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", #ifdef CA_PROP_CANBERRA_ENABLE CA_PROP_CANBERRA_ENABLE, "1", #endif NULL); } } /* 点击combox播放声音 */ #if 0 void UkmediaMainWidget::comboxIndexChangedSlot(int index) { g_debug("combox index changed slot"); QString sound_name = m_pSoundList->at(index); updateAlert(this,sound_name.toLatin1().data()); playAlretSoundFromPath(this,sound_name); QString fileName = m_pSoundList->at(index); QStringList list = fileName.split("/"); QString soundName = list.at(list.count()-1); QStringList eventIdList = soundName.split("."); QString eventId = eventIdList.at(0); QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); // QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "alert-sound") { settings->set(FILENAME_KEY,eventId); return; } } else { continue; } } } /* 设置窗口关闭的提示音 */ void UkmediaMainWidget::windowClosedComboboxChangedSlot(int index) { QString fileName = m_pSoundList->at(index); QStringList list = fileName.split("/"); QString soundName = list.at(list.count()-1); QStringList eventIdList = soundName.split("."); QString eventId = eventIdList.at(0); QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); // QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "window-close") { settings->set(FILENAME_KEY,eventId); return; } } else { continue; } } } /* 设置音量改变的提示声音 */ void UkmediaMainWidget::volumeChangedComboboxChangeSlot(int index) { QString sound_name = m_pSoundList->at(index); // updateAlert(this,sound_name.toLatin1().data()); playAlretSoundFromPath(this,sound_name); QString fileName = m_pSoundList->at(index); QStringList list = fileName.split("/"); QString soundName = list.at(list.count()-1); QStringList eventIdList = soundName.split("."); QString eventId = eventIdList.at(0); QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); // QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "volume-changed") { settings->set(FILENAME_KEY,eventId); return; } } else { continue; } } } void UkmediaMainWidget::settingMenuComboboxChangedSlot(int index) { QString fileName = m_pSoundList->at(index); QStringList list = fileName.split("/"); QString soundName = list.at(list.count()-1); QStringList eventIdList = soundName.split("."); QString eventId = eventIdList.at(0); QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "system-setting") { settings->set(FILENAME_KEY,eventId); return; } } else { continue; } } } #endif /* 点击输入音量按钮静音 */ void UkmediaMainWidget::inputMuteButtonSlot() { m_pVolumeControl->setSourceMute(!m_pVolumeControl->sourceMuted); inputVolumeDarkThemeImage(paVolumeToValue(m_pVolumeControl->sourceVolume),!m_pVolumeControl->sourceMuted); m_pOutputWidget->m_pOutputIconBtn->repaint(); } /* 点击输出音量按钮静音 */ void UkmediaMainWidget::outputMuteButtonSlot() { m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); outputVolumeDarkThemeImage(paVolumeToValue(m_pVolumeControl->sinkVolume),!m_pVolumeControl->sinkMuted); m_pOutputWidget->m_pOutputIconBtn->repaint(); } /* 点击声音主题实现主题切换 */ void UkmediaMainWidget::themeComboxIndexChangedSlot(int index) { Q_UNUSED(index); g_debug("theme combox index changed slot"); if (index == -1) { return; } //设置系统主题 QString theme = m_pThemeNameList->at(index); if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("themeName")) { m_pSoundSettings->set(SOUND_THEME_KEY,theme); } } if(QGSettings::isSchemaInstalled(UKUI_GLOBALTHEME_SETTINGS)){ m_pSoundThemeSetting = new QGSettings(UKUI_GLOBALTHEME_SETTINGS); if(m_pSoundThemeSetting->keys().contains("globalThemeName")) m_pSoundThemeSetting->set("global-theme-name","custom"); } } /* 滚动输出音量滑动条 */ void UkmediaMainWidget::outputWidgetSliderChangedSlot(int value) { QString percent; percent = QString::number(value); outputVolumeDarkThemeImage(value,false); m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); //蓝牙a2dp模式下滑动条跳动问题,以间隔为10设置音量 if (m_pVolumeControl->defaultSinkName.contains("a2dp_sink")) return; int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); qDebug() << "outputWidgetSliderChangedSlot" << value <defaultSinkName.contains("a2dp_sink")) { m_pOutputWidget->m_pOpVolumeSlider->isMouseWheel = false; return; } qDebug() << "Special Handling Adjust volume in Bluetooth a2dp mode" << value ; int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); QString percent; percent = QString::number(value); outputVolumeDarkThemeImage(value,false); m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); } void UkmediaMainWidget::timeSliderSlot() { if(mouseReleaseState){ int value = m_pOutputWidget->m_pOpVolumeSlider->value(); QString percent; bool status = false; percent = QString::number(value); int volume = value*65536/100; if (value <= 0) { status = true; percent = QString::number(0); } else { if (firstEnterSystem) { } else { } } firstEnterSystem = false; outputVolumeDarkThemeImage(value,status); percent.append("%"); m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent); m_pOutputWidget->m_pOutputIconBtn->repaint(); mouseReleaseState = false; mousePress = false; timeSlider->stop(); } else{ timeSlider->start(50); } } /* 滚动输入滑动条 */ void UkmediaMainWidget::inputWidgetSliderChangedSlot(int value) { int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,volume); qDebug() << "inputWidgetSliderChangedSlot" << value <sourceMuted); m_pInputWidget->m_pInputIconBtn->repaint(); QString percent = QString::number(value); percent.append("%"); m_pInputWidget->m_pInputIconBtn->repaint(); m_pInputWidget->m_pIpVolumePercentLabel->setText(percent); } /* * 平衡值改变 */ void UkmediaMainWidget::balanceSliderChangedSlot(int value) { gdouble volume = value/100.0; value = valueToPaVolume(m_pOutputWidget->m_pOpVolumeSlider->value()); m_pVolumeControl->setBalanceVolume(m_pVolumeControl->sinkIndex,value,volume); qDebug() << "balanceSliderChangedSlot" <= 0) { m_pInputWidget->m_pInputLevelProgressBar->setEnabled(true); //因为有些电脑MIC增益太大会引起反馈条消失先暂时固定最大值为101 //int value = qRound(v * m_pInputWidget->m_pInputLevelProgressBar->maximum()); int value = qRound(v * 100); m_pInputWidget->m_pInputLevelProgressBar->setValue(value); } else { m_pInputWidget->m_pInputLevelProgressBar->setEnabled(false); m_pInputWidget->m_pInputLevelProgressBar->setValue(0); } } gboolean UkmediaMainWidget::saveAlertSounds (QComboBox *combox,const char *id) { const char *sounds[3] = { "bell-terminal", "bell-window-system", NULL }; char *path; if (strcmp (id, DEFAULT_ALERT_ID) == 0) { deleteOldFiles (sounds); deleteDisabledFiles (sounds); } else { deleteOldFiles (sounds); deleteDisabledFiles (sounds); addCustomFile (sounds, id); } /* And poke the directory so the theme gets updated */ path = customThemeDirPath(NULL); if (utime (path, NULL) != 0) { g_warning ("Failed to update mtime for directory '%s': %s", path, g_strerror (errno)); } g_free (path); return FALSE; } void UkmediaMainWidget::deleteOldFiles (const char **sounds) { guint i; for (i = 0; sounds[i] != NULL; i++) { deleteOneFile (sounds[i], "%s.ogg"); } } void UkmediaMainWidget::deleteOneFile (const char *sound_name, const char *pattern) { GFile *file; char *name, *filename; name = g_strdup_printf (pattern, sound_name); filename = customThemeDirPath(name); g_free (name); file = g_file_new_for_path (filename); g_free (filename); cappletFileDeleteRecursive (file, NULL); g_object_unref (file); } void UkmediaMainWidget::deleteDisabledFiles (const char **sounds) { guint i; for (i = 0; sounds[i] != NULL; i++) { deleteOneFile (sounds[i], "%s.disabled"); } } void UkmediaMainWidget::addCustomFile (const char **sounds, const char *filename) { guint i; for (i = 0; sounds[i] != NULL; i++) { GFile *file; char *name, *path; /* We use *.ogg because it's the first type of file that * libcanberra looks at */ name = g_strdup_printf ("%s.ogg", sounds[i]); path = customThemeDirPath(name); g_free (name); /* In case there's already a link there, delete it */ g_unlink (path); file = g_file_new_for_path (path); g_free (path); /* Create the link */ g_file_make_symbolic_link (file, filename, NULL, NULL); g_object_unref (file); } } /** * A utility routine to delete files and/or directories, * including non-empty directories. **/ gboolean UkmediaMainWidget::cappletFileDeleteRecursive (GFile *file, GError **error) { GFileInfo *info; GFileType type; g_return_val_if_fail (error == NULL || *error == NULL, FALSE); info = g_file_query_info (file, G_FILE_ATTRIBUTE_STANDARD_TYPE, G_FILE_QUERY_INFO_NONE, NULL, error); if (info == NULL) { return FALSE; } type = g_file_info_get_file_type (info); g_object_unref (info); if (type == G_FILE_TYPE_DIRECTORY) { return directoryDeleteRecursive (file, error); } else { return g_file_delete (file, NULL, error); } } gboolean UkmediaMainWidget::directoryDeleteRecursive (GFile *directory, GError **error) { GFileEnumerator *enumerator; GFileInfo *info; gboolean success = TRUE; enumerator = g_file_enumerate_children (directory, G_FILE_ATTRIBUTE_STANDARD_NAME "," G_FILE_ATTRIBUTE_STANDARD_TYPE, G_FILE_QUERY_INFO_NONE, NULL, error); if (enumerator == NULL) return FALSE; while (success && (info = g_file_enumerator_next_file (enumerator, NULL, NULL))) { GFile *child; child = g_file_get_child (directory, g_file_info_get_name (info)); if (g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY) { success = directoryDeleteRecursive (child, error); } g_object_unref (info); if (success) success = g_file_delete (child, NULL, error); } g_file_enumerator_close (enumerator, NULL, NULL); if (success) success = g_file_delete (directory, NULL, error); return success; } void UkmediaMainWidget::createCustomTheme (const char *parent) { GKeyFile *keyfile; char *data; char *path; /* Create the custom directory */ path = customThemeDirPath(NULL); g_mkdir_with_parents (path, 0755); g_free (path); /* Set the data for index.theme */ keyfile = g_key_file_new (); g_key_file_set_string (keyfile, "Sound Theme", "Name", _("Custom")); g_key_file_set_string (keyfile, "Sound Theme", "Inherits", parent); g_key_file_set_string (keyfile, "Sound Theme", "Directories", "."); data = g_key_file_to_data (keyfile, NULL, NULL); g_key_file_free (keyfile); /* Save the index.theme */ path = customThemeDirPath ("index.theme"); g_file_set_contents (path, data, -1, NULL); g_free (path); g_free (data); customThemeUpdateTime (); } /* This function needs to be called after each individual * changeset to the theme */ void UkmediaMainWidget::customThemeUpdateTime (void) { char *path; path = customThemeDirPath (NULL); utime (path, NULL); g_free (path); } gboolean UkmediaMainWidget::customThemeDirIsEmpty (void) { char *dir; GFile *file; gboolean is_empty; GFileEnumerator *enumerator; GFileInfo *info; GError *error = NULL; dir = customThemeDirPath(NULL); file = g_file_new_for_path (dir); g_free (dir); is_empty = TRUE; enumerator = g_file_enumerate_children (file, G_FILE_ATTRIBUTE_STANDARD_NAME "," G_FILE_ATTRIBUTE_STANDARD_TYPE, G_FILE_QUERY_INFO_NONE, NULL, &error); if (enumerator == NULL) { g_warning ("Unable to enumerate files: %s", error->message); g_error_free (error); goto out; } while (is_empty && (info = g_file_enumerator_next_file (enumerator, NULL, NULL))) { if (strcmp ("index.theme", g_file_info_get_name (info)) != 0) { is_empty = FALSE; } g_object_unref (info); } g_file_enumerator_close (enumerator, NULL, NULL); out: g_object_unref (file); return is_empty; } int UkmediaMainWidget::caPlayForWidget(UkmediaMainWidget *w, uint32_t id, ...) { va_list ap; int ret; ca_proplist *p; if ((ret = ca_proplist_create(&p)) < 0) return ret; if ((ret = caProplistSetForWidget(p, w)) < 0) return -1; va_start(ap, id); ret = caProplistMergeAp(p, ap); va_end(ap); if (ret < 0) return -1; ca_context *c ; ca_context_create(&c); ret = ca_context_play_full(c, id, p, NULL, NULL); return ret; } int UkmediaMainWidget::caProplistMergeAp(ca_proplist *p, va_list ap) { int ret; for (;;) { const char *key, *value; if (!(key = va_arg(ap, const char*))) break; if (!(value = va_arg(ap, const char*))) return CA_ERROR_INVALID; if ((ret = ca_proplist_sets(p, key, value)) < 0) return ret; } return CA_SUCCESS; } int UkmediaMainWidget::caProplistSetForWidget(ca_proplist *p, UkmediaMainWidget *widget) { int ret; const char *t; QScreen *screen; gint x = -1; gint y = -1; gint width = -1; gint height = -1; gint screen_width = -1; gint screen_height = -1; if ((t = widget->windowTitle().toLatin1().data())) if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_NAME, t)) < 0) return ret; if (t) if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_ID, t)) < 0) return ret; if ((t = widget->windowIconText().toLatin1().data())) if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_ICON_NAME, t)) < 0) return ret; if (screen = qApp->primaryScreen()) { if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_SCREEN, "%i", 0)) < 0) return ret; } width = widget->size().width(); height = widget->size().height(); if (width > 0) if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_WIDTH, "%i", width)) < 0) return ret; if (height > 0) if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_HEIGHT, "%i", height)) < 0) return ret; if (x >= 0 && width > 0) { screen_width = qApp->primaryScreen()->size().width(); x += width/2; x = CA_CLAMP(x, 0, screen_width-1); /* We use these strange format strings here to avoid that libc * applies locale information on the formatting of floating * numbers. */ if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_HPOS, "%i.%03i", (int) (x/(screen_width-1)), (int) (1000.0*x/(screen_width-1)) % 1000)) < 0) return ret; } if (y >= 0 && height > 0) { screen_height = qApp->primaryScreen()->size().height(); y += height/2; y = CA_CLAMP(y, 0, screen_height-1); if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_VPOS, "%i.%03i", (int) (y/(screen_height-1)), (int) (1000.0*y/(screen_height-1)) % 1000)) < 0) return ret; } return CA_SUCCESS; } UkmediaMainWidget::~UkmediaMainWidget() { } //查找指定声卡名的索引 int UkmediaMainWidget::findCardIndex(QString cardName, QMap cardMap) { QMap::iterator it; for(it=cardMap.begin();it!=cardMap.end();) { if (it.value() == cardName) { return it.key(); } ++it; } return -1; } /* * 根据声卡索引查找声卡名 */ QString UkmediaMainWidget::findCardName(int index,QMap cardMap) { QMap::iterator it; for(it=cardMap.begin();it!=cardMap.end();) { if (it.key() == index) { return it.value(); } ++it; } return ""; } /* 查找名称为PortLbael 的portName */ QString UkmediaMainWidget::findOutputPortName(int index,QString portLabel) { QMap>::iterator it; QMapportMap; QMap::iterator tempMap; QString portName = ""; for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.value() == portLabel) { portName = tempMap.key(); break; } ++tempMap; } } ++it; } return portName; } /* 查找名称为PortName 的portLabel */ QString UkmediaMainWidget::findOutputPortLabel(int index,QString portName) { QMap>::iterator it; QMapportMap; QMap::iterator tempMap; QString portLabel = ""; for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { qDebug() <<"findOutputPortLabel" <>::iterator it; QMapportMap; QMap::iterator tempMap; QString portName = ""; for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.value() == portLabel) { portName = tempMap.key(); break; } ++tempMap; } } ++it; } return portName; } /* 查找名称为PortName 的portLabel */ QString UkmediaMainWidget::findInputPortLabel(int index,QString portName) { QMap>::iterator it; QMapportMap; QMap::iterator tempMap; QString portLabel = ""; for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.key() == portName) { portLabel = tempMap.value(); break; } ++tempMap; } } ++it; } return portLabel; } QString UkmediaMainWidget::findHighPriorityProfile(int index,QString profile) { QMap>::iterator it; int priority = 0; QString profileName = ""; QMap profileNameMap; QMap::iterator tempMap; QString cardStr = findCardName(index,m_pVolumeControl->cardMap); QString profileStr = findCardActiveProfile(index) ; QStringList list = profileStr.split("+"); QString includeProfile = ""; if (list.count() >1) { if (profile.contains("output")) { includeProfile = list.at(1); } else if (profile.contains("input")){ includeProfile = list.at(0); } qDebug() << "profile str" <cardProfilePriorityMap.begin();it!=m_pVolumeControl->cardProfilePriorityMap.end();) { if (it.key() == index) { profileNameMap = it.value(); for (tempMap=profileNameMap.begin();tempMap!=profileNameMap.end();) { if (includeProfile != "" && tempMap.key().contains(includeProfile) && !tempMap.key().contains(includeProfile+"-") \ && tempMap.key().contains(profile) && !tempMap.key().contains(profile+"-")) { priority = tempMap.value(); profileName = tempMap.key(); qDebug() << "findHighPriorityProfile" << includeProfile < priority) { priority = tempMap.value(); profileName = tempMap.key(); qDebug() << "findHighPriorityProfile" << includeProfile <m_pInputDeviceSelectBox->count();row++) { QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); if (inputComboboxCardName.contains("bluez")) { return true; } } return false; } QString UkmediaMainWidget::blueCardNameInCombobox() { for (int row=0;rowm_pInputDeviceSelectBox->count();row++) { QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); if (inputComboboxCardName.contains("bluez")) { return inputComboboxCardName; } } return ""; } /* 记录输入stream的card name */ void UkmediaMainWidget::inputStreamMapCardName (QString streamName,QString cardName) { if (inputCardStreamMap.count() == 0) { inputCardStreamMap.insertMulti(streamName,cardName); } QMap::iterator it; for (it=inputCardStreamMap.begin();it!=inputCardStreamMap.end();) { if (it.value() == cardName) { break; } if (it == inputCardStreamMap.end()-1) { qDebug() << "inputCardSreamMap " << streamName << cardName; inputCardStreamMap.insertMulti(streamName,cardName); } ++it; } } /* 记录输出stream的card name */ void UkmediaMainWidget::outputStreamMapCardName(QString streamName, QString cardName) { if (outputCardStreamMap.count() == 0) { outputCardStreamMap.insertMulti(streamName,cardName); } QMap::iterator it; for (it=outputCardStreamMap.begin();it!=outputCardStreamMap.end();) { if (it.value() == cardName) { break; } if (it == outputCardStreamMap.end()-1) { qDebug() << "outputCardStreamMap " << streamName << cardName; outputCardStreamMap.insertMulti(streamName,cardName); } ++it; } } /* 找输入stream对应的card name */ QString UkmediaMainWidget::findInputStreamCardName(QString streamName) { QString cardName; QMap::iterator it; for (it=inputCardStreamMap.begin();it!=inputCardStreamMap.end();) { if (it.key() == streamName) { cardName = it.value(); qDebug() << "findInputStreamCardName:" << cardName; break; } ++it; } return cardName; } /* 找输出stream对应的card name */ QString UkmediaMainWidget::findOutputStreamCardName(QString streamName) { QString cardName; QMap::iterator it; for (it=outputCardStreamMap.begin();it!=outputCardStreamMap.end();) { if (it.key() == streamName) { cardName = it.value(); break; } ++it; } return cardName; } /* * 设置声卡的配置文件 */ void UkmediaMainWidget::setCardProfile(QString name, QString profile) { int index = findCardIndex(name,m_pVolumeControl->cardMap); m_pVolumeControl->setCardProfile(index,profile.toLatin1().data()); qDebug() << "set profile" << name << profile << index ; } /* * 设置默认的输出设备端口 */ void UkmediaMainWidget::setDefaultOutputPortDevice(QString devName, QString portName) { int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); QString portStr = findOutputPortName(cardIndex,portName); qDebug() << "setDefaultOutputPortDevice" << devName <start(100); connect(timer,&QTimer::timeout,[=](){ QString sinkStr = findPortSink(cardIndex,portStr); /*默认的stream 和设置的stream相同 需要更新端口*/ if (strcmp(sinkStr.toLatin1().data(),m_pVolumeControl->defaultSinkName) == 0) { m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); } else { m_pVolumeControl->setDefaultSink(sinkStr.toLatin1().data()); m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); } qDebug() << "set default output" << portName <cardMap); QString portStr = findInputPortName(cardIndex,portName); QTimer *timer = new QTimer; timer->start(100); connect(timer,&QTimer::timeout,[=](){ QString sourceStr = findPortSource(cardIndex,portStr); /*默认的stream 和设置的stream相同 需要更新端口*/ if (strcmp(sourceStr.toLatin1().data(),m_pVolumeControl->defaultSourceName) == 0) { m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); } else { m_pVolumeControl->setDefaultSource(sourceStr.toLatin1().data()); m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); } qDebug() << "set default input" << portName << cardIndex << portStr << devName <::iterator it; for (it=m_pVolumeControl->cardActiveProfileMap.begin();it!=m_pVolumeControl->cardActiveProfileMap.end();) { if (it.key() == index) { activeProfileName = it.value(); break; } ++it; } return activeProfileName; } /* * Find the corresponding sink according to the port name */ QString UkmediaMainWidget::findPortSink(int cardIndex,QString portName) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString sinkStr = ""; for (it=m_pVolumeControl->sinkPortMap.begin();it!=m_pVolumeControl->sinkPortMap.end();) { if (it.key() == cardIndex) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.value() == portName) { sinkStr = tempMap.key(); qDebug() <<"find port sink" << it.value() << portName<< it.key() <>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString sourceStr = ""; for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { if (it.key() == cardIndex) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.value() == portName) { sourceStr = tempMap.key(); qDebug() << "find port source" <defaultOutputCard,m_pVolumeControl->cardMap); QString outputPortLabel = findOutputPortLabel(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->sinkPortName); findOutputComboboxItem(outputCardName,outputPortLabel); int vol = m_pVolumeControl->getSinkVolume(); float balanceVolume = m_pVolumeControl->getBalanceVolume(); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(true); m_pOutputWidget->m_pOpVolumeSlider->setValue(paVolumeToValue(vol)); m_pOutputWidget->m_pOpBalanceSlider->setValue(balanceVolume*100); m_pOutputWidget->m_pOpBalanceSlider->blockSignals(false); m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); m_pOutputWidget->m_pOpVolumePercentLabel->setText(QString::number(paVolumeToValue(vol))+"%"); qDebug() <<"initComboboxItem(Output)" << m_pVolumeControl->defaultOutputCard << outputCardName <sinkPortName << outputPortLabel; } void UkmediaMainWidget::initInputComboboxItem() { if (m_pVolumeControl->inputPortMap.count() == 1 && inputComboboxDeviceContainBluetooth()) { int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); if(index != -1){ } else{ m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); qDebug() << "initInputComboboxItem" << "add none item"; m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } QString inputCardName = findCardName(m_pVolumeControl->defaultInputCard,m_pVolumeControl->cardMap); QString inputPortLabel = findInputPortLabel(m_pVolumeControl->defaultInputCard,m_pVolumeControl->sourcePortName); findInputComboboxItem(inputCardName,inputPortLabel); //当所有可用的输入设备全部移除,台式机才会出现该情况 if(strstr(m_pVolumeControl->defaultSourceName,"monitor")) m_pInputWidget->m_pInputLevelProgressBar->setValue(0); qDebug() <<"initComboboxItem(Input)" << m_pVolumeControl->defaultInputCard << inputCardName <sourcePortName << inputPortLabel; } void UkmediaMainWidget::findOutputComboboxItem(QString cardName,QString portLabel) { for (int row=0;rowm_pDeviceSelectBox->count();row++) { QString comboboxcardname = m_pOutputWidget->m_pDeviceSelectBox->itemData(row).toString(); QString comboboxportname = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); if (comboboxcardname == cardName && comboboxportname == portLabel) { m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->setCurrentIndex(row); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); break; } } } /* * 当前的输出端口是否应该添加到Combobox output list widget上 */ bool UkmediaMainWidget::comboboxOutputPortIsNeedAdd(int index, QString name) { QMap::iterator it; for(it=currentCboxOutputPortLabelMap.begin();it!=currentCboxOutputPortLabelMap.end();) { if (index == it.key() && name == it.value()) { return false; } ++it; } return true; } /* * 当前的输出端口是否应该在output list widget上删除 */ bool UkmediaMainWidget::comboboxOutputPortIsNeedDelete(int index, QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (name == at.value()) { return false; } ++at; } } ++it; } return true; } /* * 添加可用的输出端口到ComBoBox output list widget */ void UkmediaMainWidget::addComboboxAvailableOutputPort() { QMap>::iterator at; QMap::iterator it; QMap tempMap; int i = m_pOutputWidget->m_pDeviceSelectBox->count(); if (m_pVolumeControl->outputPortMap.count() == 0) { m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->addItem(tr("None")); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } else { int index = m_pOutputWidget->m_pDeviceSelectBox->findText("None"); if (index != -1){ m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } for(at=m_pVolumeControl->outputPortMap.begin();at!=m_pVolumeControl->outputPortMap.end();) { tempMap = at.value(); for (it=tempMap.begin();it!=tempMap.end();) { if (comboboxOutputPortIsNeedAdd(at.key(),it.value())) { currentCboxOutputPortLabelMap.insertMulti(at.key(),it.value()); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->insertItem(i,it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } ++it; } ++at; } } } /* * 添加output port到Combobox output list widget */ void UkmediaMainWidget::addComboboxOutputListWidgetItem(QString portName, QString cardName) { int i = m_pOutputWidget->m_pDeviceSelectBox->count(); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->insertItem(i,portName,cardName); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } //传进来一个portName用来定位他的位置 int UkmediaMainWidget::indexOfOutputPortInOutputCombobox(QString portName) { for (int row=0;rowm_pDeviceSelectBox->count();row++) { QString text = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); if (text == portName) return row; } return -1; } /* * 移除combobox output list widget上不可用的输出端口 */ void UkmediaMainWidget::deleteNotAvailableComboboxOutputPort() { //删除不可用的输出端口 QMap::iterator it; for(it=currentCboxOutputPortLabelMap.begin();it!=currentCboxOutputPortLabelMap.end();) { //没找到,需要删除 if (comboboxOutputPortIsNeedDelete(it.key(),it.value())) { int index = indexOfOutputPortInOutputCombobox(it.value()); if (index == -1) return; m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); m_pOutputWidget->m_pDeviceSelectBox->hidePopup(); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); qDebug()<< "deleteNotAvailableComboboxOutputPort" <m_pInputDeviceSelectBox->count();row++) { QString comboboxcardname = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); QString comboboxportname = m_pInputWidget->m_pInputDeviceSelectBox->itemText(row); if (comboboxcardname == cardName && comboboxportname == portLabel) { m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pInputWidget->m_pInputDeviceSelectBox->setCurrentIndex(row); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); if (comboboxcardname.contains("bluez_card")) isCheckBluetoothInput = true; break; } else if(comboboxportname == tr("None")) { m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pInputWidget->m_pInputDeviceSelectBox->setCurrentIndex(row); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } } /* * 添加输入端口到input combobox widget */ void UkmediaMainWidget::addComboboxInputListWidgetItem(QString portName, QString cardName) { int i = m_pInputWidget->m_pInputDeviceSelectBox->count(); qDebug() << "addComboboxInputListWidgetItem" << portName << cardName; m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pInputWidget->m_pInputDeviceSelectBox->insertItem(i,portName,cardName); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } /* * 在input combobox list widget删除不可用的端口 */ void UkmediaMainWidget::deleteNotAvailableComboboxInputPort() { //删除不可用的输入端口 QMap::iterator it; for(it=currentCboxInputPortLabelMap.begin();it!=currentCboxInputPortLabelMap.end();) { //没找到,需要删除 if (comboboxInputPortIsNeedDelete(it.key(),it.value())) { int index = indexOfInputPortInInputCombobox(it.value()); if (index == -1) return; m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); it = currentCboxInputPortLabelMap.erase(it); continue; } ++it; } } //传进来input portName用来定位他的位置 int UkmediaMainWidget::indexOfInputPortInInputCombobox(QString portName) { for (int index=0;indexm_pInputDeviceSelectBox->count();index++) { QString textport = m_pInputWidget->m_pInputDeviceSelectBox->itemText(index); // QString textcard = m_pInputWidget->m_pInputDeviceSelectBox->itemData(index).toString(); if (textport == portName ) { return index; } } return -1; } /* * 添加可用的输入端口到input list widget */ void UkmediaMainWidget::addComboboxAvailableInputPort() { QMap>::iterator at; QMap::iterator it; QMap tempMap; qDebug() << "addComboboxAvailableInputPort"<< m_pVolumeControl->inputPortMap.count() << m_pInputWidget->m_pInputDeviceSelectBox->currentText(); int i = m_pInputWidget->m_pInputDeviceSelectBox->count(); //增加端口 for(at=m_pVolumeControl->inputPortMap.begin();at!=m_pVolumeControl->inputPortMap.end();) { tempMap = at.value(); for (it=tempMap.begin();it!=tempMap.end();){ if (comboboxInputPortIsNeedAdd(at.key(),it.value())){ currentCboxInputPortLabelMap.insertMulti(at.key(),it.value()); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pInputWidget->m_pInputDeviceSelectBox->insertItem(i,it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } ++it; } ++at; } if (m_pVolumeControl->inputPortMap.count() == 0 ||(m_pVolumeControl->inputPortMap.count() == 1 && inputComboboxDeviceContainBluetooth())) { int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); if(index != -1){ } else{ m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); qDebug() << "addComboboxAvailableInputPort" << "add None item"; m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } else if(m_pVolumeControl->inputPortMap.count() > 0){ int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); if (index != -1) { m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); qDebug() << "addComboboxAvailableInputPort" << "remove None item"; m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } } /* * 当前的输入端口是否应该添加到Combobox input list widget上 */ bool UkmediaMainWidget::comboboxInputPortIsNeedAdd(int index, QString name) { QMap::iterator it; for(it=currentCboxInputPortLabelMap.begin();it!=currentCboxInputPortLabelMap.end();) { if (index == it.key() && name == it.value()) return false; ++it; } return true; } /* * 当前的输入端口是否应该在Combobox list上删除 */ bool UkmediaMainWidget::comboboxInputPortIsNeedDelete(int index, QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (name == at.value()) return false; ++at; } } ++it; } if(name == tr("None")){ return false; } return true; } /* * 更新设备端口 */ void UkmediaMainWidget::updateCboxDevicePort() { QMap>::iterator it; QMap::iterator at; QMap temp; currentCboxInputPortLabelMap.clear(); currentCboxOutputPortLabelMap.clear(); if (m_pVolumeControl->inputPortMap.count() == 0 ||(m_pVolumeControl->inputPortMap.count() == 1 && inputComboboxDeviceContainBluetooth())) { int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); if(index != -1){ } else{ m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); qDebug() << "addComboboxAvailableInputPort" << "add None item"; m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } else if(m_pVolumeControl->inputPortMap.count() > 0){ int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); if (index != -1) { m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); qDebug() << "addComboboxAvailableInputPort" << "remove None item"; m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } } if (m_pVolumeControl->outputPortMap.count() == 0) { m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->addItem(tr("None")); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } else { int index = m_pOutputWidget->m_pDeviceSelectBox->findText("None"); if (index != -1){ m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); } } if (cboxfirstEntry == true) { for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) { temp = it.value(); for (at=temp.begin();at!=temp.end();) { qDebug() << "更新设备端口:" << cboxfirstEntry << it.key() << at.value(); QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); addComboboxOutputListWidgetItem(at.value(),cardName); ++at; } ++it; } for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) { temp = it.value(); for (at=temp.begin();at!=temp.end();) { qDebug() << "更新输入设备端口" << cboxfirstEntry << it.key() << at.value(); QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); addComboboxInputListWidgetItem(at.value(),cardName); ++at; } ++it; } } else { //记录上一次output label for (int i=0;im_pDeviceSelectBox->count();i++) { QMap::iterator at; QString cardname = m_pOutputWidget->m_pDeviceSelectBox->itemData(i).toString(); QString portname = m_pOutputWidget->m_pDeviceSelectBox->itemText(i); int index=-1; for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { if (cardname == at.value()) { index = at.key(); break; } ++at; } currentCboxOutputPortLabelMap.insertMulti(index,portname); // qDebug() << index << "current cbox output item **" << cardname << portname; } for(int i=0;im_pInputDeviceSelectBox->count();i++){ QMap::iterator at; QString cardname = m_pInputWidget->m_pInputDeviceSelectBox->itemData(i).toString(); QString portname = m_pInputWidget->m_pInputDeviceSelectBox->itemText(i); int index; for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { if (cardname == at.value()) { index = at.key(); break; } ++at; } currentCboxInputPortLabelMap.insertMulti(index,portname); } m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); deleteNotAvailableComboboxOutputPort(); addComboboxAvailableOutputPort(); deleteNotAvailableComboboxInputPort(); addComboboxAvailableInputPort(); m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); } if (m_pOutputWidget->m_pDeviceSelectBox->count() > 0 || m_pInputWidget->m_pInputDeviceSelectBox->count() ) { cboxfirstEntry = false; } } /* * Combobox选项改变,设置对应的输出设备 */ void UkmediaMainWidget::cboxoutputListWidgetCurrentRowChangedSlot(int row) { //当所有可用的输出设备全部移除,台式机才会出现该情况 if (row == -1) return; QString outputComboboxPortName = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); QString outputComboboxCardName = m_pOutputWidget->m_pDeviceSelectBox->itemData(row).toString(); QString inputComboboxPortName = m_pInputWidget->m_pInputDeviceSelectBox->currentText(); QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->currentData().toString(); bool isContainBlue = inputComboboxDeviceContainBluetooth(); //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink if (isContainBlue && (strstr(m_pVolumeControl->defaultSourceName,\ "headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_source"))){ QString cardName = blueCardNameInCombobox(); setCardProfile(cardName,"a2dp_sink"); } QMap>::iterator outputProfileMap; QMap>::iterator inputProfileMap; QMap tempMap; QMap::iterator at; QString endOutputProfile = ""; QString endInputProfile = ""; int count,i; int currentCardIndex = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); QStringList outputComboboxPortNameList = outputComboboxPortName.split("(");//新增设计combobox需要显示 端口名+(description); QStringList inputComboboxPortNameList = inputComboboxPortName.split("("); for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { if(currentCardIndex == outputProfileMap.key()){ tempMap = outputProfileMap.value(); for(at=tempMap.begin(),i=0;at!= tempMap.end();++i){ if (at.key() == outputComboboxPortNameList.at(0)) { count = i; endOutputProfile = at.value(); } ++at; } } ++outputProfileMap; } if (m_pInputWidget->m_pInputDeviceSelectBox->currentText().size()!=0) { QMap ::iterator it; QMap temp; int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin(),count=0;inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();count++) { if (inputProfileMap.key() == index) { temp = inputProfileMap.value(); for(it = temp.begin(); it != temp.end();){ if(it.key() == inputComboboxPortNameList.at(0)){ endInputProfile = it.value(); } ++it; } } ++inputProfileMap; } } qDebug() << "outputListWidgetCurrentRowChangedSlot" << row << outputComboboxPortName << endOutputProfile <m_pInputDeviceSelectBox->currentText().size()!=0 && outputComboboxCardName == inputComboboxCardName ) || \ outputComboboxCardName == "alsa_card.platform-sound_DA_combine_v5" && inputComboboxCardName == "3a.algo") { QString setProfile = endOutputProfile; if (!endOutputProfile.contains("input:analog-stereo") || !endOutputProfile.contains("HiFi")) { setProfile += "+"; setProfile +=endInputProfile; } if (endOutputProfile.contains("a2dp-sink") && endInputProfile.contains("headset-head-unit")) { qDebug() << "ok 蓝牙配置问题"; setProfile = endOutputProfile; } setCardProfile(outputComboboxCardName,setProfile); setDefaultOutputPortDevice(outputComboboxCardName,outputComboboxPortName); } //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 else { int index = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); QMap >::iterator it; QString profileName; for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { if (it.key() == index) { if (strstr(endOutputProfile.toLatin1().data(),"headset_head_unit")) endOutputProfile = "a2dp_sink"; profileName = findHighPriorityProfile(index,endOutputProfile); } ++it; } QString setProfile = profileName; setCardProfile(outputComboboxCardName,setProfile); setDefaultOutputPortDevice(outputComboboxCardName,outputComboboxPortName); } qDebug() << "active combobox output port:" << outputComboboxPortName << outputComboboxCardName; } void UkmediaMainWidget::cboxinputListWidgetCurrentRowChangedSlot(int row) { if (row == -1) return; QString inputComboboxPortName = m_pInputWidget->m_pInputDeviceSelectBox->itemText(row); QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); QString outputComboboxPortName = m_pOutputWidget->m_pDeviceSelectBox->currentText(); QString outputComboboxCardName = m_pOutputWidget->m_pDeviceSelectBox->currentData().toString(); bool isContainBlue = inputComboboxDeviceContainBluetooth(); //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink if (isContainBlue && (strstr(m_pVolumeControl->defaultSinkName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_source"))) { QString cardName = blueCardNameInCombobox(); setCardProfile(cardName,"a2dp_sink"); } if(inputComboboxCardName.contains("bluez_card")) { isCheckBluetoothInput = true; } else { isCheckBluetoothInput = false; if(inputComboboxPortName == tr("None")){ qDebug() << "come Back Bluetooth A2dp Model"; return ; } } QMap>::iterator inputProfileMap; QMap>::iterator outputProfileMap; QMap temp; QMap::iterator at; QString endOutputProfile = ""; QString endInputProfile = ""; int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); QStringList outputComboboxPortNameList = outputComboboxPortName.split("(");//新增设计combobox需要显示 端口名+(description); QStringList inputComboboxPortNameList = inputComboboxPortName.split("("); for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin();inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();) { if (inputProfileMap.key() == index) { temp = inputProfileMap.value(); for(at=temp.begin();at!=temp.end();){ if(at.key() == inputComboboxPortNameList.at(0)){ endInputProfile = at.value(); } ++at; } } ++inputProfileMap; } if (m_pOutputWidget->m_pDeviceSelectBox->currentText().size()!=0) { QMap ::iterator it; QMap temp; int index = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { if (outputProfileMap.key() == index) { temp = outputProfileMap.value(); for(it=temp.begin();it!=temp.end();){ if(it.key() == outputComboboxPortNameList.at(0)){ endOutputProfile = it.value(); } ++it; } } ++outputProfileMap; } } //如果选择的输入输出设备为同一个声卡,则追加指定输入输出端口属于的配置文件 if (m_pOutputWidget->m_pDeviceSelectBox->currentText().size()!=0 && inputComboboxCardName == outputComboboxCardName) { QString setProfile; //有些声卡的配置文件默认只有输入/输出设备或者配置文件包含了输出输入设备,因此只需要取其中一个配置文件即可 if (endOutputProfile == "a2dp-sink" || endInputProfile == "headset_head_unit" || endOutputProfile == "HiFi" ) { setProfile += endInputProfile; } else { setProfile += endOutputProfile; setProfile += "+"; setProfile +=endInputProfile; } setCardProfile(inputComboboxCardName,setProfile); setDefaultInputPortDevice(inputComboboxCardName,inputComboboxPortName); } //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 else { int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); QMap >::iterator it; QString profileName; for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { if (it.key() == index) { QStringList list= it.value(); profileName = findHighPriorityProfile(index,endInputProfile); if (list.contains(endOutputProfile)) { } } ++it; } QString setProfile = profileName; setCardProfile(inputComboboxCardName,setProfile); setDefaultInputPortDevice(inputComboboxCardName,inputComboboxPortName); } qDebug() << "active combobox input port:" << inputComboboxPortName << inputComboboxCardName<< isCheckBluetoothInput; } void UkmediaMainWidget::updateComboboxListWidgetItemSlot() { qDebug() << "updateComboboxListWidgetItemSlot"; initOutputComboboxItem(); initInputComboboxItem(); themeChangeIcons(); } ukui-media-3.1.1.2/audio/translate_generation.sh0000755000175000017500000000052214565521701020203 0ustar fengfeng#!/bin/bash ts_list=(`ls translations/*.ts`) source /etc/os-release version=(`echo $ID`) for ts in "${ts_list[@]}" do printf "\nprocess ${ts}\n" if [ "$version" == "fedora" ] || [ "$version" == "opensuse-leap" ] || [ "$version" == "opensuse-tumbleweed" ];then lrelease-qt5 "${ts}" else lrelease "${ts}" fi done ukui-media-3.1.1.2/audio/ukui_list_widget_item.cpp0000644000175000017500000000667114565521701020544 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukui_list_widget_item.h" #include #include #include #include //#include #include bool isCheckBluetoothInput; UkuiListWidget::UkuiListWidget(QWidget *parent) : QListWidget(parent) { } UkuiListWidget::~UkuiListWidget() { } UkuiListWidgetItem::UkuiListWidgetItem(QWidget *parent) : QWidget(parent) { this->setFixedSize(500,64); QVBoxLayout *vLayout = new QVBoxLayout; portLabel = new QLabel(this); deviceLabel = new QLabel(this); portLabel->setFixedSize(600,24); deviceLabel->setFixedSize(600,24); vLayout->addWidget(portLabel); vLayout->addWidget(deviceLabel); this->setLayout(vLayout); this->show(); } UkuiListWidgetItem::~UkuiListWidgetItem() { } void UkuiListWidgetItem::setSelected(bool selected){ if (selected) { widget->setStyleSheet("QWidget{background: #3D6BE5; border-radius: 4px;}"); } else { widget->setStyleSheet("QListWidget::Item:hover{background:#FF3D6BE5;border-radius: 4px;}"); } } //设置输出设备的设备名字和名称 void UkuiListWidgetItem::setLabelText(QString portLabel, QString deviceLabel){ this->portLabel->setText(portLabel); this->deviceLabel->setText(deviceLabel); } void UkuiListWidgetItem::mousePressEvent(QMouseEvent *event) { QWidget::mousePressEvent(event); qDebug() << "Mouse Press Event" << this->portLabel->text() << this->deviceLabel->text() << isCheckBluetoothInput; //蓝牙输入去除勾选 if (this->deviceLabel->text().contains("bluez_card")) { if (isCheckBluetoothInput == false) isCheckBluetoothInput = true; else { isCheckBluetoothInput = false; QString cmd = "pactl set-card-profile "+this->deviceLabel->text()+" a2dp_sink"; system(cmd.toLocal8Bit().data()); } } } //void UkuiListWidgetItem::paintEvent(QPaintEvent *event) //{ // QStyleOption opt; // opt.init(this); // QPainter p(this); //// double transparence = transparency * 255; // QColor color = palette().color(QPalette::Base); //// color.setAlpha(transparence); // QBrush brush = QBrush(color); // p.setBrush(brush); // p.setPen(Qt::NoPen); // QPainterPath path; // opt.rect.adjust(0,0,0,0); // path.addRoundedRect(opt.rect,6,6); // p.setRenderHint(QPainter::Antialiasing); // 反锯齿; // p.drawRoundedRect(opt.rect,6,6); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); //// QWidget::paintEvent(event); //} ukui-media-3.1.1.2/audio/customstyle.cpp0000644000175000017500000003510414567025031016534 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include CustomStyle::CustomStyle(const QString &proxyStyleName, QObject *parent) : QProxyStyle (proxyStyleName) { Q_UNUSED(parent); m_helpTip = new SliderTipLabelHelper(this); } CustomStyle::~CustomStyle() { } void CustomStyle::drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const { if(control == CC_ToolButton) { /// 我们需要获取ToolButton的详细信息,通过qstyleoption_cast可以得到 /// 对应的option,通过拷贝构造函数得到一份备份用于绘制子控件 /// 我们一般不用在意option是怎么得到的,大部分的Qt控件都能够提供了option的init方法 } return QProxyStyle::drawComplexControl(control, option, painter, widget); } void CustomStyle::drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { switch (element) { case CE_ProgressBar: { if (const QStyleOptionProgressBar *pb = qstyleoption_cast(option)) { QStyleOptionProgressBar subopt = *pb; subopt.rect = subElementRect(SE_ProgressBarGroove, pb, widget); proxy()->drawControl(CE_ProgressBarGroove, &subopt, painter, widget); subopt.rect = subElementRect(SE_ProgressBarContents, pb, widget); proxy()->drawControl(CE_ProgressBarContents, &subopt, painter, widget); //这是这个控件的当前进度的文字,你那边看情况是否需要绘制 // if (pb->textVisible) { // subopt.rect = subElementRect(SE_ProgressBarLabel, pb, widget); // proxy()->drawControl(CE_ProgressBarLabel, &subopt, painter, widget); // } return; } break; } case CE_ProgressBarGroove: { //这是这个控件的背景,你那边看情况是否绘制 return; if (const QStyleOptionProgressBar *pbg = qstyleoption_cast(option)) { const bool enable = pbg->state &State_Enabled; painter->save(); painter->setRenderHint(QPainter::Antialiasing, true); painter->setPen(Qt::NoPen); painter->setBrush(pbg->palette.brush(enable ? QPalette::Active : QPalette::Disabled, QPalette::Window)); painter->drawRect(pbg->rect); painter->restore(); return; } break; } case CE_ProgressBarContents: { if (const QStyleOptionProgressBar *bar = qstyleoption_cast(option)) { if (bar->progress == bar->maximum) return; const bool enable = bar->state & QStyle::State_Enabled; const bool vertical = bar->orientation == Qt::Vertical; const bool inverted = bar->invertedAppearance; qint64 minimum = qint64(bar->minimum); qint64 maximum = qint64(bar->maximum); qint64 progress = qint64(bar->progress); qint64 totalSteps = qMax(Q_INT64_C(1), maximum - minimum); qint64 progressSteps = progress - bar->minimum; qint64 progressBarWidth = progressSteps * (vertical ? bar->rect.height() : bar->rect.width()) / totalSteps; int ProgressBarItem_Width = 4; int ProgressBarItem_Distance = 16; int distance = ProgressBarItem_Distance + ProgressBarItem_Width; int num = progressBarWidth / distance; int totalnum = (vertical ? bar->rect.height() : bar->rect.width()) / distance; bool reverse = (!vertical && (bar->direction == Qt::RightToLeft)) || vertical; if (inverted) reverse = !reverse; int ProgressBarItem_Hight = 16; QRect drawRect(bar->rect); if (vertical) { drawRect.setWidth(ProgressBarItem_Hight); } else { drawRect.setHeight(ProgressBarItem_Hight); } drawRect.moveCenter(bar->rect.center()); QRect itemRect(drawRect); painter->save(); painter->setPen(Qt::NoPen); painter->setRenderHints(QPainter::Antialiasing, true); for (int var = 0; var < totalnum; ++var) { if (var < num) { if (enable) painter->setBrush(bar->palette.brush(QPalette::Active, QPalette::Highlight)); else painter->setBrush(bar->palette.color(QPalette::Active, QPalette::Highlight).light(150)); } else { painter->setBrush(bar->palette.brush(enable ? QPalette::Active : QPalette::Disabled, QPalette::Button)); } if (vertical) itemRect.setRect(drawRect.left(), !reverse ? drawRect.top() + var * distance : drawRect.bottom() - ProgressBarItem_Width - var * distance, drawRect.width(), ProgressBarItem_Width); else itemRect.setRect(reverse ? drawRect.right() - ProgressBarItem_Width - var * distance : drawRect.left() + var * distance, drawRect.top(), ProgressBarItem_Width, drawRect.height()); painter->drawRoundedRect(itemRect, ProgressBarItem_Width/2, ProgressBarItem_Width/2); } painter->restore();; return; } break; } default: break; } return QProxyStyle::drawControl(element, option, painter, widget); } void CustomStyle::drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const { return QProxyStyle::drawItemPixmap(painter, rectangle, alignment, pixmap); } void CustomStyle::drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole) const { return QProxyStyle::drawItemText(painter, rectangle, alignment, palette, enabled, text, textRole); } //绘制简单的颜色圆角等 void CustomStyle::drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { switch (element) { //绘制 ToolButton case PE_PanelButtonTool:{ painter->save(); painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x00)); painter->drawRoundedRect(option->rect,4,4); if (option->state & State_MouseOver) { if (option->state & State_Sunken) { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x14)); painter->drawRoundedRect(option->rect,4,4); qDebug() << " 点击按钮"; } else { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); painter->drawRoundedRect(option->rect,4,4); qDebug() << "悬停按钮"; } } painter->restore(); return; } case PE_PanelTipLabel:{ painter->save(); painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0x00,0xff)); painter->drawRoundedRect(option->rect,4,4); painter->restore(); return; }break; case PE_PanelButtonCommand:{ painter->save(); painter->setRenderHint(QPainter::TextAntialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x00)); if (option->state & State_MouseOver) { if (option->state & State_Sunken) { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0x3d,0x6b,0xe5,0xff)); painter->drawRoundedRect(option->rect,4,4); } else { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); painter->drawRoundedRect(option->rect.adjusted(2,2,-2,-2),4,4); } } painter->restore(); return; }break; } return QProxyStyle::drawPrimitive(element, option, painter, widget); } QPixmap CustomStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const { return QProxyStyle::generatedIconPixmap(iconMode, pixmap, option); } QStyle::SubControl CustomStyle::hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget) const { return QProxyStyle::hitTestComplexControl(control, option, position, widget); } QRect CustomStyle::itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const { return QProxyStyle::itemPixmapRect(rectangle, alignment, pixmap); } QRect CustomStyle::itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const { return QProxyStyle::itemTextRect(metrics, rectangle, alignment, enabled, text); } // int CustomStyle::pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option, const QWidget *widget) const { switch (metric){ case PM_ProgressBarChunkWidth: { int ProgressBarItem_Width = 4; int ProgressBarItem_Distance = 16; return ProgressBarItem_Width + ProgressBarItem_Distance; } case PM_ToolBarIconSize:{ return (int)48*qApp->devicePixelRatio(); } default: break; } return QProxyStyle::pixelMetric(metric, option, widget); } // void CustomStyle::polish(QWidget *widget) { if (widget) { if (widget->inherits("QTipLabel")) { widget->setAttribute(Qt::WA_TranslucentBackground); QPainterPath path; auto rect = widget->rect(); rect.adjust(0,0,0,0); path.addRoundedRect(rect,6,6); widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); } } if (widget) { if (widget->inherits("QLable")) { const_cast (widget)->setAttribute(Qt::WA_TranslucentBackground); widget->setAttribute(Qt::WA_TranslucentBackground); QPainterPath path; auto rect = widget->rect(); rect.adjust(0,0,0,0); path.addRoundedRect(rect,6,6); widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); } } if (widget){ widget->setAttribute(Qt::WA_Hover); widget->inherits("QSlider"); m_helpTip->registerWidget(widget); widget->installEventFilter(this); } return QProxyStyle::polish(widget); } void CustomStyle::polish(QApplication *application) { return QProxyStyle::polish(application); } // void CustomStyle::polish(QPalette &palette) { // return QProxyStyle::polish(palette); // QProxyStyle::polish(palette); // palette.setBrush(QPalette::Foreground, Qt::black); QColor lightBlue(200, 0, 0); palette.setBrush(QPalette::Highlight, lightBlue); } void CustomStyle::unpolish(QWidget *widget) { return QProxyStyle::unpolish(widget); } void CustomStyle::unpolish(QApplication *application) { return QProxyStyle::unpolish(application); } QSize CustomStyle::sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget) const { QSize newSize = contentsSize; switch (type) { case CT_ProgressBar: { qDebug()<pixelMetric(QStyle::PM_ProgressBarChunkWidth, option, widget); newSize.setWidth(cw * ProgressBarItem_Num); return newSize; } default: break; } return QProxyStyle::sizeFromContents(type, option, contentsSize, widget); } QIcon CustomStyle::standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const { return QProxyStyle::standardIcon(standardIcon, option, widget); } QPalette CustomStyle::standardPalette() const { return QProxyStyle::standardPalette(); } //如果需要背景透明也许需要用到这个函数 int CustomStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option, const QWidget *widget, QStyleHintReturn *returnData) const { switch (hint) { /// 让ScrollView viewport的绘制区域包含scrollbar和corner widget /// 这个例子中没有什么作用,如果我们需要绘制一个背景透明的滚动条 /// 这个style hint对我们的意义应该很大,因为我们希望视图能够帮助 /// 我们填充滚动条的背景区域,否则当背景透明时底下会出现明显的分割 case SH_ScrollView_FrameOnlyAroundContents: { return false; } default: break; } return QProxyStyle::styleHint(hint, option, widget, returnData); } QRect CustomStyle::subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget) const { return QProxyStyle::subControlRect(control, option, subControl, widget); } QRect CustomStyle::subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget) const { switch (element) { case SE_ProgressBarGroove: case SE_ProgressBarContents: return option->rect; default: break; } return QProxyStyle::subElementRect(element, option, widget); } ukui-media-3.1.1.2/audio/ukmedia_sound_effects_widget.cpp0000644000175000017500000003106214565521701022034 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "ukmedia_sound_effects_widget.h" #include #include #include #include UkuiMessageBox::UkuiMessageBox() { } UkmediaSoundEffectsWidget::UkmediaSoundEffectsWidget(QWidget *parent) : QWidget(parent) { m_pSystemSoundWidget = new QFrame(this); m_pStartupMusicWidget = new QFrame(m_pSystemSoundWidget); m_pPoweroffMusicWidget = new QFrame(m_pSystemSoundWidget); m_pLagoutWidget = new QFrame(m_pSystemSoundWidget); m_pWakeupMusicWidget = new QFrame(m_pSystemSoundWidget); m_pAlertSoundFrame = new QFrame(this); m_pAlertSoundSwitchWidget = new QFrame(m_pAlertSoundFrame); m_pThemeWidget = new QFrame(m_pAlertSoundSwitchWidget); // m_pAlertSoundWidget = new QFrame(m_pAlertSoundSwitchWidget); // m_pVolumeChangeWidget = new QFrame(m_pAlertSoundSwitchWidget); m_pSystemSoundWidget->setFrameShape(QFrame::Shape::Box); m_pStartupMusicWidget->setFrameShape(QFrame::Shape::Box); m_pPoweroffMusicWidget->setFrameShape(QFrame::Shape::Box); m_pLagoutWidget->setFrameShape(QFrame::Shape::Box); m_pWakeupMusicWidget->setFrameShape(QFrame::Shape::Box); m_pAlertSoundFrame->setFrameShape(QFrame::Shape::Box); m_pAlertSoundSwitchWidget->setFrameShape(QFrame::Shape::Box); m_pThemeWidget->setFrameShape(QFrame::Shape::Box); // m_pAlertSoundWidget->setFrameShape(QFrame::Shape::Box); // m_pVolumeChangeWidget->setFrameShape(QFrame::Shape::Box); //~ contents_path /Audio/System Sound 系统音效文本框 m_pSoundEffectLabel = new TitleLabel(this); m_pSoundEffectLabel->setText(tr("System Sound")); m_pSoundEffectLabel->setStyleSheet("QLabel{color: palette(windowText);}"); //~ contents_path /Audio/Sound Theme m_pSoundThemeLabel = new QLabel(tr("Sound Theme"),m_pThemeWidget);//提示音下的系统音效主题 m_pSoundThemeCombobox = new QComboBox(m_pThemeWidget); //~ contents_path /Audio/Beep Switch m_pAlertSoundSwitchLabel = new QLabel(tr("Beep Switch"),m_pAlertSoundSwitchWidget);//提示音 //~ contents_path /Audio/Poweroff Music m_pPoweroffMusicLabel = new QLabel(tr("Poweroff Music"),m_pPoweroffMusicWidget);//关机 //~ contents_path /Audio/Startup Music m_pStartupMusicLabel = new QLabel(tr("Startup Music"),m_pStartupMusicWidget);//开机 //~ contents_path /Audio/Wakeup Music m_pWakeupMusicLabel = new QLabel(tr("Wakeup Music"),m_pWakeupMusicWidget);//唤醒 //~ contents_path /Audio/Logout Music m_pLagoutLabel = new QLabel(tr("Logout Music"),m_pLagoutWidget);//注销 // m_pShutdownlabel = new QLabel(tr("Alert Sound"),m_pAlertSoundWidget);//提示音下的通知提示 // m_pAlertSoundCombobox = new QComboBox(m_pAlertSoundWidget); // m_pVolumeChangeLabel = new QLabel(tr("Volume Change"),m_pVolumeChangeWidget);//音量调节 // m_pLagoutCombobox = new QComboBox(m_pLagoutWidget); // m_pVolumeChangeCombobox = new QComboBox(m_pVolumeChangeWidget); m_pStartupButton = new KSwitchButton(m_pStartupMusicWidget); m_pLogoutButton = new KSwitchButton(m_pLagoutWidget); m_pWakeupMusicButton = new KSwitchButton(m_pWakeupMusicWidget); m_pPoweroffButton = new KSwitchButton(m_pPoweroffMusicWidget); m_pAlertSoundSwitchButton = new KSwitchButton(m_pAlertSoundSwitchWidget); //设置大小 m_pSystemSoundWidget->setMinimumSize(550,0); m_pSystemSoundWidget->setMaximumSize(16777215,240); m_pStartupMusicWidget->setMinimumSize(550,60); m_pStartupMusicWidget->setMaximumSize(16777215,60); m_pPoweroffMusicWidget->setMinimumSize(550,60); m_pPoweroffMusicWidget->setMaximumSize(16777215,60); m_pLagoutWidget->setMinimumSize(550,60); m_pLagoutWidget->setMaximumSize(16777215,60); m_pWakeupMusicWidget->setMinimumSize(550,60); m_pWakeupMusicWidget->setMaximumSize(16777215,60); m_pAlertSoundSwitchWidget->setMinimumSize(550,60); m_pAlertSoundSwitchWidget->setMaximumSize(16777215,60); m_pThemeWidget->setMinimumSize(550,60); m_pThemeWidget->setMaximumSize(16777215,60); m_pSoundEffectLabel->setFixedSize(150,32); m_pSoundThemeLabel->setFixedSize(150,40); m_pPoweroffMusicLabel->setFixedSize(150,32); m_pSoundThemeCombobox->setFixedHeight(40); // m_pAlertSoundWidget->setMinimumSize(550,0); // m_pAlertSoundWidget->setMaximumSize(16777215,240); // m_pAlertSoundWidget->setMinimumSize(550,60); // m_pAlertSoundWidget->setMaximumSize(16777215,60); // m_pVolumeChangeWidget->setMinimumSize(550,60); // m_pVolumeChangeWidget->setMaximumSize(16777215,60); // m_pShutdownlabel->setFixedSize(120,40); // m_pLagoutLabel->setFixedSize(150,32); // m_pWakeupMusicLabel->setFixedSize(150,32); // m_pVolumeChangeLabel->setFixedSize(150,40); // m_pSoundThemeCombobox->setMinimumSize(50,32); // m_pSoundThemeCombobox->setMaximumSize(900,32); // m_pAlertSoundCombobox->setMinimumSize(50,32); // m_pAlertSoundCombobox->setMaximumSize(900,32); // m_pLagoutCombobox->setMinimumSize(50,32); // m_pLagoutCombobox->setMaximumSize(900,32); // m_pVolumeChangeCombobox->setMinimumSize(50,32); // m_pVolumeChangeCombobox->setMaximumSize(900,32); // m_pAlertSoundCombobox->setFixedHeight(40); // m_pVolumeChangeCombobox->setFixedHeight(40); //添加布局 QHBoxLayout *themeLayout = new QHBoxLayout(m_pThemeWidget); themeLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); themeLayout->addWidget(m_pSoundThemeLabel); themeLayout->addItem(new QSpacerItem(83,20,QSizePolicy::Fixed)); themeLayout->addWidget(m_pSoundThemeCombobox); themeLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); themeLayout->setSpacing(0); m_pThemeWidget->setLayout(themeLayout); m_pThemeWidget->layout()->setContentsMargins(0,0,0,0); // QHBoxLayout *AlertLayout = new QHBoxLayout(m_pAlertSoundWidget); // AlertLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); // AlertLayout->addWidget(m_pShutdownlabel); // AlertLayout->addItem(new QSpacerItem(113,20,QSizePolicy::Fixed)); // AlertLayout->addWidget(m_pAlertSoundCombobox); // AlertLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); // AlertLayout->setSpacing(0); // m_pAlertSoundWidget->setLayout(AlertLayout); // m_pAlertSoundWidget->layout()->setContentsMargins(0,0,0,0); //开机音乐设置开关 QHBoxLayout *startupLayout = new QHBoxLayout(m_pStartupMusicWidget); startupLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); startupLayout->addWidget(m_pStartupMusicLabel); startupLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); startupLayout->addWidget(m_pStartupButton); startupLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); startupLayout->setSpacing(0); m_pStartupMusicWidget->setLayout(startupLayout); m_pStartupMusicWidget->layout()->setContentsMargins(0,0,0,0); //注销提示音布局 QHBoxLayout *lagoutLayout = new QHBoxLayout(m_pLagoutWidget); lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); lagoutLayout->addWidget(m_pLagoutLabel); lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); lagoutLayout->addWidget(m_pLogoutButton); lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); lagoutLayout->setSpacing(0); m_pLagoutWidget->setLayout(lagoutLayout); m_pLagoutWidget->layout()->setContentsMargins(0,0,0,0); // m_pLagoutCombobox->setVisible(false); //提示音开关布局 QHBoxLayout *alertSoundLayout = new QHBoxLayout(m_pAlertSoundSwitchWidget); alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); alertSoundLayout->addWidget(m_pAlertSoundSwitchLabel); alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); alertSoundLayout->addWidget(m_pAlertSoundSwitchButton); alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); alertSoundLayout->setSpacing(0); m_pAlertSoundSwitchWidget->setLayout(alertSoundLayout); m_pAlertSoundSwitchWidget->layout()->setContentsMargins(0,0,0,0); //窗口关闭提示音 QHBoxLayout *wakeupMusicLayout = new QHBoxLayout(m_pWakeupMusicWidget); wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); wakeupMusicLayout->addWidget(m_pWakeupMusicLabel); wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); wakeupMusicLayout->addWidget(m_pWakeupMusicButton); wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); wakeupMusicLayout->setSpacing(0); m_pWakeupMusicWidget->setLayout(wakeupMusicLayout); m_pWakeupMusicWidget->layout()->setContentsMargins(0,0,0,0); // //音量改变提示音 // QHBoxLayout *volumeChangedLayout = new QHBoxLayout(m_pVolumeChangeWidget); // volumeChangedLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); // volumeChangedLayout->addWidget(m_pVolumeChangeLabel); // volumeChangedLayout->addItem(new QSpacerItem(83,20,QSizePolicy::Fixed)); // volumeChangedLayout->addWidget(m_pVolumeChangeCombobox); // volumeChangedLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); // volumeChangedLayout->setSpacing(0); // m_pVolumeChangeWidget->setLayout(volumeChangedLayout); // m_pVolumeChangeWidget->layout()->setContentsMargins(0,0,0,0); //关机提示音 QHBoxLayout *poweroffLayout = new QHBoxLayout(m_pPoweroffMusicWidget); poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); poweroffLayout->addWidget(m_pPoweroffMusicLabel); poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); poweroffLayout->addWidget(m_pPoweroffButton); poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); poweroffLayout->setSpacing(0); m_pPoweroffMusicWidget->setLayout(poweroffLayout); m_pPoweroffMusicWidget->layout()->setContentsMargins(0,0,0,0); QFrame *startupAndPoweroff = myLine(); QFrame *poweroffAndLagout = myLine(); QFrame *lagoutAndWakeup = myLine(); line1 = myLine(); QVBoxLayout *systemSoundLayout = new QVBoxLayout(m_pSystemSoundWidget); systemSoundLayout->setContentsMargins(0,0,0,0); systemSoundLayout->addWidget(m_pStartupMusicWidget); systemSoundLayout->addWidget(startupAndPoweroff); systemSoundLayout->addWidget(m_pPoweroffMusicWidget); systemSoundLayout->addWidget(poweroffAndLagout); systemSoundLayout->addWidget(m_pLagoutWidget); systemSoundLayout->addWidget(lagoutAndWakeup); systemSoundLayout->addWidget(m_pWakeupMusicWidget); systemSoundLayout->setSpacing(0); m_pSystemSoundWidget->setLayout(systemSoundLayout); QVBoxLayout *SoundLayout = new QVBoxLayout(m_pAlertSoundFrame); SoundLayout->setContentsMargins(0,0,0,0); SoundLayout->addWidget(m_pAlertSoundSwitchWidget); SoundLayout->addWidget(line1); SoundLayout->addWidget(m_pThemeWidget); // SoundLayout->addWidget(m_pVolumeChangeWidget); // SoundLayout->addWidget(m_pAlertSoundWidget); SoundLayout->setSpacing(0); m_pAlertSoundFrame->setLayout(SoundLayout); //进行整体布局 m_pSoundLayout = new QVBoxLayout(this); m_pSoundLayout->addWidget(m_pSoundEffectLabel); m_pSoundLayout->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); m_pSoundLayout->addWidget(m_pSystemSoundWidget); m_pSoundLayout->addItem(new QSpacerItem(16,8,QSizePolicy::Fixed)); m_pSoundLayout->addWidget(m_pAlertSoundFrame); this->setLayout(m_pSoundLayout); m_pSoundLayout->setSpacing(0); this->layout()->setContentsMargins(0,0,0,0); } QFrame* UkmediaSoundEffectsWidget::myLine() { QFrame *line = new QFrame(this); line->setMinimumSize(QSize(0, 1)); line->setMaximumSize(QSize(16777215, 1)); line->setLineWidth(0); line->setFrameShape(QFrame::HLine); line->setFrameShadow(QFrame::Sunken); return line; } UkmediaSoundEffectsWidget::~UkmediaSoundEffectsWidget() { } ukui-media-3.1.1.2/audio/ukmedia_volume_control.h0000644000175000017500000002541114567025031020354 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "ukui_custom_style.h" #define NOISE_REDUCE_SOURCE "noiseReduceSource" #define PANGUW_SINK "alsa_output.platform-raoliang-sndcard.analog-stereo" #define PA_ID_INVALID ((uint32_t)0xffffffff) #define DECAY_STEP .04 static int n_outstanding = 0; class PortInfo { public: QByteArray name; QByteArray description; uint32_t priority; int available; int direction; int64_t latency_offset; std::vector profiles; }; class UkmediaVolumeControl : public QObject{ Q_OBJECT public: UkmediaVolumeControl(); virtual ~UkmediaVolumeControl(); void updateCard(UkmediaVolumeControl *c,const pa_card_info &info); bool updateSink(UkmediaVolumeControl *c,const pa_sink_info &info); void updateSource(const pa_source_info &info); void updateSinkInput(const pa_sink_input_info &info); void updateSourceOutput(const pa_source_output_info &info); void updateClient(const pa_client_info &info); void updateServer(const pa_server_info &info); void updateVolumeMeter(uint32_t source_index, uint32_t sink_input_index, double v); // void updateRole(const pa_ext_stream_restore_info &info); void updateDeviceInfo(const pa_ext_device_restore_info &info) ; bool setSinkMute(bool status); //设置输出设备静音状态 bool setSinkVolume(int index,int value); //设置输出设备音量值 bool setSourceMute(bool status); //设置输入设备静音状态 bool setSourceVolume(int index,int value); //设置输入设备音量值 bool setBalanceVolume(int index,int value,float balance); //设置平衡值 bool getSinkMute(); //获取输出设备静音状态 int getSinkVolume(); //获取输出设备音量值 bool getSourceMute(); //获取输入设备静音状态 int getSourceVolume(); //获取输入设备音量值 float getBalanceVolume();//获取平衡音量 int getDefaultSinkIndex(); int getSinkInputVolume(const gchar *name); //根据name获取sink input的音量值 void setSinkInputVolume(int index,int value); //设置sink input 音量值 void setSinkInputMuted(int index,bool status); //设置sink input 静音状态 int getSourceOutputVolume(const gchar *name); //根据name获取source output的音量值 bool setCardProfile(int index,const gchar *name); //设置声卡的配置文件 bool setDefaultSink(const gchar *name); //设置默认的输出设备 bool setDefaultSource(const gchar *name); //设置默认的输入设备 bool setSinkPort(const gchar *sinkName ,const gchar *portName); //设置输出设备的端口 bool setSourcePort(const gchar *sourceName, const gchar *portName); //设置输入设备的端口 void setSourceOutputVolume(int index, int value); void setSourceOutputMuted(int index, bool status); void removeCard(uint32_t index); void removeCardSink(int cardIndex,QString sinkName); void removeSink(uint32_t index); void removeCardSource(int cardIndex,QString sourceName); void removeSource(uint32_t index); void removeSinkInput(uint32_t index); void removeSourceOutput(uint32_t index); void removeClient(uint32_t index); void setConnectingMessage(const char *string = NULL); void showError(const char *txt); static void decOutstanding(UkmediaVolumeControl *w); static void readCallback(pa_stream *s, size_t length, void *userdata); static void sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); static void sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata); static void cardCb(pa_context *, const pa_card_info *i, int eol, void *userdata); static void sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); static void sourceCb(pa_context *, const pa_source_info *i, int eol, void *userdata); static void sinkInputCb(pa_context *, const pa_sink_input_info *i, int eol, void *userdata); static void sinkInputCallback(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata); //不更新sink input static void sourceOutputCb(pa_context *, const pa_source_output_info *i, int eol, void *userdata); static void clientCb(pa_context *, const pa_client_info *i, int eol, void *userdata); static void serverInfoCb(pa_context *, const pa_server_info *i, void *userdata); static void serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata); static void extStreamRestoreReadCb(pa_context *,const pa_ext_stream_restore_info *i,int eol,void *userdata); static void extStreamRestoreSubscribeCb(pa_context *c, void *userdata); // void ext_device_restore_read_cb(pa_context *,const pa_ext_device_restore_info *i,int eol,void *userdata); // static void ext_device_restore_subscribe_cb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); static void extDeviceManagerReadCb(pa_context *,const pa_ext_device_manager_info *,int eol,void *userdata); static void extDeviceManagerSubscribeCb(pa_context *c, void *userdata); static void subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata); static void contextStateCallback(pa_context *c, void *userdata); pa_context* getContext(void); gboolean connectToPulse(gpointer userdata); void updateOutputPortMap(); void removeOutputPortMap(int index); //移除指定索引的output port void removeInputPortMap(int index); //移除指定索引的input port void removeCardMap(int index); //移除指定索引的 card void removeCardProfileMap(int index); //移除声卡profile map void removeSinkPortMap(int index); void removeSourcePortMap(int index); void removeProfileMap(int index); bool isExitOutputPort(QString name); QString findSinkActivePortName(QString name); void removeInputProfile(int index); bool isExitInputPort(QString name); QString stringRemoveUnrecignizedChar(QString str); int findPortSourceIndex(QString name); QString findSourcePortName(int cardIndex); std::vector< std::pair > profiles; std::map ports; QByteArray activeProfile; QByteArray noInOutProfile; QByteArray lastActiveProfile; QVector sourceOutputVector;//存储source output索引 bool hasSinks; bool hasSources; pa_cvolume m_defaultSinkVolume; const pa_sink_info *m_pDefaultSink; pa_context* m_pPaContext; std::map clientNames; int sinkVolume; //输出音量 int sourceVolume; //输入音量 bool sinkMuted; //输出静音状态 bool sourceMuted; //输入静音状态 int sinkInputVolume; //sink input 音量 bool sinkInputMuted; //sink input 静音状态 float balance; //平衡音量值 int channel; //通道数 int inputChannel; int sinkInputChannel; int sourceOutputChannel; QString sinkPortName; //输出设备端口名 QString sourcePortName; //输入设备端口名 int defaultOutputCard; int defaultInputCard; QString masterDevice = ""; pa_channel_map defaultChannelMap; friend class UkmediaMainWidget; pa_stream *peak; double lastPeak; QByteArray name; QByteArray description; uint32_t index, card_index; int peakDetectIndex = -1; pa_source_flags sourceFlags; bool offsetButtonEnabled; pa_channel_map channelMap; pa_cvolume volume; std::vector< std::pair > dPorts; QByteArray activePort; QMap> sinkMap; //输出设备 QMap sinkActivePortMap; //输出设备活跃端口 QMap> sourceMap; //输入设备 QMap> outputPortMap; //输出端口 QMap> inputPortMap; //输入端口 QMap> profileNameMap; //声卡输出配置文件 QMap> inputPortProfileNameMap; //声卡输入配置文件 QMap> cardProfilePriorityMap; //记录声卡优先级配置文件 QMap> cardProfileMap; QMap cardMap; QMap> sinkPortMap; QMap> sourcePortMap; QMap cardActiveProfileMap; Q_SIGNALS: void paContextReady(); void updateVolume(int value,bool state); void updateSourceVolume(int value,bool state); void addSinkInputSignal(const gchar* name,const gchar *id,int index); void removeSinkInputSignal(const gchar* name); void addSourceOutputSignal(const gchar* name,const gchar *id,int index); void removeSourceOutputSignal(const gchar* name); void checkDeviceSelectionSianal(const pa_card_info *info); void peakChangedSignal(double v); void updatePortSignal(); void updateCboxPortSignal(); void deviceChangedSignal(); protected Q_SLOTS: void timeoutSlot(); public: void setConnectionState(gboolean connected); void updateDeviceVisibility(); void reallyUpdateDeviceVisibility(); pa_stream* createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx, bool suspend); void setIconFromProplist(QLabel *icon, pa_proplist *l, const char *name); pa_context *context; QByteArray defaultSinkName, defaultSourceName; bool canRenameDevices; const pa_server_info *m_pServerInfo; const pa_source_info *m_pDefaultSource; int sinkIndex; int sourceIndex; pa_mainloop_api* api; QStringList sinkInputList; QMap sinkInputMap; QMap sourceOutputMap; private: gboolean m_connected; gchar* m_config_filename; }; #endif // UKMEDIAVOLUMECONTROL_H ukui-media-3.1.1.2/audio/titlelabel.cpp0000644000175000017500000000303414565521701016262 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #include "titlelabel.h" #include #include #include #include TitleLabel::TitleLabel(QWidget *parent): QLabel(parent) { /*初始化字体*/ // QFont font; // QGSettings *m_fontSetting = new QGSettings("org.ukui.style"); // font.setFamily(m_fontSetting->get("systemFont").toString()); // font.setPixelSize(m_fontSetting->get("systemFontSize").toInt() * 18 / 11); //设置的是pt,按照公式计算为px,标题默认字为18px // font.setWeight(QFont::Medium); // this->setFont(font); this ->setContentsMargins(16,0,0,0); // delete m_fontSetting; // m_fontSetting = nullptr; } TitleLabel::~TitleLabel() { } ukui-media-3.1.1.2/audio/ukmedia_sound_effects_widget.h0000644000175000017500000000636214565521701021506 0ustar fengfeng/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef UKMEDIASOUNDEFFECTSWIDGET_H #define UKMEDIASOUNDEFFECTSWIDGET_H #include #include #include #include #include #include #include "ukui_custom_style.h" #include "switchbutton.h" #include "kswitchbutton.h" using namespace kdk; class UkuiMessageBox : public QMessageBox { public: explicit UkuiMessageBox(); }; class UkmediaSoundEffectsWidget : public QWidget { Q_OBJECT public: explicit UkmediaSoundEffectsWidget(QWidget *parent = nullptr); ~UkmediaSoundEffectsWidget(); friend class UkmediaMainWidget; Q_SIGNALS: public Q_SLOTS: private: QFrame *myLine(); QFrame *m_pSystemSoundWidget;//存放注销、唤醒、开机、关机提示音的窗口 QFrame *m_pLagoutWidget;//注销提示音窗口 QFrame *m_pWakeupMusicWidget;//唤醒音乐窗口 QFrame *m_pStartupMusicWidget;//设置开机音乐窗口 QFrame *m_pPoweroffMusicWidget;//关机提示音 QFrame *m_pAlertSoundFrame;//存放注销、唤醒、开机、关机提示音的窗口 QFrame *m_pAlertSoundSwitchWidget;//提示音开关窗口 QFrame *m_pThemeWidget;//提示音下的系统音效主题 QFrame *line1; QString qss; QStyledItemDelegate *itemDelegate; TitleLabel *m_pSoundEffectLabel; QLabel *m_pSoundThemeLabel; QLabel *m_pLagoutLabel; QLabel *m_pAlertSoundSwitchLabel; QLabel *m_pWakeupMusicLabel; QLabel *m_pPoweroffMusicLabel; QLabel *m_pStartupMusicLabel; QComboBox *m_pSoundThemeCombobox; QVBoxLayout *m_pSoundLayout; KSwitchButton *m_pStartupButton; KSwitchButton *m_pPoweroffButton; KSwitchButton *m_pLogoutButton; KSwitchButton *m_pAlertSoundSwitchButton; KSwitchButton *m_pWakeupMusicButton; // 2209 remove volumechange、alertsound widget,Follow the theme to switch with one click // QLabel *m_pShutdownlabel; // QLabel *m_pAlertSoundLabel; // QLabel *m_pAlertVolumeLabel; // QLabel *m_pVolumeChangeLabel; // QComboBox *m_pAlertSoundCombobox; // QComboBox *m_pLagoutCombobox; // QComboBox *m_pVolumeChangeCombobox; // QFrame *m_pAlertSoundWidget;//提示音下的通知提示 // QFrame *m_pVolumeChangeWidget;//提示音下的音量调节 // QFrame *line2; // QFrame *line3; // UkmediaVolumeSlider *m_pAlertSlider; // UkuiButtonDrawSvg *m_pAlertIconBtn; }; #endif // UKMEDIASOUNDEFFECTSWIDGET_H ukui-media-3.1.1.2/ukui-media.pro0000644000175000017500000000023614565521701015111 0ustar fengfengTEMPLATE = subdirs CONFIG += ordered SUBDIRS = \ audio \ ukui-volume-control-applet-qt \ ukui-media-control-led \ ukui-login-sound ukui-media-3.1.1.2/po/0000755000175000017500000000000014565521701012752 5ustar fengfengukui-media-3.1.1.2/po/kn.po0000644000175000017500000003062014565521701013723 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # shankar , 2008, 2009, 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Kannada (http://wiki.ukui.org/trans/kn/)\n" "Language: kn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ಧ್ವನಿ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ಧ್ವನಿಯ ಪ್ರಮಾಣ ಹಾಗು ಧ್ವನಿಗಳನ್ನು ಸನ್ನಿವೇಶಗಳನ್ನು ಬದಲಾಯಿಸಿ" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ಗಣಕತೆರೆಯ ಧ್ವನಿ ಪ್ರಮಾಣದ ನಿಯಂತ್ರಣವನ್ನು ತೋರಿಸು" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "ಈ ಅನ್ವಯದ ಆವೃತ್ತಿ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ಧ್ವನಿಯ ವ್ಯವಸ್ಥೆಯ ಪ್ರತಿಕ್ರಿಯೆಗಾಗಿ ಕಾಯಲಾಗುತ್ತಿದೆ" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "ಆರಂಭಿಕ ಪುಟ" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ಇನ್‌ಪುಟ್‌" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ಔಟ್‌ಪುಟ್" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ಎಡ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ಬಲ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "ಹಿಂಬದಿಯ" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "ಎದುರಿನ" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ಕನಿಷ್ಟ" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "ಗರಿಷ್ಟ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ಸಮತೋಲನ(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ಮಬ್ಬು(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ಸಬ್‌ವೂಫರ್(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "ಆಂಪ್ಲಿಫೈ ಮಾಡದೆ ಇರುವ" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ಮೂಕವಾಗಿಸು" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "ಪ್ರೊಫೈಲ್‌(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "ಜೋಡಕ(_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "ಅಶಕ್ತಗೊಂಡ" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ಹೆಸರು" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ಧ್ವನಿ ಪರಿಣಾಮಗಳು" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "ಸೂಚನೆಯ ಧ್ವನಿ ಪ್ರಮಾಣ(_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "ಔಟ್‌ಪುಟ್ ಧ್ವನಿಯ ಪ್ರಮಾಣ(_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ಯಂತ್ರಾಂಶ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ಸಂರಚಿಸಲು ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ಆಯ್ದ ಸಾಧನಗಳಿಗಾಗಿನ ಸಿದ್ಧತೆಗಳು:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ಇನ್‌ಪುಟ್ ಧ್ವನಿಯ ಪ್ರಮಾಣ(_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ಇನ್‌ಪುಟ್ ಹಂತ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ಧ್ವನಿಯ ಇನ್‌ಪುಟ್‌ಗಾಗಿ ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ಧ್ವನಿಯ ಔಟ್‌ಪುಟ್‌ಗಾಗಿ ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "ಅನ್ವಯಗಳು" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ಯಾವ ಅನ್ವಯವೂ ಆಡಿಯೊವನ್ನು ಚಲಾಯಿಸುತ್ತಿಲ್ಲ ಅಥವ ರೆಕಾರ್ಡು ಮಾಡುತ್ತಿಲ್ಲ." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ಧ್ವನಿಯ ಆದ್ಯತೆಗಳು" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ಯಾವುದೆ ಶಬ್ಧವಿಲ್ಲ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ಒಳನಿರ್ಮಿತ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ನನ್ನಿಚ್ಛೆಯ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ಸನ್ನಿವೇಶದ ಧ್ವನಿಗಳನ್ನು ಪರೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ಪೂರ್ವನಿಯೋಜಿತ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "ಪರಿಸರವಿನ್ಯಾಸದಿಂದ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ಬಗೆ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ಧ್ವನಿಯ ಪರಿಸರವಿನ್ಯಾಸ(_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ಒಂದು ಎಚ್ಚರಿಕೆ ಸೂಚನೆಯ ಶಬ್ಧವನ್ನು ಆಯ್ಕೆ ಮಾಡು(_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "ವಿಂಡೊ ಹಾಗು ಗುಂಡಿಯ ಶಬ್ಧಗಳನ್ನು ಶಕ್ತಗೊಳಿಸು(_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ಧ್ವನಿಯ ನಿಯಂತ್ರಣಾ ಆದ್ಯತೆಗಳನ್ನು ಆರಂಭಿಸುವಲ್ಲಿ ವಿಫಲತೆ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ಮೂಕಗೊಳಿಸು(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ಧ್ವನಿಯ ಆದ್ಯತೆಗಳು(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/th.po0000644000175000017500000003005014565521701013723 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Chanchai Junlouchai , 2004 # Sapa , 2003, 2004 # Sawit Kasuriya , 2003 # Supranee Thirawatthanasuk , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Thai (http://wiki.ukui.org/trans/th/)\n" "Language: th\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "เสียง" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ปรับความดังของเสียงและตั้งเสียงของเหตุการณ์ต่างๆ" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ความดังเสียง" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "แสดงหน้าต่างปรับความดังเสียง" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "รุ่นของโปรแกรมนี้" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ความดังเสียง" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "กำลังรอการตอบสนองจากระบบเสียง" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "หน้าเริ่มต้น" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ความดังเสียง" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "เสียงเข้า" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "เสียงออก" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ความดังเสียง" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ซ้าย" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ขวา" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "หลัง" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "หน้า" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ต่ำสุด" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "สูงสุด" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_สมดุล:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "เ_ฟด:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_ซับวูฟเฟอร์:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "ไม่ขยาย" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ปิดเสียง" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "โ_พรไฟล์:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_ช่องเชื่อมต่อ:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "ปิดใช้" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "เสียงออก %u ช่อง" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "เสียงเข้า %u ช่อง" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ชื่อ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "เอฟเฟ็กต์เสียง" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "ความดังเสียงแ_จ้งเตือน: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "ความดังเสียง_ออก: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ฮาร์ดแวร์" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "เ_ลือกอุปกรณ์สำหรับเสียงเข้า:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ค่าตั้งสำหรับอุปกรณ์ที่เลือก:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ความดังเสียงเ_ข้า: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ระดับเสียงเข้า:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "เ_ลือกอุปกรณ์สำหรับเสียงเข้า:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "เ_ลือกอุปกรณ์สำหรับเสียงออก:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "โปรแกรม" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ไม่มีโปรแกรมที่เล่นหรืออัดเสียงอยู่" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "การปรับแต่งเกี่ยวกับเสียง" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ไม่ใช้เสียง" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ที่มีในตัว" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "กำหนดเอง" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "กำลังทดสอบเสียงของเหตุการณ์" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ปริยาย" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "จากชุดเสียง" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ชนิด" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ชุดเ_สียง:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "เ_ลือกเสียงแจ้งเตือน:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "เปิดใช้เสียงของห_น้าต่างและปุ่มต่างๆ" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ไม่สามารถเปิดเครื่องมือปรับแต่งเกี่ยวกับเสียง: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ปิ_ดเสียง" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ปรับแต่งเ_สียง" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "ไม่ทราบ" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/bg.po0000644000175000017500000003156414565521701013713 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alexander Shopov , 2005, 2008, 2009, 2010 # Evgeni Boevski , 2002, 2003 # Georgi Georgiev , 2015 # Philip Dimitrov , 2005 # Rostislav Raykov , 2004 # Vladimir "Kaladan" Petkov , 2004 # Yanko Kaneti , 2003 # Yavor Doganov , 2007 # Любомир Василев, 2016-2017 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Любомир Василев\n" "Language-Team: Bulgarian (http://wiki.ukui.org/trans/bg/)\n" "Language: bg\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Звук" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Промяна на силата на звука и звуците свързани със събития" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Сила на звука" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Показване на управлението на звука" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Версия на тази програма" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Включване на изчистването на грешки" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— аплет на MATE за силата на звука" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Звуковата система не е достъпна" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Изчакване на отговор от аудио подсистемата" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Бекенд на звуковата система" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Начална страница" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— сила на звука на MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Вход" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Изход" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Сила на микрофона" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Сила на изхода" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Аплет на MATE за силата на звука" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Ляво" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Дясно" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Отзад" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Отпред" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Минимум" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Максимум" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Баланс:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Затихване:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Бас:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Без усилване" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100 %" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Заглушаване" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "Про_фил:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Конектор:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Изключен" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u изход" msgstr[1] "%u изхода" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u вход" msgstr[1] "%u входа" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Име" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Тестване на високоговорителите към %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Тестване на високоговорителите" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Аудио ефекти" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Сила на _известяването:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Сила на _изхода:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Хардуер" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Избор на устройството за настройване:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Настройки на избраното устройство:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Сила на _входа:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ниво на входа:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Избор на входно аудио устройство:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Избор на изходно аудио устройство:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Програми" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "В момента никоя програма не записва и не възпроизвежда звук" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Настройки на звука" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Без звуци" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Вградена" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Потребителска" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Проба на звука за събитие" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "По подразбиране" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "От тема" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Вид" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Тема от звуци:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Избор на звук за известяване:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Включване на звуците за прозорци и бутони" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Спиране" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Тест" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Настройките на звука не могат да бъдат стартирани: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Заглушаване" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Настройки на звука" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Заглушено на" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Неизвестно" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Моно" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Отпред — ляво" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Отпред — дясно" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Отпред — среда" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "НЧЕ (LFE)" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Отзад — ляво" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Отзад — дясно" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Отзад — среда" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Отпред — ляво или среда" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Отпред — дясно или среда" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Отстрани — ляво" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Отстрани — дясно" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Отгоре и отпред — ляво" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Отгоре и отпред — дясно" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Отгоре и отпред — среда" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Отгоре — среда" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Отгоре и отзад — ляво" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Отгоре и отзад — дясно" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Отгоре и отзад — среда" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стерео" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Обемен звук 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Обемен звук 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Обемен звук 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Обемен звук 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Обемен звук 7.1" ukui-media-3.1.1.2/po/ro.po0000644000175000017500000002704514565521701013742 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Adi Roiban https://launchpad.net/~adiroiban, 2008, 2009 # Daniel , 2015 # Daniel , 2017 # Lucian Adrian Grijincu , 2010 # Mugurel Tudor , 2002-2003, 2004, 2005, 2006, 2007 # Octi , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Daniel \n" "Language-Team: Romanian (http://wiki.ukui.org/trans/ro/)\n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" "2:1));\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sunet" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Schimbă volumul sunetului și sunetele evenimentelor" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control volum" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Afișare control volum desktop" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versiunea aceastei aplicații" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Activează depanare" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Miniaplicație control volum MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistemul de sunet nu este disponibil" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Se așteatpă răspuns de la sistemul de sunet" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Furnizor din spate pentru sistemul de sunet" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pagină pornire" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Control volum MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Intrare" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Ieșire" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volum microfon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volum sunet ieșire" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Control volum MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Stânga" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dreapta" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Spate" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Față" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minim" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maxim" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanță:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Estompare:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Neamplificat" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Tăcut" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Dezactivat" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ieșire" msgstr[1] "%u ieșiri" msgstr[2] "%u de ieșiri" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u intrare" msgstr[1] "%u intrări" msgstr[2] "%u de intrări" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nume" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Testare difuzoare pentru %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testează difuzoarele" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efecte sunet" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volum _alertă:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "V_olum ieșire:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Ale_geți un dispozitiv pentru configurare:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Configurări pentru dispozitivul ales:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volum _intrare:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivel intrare:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Ale_geți un dispozitiv pentru intrare sunet:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Ale_geți un dispozitiv pentru ieșire sunet:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicații" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Nicio aplicație nu redă sau înregistrează sunete în acest moment." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferințe sunet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Niciun sunet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integrat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testare eveniment sunet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Implicit" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Din temă" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tip" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Temă sunet:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Ale_geți un sunet de alertă:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Acti_vare sunete pentru fereastră și butoane" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testează" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Pornirea preferințelor sunet a eșuat: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Tăcut" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferințe _sunet" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Tăcut la" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Necunoscut" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Stânga față" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Dreapta față" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Centru față" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Efecte de frecvență joasă" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Stânga spate" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Dreapta spate" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Centru spate" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "La stânga de centru în față" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "La dreapta de centru în față" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Stânga lateral" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Dreapta lateral" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Stânga față sus" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Dreapta față sus" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Centru față sus" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Centru sus" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Stânga spate sus" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Dreapta spate sus" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Centru spate sus" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Sunet înconjurător 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Sunet înconjurător 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Sunet înconjurător 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Sunet înconjurător 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Sunet înconjurător 7.1" ukui-media-3.1.1.2/po/uk.po0000644000175000017500000003163714565521701013743 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Микола Ткач , 2013 # wanderlust , 2009 # zubr139, 2013 # zubr139, 2012 # zubr139, 2012-2013 # Микола Ткач , 2014-2016 # Микола Ткач , 2017 # Шаповалов Анатолій Романович , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Микола Ткач \n" "Language-Team: Ukrainian (http://wiki.ukui.org/trans/uk/)\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Звук" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Зміна гучности звуку та прив'язка звуків до подій" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Регулятор гучности" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Показати регулятор гучности" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Версія цієї проґрами" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Увімкнути зневадження" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— Аплет регулятора гучности MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Звукова система недоступна" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Очікування відповіді звукової підсистеми" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Бекенд звукової системи" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Початкова сторінка" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Регулятор гучности MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Вхід" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Вихід" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Гучність мікрофону" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Гучність звуку" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Аплет регулятора гучности MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Лівий" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Правий" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Тло" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Фронтальний" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Мінімум" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Максимум" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Баланс" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Затухання:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Сабвуфер:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Непідсилений" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Приглушити" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Профілі:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Канал:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Вимкнено" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u вихід" msgstr[1] "%u виходи" msgstr[2] "%u виходів" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u вхід" msgstr[1] "%u входи" msgstr[2] "%u входів" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Назва" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Тест гучномовців для %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Перевірити гучномовці" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Звукові події" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Гучність _сповіщень: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Гучність звуку: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Пристрої" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Виберіть пристрій для налаштування:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Параметри обраного пристрою:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Гучність _запису: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Рівень запису: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Ви_беріть пристрій запису звуку:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Ви_беріть пристрій виводу звуку" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Проґрами" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Наразі проґрами не програють та не записують звук." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Параметри звуку" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Без звуків" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Вбудований" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Власне" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Тестовий звуковий сигнал" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Типовий" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "З теми" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Тип" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Тема _звуків:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Ви_беріть звук сповіщення:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Увімкнути звукові сповіщення про дії з _вікнами та натисканні кнопок" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Стоп" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Тестувати" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Не вдається запустити діялоґ налаштовування параметрів звуку: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Приглушити" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "П_араметри звуку" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Приглушено" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Невідомий" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Моно" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Передній Лівий" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Передній Правий" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Передній Центральний" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Сабвуфер" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Задній Лівий" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Задній Правий" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Задній Центральний" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Передній Лівий чи Центральний" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Передній Правий чи Центральний" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Бічний Лівий" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Бічний Правий" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Передній Лівий Згори" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Передній Правий Згори" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Передній Центральний Згори" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Центральний Згори" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Задній Лівий Згори" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Задній Правий Згори" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Задній Центральний Згори" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стерео" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Об’ємний звук 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Об’ємний звук 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Об’ємний звук 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Об’ємний звук 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Об’ємний звук 7.1" ukui-media-3.1.1.2/po/el.po0000644000175000017500000003205014565521701013712 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # AARG! Anonymous , 2002 # Efstathios Iosifidis , 2014,2016 # Fotis Tsamis , 2009 # Kostas Papadimas , 2003, 2004, 2005, 2006 # Kostas Papadimas 2002, 2003 # Nikos Charonitakis , 2005 # Nikos Charonitakis , 2002, 2003, 2004 # Simos Xenitellis , 2008 # Simos Xenitellis , 1999, 2000, 2001, 2002 # Αλέξανδρος Καπετάνιος , 2017 # Γιώργος Μηντζιλώνης, 2017 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: Αλέξανδρος Καπετάνιος \n" "Language-Team: Greek (http://wiki.ukui.org/trans/el/)\n" "Language: el\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Ήχος" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Αλλαγή έντασης ήχου και ηχητικών γεγονότων" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Έλεγχος έντασης ήχου" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Εμφάνιση ελέγχου ήχου επιφάνειας εργασίας" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Έκδοση αυτής της εφαρμογής" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Ενεργοποίηση αποσφαλμάτωσης" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " - Μικροεφαρμογή ελέγχου έντασης ήχου MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Το σύστημα ήχου δεν είναι διαθέσιμο" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Αναμονή για την ανταπόκριση του συστήματος ήχου" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Σύστημα υποστήριξης συστήματος ήχου" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Αρχική σελίδα" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " - Έλεγχος έντασης ήχου MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Είσοδος" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Έξοδος" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Ένταση μικροφώνου" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Ένταση εξόδου ήχου:" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Μικροεφαρμογή ελέγχου έντασης ήχου MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Αριστερά" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Δεξιά" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Πίσω" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Μπροστά" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Ελάχιστο" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Μέγιστο" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "Ι_σοστάθμιση:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Βα_θμιαία μείωση έντασης:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Χωρίς ενισχυτή" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Σίγαση" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Προφίλ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Σύν_δεσμος:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Απενεργοποιημένο" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "Έξοδος %u" msgstr[1] "Έξοδοι %u" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "Είσοδος %u" msgstr[1] "Είσοδοι %u" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Όνομα" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Δοκιμή ηχείου για %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Δοκιμή ηχείων" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ηχητικά εφέ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Έ_νταση ειδοποίησης: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Ένταση ήχου ε_ξόδου: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Υλικό" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Επιλέ_ξτε μια συσκευή για ρύθμιση:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Ρυθμίσεις για την επιλεγμένη συσκευή:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Ένταση ήχου ει_σόδου: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Επίπεδο εισόδου:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Επιλέ_ξτε μια συσκευή για την είσοδο ήχου:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Επι_λέξτε μια συσκευή για την έξοδο ήχου:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Εφαρμογές" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Προς το παρόν καμία εφαρμογή δεν αναπαράγει ή καταγράφει ήχο." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Προτιμήσεις ήχου" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Όχι ήχοι" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ενσωματωμένο" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Προσαρμοσμένο" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Γίνεται δοκιμή ήχου γεγονότος" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Προεπιλογή" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Από θέμα" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Τύπος" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Θέμα ήχων:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Επιλέ_ξτε έναν ήχο ειδοποίησης:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Ενεργοποίηση ήχων _παραθύρων και κουμπιών" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Διακοπή" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Δοκιμή" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Αποτυχία εκκίνησης προτιμήσεων ήχου: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Σίγα_ση" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Προτιμήσεις ή_χου" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Σίγαση στο" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Άγνωστο" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Μονοφωνικό" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Μπροστά αριστερά" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Μπροστά δεξιά" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Μπροστά στο κέντρο" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Πίσω αριστερά" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Πίσω δεξιά" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Πίσω κέντρο" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Μπροστά αριστερά του κέντρου" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Μπροστά δεξιά του κέντρου" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Πλάι αριστερά " #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Πλάι δεξιά" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Μπροστά επάνω αριστερά" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Μπροστά επάνω δεξιά" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Μπροστά επάνω κέντρο" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Κέντρο επάνω" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Πίσω επάνω αριστερά" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Πίσω επάνω δεξιά" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Πίσω επάνω κέντρο" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Στερεοφωνικό" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/sl.po0000644000175000017500000002664414565521701013744 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Andraž Tori , 2000 # Damir Jerovšek , 2013 # Damir Mevkić , 2017 # Helena S , 2017 # Matic Žgur , 2007 # Matjaž Horvat , 2006 # worm , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: monsta \n" "Language-Team: Slovenian (http://wiki.ukui.org/trans/sl/)\n" "Language: sl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" "%100==4 ? 2 : 3);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvok" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Spreminjanje glasnosti zvoka in zvočni dogodki" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Nadzor glasnosti" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Pokaži namizni nadzornik zvoka" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Različica tega programa" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Omogoči debugiranje" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "- MATE aplet za nadzor glasnosti" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Zvočni sistem ni navoljo" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Čakanje na odziv zvočnega sistema" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Zvok sistema podprt" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Začetna stran" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "- MATE nadzor glasnosti" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Vhod" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Izhod" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Glasnost mikrofona" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Izhodna glasnost zvoka" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Aplikacija za Nadzor Glasnosti" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Levo" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Desno" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Zadaj" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Spredaj" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Najmanj" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Največ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Ravnotežje:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Pojemanje:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Nizkotonski zvočnik:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Neojačano" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Nemo" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Spojnik:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Onemogočeno" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u izhod" msgstr[1] "%u izhoda" msgstr[2] "%u izhodov" msgstr[3] "%u izhodi" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u vhod" msgstr[1] "%u vhoda" msgstr[2] "%u vhodov" msgstr[3] "%u vhodi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Ime" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Preizkus zvočnika za %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Preizkus zvočnikov" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Zvočni učinki" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Glasnost opozoril:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Glasnost izhoda:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Strojna oprema" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Izbor naprave za nastavitev:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Nastavitve za izbrano napravo:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Glasnost vhoda:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Raven vhoda:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Izbor naprave za zvočni vhod:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Izbor naprave za zvočni izhod:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programi" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ni programa, ki bi trenutno predvajal ali snemal zvočni posnetek." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Lastnosti zvoka" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Brez zvoka" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Vgrajeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Po meri" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Preizkus zvoka dogodkov" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Privzeto" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Iz teme" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Vrsta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Zvočna _tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Izbor zvoka opozorila:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Omogoči zvoke _oken in gumbov" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zaustavi" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Preizkus" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Napaka med zagonom lastnosti zvoka: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Nemo" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Nastavitve zvoka" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Neznano" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Spredaj levo" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Spredaj desno" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Spredaj v sredini" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Zadaj Levo" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Zadaj Desno" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Zadaj Sredinsko" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Spredaj levo od Sredine" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Spredaj Desno od Sredine" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Ob strani Levo" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Ob strani Desno" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Zgoraj Sprednje Levo" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Zgoraj Sprednje Desno" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Zgoraj Spredaj v Sredini" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Zgoraj v Sredini" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Zgoraj Zadaj Levo" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Zgoraj Zadaj Desno" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Zgoraj Zadaj Sredinsko" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Prostorski zvok 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Prostorski zvok 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Prostorski zvok 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Prostorski zvok 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Prostorski zvok 7.1" ukui-media-3.1.1.2/po/de.po0000644000175000017500000002673014565521701013712 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Christian , 2009 # debianer82 , 2017 # Ettore Atalan , 2015 # Hendrik Richter , 2004, 2005, 2006, 2008, 2009 # Karl Eichwalder , 1999, 2000 # Mario Blättermann , 2010 # Matthias Warkus , 1999 # Tobias Bannert , 2014-2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: debianer82 \n" "Language-Team: German (http://wiki.ukui.org/trans/de/)\n" "Language: de\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Klang" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Lautstärke und Ereignissenklänge ändern" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Lautstärkeregler" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Lautstärkeregler anzeigen" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version dieser Anwendung" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Fehlerdiagnose aktivieren" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE-Lautstärkeregleranzeige" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Klangsystem ist nicht verfügbar" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Es wird auf eine Antwort des Klangsystems gewartet" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Klangsystemhintergrundprogramm" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Startseite" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE-Lautstärkeregler" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Eingang" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Ausgang" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofonlautstärke" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Ausgangslautstärke" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE-Lautstärkeregleranzeige" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Links" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Rechts" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Hinten" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Vorn" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Ein-/Ausblenden:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nicht verstärkt" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Stumm" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Verbindungsglied:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Deaktiviert" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Ausgang" msgstr[1] "%u Ausgänge" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Eingang" msgstr[1] "%u Eingänge" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Name" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Lautsprecher werden für %s getestet" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Lautsprechertest" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Klangeffekte" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Warnlautstärke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Ausgangslautstärke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Geräte" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Ein Gerät zum Konfigurieren auswählen:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Einstellungen für das gewählte Gerät:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Eingangslautstärke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Eingangsniveau:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Ein Gerät für den Toneingang auswählen:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Ein Gerät für den Tonausgang auswählen:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Anwendungen" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Derzeit wird von keiner Tonanwendung aufgenommen oder wiedergegeben." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Klangeinstellungen" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Keine Klänge" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Eingebaut" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Angepasst" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Ereignisklang wird getestet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Vorgabe" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Von Thema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Art" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Klangthema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Einen Warnklang auswählen:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Fenster- und Knopfklänge einschalten" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stopp" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testen" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Das Starten der Klangeinstellungen schlug fehl: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Stumm" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Klangeinstellungen" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Stumm geschaltet" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Unbekannt" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Vorne links" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Vorne rechts" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Vorne Mitte" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Hinten links" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Hinten rechts" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Hinten Mitte" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Vorne links von der Mitte" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Vorne rechts von der Mitte" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Seite links" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Seite rechts" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Oben vorne links" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Oben vorne rechts" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Oben vorne Mitte" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Oben Mitte" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Oben hinten links" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Oben hinten rechts" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Oben hinten Mitte" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/as.po0000644000175000017500000003131114565521701013714 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Amitakhya Phukan , 2008 # Amitakhya Phukan , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Assamese (http://wiki.ukui.org/trans/as/)\n" "Language: as\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ধ্বনি " #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "শব্দৰ মাত্ৰা o নিৰ্দিষ্ট ঘটনাৰ সৈতে যুক্ত শব্দ পৰিবৰ্তন কৰক" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ডেস্কটপত শব্দৰ মাত্ৰা নিয়ন্ত্ৰণ ব্যৱস্থা প্ৰদৰ্শন কৰা হ'ব" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "এপ্লিকেশনৰ সংস্কৰণ সংখ্যা" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "শব্দৰ ব্যৱস্থাপ্ৰণালীৰ পৰা প্ৰতিক্ৰিয়া প্ৰাপ্তিৰ অপেক্ষা কৰা হচ্ছে" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "প্ৰাৰম্ভিক পৃষ্ঠা" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "নিবেশ" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "নিৰ্গম" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "বাওঁফালে" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "সোঁফালে" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "পশ্চাৎস্থিত" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "সম্মুখস্থিত" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "সৰ্বনিম্ন" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "সৰ্বোচ্চ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ভাৰসাম্য: (_B)" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "নিষ্প্ৰভ: (_F)" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ছাবউফাৰ: (_S)" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "এমপ্লিফাই নকৰা" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "নিঃশব্দ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "প্ৰোফাইল:(_P)" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "সংযোগকৰ্তা: (_n)" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "নিষ্ক্ৰিয়" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u নিৰ্গম" msgstr[1] "%u নিৰ্গম" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u নিবেশ" msgstr[1] "%u নিবেশ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "নাম" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "শব্দৰ ইফেক্ট" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "সতৰ্কবাৰ্তাৰ শব্দৰ মাত্ৰা: (_A)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "নিৰ্গমৰ শব্দৰ মাত্ৰা: (_O)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "হাৰ্ডৱেৰ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "বিন্যাস কৰাৰ উদ্দেশ্যে এটা যন্ত্ৰ নিৰ্বাচন কৰক (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "নিৰ্বাচিত যন্ত্ৰেৰ বৈশিষ্ট্য:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "নিবেশৰ শব্দৰ মাত্ৰা: (_I)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "নিবেশ স্তৰ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "শব্দ নিবেশৰ বাবে এটা যন্ত্ৰ নিৰ্বাচন কৰক: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "শব্দ নিৰ্গমৰ বাবে এটা যন্ত্ৰ নিৰ্বাচন কৰক: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "অনুপ্ৰয়োগ" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "কোনো এপ্লিকেশন দ্বাৰা বৰ্তমানে অডিও বাজানো অথবা ৰেকৰ্ড কৰা হচ্ছে না।" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "শব্দ সংক্ৰান্ত পছন্দ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "কোনো ধ্বনি নাই" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "বিল্ট-ইন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "নিজস্ব" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ঘটনাৰ বাবে চিহ্নিত শব্দ পৰীক্ষা কৰা হচ্ছে" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "অবিকল্পিত" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "থিমৰ পৰা" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "প্ৰকাৰ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "শব্দৰ থিম: (_t)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "সতৰ্কতামূলক এটা শব্দ নিৰ্বাচন কৰক: (_h)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "উইন্ডো আৰু বুটামৰ শব্দ সক্ৰিয় কৰক (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "শব্দ সংক্ৰান্ত পছন্দেৰ মান আৰম্ভ কৰিবলৈ ব্যৰ্থ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "নিঃশব্দ: (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "শব্দ সংক্ৰান্ত পছন্দ (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/es_AR.po0000644000175000017500000002301514565521701014304 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-20 15:44+0000\n" "Last-Translator: monsta \n" "Language-Team: Spanish (Argentina) (http://wiki.ukui.org/trans/es_AR/)\n" "Language: es_AR\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nombre" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ku_IQ.po0000644000175000017500000002364014565521701014327 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Haval Abdulkarim , 2014 # Rasti K5 , 2016-2017 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 20:27+0000\n" "Last-Translator: Rasti K5 \n" "Language-Team: Kurdish (Iraq) (http://wiki.ukui.org/trans/ku_IQ/)\n" "Language: ku_IQ\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "دەنگ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "وەشانی ئەم نەرمەواڵەیە" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "چالاککردنی هەڵەدۆزین" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "دەنگی سیستەم بەردەست نییە" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "چەپ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ڕاست" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ناو" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "گاریگەرییەکانی دەنگ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ڕەقەکاڵا" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "نەرمەواڵەکان" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "بێ دەنگ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "جۆر" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "وەستاندن" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "تاقیکردنەوە" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "نەناسراو" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ast.po0000644000175000017500000002510614565521701014105 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Astur , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Asturian (http://wiki.ukui.org/trans/ast/)\n" "Language: ast\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Soníu" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Camudar el volume del soníu y los eventos de soníu" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control de Volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Amosar el control de volume de l'escritoriu" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versión d'esta aplicación" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Control de Volume" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Esperando respuesta del sistema de soníu" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Páxina d'aniciu" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Control de Volume" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Salida" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Control de Volume" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquierda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Drecha" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Traseru" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frente" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínimu" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximu" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Esvanecimientu:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Ensin amplificar" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Silenciar" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_neutor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desactiváu" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u salida" msgstr[1] "%u salides" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entraes" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nome" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efeutos de soníu" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume d'_alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Volume de sali_da: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Esbillar un preséu pa configurar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Axustes pal preséu seleicionáu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume d'_entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivel d'entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Esbillar un preséu pa la entrada de soníu" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Esbillar un preséu pa la salida de soníu" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicaciones" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Denguna aplicación ta reproduciendo o grabando soníu anguaño." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferencies de soníu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ensin soníos" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Internu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizáu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Comprobando'l soníu d'eventu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predetermináu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Del tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Triba" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de soníu:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Esbillar un soníu d'alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Activar soníos de _ventanes y botones" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Falló entamar Preferencies de Soníu: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Silenciu" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Preferencies de Soníu" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/fi.po0000644000175000017500000002552714565521701013723 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Mikko Rauhala , 1999 # nomen omen , 2017 # Tuomas J. Lukka , 1998 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: nomen omen \n" "Language-Team: Finnish (http://wiki.ukui.org/trans/fi/)\n" "Language: fi\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Äänet" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Muuta äänenvoimakkuutta ja äänitapahtumia" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Äänenvoimakkuuden hallinta" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Näytä työpöydän äänenvoimakkuuden hallinta" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Tämän ohjelman versio" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Käytä vianetsintää" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Äänenvoimakkuuden Hallinta Sovelma" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Äänijärjestelmä ei ole käytettävissä" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Odotetaan äänijärjestelmän vastausta" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Äänijärjestelmä taustaosa" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Aloitussivu" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Äänenvoimakkuuden Hallinta" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Tallennus" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Toisto" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofonin Äänenvoimakkuus" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Äänentoisto Voimakkuus" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Äänenvoimakkuuden Hallinta Sovelma" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "vasen" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "oikea" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "taka" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "etu" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimi" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimi" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Tasapaino:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Häivytys:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Vahvistamaton" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100 %" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Vaimenna" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profiili:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Liitin:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Ei käytössä" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ulostulo" msgstr[1] "%u ulostuloa" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u sisääntulo" msgstr[1] "%u sisääntuloa" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nimi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ääniefektit" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Hälytysten voimakkuus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Toistovoimakkuus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Laitteisto" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Valitse määriteltävä laite:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Valitun laitteen asetukset:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Äänitysvoimakkuus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Äänitystaso: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Valitse laite äänen tallentamiseksi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Valitse laite äänen toistamiseksi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Sovellukset" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Mikään sovellus ei nyt soita tai tallenna ääntä." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Ääniasetukset" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ei ääniä" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Sisäänrakennetut" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Mukautettu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Kokeillaan tapahtuman ääntä" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Oletus" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Teemasta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tyyppi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Ääni_teema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Valitse hälytysääni:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Ota _ikkuna- ja painikeäänet käyttöön" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Pysäytä" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Ääniasetuksia ei voitu käynnistää: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Vaimenna" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Ääniasetukset" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/oc.po0000644000175000017500000002434514565521701013723 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Cédric Valmary , 2016 # Yannig Marchegay (Kokoyaya) , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Occitan (post 1500) (http://wiki.ukui.org/trans/oc/)\n" "Language: oc\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Contraròtle de volum" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version d'aquesta aplicacion" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Contraròtle de volum" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Contraròtle de volum" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Sortida" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Contraròtle de volum" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquèrra" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dreita" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Avant" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balança :" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fondut :" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Caisson de bassa :" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Pas amplificat" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100 %" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mut" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil :" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnectador :" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desactivat" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u sortida" msgstr[1] "%u sortidas" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entradas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nom" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Material" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volum d'_entrada : " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivèl d'entrada :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicacions" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferéncias del son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Pas cap de son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Predefinit" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Defaut" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipe" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Arrestar" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testar" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mut" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconegut" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Costat dreit" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Naut Avant Esquèrra" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Naut Avant Dreit" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Naut Avant Centre" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Naut Central" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Naut Arrièr Esquèrra" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Naut Arrièr Dreit" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Naut Arrièr Central" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Esterèo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/br.po0000644000175000017500000002631614565521701013725 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alan Monfort , 2016 # Jérémy Ar Floc'h , 2006 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Breton (http://wiki.ukui.org/trans/br/)\n" "Language: br\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Kemmañ tregern ar son ha sonioù ar degouezhioù" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Reoliñ an dregern" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Diskouez reolererezh tregern ar burev" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Handelv an arload-mañ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Gweredekaat an diveugañ" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— Ardoadig MATE da reoliañ an dregern" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "An trevnad evit ar son n'eo ket hegerz" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Emañ c'hortoz respont an trevnad son" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Trevnad son kein" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pajennad loc'hañ" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— Reolerezh tregern MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Enankad" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Ec'hankad" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Tregern ar glevell" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Tregern ec'hankad ar son" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Arloadig MATE da reoliañ an dregern" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Kleiz" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dehou" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "A-dreñv" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "A-dal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Izek" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Uc'hek" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Kempouez :" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Blinaat :" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Eil uhel-gomzer boud :" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Disamplaet" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mut" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Aelad :" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ke_nnasker :" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Diweredekaet" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ec'hankad :" msgstr[1] "%u ec'hankad :" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u enankad :" msgstr[1] "%u enankad :" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Anv" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Prouadur an uhel-gomzer evit %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Prouadiñ an uhel-gomzerioù" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efedoù son" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Tregern ar _galv-diwall :" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Tregern an e_c'hankad :" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Periant" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Dibab un drobarz_hell da gefluniañ :" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Arventennoù evit an drobarzhell diuzet :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Tregern an _enankad :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Live an Enankad :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Dibab un drobarz_hell da enankañ sonioù :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Dibab un drobarz_hell da ec'hankañ sonioù :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Arloadoù" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "N'eus arload ebet o lenn pe oc'h enrollañ aodio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Gwellvezioù ar son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Son ebet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Enkorfet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personelaet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Prouadur sonioù an degouezhioù" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Dre ziouer" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Diouzh an neuz" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Rizh" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Dodenn ar son :" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Dibab son ar _galv-diwall :" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Gweredekaat sonioù an afelloù hag ar prenestroù" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Arsaviñ" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Prouadiñ" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "C'hwitadenn war loc'hañ Gwellvezioù ar son : %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mut" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Gwellvezioù ar _son" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Dianav" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Tal a-gleiz" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Tal a-zehou" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Tal e-kreiz" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "A-dreñv a-gleiz" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "A-dreñv -zehou" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "A-dreñv e-kreiz" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Tal a-gleiz ar c'hreiz" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Tal a-zehou ar c'hreiz" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Tu a-gleiz" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Tu a-zehou" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Lein an tal a-gleiz" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Lein an tal a-zehou" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Lein an tal e-kreiz" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Lein e-kreiz" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Lein a-dreñv a-gleiz" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Lein a-dreñv a-zehou" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Lein a-dreñv e-kreiz" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/lv.po0000644000175000017500000002577114565521701013747 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Artis Trops , 2001 # Imants Liepiņš , 2013 # Pēteris Krišjānis , 2010 # Raivis Dejus , 2006, 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Latvian (http://wiki.ukui.org/trans/lv/)\n" "Language: lv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Skaņa" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Mainīt skaņas līmeni un skaņas dažādiem notikumiem" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Skaļuma kontrole" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Parādīt darbvirsmas skaņas kontroli" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Šīs lietotnes versija" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Skaļuma kontroles sīklietotne" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Gaida skaņu sistēmas atbildi" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Startēšanās lapa" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Skaļuma kontrole" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ievads" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Izvads" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofona skaļums" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Izejas skaņas līmenis" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — MATE Skaļuma kontroles sīklietotne" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Pa kreisi" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Pa labi" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Aizmugure" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Priekšpuse" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimums" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimums" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanss:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Pakāpeniski klusināt:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Zemfrekvences reproduktors:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nepastiprināts" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Apklusināt" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profili:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Sa_vienotājs:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Deaktivizēts" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u izvadkanāls" msgstr[1] "%u izvadkanāli" msgstr[2] "%u izvadkanālu" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ievadkanāls" msgstr[1] "%u ievadkanāli" msgstr[2] "%u ievadkanālu" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nosaukums" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Skaļruņu pārbaude %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Pārbaudīt skaļruņus" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Skaņas efekti" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Trauksmes skaļums: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Izvada skaļums: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Aparatūra" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "I_zvēlieties ierīci, kuru konfigurēt:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Izvēlētās ierīces iestatījumi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Ievada skaļums: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ievada līmenis:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Iz_vēlieties ierīci skaņas ievadei:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Iz_vēlieties ierīci skaņas izvadei:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Lietotnes" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Neviena lietotne šobrīd neatskaņo vai neieraksta audio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Skaņas iestatījumi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Skaņu nav" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Iebūvēta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Pielāgots" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Pārbauda notikuma skaņu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Noklusētais" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "No tēmas" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Veids" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Skaņas _tēma:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "I_zvēlieties trauksmes skaņu:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktivizēt _logu un pogu skaņas" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Pārtraukt" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Pārbaudīt" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Neizdevās palaist skaņas iestatījumus: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Apklusināt" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Skaņas iestatījumi" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/wa.po0000644000175000017500000002335614565521701013732 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Lucyin Mahin , 2004 # Pablo Saratxaga , 2002 # Pablo Saratxaga , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Walloon (http://wiki.ukui.org/trans/wa/)\n" "Language: wa\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Contrôle do volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Contrôle do volume" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Contrôle do volume" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Contrôle do volume" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "A vosse môde" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Arester" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/nl.po0000644000175000017500000002674614565521701013742 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Dennis Smit , 2002 # Huib Kleinhout , 2002 # infirit , 2014-2015 # Mario Blättermann , 2010 # Pjotr , 2017 # Reinout van Schouwen , 2009 # Stef Pletinck , 2015 # Taco Witte , 2002 # Tino Meinen , 2002, 2007, 2008 # Wing Tung Leung , 1999 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: Pjotr \n" "Language-Team: Dutch (http://wiki.ukui.org/trans/nl/)\n" "Language: nl\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Geluid" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Geluidsvolume en systeemgeluiden wijzigen" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volumeregeling" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Volumeregeling tonen" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versie van deze toepassing" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Foutopsporing inschakelen" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Volumeregeling-programmaatje" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Geluidssysteem is niet beschikbaar" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Wachten op antwoord van het geluidssysteem" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Achtergronddienst van geluidssysteem" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Opstartpagina" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Volumeregeling" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Invoer" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Uitvoer" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Microfoonvolume" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Geluiduitvoervolume" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Volumeregeling-programmaatje" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Links" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Rechts" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Achter" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Voor" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balans:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Wegsterven:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Onversterkt" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Dempen" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profiel:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Verbi_ndingsstuk:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Uigeschakeld" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u uitgang" msgstr[1] "%u uitgangen" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ingang" msgstr[1] "%u ingangen" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Naam" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Luidsprekerproef voor %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Luidsprekers beproeven" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Geluidseffecten" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Waarschuwingsvolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Uitvoervolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Apparatuur" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Kies een apparaat om te _configureren:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Instellingen voor het geselecteerde apparaat:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Invoervolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Invoerniveau:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Kies een apparaat voor geluids_invoer:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Kies een _apparaat voor geluidsuitvoer:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Toepassingen" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" "Er is momenteel geen enkele toepassing geluid aan het opnemen of afspelen." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Geluidsvoorkeuren" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Geen geluiden" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ingebouwd" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Aangepast" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Geluid beproeven" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standaard" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Van thema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Geluids_thema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Kies een _waarschuwingsgeluid:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Scherm- en knop_geluiden inschakelen" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stoppen" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Proef" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Kon geluidsvoorkeuren niet starten: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Dempen" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Geluidsvoorkeuren" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Gedempt op" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Onbekend" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Linksvoor" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Rechtsvoor" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Middenvoor" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Linksachter" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Rechtsachter" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Midden achteraan" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Linksvoor van Midden" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Rechtsvoor van Midden" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Linkerzijkant" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Rechterzijkant" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Linksboven vooraan" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Rechtsboven vooraan" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Middenboven vooraan" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Midden boven" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Linksboven achter" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Rechtsboven achter" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Middenboven achteraan" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/pt_BR.po0000644000175000017500000002772514565521701014335 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Aldo Oliveira , 2015 # André Gondim , 2009, 2010 # Djavan Fagundes , 2008 # Eduardo Querido Name , 2017 # Fabrício Godoy , 2008 # Gilberto José Souza Coutinho , 2015 # Guilherme de S. Pastore , 2006 # Gustavo Maciel Dias Vieira , 2001 # Henrique P. Machado , 2009 # Jonh Wendell , 2009 # leonardof , 2006, 2008, 2009 # Licio Fernando Nascimento da Fonseca , 2006 # Marcelo Ghelman , 2014,2017 # Marcus Vinícius Marques, 2014 # Og Maciel , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Eduardo Querido Name \n" "Language-Team: Portuguese (Brazil) (http://wiki.ukui.org/trans/pt_BR/)\n" "Language: pt_BR\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Som" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Alterar volume do áudio e sons de eventos" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Controle de volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Exibir controle de volume" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versão deste aplicativo" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Habilitar debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Miniaplicativo de controle de volume do MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistema de som não está disponível" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Esperando resposta do sistema de áudio" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Administração do sistema de som" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Página de início" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Controle de volume do MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Saída" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume do microfone" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume da saída de som" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Miniaplicativo de controle de volume do MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquerda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Direita" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Traseiro" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frontal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínimo" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanço:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Desaparecimento:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sem amplificação" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mudo" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "C_onector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desabilitado" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u saída" msgstr[1] "%u Saídas" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u Entradas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nome" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Testando alto-falantes para %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testar alto-falantes" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efeitos de som" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume de _alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Volume de _saída: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Escolha um dispositivo para configurar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Configurações para o dispositivo selecionado:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume de _entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nível de entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Escolha um dispositivo para entrada de som:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Escolha um dispositivo para saída de som:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicativos" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Nenhum aplicativo está reproduzindo ou gravando áudio no momento." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferências de som" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sem som" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Embutido" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testar eventos de som" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Padrão" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Do tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema sonoro:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Escolha um som de alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Habilitar som das janelas e botões" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Parar" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Teste" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Falhou ao iniciar as preferências de som: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mudo" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferências de _som" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Emudecido, Atenuado " #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconhecido" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Frontal Esquerdo" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Frontal Direito" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frontal Central" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Traseiro Esquerdo" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Traseiro Direito" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Traseiro Central" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Frontal Esquerdo do Centro" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Frontal Direito do Centro" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Lateral Esquerdo" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Lateral Direito" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Frontal Superior Esquerdo" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Frontal Superior Direito" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Frontal Superior Central" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Frontal Central" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Trasiero Superior Esquerdo" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Traseiro Superior Direito" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Traseiro Superior Central" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estéreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/ky.po0000644000175000017500000002623514565521701013745 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # chingis, 2013 # chingis, 2013 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 15:40+0000\n" "Last-Translator: monsta \n" "Language-Team: Kyrgyz (http://wiki.ukui.org/trans/ky/)\n" "Language: ky\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Үн" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Үн көлөмүн жана үн окуяларын өзгөртүү" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Көлөм жөндөгүчү" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Иш столунун көлөм жөндөгүчүн көрсөтүү" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Бул тиркеменин версиясы" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE көлөм жөндөгүчү апплети" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Үй барагы" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE көлөм жөндөгүчү" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Кириш" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Чыгыш" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Микрофон көлөмү" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Үндүн чыгыш көлөмү" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — MATE көлөм жөндөгүчү апплети" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Сол" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Оң" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Арткы" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Алдыңкы" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Төмөнкү чеги" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Жогорку чеги" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Балансы:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Ө_чүүсү:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Сабвуфери:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Күчтүү эмес" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Үнүн өчүрүү" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Профили:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Өчүрүлгөн" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u чыгыш" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u кириш" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Аты" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Динамиктерди текшерүү" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Үн эффектилери" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Кабарландыруу көлөмү: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Чыгыш көлөмү: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Жабдуулар" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Ырастаганга түзүлүштү _тандаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Тандалган түзүлүштүн ырастоолору:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Кириш көлөмү: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Кириш деңгээли:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Үн киришинин түзүлүшүн _тандаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Үн чыгышынын түзүлүшүн _тандаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Тиркемелер" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Учурда, аудиону ойнотуп же жаздырып жаткан тиркеме жок." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Үн ырастоолору" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Үндөрсүз" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Башка" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Жарыяланбас" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Темадан" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Түрү" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Үн _темасы:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Кабарландыруу үнүн _тандоо:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Терезе жана кнопка үндөрүн аракетке келтирүү" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Токтотуу" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Текшерүү" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Үн ырастоолорун жүргүзүү мүмкүн эмес: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Үнүн ө_чүрүү" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Ү_н ырастоолору" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ka.po0000644000175000017500000002327714565521701013720 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alexander Didebulidze , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Georgian (http://wiki.ukui.org/trans/ka/)\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ხმის კონტროლი" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ხმის კონტროლი" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ხმის კონტროლი" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ხმის კონტროლი" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "სტოპ" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ta.po0000644000175000017500000003136214565521701013723 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Dinesh Nadarajah , 2003 # Dr,T,Vasudevan , 2010 # Dr.T.Vasudevan , 2007, 2009 # Felix , 2006 # I. Felix , 2008, 2009 # Jayaradha N , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Tamil (http://wiki.ukui.org/trans/ta/)\n" "Language: ta\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ஒலியளவு" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ஒலியளவு மற்றும் ஒலி நிகழ்வுகளை மாற்று" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ஒலிவளவு கட்டுப்பாடு" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "பணிமேடை ஒலியளவு கட்டுப்பாட்டை காட்டு" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "இந்த பயன்பாட்டின் பதிப்பு" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ஒலிவளவு கட்டுப்பாடு" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ஒலி அமைப்பு பதிலளிக்க காத்திருக்கிறது" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "துவக்க பக்கம்" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ஒலிவளவு கட்டுப்பாடு" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "உள்ளீடு" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "வெளிப்பாடு" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ஒலிவளவு கட்டுப்பாடு" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "இடது" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "வலது" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "பின்" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "முன்" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "குறைந்த பட்சம்" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "அதிக பட்சம்" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "மீதி (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_F மெதுவாக அழி:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_S சப் வூஃபர்" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "செறிவூட்டாத" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "அமைதியாக்கு" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "விவரக்குறிப்பு: (_P)" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "இணைப்பி: (_n)" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "செயல்நீக்கப்பட்டது" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u வெளிப்பாடு" msgstr[1] "%u வெளிப்பாடுகள்" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u உள்ளீடுகள்" msgstr[1] "%u உள்ளீடுகள்" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "பெயர்" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ஒலி விளைவுகள்" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "விழிப்பூட்டும் ஒலியளவு: (_A)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "வெளியேறும் ஒலியளவு: (_O)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "வன் பொருட்கள்" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "கட்டமைப்புக்கு ஒரு சாதனத்தை தேர்ந்தெடு: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "தேர்ந்தெடுக்கப்பட்ட சாதனத்தின் அமைப்புகள்:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "உள்ளீடு ஒலியளவு: (_I)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "உள்ளீடு நிலை:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ஒலி உள்ளீட்டிற்கு ஒரு சாதனத்தை தேர்ந்தெடு: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ஒலி வெளிப்பாடு சாதனத்தை தேர்ந்தெடு: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "விண்ணப்பங்கள்" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ஆடியோவை ஒரு பயன்பாடும் தற்போது இயக்கவில்லை அல்லது பதிவு செய்யவில்லை" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ஒலியளவு முன்னுரிமைகள்" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ஒலியளவு இல்லை" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "உட்பொதியப்பட்டது" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "வழக்கம்" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ஒலி நிகழ்வை சோதிக்கிறது" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "முன்னிருப்பு" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "தீமிலிருந்து" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "வகை" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ஒலித் தீம்: (_t)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ஒரு விழிப்பூட்டும் ஒலியை தேர்ந்தெடு: (_h)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "சாளரம் மற்றும் பொத்தான் ஒலிகளை செயல்படுத்து ( _w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ஒலியளவு கட்டுப்பாடு முன்னுரிமைகளில் தோல்வி : %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "அமைதியாக்கு(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ஒலியளவு முன்னுரிமைகள்(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/fr_CA.po0000644000175000017500000002323414565521701014270 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ir0nsh007er , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-22 02:12+0000\n" "Last-Translator: monsta \n" "Language-Team: French (Canada) (http://wiki.ukui.org/trans/fr_CA/)\n" "Language: fr_CA\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Contrôle du Volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Contrôle du Volume" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Contrôle du Volume" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Contrôle du Volume" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nom" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Défaut" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/tk.po0000644000175000017500000002321014565521701013726 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Gurban Mühemmet Tewekgeli , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Turkmen (http://wiki.ukui.org/trans/tk/)\n" "Language: tk\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Hejim Kontroli" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Hejim Kontroli" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Hejim Kontroli" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Hejim Kontroli" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Şahsy" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Dur" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/nds.po0000644000175000017500000002426314565521701014105 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Nils-Christoph Fiedler , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Low German (http://wiki.ukui.org/trans/nds/)\n" "Language: nds\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Ton" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Luutstärkenoppasser" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Schrievdisk" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Verschoon vun düssem Programm" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Luutstärkenoppasser" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Startsiet" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Luutstärkenoppasser" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ingang" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Utgang" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Luutstärkenoppasser" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Links" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Rechts" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Achtern" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Vorn" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fade:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Still" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Togang:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Verbi_nner:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Deaktivert" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Utgav" msgstr[1] "%u Utgaven" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Ingav" msgstr[1] "%u Ingaven" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Naam" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Toneffekte" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Alarmluutstärke:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Utgavluutstärke:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Lööpwark wählen, dat _instellt werrn chall:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Instellen för dat utwählte Lööpwark:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Ingangluutstärke:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ingavlevel:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programme" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Toninstellens" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Keene Töne" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Anpasst" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ereegniston utproberen" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standard" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Ut Thema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Typ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Ton_thema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Alarmton _wählen:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Finster- un Knopptöne aktiveren" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Still" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Toninstellens" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/zh_TW.po0000644000175000017500000002570014565521701014351 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Chao-Hsiung Liao , 2008 # Fernando , 1999 # Jeff Huang , 2014-2015,2017 # 趙惟倫 , 2012 # Jeff Huang , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Jeff Huang \n" "Language-Team: Chinese (Taiwan) (http://wiki.ukui.org/trans/zh_TW/)\n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "聲音" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "改變音效的音量和音效事件" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "音量控制" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "顯示桌面音量控制" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "這個程式的版本" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "啟用除錯" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE 音量控制面板程式" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "聲音系統不可用" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "正在等候音效系統回應" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "聲音系統後端" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "啟始頁面" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE 音量控制" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "輸入" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "輸出" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "麥克風音量" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "音效輸出音量" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE 音量控制面板程式" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "左" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "右" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "後" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "前" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "最小值" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "最大值" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "平衡(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "淡化(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "重低音(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "未經放大" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "靜音" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "設定檔(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "連接器(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "已停用" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u 輸出" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u 輸入" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "名稱" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s 的喇叭測試" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "測試喇叭" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "聲音效果" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "警示音量(_A):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "輸出音量(_O):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "硬體" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "選擇要設定的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "已選取裝置的設定值:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "輸入音量(_I):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "輸入等級:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "選擇聲音輸入的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "選擇聲音輸出的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "應用程式" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "沒有應用程式目前正在播放或錄製音效。" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "音效偏好設定" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "不使用音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "內建" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "自訂" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "測試事件音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "預設值" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "從主題" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "類型" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "音效主題(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "選擇警示音效(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "啟用視窗與按鈕音效(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "停止" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "測試" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "啟動音效偏好設定失敗:%s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "靜音(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "音效偏好設定(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "靜音" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "未知的" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "單聲道" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "左前" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "右前" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "前中" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "左後" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "右後" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "中後" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "中央左前" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "中央右前" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "左邊" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "右邊" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "前方左上" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "前方右上" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "前方中上" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "上中" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "後方左上" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "後方右上" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "後方中上" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "立體聲" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "環繞 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "環繞 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "環繞 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "環繞 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "環繞 7.1" ukui-media-3.1.1.2/po/sr@latin.po0000644000175000017500000002544114565521701015074 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007 # Miloš Popović , 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Serbian (Latin) (http://wiki.ukui.org/trans/sr%40latin/)\n" "Language: sr@latin\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvuk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Menja jačinu zvuka i dodeljuje zvuke događajima" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Upravljanje zvukom" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Prikaži kontrolu jačine zvuka" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Izdanje programa" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Gnomovo programče upravljanje zvukom" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Čekam na odgovor zvučnog sistema" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Početna stranica" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Gnomovo upravljanje zvukom" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ulaz" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Izlaz" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Jačina mikrofona" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Jačina izlaznog zvuka" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — Gnomovo programče upravljanje zvukom" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Levi" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Desni" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Zadnji" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Prednji" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Majtiše" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Najglasnije" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Odnos:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Izbledi:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subvufer" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Bez pojačavanja" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Utišaj" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Konektor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Onemogućeno" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Naziv" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Proba zvučnika %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Proba zvučnika" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Zvučni efekti" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Jačina zvuka za _upozorenja: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Jačina _zvuka na izlazu: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Zvučne kartice" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Izaberite uređaj _radi podešavanja:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Podešavanja za izabrani uređaj:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Jačina z_vuka na ulazu: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ulazni nivo:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Izaberite uređaj kao zvučni ulaz:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Izaberite uređaj kao zvučni izlaz:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programi" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ni jedan program ne pušta ili snima zvuk." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Postavke zvuka" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Bez zvuka" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ugrađeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Prilagođeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Provera zvuka za događaj" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Uobičajno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Iz teme" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Vrsta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema za zvuk:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "I_zaberite zvuk za upozorenje:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Omo_gući zvuke za prozore i dugmiće" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zaustavi" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Proba" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Ne mogu da pokrenem zvučne postavke: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Utišaj" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Podesi zvuk" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/mr.po0000644000175000017500000003052014565521701013730 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Rahul Bhalerao , 2006 # Sandeep Shedmake , 2008, 2009 # sandeeps , 2009, 2010 # Vaibhav S Dalvi , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Marathi (http://wiki.ukui.org/trans/mr/)\n" "Language: mr\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "आवाज" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "आवाज ध्वनिमान व आवाज घटना बदलवा" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ध्वनिमान नियंत्रण" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "डेस्कटॉप ध्वनिमान नियंत्रण दाखवा" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "या अनुप्रयोगची आवृत्ती" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— MATE ध्वनिमान नियंत्रण ॲप्लेट" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "आवाज प्रणालीच्या प्रतिसाद करीता प्रतिक्षा करत आहे" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "प्रारंभ पान" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— MATE ध्वनिमान नियंत्रण" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "इंपुट" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "आउटपुट" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "ध्वनीविस्तारक पातळी" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "ध्वनी पातळी" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "— MATE ध्वनिमान नियंत्रण ॲप्लेट" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "डावा" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "उजवा" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "पाठीमागचे" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "समारचे" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "किमान" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "कमाल" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "समतोल (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "फुसट (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "सबवूफर (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "विनऍप्लिफाइड्" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "मंद" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "प्रोफाइल (_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "कनेक्टर (_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "अकार्यान्वीत" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u आऊटपुट" msgstr[1] "%u आऊटपुटस्" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u इंपुट" msgstr[1] "%u इंपुटस्" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "नाव" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s साठी ध्वनिक्षेपक तपासणी" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "चाचणी ध्वनिक्षेपक" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "आवाज प्रभाव" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "सतर्कता ध्वनिमान (_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "आउटपुट ध्वनिमान (_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "हार्डवेअर" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "संरचना करीता उपकरन नीवडा (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "निवडलेल्या साधन करीता संयोजना:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "इंपुट ध्वनिमान (_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "इंपुट स्तर:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "आवाज इंपुट करीता उपकरन नीवडा (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "आवाज आउटपुट करीता उपकरन निवडा (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "अनुप्रयोग" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "अनुप्रयोग वर्तमानक्षणी ऑडिओ चालवत किंवा रेकॉर्ड करत आहे." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "आवाज आवड निवड" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "आवाज नाही" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "अंतर्भूतीत" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "स्वपसंत" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "घटना आवाजची चाचणी करत आहे" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "पूर्वनिर्धारीत" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "दृष्य कल्पना पासून" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "प्रकार" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "आवाज योजना (_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "सतर्कता आवाज नीवडा (_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "पटल व बटन आवाज कार्यक्षम करा (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "बंद" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "चाचणी" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "आवाज आवड निवड सुरू करण्यास अपयशी: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "मंद करा (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "आवाज आवड निवड (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/jv.po0000644000175000017500000002325514565521701013740 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ngalim Siregar , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-22 02:12+0000\n" "Last-Translator: monsta \n" "Language-Team: Javanese (http://wiki.ukui.org/trans/jv/)\n" "Language: jv\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Swara" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Ngowahi volume swara lan prastawa swara" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Kontrol Volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Kontrol Volume" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Kontrol Volume" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Kontrol Volume" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "dingerteni" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/it.po0000644000175000017500000002700414565521701013731 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alessio Frusciante , 2004 # Giuseppe Pignataro (Fasbyte01) , 2017 # Giuseppe Pignataro (Fasbyte01) , 2015-2016 # Marco Bartolucci , 2016 # Milo Casagrande , 2009, 2010 # Salvatore Isaja , 2004, 2005 # Stefano Karapetsas , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Giuseppe Pignataro (Fasbyte01) \n" "Language-Team: Italian (http://wiki.ukui.org/trans/it/)\n" "Language: it\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Audio" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Regola il volume dei suoni e i suoni associati agli eventi" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Regolazione volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Mostra la regolazione del volume" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versione dell'applicazione" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Abilita debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Applet Regolazione volume" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistema sonoro non disponibile" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Attesa una risposta dal sistema audio" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Backend sistema sonoro" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pagina di avvio" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Regolazione volume" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ingresso" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Uscita" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume microfono" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume di uscita" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Applet Regolazione volume di MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Sinistra" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Destra" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Retro" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Fronte" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimo" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Massimo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Bilanciamento:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Dissolvenza:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "Sub_woofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Non amplificato" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Muto" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profilo:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnettore:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Disabilitato" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u uscita" msgstr[1] "%u uscite" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ingresso" msgstr[1] "%u ingressi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nome" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Test altoparlanti per %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Test altoparlanti" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Effetti sonori" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume di _avviso: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "V_olume di uscita: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Scegliere un dispositivo da configurare:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Impostazioni per il dispositivo selezionato:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume d'_ingresso: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Livello d'ingresso:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Scegliere un dispositivo per l'ingresso audio:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Scegliere un dispositivo per l'uscita audio:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Applicazioni" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Nessuna applicazione sta riproducendo dell'audio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferenze dell'audio" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Nessun suono" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integrato" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizzato" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Test evento sonoro" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predefinito" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Dal tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema sonoro:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Scegliere un suono di avviso:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "A_bilitare i suoni di finestre e pulsanti" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Ferma" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Avvio di «Preferenze dell'audio» non riuscito: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Escludere audio" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Preferenze audio" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Silenziato a" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Sconosciuto" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Anteriore sinistro" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Anteriore desto" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frontale centrale" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Posteriore sinistro" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Posteriore destro" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Posteriore centrale" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Anteriore sinistro del centro" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Anteriore destro del centro" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "lato sinistro" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Lato destro" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Alto Frontale Sinistra" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Alto Frontale Destra" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Alto Frontale Centrale" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Alto Centrale" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Alto Posteriore Sinistro" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Alto Posteriore Destro" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Alto Posteriore Centrale" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/cs.po0000644000175000017500000002757114565521701013733 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # huskyviking , 2014 # huskyviking , 2014 # Lukas Novotny , 2006 # Martin Kříž , 2016 # Michal Bukovjan , 2002 # Miloslav Trmač , 2003, 2004, 2005, 2006 # Miloslav Trmač , 2003-2006 # Petr Kovar , 2007, 2008, 2009, 2010 # Petr Kovar , 2007-2010 # Petr Tomeš , 2006 # Stanislav Brabec , 2000-2001 # Stanislav Kučera , 2015 # Stanislav Kučera , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: ToMáš Marný\n" "Language-Team: Czech (http://wiki.ukui.org/trans/cs/)\n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvuk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Změní hlasitost zvuku a přiřadí zvuky k událostem" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ovládání hlasitosti" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Zobrazí ovládání hlasitosti pracovního prostředí" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Verze této aplikace" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Zapnout ladění" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " – applet ovládání hlasitosti MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Zvukový systém není dostupný" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Čekání na odpověď zvukového systému" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Backend zvukového systému" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Spouštěcí stránka" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " – ovládání hlasitosti MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Vstup" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Výstup" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Hlasitost mikrofonu" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Výstupní hlasitost zvuku" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Zvukový řídící applet MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Levý" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Pravý" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Zadní" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Přední" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Vyvážení:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Prolínání:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nezesílené" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Ztlumit" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ko_nektor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Zakázáno" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u výstup" msgstr[1] "%u výstupy" msgstr[2] "%u výstupů" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u vstup" msgstr[1] "%u vstupy" msgstr[2] "%u vstupů" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Název" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Testování reproduktorů %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Otestovat reproduktory" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Zvukové efekty" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Hl_asitost upozornění: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Výstupní hlasitost: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Zařízení nastavíte je_ho vybráním:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Nastavení vybraného zařízení:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Vstupní hlas_itost: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Vstupní úroveň:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "V_yberte zařízení zvukového vstupu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "V_yberte zařízení zvukového výstupu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplikace" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Žádná aplikace aktuálně nepřehrává nebo nezaznamenává zvuk." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Předvolby zvuku" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Bez zvuků" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Zabudované" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Vlastní" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testují se zvuky událostí" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Výchozí" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Z motivu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Typ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Mo_tiv zvuku:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "V_yberte zvuk upozornění:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "P_ovolit zvuky oken a tlačítek" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zastavit" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Otestovat" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Nezdařilo se spustit předvolby zvuku: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Z_tlumit" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Př_edvolby zvuku" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Ztlumeno při" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Neznámý" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "přední levý" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "pravý přední" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "přední střední" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE, subwoofer" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "zadní levý" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "zadní pravý" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "zadní střední" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "přední levý nebo prostřední" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "přední pravý nebo prostřední" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Postranní levý" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Postranní pravý" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Hlavní přední vlevo" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Hlavní přední vpravo" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Hlavní přední uprostřed" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Hlavní střed" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Hlavní zadní vlevo" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Hlavní zadní vpravo" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Hlavní zadní uprostřed" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/pt.po0000644000175000017500000002652214565521701013744 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Carlos Moreira, 2014,2017 # José Vieira , 2017 # Manuela Silva , 2016-2017 # Sérgio Marques , 2012 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:12+0000\n" "Last-Translator: José Vieira \n" "Language-Team: Portuguese (http://wiki.ukui.org/trans/pt/)\n" "Language: pt\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Som" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Alterar volume do sistema e sons de eventos" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Controlo de volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Mostrar controlo de volume no ambiente de trabalho" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versão desta aplicação" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Ativar depuração" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Applet do controlo de volume MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistema de som não disponível" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "À espera da resposta do sistema de som" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Motor do sistema de som" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Página inicial" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Controlo de volume MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Saída" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume do microfone" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume da saída de som" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Applet do controlo de volume MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquerda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Direita" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Atrás" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frente" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínimo" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanço:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Desvanecimento:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sem amplificação" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Silenciar" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_netor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Inativo" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u saída" msgstr[1] "%u saídas" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entradas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nome" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Teste de altifalante para %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testar altifalantes" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efeitos sonoros" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume do _alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "V_olume de saída: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Equipamento" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Escol_ha o dispositivo a configurar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Definições do dispositivo escolhido:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume de _entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nível de entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Escol_ha um dispositivo para a entrada de som:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Escol_ha um dispositivo para a saída de som:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicações" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Neste momento, não há aplicações a reproduzir ou gravar áudio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferências de som" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sem sons" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Incorporado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "A testar som do evento" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Pré-definido" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Do tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de sons:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Escol_ha um som de alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Ativar sons de janela_s e botões" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Parar" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testar" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Failed to start Sound Preferences: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Silenciar" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferências de _som" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Silenciado em" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconhecido" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Frente à Esquerda" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Frente à Direita" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frente ao Centro" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Atrás à Esquerda" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Atrás à Direita" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Atrás ao Centro" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Frente esquerda do centro" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Frente direita do centro" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Lado Esquerdo" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Lado Direito" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Frente à esquerda superior" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Frente à direita superior" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Frente ao centro superior" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Topo ao Centro " #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Atrás à esquerda superior" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Atrás à direita superior" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Atrás ao centro superior" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estéreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/am.po0000644000175000017500000003012314565521701013706 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ge'ez Frontier Foundation , 2002 # samson , 2013,2015,2017 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Amharic (http://wiki.ukui.org/trans/am/)\n" "Language: am\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ድምፅ " #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "የድምፅ መጠን እና የድምፅ ሁኔታዎችን መቀየሪያ" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "መጠን መቆጣጠሪያ " #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "የዴስክቶፕ መጠን መቆጣጠሪያ ማሳያ " #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "የመተግበሪያው እትም " #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "debug ማስቻያ" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — የሜት ድምፅ መቆጣጠሪያ ክፍል" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "የ ድምፅ ስርአት ዝግጁ አይደለም" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "የድምፅ ስርአት እስኪመልስ በመጠበቅ ላይ" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "የ ድምፅ ስርአት ተተኪ ተፈጥሯል" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "ገጹን በማስጀመር ላይ" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — የሜት ድምፅ መቆጣጠሪያ ክፍል" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ማስገቢያ " #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ውጤት " #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "የማይክሮን መጠን " #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "የድምፅ ውጤት መጠን " #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " የ ሜት ድምፅ መቆጣጠሪያ ክፍል" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "የ ግራ " #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "የ ቀኝ " #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "የ ኋላ " #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "የ ፊት " #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "አነስተኛ " #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "ከፍተኛ " #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_እኩል:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_ማፍዘዣ:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_ሰብዉፈር:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "ያልጎላ" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "መቀነሻ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_ገጽታ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "አገ_ናኝ:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "ተሰናክሏል" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ውጤት " msgstr[1] "%u ውጤቶች " #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ማስገቢያ " msgstr[1] "%u ማስገቢያዎች " #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ስም " #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "ስፒከር በመሞከር ላይ ለ %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "ስፒከር መሞከሪያ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "የድምፅ ተጽእኖ " #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_የማስጠንቀቂያ መጠን: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_የ ውጤት መጠን: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ጠንካራ አካል " #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "አካል ይ_ምረጡ ለማዋቀር:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ለተመረጠው አካል ማሰናጃ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_የማስገቢያ መጠን: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "የማስገቢያ መጠን:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ለ ድምጽ ማስገቢያ አካል ይ_ምረጡ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ለ ድምጽ ማውጫ አካል ይ_ምረጡ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "መተግበሪያዎች " #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ምንም መተገበሪያ አይጫወትም ወይንም ድምጽ አይቀርጽም" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "የድምፅ ምርጫዎች " #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ድምፅ የለም" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "አብሮ-የተገነባ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ማስተካከያ:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "የ ሁኔታዎች ድምፅ መሞከሪያ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ነባር " #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "ከ ገጽታ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "አይነት" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "የ ድምፅ _ገጽታ:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "የ ማስጠንቀቂያ ድምጽ ይ_ምረጡ:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "የ _መስኮት እና ቁልፎች ድምጽ ማስቻያ" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "ማስቆሚያ" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "መሞከሪያ" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "የ ድምጽ ምርጫዎችን ማስጀመር አልተቻለም: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_መቀነሻ " #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_የ ድምፅ ምርጫዎች" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "ያልታወቀ" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "ሞኖ" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "በ ግራ " #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "በ ቀኝ " #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "ፊት ለፊት መሀከል " #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "ዝቅተኛ ድግግሞሽ" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "ከኋላ በ ግራ " #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "ከኋላ በ ቀኝ" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "ከኋላ መሀከል" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "ፊት ለፊት በ ግራ መሀከል " #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "ፊት ለፊት በ ቀኝ መሀከል " #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "በ ግራ ጎን " #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "በ ቀኝ ጎን" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "ከ ላይ ፊት ለፊት በ ግራ " #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "ከ ላይ ፊት ለፊት በ ቀኝ" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "ከ ላይ ፊት ለፊት መሀከል" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "ከ ላይ መሀከል " #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "ከ ላይ ከኋላ በ ግራ " #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "ከ ላይ ከኋላ በ ቀኝ " #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "ከ ላይ ከኋላ መሀከል" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "ስቴሪዮ" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "ዙሪያ 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "ዙሪያ 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "ዙሪያ 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "ዙሪያ 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "ዙሪያ 7.1" ukui-media-3.1.1.2/po/dz.po0000644000175000017500000002340014565521701013726 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Dzongkha (http://wiki.ukui.org/trans/dz/)\n" "Language: dz\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "སྐད་ཤུགས་ཚད་འཛིན།" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "སྐད་ཤུགས་ཚད་འཛིན།" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "སྐད་ཤུགས་ཚད་འཛིན།" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "སྐད་ཤུགས་ཚད་འཛིན།" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "སྲོལ་སྒྲིག" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "སྔོན་སྒྲིག་" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "བཀག" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/en_GB.po0000644000175000017500000002610614565521701014271 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Bruce Cowan , 2009, 2010 # Bruce Cowan , 2010 # Gareth Owen , David Lodge , 2004 # Martin Wimpress , 2014-2015 # Robert Brady , 1999 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: monsta \n" "Language-Team: English (United Kingdom) (http://wiki.ukui.org/trans/en_GB/)\n" "Language: en_GB\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sound" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Change sound volume and sound events" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volume Control" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Show desktop volume control" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version of this application" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Enable debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Volume Control Applet" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sound system is not available" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Waiting for sound system to respond" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Sound system backend" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Startup page" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Volume Control" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Input" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Output" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Microphone Volume" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Sound Output Volume" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Volume Control Applet" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Left" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Right" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Rear" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Front" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fade:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Unamplified" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mute" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profile:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Disabled" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Output" msgstr[1] "%u Outputs" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Input" msgstr[1] "%u Inputs" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Name" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Speaker Testing for %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Test Speakers" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Sound Effects" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Alert volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Output volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "C_hoose a device to configure:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Settings for the selected device:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Input volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Input level:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "C_hoose a device for sound input:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "C_hoose a device for sound output:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Applications" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "No application is currently playing or recording audio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Sound Preferences" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "No sounds" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Built-in" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Custom" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testing event sound" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Default" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "From theme" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Sound _theme:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "C_hoose an alert sound:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Enable _window and button sounds" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Failed to start Sound Preferences: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mute" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Sound Preferences" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Unknown" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Front Left" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Front Right" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Front Centre" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Rear Left" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Rear Right" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Rear Centre" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Front Left of Centre" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Front Right of Centre" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Side Left" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Side Right" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Top Front Left" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Top Front Right" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Top Front Centre" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Top Centre" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Top Rear Left" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Top Rear Right" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Top Rear Centre" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/hr.po0000644000175000017500000002655614565521701013741 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ivan Branimir Skoric , 2016 # Ivica Kolić , 2013 # Elvis M. Lukšić , 2016 # Tomislav Krznar , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Croatian (http://wiki.ukui.org/trans/hr/)\n" "Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvuk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Promijeni glasnoću zvuka i zvučne događaje" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Nadzor glasnoće" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Prikaži nadzor glasnoće na radnoj površini" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Inačica ove aplikacije" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Omogući otkrivanje pogrešaka" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— MATE programčić za nadzor glasnoće" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Zvučni sustav nije dostupan" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Čekanje na odziv zvučnoga sustava" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Pozadinski zvučni sustav" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Početna stranica" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE nadzor glasnoće" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ulaz" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Izlaz" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Glasnoća mikrofona" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Glasnoća izlaznog zvuka" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE programčić za nadzor glasnoće" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Lijevo" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Desno" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Straga" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Sprijeda" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Najniže" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Najviše" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Ravnoteža:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Snižavanje:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Niskofrekventni zvučnik:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nepojačano" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Bez zvuka" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Sp_ojnik:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Onemogućeno" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u izlaz" msgstr[1] "%u izlaza" msgstr[2] "%u izlaza" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ulaz" msgstr[1] "%u ulaza" msgstr[2] "%u ulaza" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Ime" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Provjera zvučnika za %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Provjeri zvučnike" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Zvučni učinci" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Glasnoća upozorenja: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Glasnoća izlaza:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardver" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "O_daberi uređaj za prilagodbu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Postavke za odabrani uređaj:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Ulazna glasnoća:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ulazna razina:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "O_daberi uređaj za ulaz zvuka:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "O_daberi uređaj za izlaz zvuka:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplikacije" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Nijedna aplikacija trenutno ne izvodi niti snima zvuk." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Zvučne prilagodbe" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Bez zvukova" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ugrađeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Prilagođeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Provjera zvuka događaja" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Zadano" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Iz teme" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Vrsta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Zvučna _tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "O_daberi zvuk upozorenja:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Omogući _zvukove prozora i gumba" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zaustavi" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Provjeri" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Nije uspjelo pokretanje zvučnih prilagodbi: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Bez zvuka" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Zvučne prilagodbe" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Nepoznato" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Sprijeda lijevo" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Sprijeda desno" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Sprijeda po sredini" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Niskofrekventno" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Straga lijevo" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Straga desno" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Straga po sredini" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Sprijeda lijevo od sredine" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Sprijeda desno od sredine" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Bočno lijevo" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Bočno desno" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Gore sprijeda lijevo" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Gore sprijeda desno" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Gore sprijeda po sredini" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Gore po sredini" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Gore straga lijevo" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Gore straga desno" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Gore straga po sredini" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/or.po0000644000175000017500000003044714565521701013742 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Gora Mohanty , 2004, 2006 # Manoj Kumar Giri , 2009, 2010 # Parashar Nayak , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Oriya (http://wiki.ukui.org/trans/or/)\n" "Language: or\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ଶବ୍ଦ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ଧ୍ୱନି ପ୍ରବଳତା ଏବଂ ଧ୍ୱନି ଘଟଣାଗୁଡ଼ିକ ପରିବର୍ତ୍ତନ କରନ୍ତୁ" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ଡେସ୍କଟପ ଶବ୍ଦ ନିୟନ୍ତ୍ରଣ ଦର୍ଶାନ୍ତୁ" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "ଏହି ପ୍ରୟୋଗର ସଂସ୍କରଣ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ଧ୍ୱନି ତନ୍ତ୍ରର ଉତ୍ତରକୁ ଅପେକ୍ଷା କରିଛି" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "ଆରମ୍ଭ ପୃଷ୍ଠା" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ନିବେଶ" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ନିର୍ଗମ" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ବାମ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ଡାହାଣ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "ଆଗ" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "ଆଗ" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ସର୍ବନିମ୍ନ " #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "ସର୍ବାଧିକ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ସମତୁଲ (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ଲିଭିବା (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ଉପ ଉଫର (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "ଅପରିବର୍ଦ୍ଧିତ" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "୧୦୦%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ନିଶବ୍ଦ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "ରୂପରେଖ (_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "ସଂଯୋଜକ (_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "ନିଷ୍କ୍ରିୟ ହୋଇଗଲା" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ନିର୍ଗମ" msgstr[1] "%u ନିର୍ଗମ" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ନିବେଶ" msgstr[1] "%u ନିବେଶ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ନାମ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ଧ୍ୱନି ପ୍ରଭାବ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "ସତର୍କ ସୂଚନା ଧ୍ୱନୀ ପ୍ରବଳତା (_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "ନିର୍ଗମ ଧ୍ୱନି ତିବ୍ରତା (_O):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ହାର୍ଡ଼ୱେର" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ବିନ୍ୟାସ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ବଚ୍ଛିତ ଉପକରଣ ପାଇଁ ବିନ୍ୟାସ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ନିବେଶ ଧ୍ୱନୀ ପ୍ରବଳତା (_I):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ନିବେଶ ସ୍ତର:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ଧ୍ୱନି ନିବେଶ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ଧ୍ୱନି ନିର୍ଗମ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "ପ୍ରୟୋଗ" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ବର୍ତ୍ତମାନ କୌଣସି ପ୍ରୟୋଗ ଧ୍ୱନିକୁ ଚଲାଉନାହିଁ କିମ୍ବା ଅନୁଲିପି କରୁନାହିଁ।" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ଧ୍ୱନି ପସନ୍ଦ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ଶବ୍ଦ ନାହିଁ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ସୁନିର୍ମିତ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ଇଚ୍ଛାରୂପଣ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ଘଟଣା ଧ୍ୱନି ପରୀକ୍ଷା କରୁଅଛି" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ପୂର୍ବ ନିର୍ଦ୍ଧାରିତ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "ପ୍ରସଙ୍ଗରୁ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ପ୍ରକାର" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ଧ୍ୱନି ପ୍ରସଙ୍ଗ (_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ଗୋଟିଏ ସତର୍କ ଧ୍ୱନି ବାଛନ୍ତୁ (_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "ୱିଣ୍ଡୋ ଏବଂ ବଟନ ଧ୍ୱନିକୁ ସକ୍ରିୟ କରନ୍ତୁ (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ ପସନ୍ଦ ଆରମ୍ଭ କରିବାରେ ବିଫଳ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ମୂକ କରନ୍ତୁ (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ଧ୍ୱନୀ ପସନ୍ଦ (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/cmn.po0000644000175000017500000002511014565521701014066 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Chao-Hsiung Liao , 2008 # Fernando , 1999 # 趙惟倫 , 2012-2013 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 17:25+0000\n" "Last-Translator: monsta \n" "Language-Team: Chinese (Mandarin) (http://wiki.ukui.org/trans/cmn/)\n" "Language: cmn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "聲音" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "改變音效的音量和音效事件" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "音量控制" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "顯示桌面音量控制" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "這個程式的版本" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE 音量控制面板程式" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "正在等候音效系統回應" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "啟始頁面" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE 音量控制" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "輸入" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "輸出" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "麥克風音量" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "音效輸出音量" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — MATE 音量控制面板程式" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "左" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "右" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "後" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "前" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "最小值" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "最大值" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "平衡(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "淡化(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "重低音(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "未經放大" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "靜音" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "側寫檔(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "連接器(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "已停用" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u 輸出" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u 輸入" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "名稱" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s 的喇叭測試" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "測試喇叭" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "聲音效果" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "警示音量(_A):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "輸出音量(_O):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "硬體" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "選擇要設定的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "已選取裝置的設定值:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "輸入音量(_I):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "輸入等級:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "選擇聲音輸入的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "選擇聲音輸出的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "應用程式" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "沒有應用程式目前正在播放或錄製音效。" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "音效偏好設定" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "不使用音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "內建" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "自訂" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "測試事件音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "預設值" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "從主題" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "類型" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "音效主題(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "選擇警示音效(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "啟用視窗與按鈕音效(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "停止" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "測試" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "啟動音效偏好設定失敗:%s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "靜音(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "音效偏好設定(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/en_AU.po0000644000175000017500000002560214565521701014306 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Michael Findlay , 2012,2014-2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:36+0000\n" "Last-Translator: monsta \n" "Language-Team: English (Australia) (http://wiki.ukui.org/trans/en_AU/)\n" "Language: en_AU\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sound" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Change sound volume and sound events" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volume Control" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Show desktop volume control" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version of this application" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Enable debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Volume Control Applet" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sound system is not available" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Waiting for sound system to respond" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Sound system backend" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Startup page" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Volume Control" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Input" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Output" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Microphone Volume" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Sound Output Volume" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Volume Control Applet" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Left" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Right" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Rear" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Front" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fade:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Unamplified" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mute" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profile:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Disabled" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Output" msgstr[1] "%u Outputs" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Input" msgstr[1] "%u Inputs" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Name" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Speaker Testing for %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Test Speakers" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Sound Effects" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Alert volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Output volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "C_hoose a device to configure:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Settings for the selected device:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Input volume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Input level:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "C_hoose a device for sound input:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "C_hoose a device for sound output:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Applications" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "No application is currently playing or recording audio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Sound Preferences" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "No sounds" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Built-in" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Custom" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testing event sound" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Default" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "From theme" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Sound _theme:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "C_hoose an alert sound:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Enable _window and button sounds" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Failed to start Sound Preferences: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mute" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Sound Preferences" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Unknown" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Front Left" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Front Right" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Front Centre" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Rear Left" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Rear Right" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Rear Centre" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Front Left of Centre" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Front Right of Centre" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Side Left" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Side Right" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Top Front Left" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Top Front Right" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Top Front Centre" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Top Centre" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Top Rear Left" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Top Rear Right" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Top Rear Centre" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/hu.po0000644000175000017500000002702314565521701013732 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Andras Timar , 2001-2003 # Emese Kovacs , 2002 # Falu.Me, 2015 # Falu , 2015 # Gabor Kelemen , 2004-2010 # Gergely Nagy , 2001 # KAMI KAMI , 2015 # Laszlo Dvornik , 2004 # Mate ORY , 2006 # Miklos Szel , 2000 # Rezső Páder , 2014,2017 # Szabolcs Ban , 1999-2000 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Rezső Páder \n" "Language-Team: Hungarian (http://wiki.ukui.org/trans/hu/)\n" "Language: hu\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Hang" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Hangerő és hangesemények módosítása" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Hangerőszabályzó" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Hangerőszabályzó megjelenítése" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Ezen alkalmazás verziója" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Hibakeresés engedélyezése" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " – MATE hangerőszabályzó kisalkalmazás" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "A hangrendszer nem elérhető" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Várakozás a hangrendszer válaszára" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Hangrendszer háttér" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Indulóoldal" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " – MATE hangerőszabályzó" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Bemenet" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Kimenet" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofon hangereje" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Hangkimenet hangereje" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE hangerőszabályzó kisalkalmazás" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Bal" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Jobb" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Hátul" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Elöl" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Egyensúly:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Elhalás:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Mélysugárzó:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Erősítetlen" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Némítás" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Csatlakozó:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Tiltva" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u kimenet" msgstr[1] "%u kimenet" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u bemenet" msgstr[1] "%u bemenet" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Név" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Hangszóróteszt ehhez: %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Hangszórók tesztelése" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Hangeffektusok" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Riasztás hangereje: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Kimeneti hangerő: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardver" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Válassza ki a beállítandó eszközt:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Kiválasztott eszköz beállításai:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "B_emeneti hangerő: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Bemeneti szint:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Válasszon _hangbemeneti eszközt:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Válasszon ha_ngkimeneti eszközt:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Alkalmazások" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Jelenleg nincs hangot lejátszó vagy felvevő alkalmazás." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Hangbeállítások" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Nincsenek hangok" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Beépített" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Egyéni" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Eseményhang tesztelése" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Alapértelmezett" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Témából" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Típus" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Hang_téma:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Válasszon _riasztáshangot:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Ablak- és gombhangok engedélyezése" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Leállítás" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Teszt" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "A Hangbeállítások indítása meghiúsult: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Némítás" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Hangbeállítások" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Némítva itt:" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Ismeretlen" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Monó" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Bal első" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Jobb első" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Közép első" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Bal hátsó" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Jobb hátsó" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Közép hátső" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Első közép-bal" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Első közép-jobb" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Bal szélső" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Jobb szélső" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Elöl balra fent" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Elöl jobbra fent" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Elöl középen fent" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Felső közép" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Hátul balra fent" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Hátul jobbra fent" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Hátul középen fent" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Sztereó" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/es.po0000644000175000017500000002733514565521701013733 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Adolfo Jayme Barrientos, 2014 # Andres Sanchez , 2014,2016 # Arcenio Cid , 2015 # ebray187 , 2016 # Emiliano Fascetti, 2014 # Francisco Javier F. Serrador , 2004, 2005, 2006 # Jesús Bravo Álvarez , 2000 # Jorge González , 2008, 2009, 2010 # Lucas Vieites Fariña , 2005, 2006, 2007 # Yelitza Louze , 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Spanish (http://wiki.ukui.org/trans/es/)\n" "Language: es\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sonido" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Cambiar el volumen y los eventos de sonido" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control de volumen" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Mostrar el control de volumen del escritorio" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versión de esta aplicación" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Activar depuración" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr ": Miniaplicación Control de volumen de MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistema de sonido no disponible" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Esperando a que el sistema de sonido responda" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Backend sistema de sonido" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Página de inicio" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr ": Control de volumen de MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Salida" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volumen del micrófono" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volumen de salida del sonido" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Miniaplicación Control de volumen de MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Izquierda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Derecha" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Trasero" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frontal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínimo" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Desvanecimiento:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sin amplificar" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Silenciar" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desactivado" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u salida" msgstr[1] "%u salidas" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entradas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nombre" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Prueba de altavoces para %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Probar los altavoces" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efectos de sonido" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volumen de _alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Volumen de sali_da: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Elegir un dispositivo para configurar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Ajustes para el dispositivo seleccionado:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volumen de _entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivel de entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Elegir un dispositivo para la entrada de sonido" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Elegir un dispositivo para la salida de sonido" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicaciones" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Actualmente ninguna aplicación está reproduciendo o grabando sonido." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferencias de sonido" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sin sonidos" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integrado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Probando sonido de evento" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predeterminado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Del tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de sonido:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Elegir un sonido de alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Activar sonidos de _ventanas y botones" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Parar" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Probar" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Falló al iniciar las Preferencias de sonido: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Silenciar" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Prefere_ncias de sonido" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconocido" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Frontal izquierda" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Frontal derecha" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frontal central" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Canal LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Posterior izquierda" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Posterior derecha" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Posterior central" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Frontal izquierdo del centro" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Frontal derecho del centro" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Lateral Izquierda" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Lateral Derecha" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Superior frontal izquierdo" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Superior frontal derecho" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Superior frontal central" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Superior Central" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Superior posterior izquierdo " #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Superior posterior derecho" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Superior posterior central" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estéreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/ar.po0000644000175000017500000003071714565521701013724 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Abdulaziz Al-Arfaj , 2004 # alibacha19 , 2015 # Anas Afif Emad , 2002-2003 # Djihed Afifi , 2006 # Isam Bayazidi , 2002 # Khaled Hosny , 2006-2010 # , 2003 # Mosaab Alzoubi , 2013 # Sayed Jaffer Al-Mosawi , 2002 # مهدي السطيفي , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: monsta \n" "Language-Team: Arabic (http://wiki.ukui.org/trans/ar/)\n" "Language: ar\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "الصوت" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "غيّر شدة الصوت و أصوات الأحداث" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "التحكم في حجم الصوت" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "اعرض التحكم في حجم الصوت" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "إصدار هذا التطبيق" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "فعّل التنقيح" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — بريمج متّة للتحكم في حجم الصوت" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "نظام الصوت غير متاح" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ينتظر استجابة نظام الصوت" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "نظام صوت الخلفية" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "صفحة البدء" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — تحكم متّة في شدة الصوت" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "الإدخال" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "الإخراج" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "شدة صوت الميكروفون" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "شدة صوت الخرْج" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE الصغير للتحكم في شدة الصوت" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "اليسار" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "اليمين" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "المؤخرة" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "المقدمة" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "أدنى" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "أقصى" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ال_توازن:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ال_تلاشي:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_مضخم الصوت:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "غير مكبّر" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "كتم" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "ال_طور:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "المو_صّل:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "معطّل" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u مخرج" msgstr[1] "مخرج (%u)" msgstr[2] "مخرجان (%u)" msgstr[3] "%u مخارج" msgstr[4] "%u مخرجا" msgstr[5] "%u مخرجا" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u مدخل" msgstr[1] "مدخل (%u)" msgstr[2] "مدخلان (%u)" msgstr[3] "%u مداخل" msgstr[4] "%u مدخلا" msgstr[5] "%u مدخلا" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "الاسم" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "اختبار سماعات %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "اختبر السماعات" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "المؤثرات الصوتية" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "شدة صوت التنبي_ه:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "حجم صوت ال_إخراج:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "العتاد" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ا_ختر جهازا لضبطه:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "إعدادات الجهاز المختار:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "حجم صوت ال_إدخال:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "مستوى الإدخال:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "اخ_تر جهازا لإدخال الصوت:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "اخ_تر جهازا لإخراج الصوت:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "التطبيقات" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "لا تطبيقات تشغل أو تسجل الصوت حاليا." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "تفضيلات الصوت" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "لا صوت" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "مدمج" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "مخصّص" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "يختبر صوت الحدث" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "المبدئي" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "من السمة" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "النوع" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_سمة الأصوات:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "اختر صوت تنبيه:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "فعّل أصوات ال_نوافذ والأزرار" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "أوقف" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "اختبِر" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "فشل بدء تفضيلات الصوت: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_كتم" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_تفضيلات الصوت" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "مجهول" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "أحادي" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "المقدّمة اليسرى" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "المقدّمة اليمنى" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "المقدّمة الوسطى" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "الخلفية اليسرى" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "الخلفية اليمنى" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "الخلفية الوسطى" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "المقدّمة اليسرى للوسط" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "المقدّمة اليمنى للوسط" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "الجنب الأيسر" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "الجنب الأيمن" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "المقدّمة اليسرى العلوية" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "المقدّمة اليسرى العلوية" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "المقدّمة الوسطى العلوية" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "الوسط الأعلى" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "الخلفية اليسرى العلوية" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "الخلفية اليمنى العلوية" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "الخلفية الوسطى العلوية" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "ستيريو" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/cy.po0000644000175000017500000002432014565521701013726 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # ciaran, 2015 # Dafydd Harries , 2003 # Dafydd Jones, 2003 # KGyfieithu , 2003 # Owain Green, 2003 # Steve Griffiths, 2003 # www.kyfieithu.co.uk , 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Welsh (http://wiki.ukui.org/trans/cy/)\n" "Language: cy\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != " "11) ? 2 : 3;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sain" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Rheolydd y sain" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Dangos rheolydd y sain yn y bwrdd gwaith" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Rheolydd y sain" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Rheolydd y sain" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Mewnbwn" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Allbwn" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Rheolydd y sain" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Chwith" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dde" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Cefn" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Blaen" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Isaf" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Uchaf" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Analluogwyd" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" msgstr[3] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" msgstr[3] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Enw" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Caledwedd" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Addasedig" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Rhagosodiad" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Math" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Atal" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Profi" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Anhysbys" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Unsain" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "blaen chwith" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "blaen dde" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Blaen canol" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "cefn chwith" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "cefn de" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Cefn canol" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Sain amgylchynol 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Sain amgylchynol 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Sain amgylchynol 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Sain amgylchynol 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Sain amgylchynol 7.1" ukui-media-3.1.1.2/po/id.po0000644000175000017500000002574114565521701013717 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Bervianto Leo Pratama , 2017 # Willy Sudiarto Raharjo , 2014,2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Bervianto Leo Pratama \n" "Language-Team: Indonesian (http://wiki.ukui.org/trans/id/)\n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Suara" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Ubah volume suara dan peristiwa suara" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Pengatur Volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Tampilkan kendali volume desktop" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versi dari aplikasi ini" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Aktifkan mode debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Aplet Kendali Volume MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistem suara tidak tersedia" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Menunggu sistem suara merespon" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Sistem suara backend" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Halaman awalan" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " - Kendali Volume MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Masukan" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Keluaran" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume Mikrofon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume Keluaran Suara" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Applet Kontrol Volume MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Kiri" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Kanan" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Belakang" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Depan" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fade:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Tak diperkuat" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Bisu" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ko_nektor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Dimatikan" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Keluaran" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Masukan" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nama" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Pengujian Speaker bagi %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Uji Speaker" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efek Suara" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume peringat_an:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "V_olume keluaran:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Perangkat keras" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Pili_h perangkat untuk ditata:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Tatanan bagi perangkat yang dipilih:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume _masukan:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Aras masukan:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Pili_h perangkat bagi masukan suara:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Pili_h perangkat bagi keluaran suara:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplikasi" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Tak ada aplikasi yang kini memainkan atau merekam suara." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferensi Suara" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Tanpa suara" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Bawaan" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Bebas" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Menguji suara peristiwa" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Bawaan" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Dari tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Jenis" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema suara:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Pili_h suara waspada:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktifkan suara _jendela dan tombol" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Tes" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Gagal memulai Preferensi Suara: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Bisu" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferensi _Suara" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Bisukan di" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Tidak diketahui" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Kiri Depan" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Tengah Depan" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Tengah Depan" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Belakang Kiri" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Belakang Kanan" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Belakang Tengah" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Kiri atau Tengah Depan" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Kanan atau Tengah Depan" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Sisi Kiri" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Sisi Kanan" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Depan Atas Kiri" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Depan Atas Kanan" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Depat Atas Tengah" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Atas Tengah" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Belakang Atas Kiri" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Belakang Atas Kanan" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Belakang Atas Tengah" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/bs.po0000644000175000017500000002354214565521701013724 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Mehemed Sacirovic , 2004 # Sky Lion , 2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Bosnian (http://wiki.ukui.org/trans/bs/)\n" "Language: bs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvuk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Kontrola zvuka" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Kontrola zvuka" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Kontrola zvuka" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Kontrola zvuka" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Lijevo" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Desno" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Onemogućeno" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" msgstr[2] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Naziv" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testiraj Zvučnike" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardver" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Prilagođeno" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/lt.po0000644000175000017500000002735714565521701013747 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Audrius Meskauskas, 2015 # aurisc4 , 2010 # Džiugas Grėbliūnas , 2014,2017 # Gintautas Miliauskas , 2007 # Justina Klingaitė , 2005 # Moo, 2015-2017 # Rimas Kudelis , 2009 # Žygimantas Beručka , 2003-2006, 2009, 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Džiugas Grėbliūnas \n" "Language-Team: Lithuanian (http://wiki.ukui.org/trans/lt/)\n" "Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" "%100<10 || n%100>=20) ? 1 : 2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Garsas" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Keisti garsį ir susieti garsus su įvykiais" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Garsio valdymas" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Rodyti darbalaukio garsio valdiklį" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Programos versija" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Įgalinti derinimą" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE garsio valdymo įtaisas" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Garso sistema nepasiekiama" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Laukiama garsų sistemos atsakymo" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Garso sistemos vidinė pusė" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pradžios puslapis" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE garsio valdymas" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Įvestis" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Išvestis" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofono garsis" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Išvesties garsis" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE garsio valdymo įtaisas" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Kairė" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dešinė" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Galas" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Priekis" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimumas" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimumas" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balansas:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Perėjimas:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Žemų dažnių garsiakalbis:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nesustiprintas" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Nutildyti" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profilis:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "J_ungtis:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Išjungta" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u išvestis" msgstr[1] "%u išvestys" msgstr[2] "%u išvesčių" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u įvestis" msgstr[1] "%u įvestys" msgstr[2] "%u įvesčių" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Vardas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s garsiakalbių tikrinimas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Tikrinti garsiakalbius" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Garso efektai" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Įspėjimo _garsis: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Išvesties _garsis: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Įrenginiai" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Pasi_rinkite derintiną įrenginį:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Pasirinkto įrenginio nustatymai:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Į_vesties garsis: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Įvesties lygis:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Pasi_rinkite garso įvesties įrenginį:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Pasi_rinkite garso išvesties įrenginį:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programos" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Šiuo metu jokia programa negroja ir neįrašinėja garso." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Garso nustatymai" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Jokių garsų" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Įtaisytasis" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Pasirinktinis" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Bandomasis įvykio signalas" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Numatytasis" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Iš temos" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipas" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Garsų _tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Pasi_rinkite įspėjimo garsą:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Įjungti _langų ir mygtukų garsus" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stabdyti" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Tikrinti" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Nepavyko atverti garso nustatymų: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Nutildyti" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Garso nustatymai" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Nutildyta ties" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Nežinoma" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Priekinis kairysis" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Priekinis dešinysis" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Priekinis vidurinis" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Užpakalinis kairysis" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Užpakalinis dešinysis" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Užpakalinis vidurinis" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Priekinis kairysis arba vidurinis" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Priekinis dešinysis arba vidurinis" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Šoninis kairysis" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Šoninis dešinysis" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Viršutinis priekinis kairysis" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Viršutinis priekinis dešinysis" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Viršutinis priekinis vidurinis" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Viršutinis vidurinis" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Viršutinis užpakalinis kairysis" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Viršutinis užpakalinis dešinysis" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Viršutinis užpakalinis vidurinis" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "„Surround“ 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "„Surround“ 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "„Surround“ 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "„Surround“ 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "„Surround“ 7.1" ukui-media-3.1.1.2/po/POTFILES.skip0000644000175000017500000000114514565521701015070 0ustar fengfengdata/ukui-volume-control.desktop.in ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_systemtray_widget.cpp ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_systemtray_widget.h ukui-volume-control/ukui-volume-control-applet-qt/ukmedia.pro ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_application.h ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_control_widget.cpp ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_control_widget.h ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_application.cpp ukui-volume-control/ukui-volume-control-applet-qt/main.cpp ukui-media-3.1.1.2/po/he.po0000644000175000017500000002600514565521701013711 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Gil 'Dolfin' Osher , 2002, 2003 # Yaron Shahrabani , 2012 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Hebrew (http://wiki.ukui.org/trans/he/)\n" "Language: he\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "קול" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "שינוי עצמת השמע והצלילים המשויכים לאירועים" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "בקרת עצמה" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "הצגת בקרת עצמה בשולחן העבודה" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "גרסת יישום זה" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — יישומון בקרת העצמה של MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ממתין לתגובת מערכת הקול" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "עמוד התחלה" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — בקר העצמה של MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "קלט" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "פלט" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "עצמת המיקרופון" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "עצמת פלט השמע" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — יישומון בקרת העצמה של MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "שמאלה" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ימינה" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "אחורי" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "קדמי" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "מזערי" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "מרבי" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_איזון:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_עמעום:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_סאבוופר" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "לא מוגבר" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "השתק" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_פרופיל:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "מח_בר:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "מכובה" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "פלט אחד" msgstr[1] "%u פלטים" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "קלט אחד" msgstr[1] "%u קלטים" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "שם" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "בדיקת רמקולים עבור %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "בדיקת הרמקולים" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "אפקטים קוליים" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "עצמת צליל ה_התראה:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "עצמת ה_פלט:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "חומרה" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "בחירת התקן לה_גדיר:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "הגדרות עבור ההתקן הנבחר:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "עצמת ה_קלט:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "רמת הקלט:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ב_חירת התקן להקלטת קול:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ב_חירת התקן להשמעת הצלילים:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "יישומים" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "אין אף יישום המנגן או מקליט כעת צלילים." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "העדפות קול" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ללא צלילים" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "מובנה" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "התאמה אישית" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "בדיקת צליל אירוע" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "בררת מחדל" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "מערכת נושא" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "סוג" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_ערכת צלילים:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ב_חירת צליל התראה:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "הפעלת צלילים עבור _חלונות ולחצנים" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "עצור" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "בדיקה" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "כשל בהפעלת העדפות השמע: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_השתק" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "העדפות_ קול" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/en_CA.po0000644000175000017500000002331514565521701014263 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Adam Weinberger , 2004, 2005, 2006 # Alexander Winston , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: English (Canada) (http://wiki.ukui.org/trans/en_CA/)\n" "Language: en_CA\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volume Control" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Volume Control" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Volume Control" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Volume Control" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Custom" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/vi.po0000644000175000017500000002660714565521701013743 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Duy Truong Nguyen , 2014 # Horazone Detex , 2017 # Nguyễn Thái Ngọc Duy , 2002 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Horazone Detex \n" "Language-Team: Vietnamese (http://wiki.ukui.org/trans/vi/)\n" "Language: vi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Âm thanh" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Thay đổi âm lượng và âm thanh của sự kiện" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Điều khiển Âm lượng" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Hiện điều khiển âm lượng trên màn hình nền" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Phiên bản của ứng dụng này" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Bật debug" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— Bộ điều khiển âm lượng Mate" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Âm thanh hệ thống chưa có" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Đang đợi hệ thống âm thanh đáp ứng" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Đầu ra âm thanh hệ thống" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Trang đầu tiên" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "__ Điều khiển âm lượng Mate" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Vào" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Kết xuất" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Âm lượng thiết bị thu âm" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Âm lượng đầu ra" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Bộ điều khiển âm lượng Mate" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Trái" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Phải" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Sau" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Trước" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Tối thiểu" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Tối đa" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "Cân _bằng:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fade:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Không khuếch đại" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Câm" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Hồ sơ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Bộ kết_nối:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Bị tắt" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u đầu ra" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u đầu vào" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Tên" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Thử loa cho %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Thử loa" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Hiệu ứng Âm thanh" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Cảnh báo âm lượng: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Đầu ra âm lượng:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Phần cứng" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "C_họn một thiết bị để cấu hình:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Thiết lập cho thiết bị đã chọn:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Đầu vào âm lượng:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Cấp nhập:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "C_họn một thiết bị để nhập vào âm thanh:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "C_họn một thiết bị để xuất âm thanh:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Ứng dụng" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Không có ứng dụng đang phát hay thu âm thanh." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Tuỳ thích Âm thanh" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Không âm" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Dựng sẵn" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Tự chọn" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Đang thử âm thanh cho sự kiện" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Mặc định" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Từ sắc thái" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Kiểu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Sắc thái _Âm thanh:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "C_họn một âm thanh cảnh báo:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Bật _âm thanh cho cửa sổ và cái nút" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Dừng" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Thử" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Lỗi khởi chạy Tuỳ thích Âm lượng: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Câ_m" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Tuỳ thích Â_m thanh" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Bị câm tại" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Không rõ" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Nguồn đơn" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Trái trước" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Phải trước" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Tâm trước" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Trái sau" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Phải sau" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Tâm sau" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Trái trước của Tâm" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Phải trước của Tâm" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Mặt trái" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Mặt phải" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Trái trước trên" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Phải trước trên" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Tâm trước trên" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Tâm trên" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Trái sau trên" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Phải sau trên" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Tâm sau trên" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Lập thể" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/zh_CN.po0000644000175000017500000002643714565521701014327 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Aron Xu , 2010 # Deng Xiyue , 2009 # Dillion Chen , 1999 # Funda Wang , 2003-2004 # Hinker Liu , 2009 # liushuyu011 , 2014 # liushuyu011 , 2017 # liushuyu011 , 2014 # Replaced by He Qiangqiang , 2002 # Sun G11n , 2002 # Wylmer Wang, 2014 # Yang Zhang , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: liushuyu011 \n" "Language-Team: Chinese (China) (http://wiki.ukui.org/trans/zh_CN/)\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "声音" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "更改音量以及将声音与事件关联" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "音量控制" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "显示桌面音量控制" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "此应用程序的版本" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "启用调试" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE 音量控制小程序" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "声音系统不可用" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "正在等待声音系统响应" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "声音系统后台" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "启动页面" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " - MATE 音量控制" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "输入" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "输出" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "麦克风音量" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "输出音量:" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE 音量控制小应用" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "左" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "右" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "后置声道" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "前置声道" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "最小值" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "最大值" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "平衡(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "淡出(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "低音炮(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "非放大" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "静音" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "配置文件(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "连接器(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "禁用" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u 输出" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u 输入" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "名称" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s 话筒设置" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "测试话筒" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "声音效果" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "报警音量(_A):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "输出音量(_O):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "硬件" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "选择要配置的设备(_H)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "所选设备的设置:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "输入音量(_I):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "输入等级:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "选择声音输入设备(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "选择声音输出设备(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "应用程序" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "目前没有应用程序在播放或录制音频。" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "声音首选项" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "无声音" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "内置" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "自定义" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "测试事件声音" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "默认" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "来自主题" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "类型" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "声音主题(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "选择警报声音(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "启用窗体与按钮声音(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "停止" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "测试" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "启动音量首选项失败:%s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "静音(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "水平方向" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "声音首选项(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "已静音于" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "未知" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "单声道" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "左前" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "右前" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "前部中央" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "左后" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "右后" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "后部中央" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "前方左中" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "中心右前" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "左侧" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "右侧" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "顶部左前" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "顶部右前" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "顶部前中央" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "顶部居中央" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "顶部后方左" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "右上" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "中上" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "立体声" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "环绕声 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "环绕声 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "环绕声 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "环绕声 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "环绕声 7.1" ukui-media-3.1.1.2/po/da.po0000644000175000017500000002621514565521701013704 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # askhl , 2010 # Joe Hansen , 2014-2017 # Peter Bach , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish (http://wiki.ukui.org/trans/da/)\n" "Language: da\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Lyd" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Skift lydstyrke og lydbegivenheder" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Lydstyrkekontrol" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Vis lydstyrkekontrol til skrivebordet" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versionen af dette program" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Aktiver fejlsøgning" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE-panelprogram til lydstyrkekontrol" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Lydsystem er ikke tilgængeligt" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Venter på svar fra lydsystemet" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Motor for lydsystem" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Opstartsside" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Lydstyrkekontrol til MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Input" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Output" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Lydstyrke for mikrofon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Afspilningslydstyrke" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE-panelprogram til lydstyrkekontrol" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Venstre" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Højre" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Bagved" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Foran" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Dæmp:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Uforstærket" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Stilhed" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ko_nnektor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Deaktiveret" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u output" msgstr[1] "%u output" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u input" msgstr[1] "%u input" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Navn" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Højttalertest for %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Afprøv højttalere" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Lydeffekter" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Påmindelseslydstyrke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Afspilningslydstyrke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Vælg en enhed at konfigurere:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Indstillinger for den valgte enhed:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Optagelydstyrke: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Inputniveau:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Vælg en enhed til lydinput:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Vælg en enhed til lydoutput:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programmer" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Intet program afspiller eller optager i øjeblikket lyd." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Lydindstillinger" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ingen lyde" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Indbygget" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Brugerdefineret" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Afprøver begivenhedslyd" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standard" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Fra tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Lyd_tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Vælg en påmindelseslyd:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktiver lyde for _vinduer og knapper" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Kunne ikke starte lydindstillinger: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Stilhed" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Lydindstillinger" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Tavs ved" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Ukendt" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Venstre front" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Højre Front" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Midt front" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Venstre bagerst" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Højre bagerst" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Centrum bagerst" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Venstre front for centrum" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Højre front for centrum" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Venstre side" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Højre side" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Øverste front til venstre" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Øverste front til højre" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Øverste front i centrum" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Øverst centrum" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Øverste baggrund til venstre" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Øverste Øverste baggrund til højre" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Øverste baggrund i centrum" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/ur.po0000644000175000017500000002622314565521701013745 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 17:23+0000\n" "Last-Translator: monsta \n" "Language-Team: Urdu (http://wiki.ukui.org/trans/ur/)\n" "Language: ur\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "آواز" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "آواز اور اس کی کیفیتیں بدلیں" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "آواز کنٹرول" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ڈیسک ٹاپ کا آواز کنٹرول دکھائیں" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "اس اطلاقیے کا نُسخہ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — میٹ آواز کنٹرول ایپلیٹ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "آواز کے نظام سے جواب کا انتظار کیا جارہا ہے" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "صفحہ آغاز" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — میٹ آواز کنٹرول" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ماداخل" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ماخارج" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "مائکروفون کی آواز" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "ماخارج آواز حُجم" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — میٹ آواز کنٹرول ایپلیٹ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "بائیں" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "دائیں" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "پُشت" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "سامنا" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "کم سے کم" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "زیادہ سے زیادہ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_توازن:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_دھندلاہٹ:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_سب ووفر:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "خاموش" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_پروفائل:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_رابط:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "معطل" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ماخارج" msgstr[1] "%u ماخارج" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ماداخل" msgstr[1] "%u ماداخل" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "نام" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "سپیکر جانچ برائے %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "سپیکر جانچیں" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "آواز کے اثرات" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_انتباہ کی آواز:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_ماخارج آواز:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ہارڈویئر" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "تشکیل کے لیے ألہ منت_خب کریں:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "منتخب کردہ آلے کی ترتیبات:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_ماداخل آواز:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ماداخل سطح:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "آواز کے ماداخل کے لیے ألہ _منتخب کریں:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "آواز کے ماخارج کے لیے ألہ م_نتخب کریں:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "اطلاقیے" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "اس وقت کوئی اطلاقیہ آواز کو چلا یا ریکارڈ نہیں کر رہا." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "آواز کی ترجیحات" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "کوئی آوازیں نہیں" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "درساختہ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "مخصوص" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "واقعات کی آوازیں جانچیں" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "طے شُدہ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "تھیم سے" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "نوعیت" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "آواز کی _تھیم:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "انتباہ کی آواز _منتخب کریں:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_دریچہ اور بٹن کی آوازیں فعال کریں" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "روکیں" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "جانچیں" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "آواز کی ترجیحات چلانے میں ناکامی: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_خاموش کریں" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_آواز کی ترجیحات" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/eu.po0000644000175000017500000002613214565521701013727 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Asier Iturralde Sarasola , 2012,2015 # Hizkuntza Politikarako Sailburuordetza , 2004 # Iñaki Larrañaga Murgoitio , 2004, 2005, 2006, 2007, 2008, 2009, 2010 # Iñaki Larrañaga Murgoitio , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Basque (http://wiki.ukui.org/trans/eu/)\n" "Language: eu\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Soinua" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Aldatu soinuaren bolumena eta soinuaren gertaerak" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Bolumen-kontrola" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Erakutsi mahaigaineko bolumen-kontrola" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Aplikazio honen bertsioa" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Gaitu arazketa" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATEren bolumen-kontrolaren miniaplikazioa" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Soinu-sistema ez dago erabilgarri" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Soinu-sistemaren zain erantzuteko" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Soinu-sistemaren motorra" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Abioko orrialdea" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATEren bolumen-kontrola" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Sarrera" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Irteera" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofonoaren bolumena" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Soinuaren irteerako bolumena" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE bolumen-kontrolaren applet-a" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Ezkerra" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Eskuina" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Atzealdea" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Aurrealdea" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Gutxienekoa" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Gehienezkoa" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balantzea:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Iraungitu:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Anplifikatu gabea" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "% 100" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Mututu" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profila:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Konektorea:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desgaituta" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "Irteera %u" msgstr[1] "%u irteera" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "Sarrera %u" msgstr[1] "%u sarrera" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Izena" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s(r)en probako bozgorailua" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Probatu bozgorailuak" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Soinu-efektuak" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Abisuaren bolumena: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Irteerako bolumena: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardwarea" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "A_ukeratu gailu bat konfiguratzeko:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Hautatutako gailuaren ezarpenak:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Sarrerako bolumena: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Sarrerako maila:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Aukeratu _sarrerako soinuaren gailua:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Aukeratu _irteerako soinuaren gailua:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplikazioak" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ez dago unean audioa erreproduzitzen edo grabatzen duen aplikaziorik." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Soinuaren hobespenak" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Soinurik ez" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integratuta" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Pertsonalizatua" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Gertaeraren soinua probatzea" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Lehenetsia" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Gaitik" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Mota" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Soinuaren _gaia:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Aukeratu alertaren soinua:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Gaitu _leihoen eta botoien soinuak" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Gelditu" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Probatu" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Huts egin du soinuaren hobespenak abiaraztean: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Mututu" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Soinuaren hobespenak" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estereoa" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/ja.po0000644000175000017500000002745514565521701013721 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # ABE Tsunehiko, 2017 # Akira TAGOH , 2000 # ふうせん Fu-sen. | BALLOON a.k.a. Fu-sen., 2014 # Eiichiro ITANI , 1999 # Hideki Yamane , 2010 # Hideki Yamane , 2010 # Ikuru K , 2015 # KAMAGASAKO Masatoshi , 2003 # Mitsuru Oka <95i44@is.kochi-u.ac.jp>, 1998 # Satoru SATOH , 2006 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Japanese (http://wiki.ukui.org/trans/ja/)\n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "サウンド" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "音量や音のイベントを変更します" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "音量調節ツール" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "デスクトップの音量を調節するアプレットです" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "このアプリケーションのバージョンを表示する" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "デバッグを有効にする" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE 音量調節アプレット" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "サウンドシステムが無効です" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "サウンドシステムからの応答待ちです" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "サウンドシステムバックエンド" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "起動時に開くページを指定する" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — 音量調節ツール" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "入力" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "出力" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "マイクのボリューム" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "出力の音量" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE 音量調整アプレット" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "左" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "右" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "リア" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "フロント" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "最小" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "最大" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "バランス(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "フェード(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "サブウーファー(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "増幅しない" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ミュート" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "プロファイル(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "コネクター(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "無効" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u 出力" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u 入力" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "名前" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s でスピーカのテスト" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "スピーカのテスト" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "サウンドの効果" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "警告音の音量(_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "出力の音量(_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ハードウェア" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "設定するデバイスを選択してください(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "選択したデバイスの設定:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "入力の音量(_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "入力レベル:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "サウンドの入力デバイスを選択してください(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "サウンドの出力デバイスを選択してください(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "アプリケーション" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "現在、再生または録音しているアプリケーションはありません" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "サウンドの設定" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "なし" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "インストール済" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "その他" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "イベント音のテスト中" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "デフォルト" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "テーマ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "種類" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "サウンドのテーマ(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "警告音を選択してください(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "ウィンドウとボタンの音を鳴らす(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "停止します" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "テスト" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "サウンドの設定を起動できませんでした: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ミュート(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "サウンドの設定(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "不明" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "モノラル" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "左前方" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "右前方" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "中央前方" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "左後方" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "右後方" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "中央後方" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "中央の左前方" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "中央の右前方" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "左側" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "右側" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "上左前方" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "上右前方" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "上中央前方" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "上中央" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "上左後方" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "上右後方" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "上中央後方" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "ステレオ" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "サラウンド 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "サラウンド 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "サラウンド 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "サラウンド 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "サラウンド 7.1" ukui-media-3.1.1.2/po/be.po0000644000175000017500000003115514565521701013705 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # nab , 2004 # nab , 2004 # Ihar Hrachyshka , 2006 # nab , 2004 # Vital Khilko , 2003,2014-2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Belarusian (http://wiki.ukui.org/trans/be/)\n" "Language: be\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Гук" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Кіраваць гучнасцю сістэмы і гукавымі падзеямі" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Кіраванне гукам" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Паказваць кіраўнік гучнасцю на стале" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Версія гэтай праграмы" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Уключыць наладку" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Аплет кіравання гукам MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Гукавая сістэма недаступна" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Чакаем, пакуль гукавая сістэма адкажа" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Бэкэнд гукавой сістэмы" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Пачатковая старонка" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Кіраўнік гуку асяроддзя MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Уваход" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Выхад" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Гучнасць мікрафона" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Гучнасць выходнага гуку" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Аплет кіравання гукам MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Левы" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Правы" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Задні" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Пярэдні" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Мінімум" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Максімум" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Баланс:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Знікненне:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Сабвуфер:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Няўзмоцнены" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Сцішыць" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Профіль:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ка_нэктар:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Адключаны" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u выхад" msgstr[1] "%u выхады" msgstr[2] "%u выхадаў" msgstr[3] "%u выхадаў" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u уваход" msgstr[1] "%u уваходы" msgstr[2] "%u уваходаў" msgstr[3] "%u уваходаў" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Назва" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Праверка калонак для %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Праверыць калонкі" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Гукавыя эфекты" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Гучнасць паведамлення:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Выходная гучнасць:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Апаратура" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "В_ылучыце прыладу для настáўлення:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Настáўленні вылучанай прылады:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Уваходная гучнасць: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Уваходны ўзровень:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Ад_значце прыладу для ўваходнага гуку:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Ад_значце прыладу для выходнага гуку:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Праграмы" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ніводная праграма цяпер не грае і не піша гук." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Настáўленні гуку" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Бязгучна" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Убудаваны" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Адмысловы" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Праверка гуку падзеі" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Стандартны" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "З тэмы" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Тып" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Гукавая _тэма:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "А_бярыце гук паведамленняў:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Уключыць гукі _вокнаў і кнопак" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Спыніць" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Праверка" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Не выйшла запусціць настáўленні гуку: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Сцішыць" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Настáўленні гуку" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Невядомы" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Мона" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Пярэдні левы" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Пярэдні правы" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Пярэдні цэнтральны" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Н/Ч" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Задні левы" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Задні правы" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Задні цэнтральны" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Пярэдні левы цэнтральнага" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Пярэдні правы цэнтральнага" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Баковы левы" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Баковы правы" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Верхні пярэдні левы" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Верхні пярэдні правы" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Верхні пярэдні цэнтральны" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Верхні цэнтральны" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Верхні задні левы" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Верхні задні правы" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Верхні задні цэнтральны" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стэрэа" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/fa.po0000644000175000017500000002417314565521701013707 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alireza Kheirkhahan , 2005 # Mahdi Pourghasem , 2016 # Meelad Zakaria , 2005 # Roozbeh Pournader , 2003, 2005 # Sara Khalatbari , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Persian (http://wiki.ukui.org/trans/fa/)\n" "Language: fa\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "صدا" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "کنترل بلندی صدا" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "کنترل بلندی صدا" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "صفحه شروع" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "کنترل بلندی صدا" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ورودی" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "خروجی" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "میزان صدای خروجی" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "کنترل بلندی صدا" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "چپ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "راست" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "عقب" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "جلو" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "کم‌ترین مقدار" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "بیش‌ترین مقدار" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "۱۰۰٪" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "بی‌صدا" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "غیر فعال شده" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "نام" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "آزمایش بلندگو ها" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "سخت افزار" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ورودی صدا" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "سفارشی" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "توقف" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "بی صدا" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/uz.po0000644000175000017500000002360114565521701013752 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # muzaffar habibullayev , 2016 # Umidjon Almasov , 2013 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 20:25+0000\n" "Last-Translator: monsta \n" "Language-Team: Uzbek (http://wiki.ukui.org/trans/uz/)\n" "Language: uz\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Ovoz" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ovoz Nazorati" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Ovoz Nazorati" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Ovoz Nazorati" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofon Ovozi" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Ovoz Nazorati" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Chap" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Oʻng" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Orqa" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Oldi" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balans:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Ovozsiz" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Oʻchirilgan" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nomi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Spikerlarni Sinash" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ovoz Effektlari" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Qurilmalar" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Dasturlar" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Tovush Xususiyatlari" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standart" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Turi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "To'xtatish" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Sinash" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Ovozsiz" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Tovush Xususiyatlari" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Noma'lum" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/rw.po0000644000175000017500000002351514565521701013750 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Augustin KIBERWA , 2005 # Carole Karema , 2005 # JEAN BAPTISTE NGENDAHAYO , 2005 # Noëlla Mupole , 2005 # Philibert Ndandali , 2005 # Steve Murphy , 2005 # Viateur MUGENZI , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Kinyarwanda (http://wiki.ukui.org/trans/rw/)\n" "Language: rw\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Guhagarara" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/hy.po0000644000175000017500000003056014565521701013736 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Siranush , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-20 15:44+0000\n" "Last-Translator: monsta \n" "Language-Team: Armenian (http://wiki.ukui.org/trans/hy/)\n" "Language: hy\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Հնչել" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Փոխել ձայնայնի ուժգնությունը և ձայնային իրադարձությունները" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ձայնի բարձրության կարգավորիչ" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Ցույց տալ աշխատասեղանի ուժգնության հսկողությունը" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Այս դիմումի տարբերակը" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Միացնել վրիպազերծը" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— MATE ՈՒժգնության Վերահսկիչ Ապլետ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Ձայնային համակարգը մատչելի չէ" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Սպասում ձայնային համակարգի արձագանքի համար" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Ձայնային համակարգի վերջ" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Գործարկման էջը" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— MATE ՈՒժգնության Վերահսկիչ" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Մուտքագրում" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Ելք" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Խոսափողի ուժգնություն" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Խոսափողի Ելքի ՈՒժգնություն" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE ՈՒժգնության Վերահսկիչ Ապլետ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Ձախ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Աջ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Թիկունք" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Ճակատ" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Նվազագույն" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Առավելագույն" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Հաշվեկշիռ։" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Մոռացվել:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Ենթաձայն։" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Չուժեղացած" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Անջատել ձայնը" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Պրոֆիլ։" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Միակցիչ:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Անջատված" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Արդյունք" msgstr[1] "%u Արդյունքներ" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Մուտք" msgstr[1] "%u Մուտքեր" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Անուն" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Թեստավորման համար Խոսնակներ %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Թեստավորման խոսնակներ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ձայնային Էֆեկտներ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_ՈՒժգնության ազդանշան։" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Ելքային ուժգնություն։" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Ապարատային միջոցներ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Ընտրեք սարքի կարգավորումները:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Ընտրված սարքերի համար պարամետրեր․" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Մուտքային ուժգնություն։" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr " Մուտքային մակարդ․" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Ձայնային մուտքի համար Ընտրել սարք" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Ձայնային ելքի համար ընտրել սարք" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Դիմումներ" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ոչ մի դիմում ներկայումս չէ նվագել կամ արձանագրել ձայն։" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Ձայնի Նախընտրանքներ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Հնչյուններ չկան" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ներկառուցված" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Սովորություն" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Ձայնի փորձարկման ազդանշան" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Հիմնական" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Թեմայից" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Տիպ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Ձայնային _թեման․" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Ընտրել ձայնի ազդանշանը․" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Ակտիվացնել _պատուհանը և ձայնի կոճակը" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Դադար" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Թեստ" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Չհաջողվեց սկսել Ձայնային Նախընտրանքները: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Անջատել ձայնը" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Ձայնաին Նախընտրանքներ" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Անհայտ" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Մոնո" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Առջև Ձախ" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Առջև Աջ" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Առջև Կենտրոն" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Հետև Ձախ" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Հետև Աջ" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Հետև Կենտրոն" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Առջևի Ձախ կենտրոնի" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Առջևի Աջ կենտրոնի" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Ձախ Կողմ" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Աջ Կողմ" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Վերին Առջևի Ձախ" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Վերին Առջևի Աջ" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Վերին Առջևի ՁԿենտրոն" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Վերև կենտրոն" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Վերև Հետև Ձախ" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Վերև Հետև Աջ" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Վերև Հետև Կենտրոն" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Ստերեո" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Շրջապատել 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Շրջապատել 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Շրջապատել 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Շրջապատել 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Շրջապատել 7.1" ukui-media-3.1.1.2/po/pa.po0000644000175000017500000002777014565521701013727 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Amanpreet Singh Alam , 2008, 2009 # Amanpreet Singh Alam , 2004 # A S Alam , 2005, 2006, 2007, 2009, 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Panjabi (Punjabi) (http://wiki.ukui.org/trans/pa/)\n" "Language: pa\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ਸਾਊਂਡ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ਸਾਊਂਡ ਵਾਲੀਅਮ ਅਤੇ ਸਾਊਂਡ ਈਵੈਂਟ ਬਦਲੋ" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ਆਵਾਜ਼ ਕੰਟਰੋਲ" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ਡੈਸਕਟਾਪ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਵੇਖੋ" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਦਾ ਵਰਜਨ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਐਪਲਿਟ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ਸਾਊਂਡ ਸਿਸਟਮ ਦੇ ਜਵਾਬ ਦੀ ਉਡੀਕ ਜਾਰੀ" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "ਸ਼ੁਰੂਆਤੀ ਪੇਜ਼" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ਇੰਪੁੱਟ" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ਆਉਟਪੁੱਟ" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "ਮਾਈਕਰੋਫੋਨ ਵਾਲੀਅਮ" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "ਸਾਊਂਡ ਆਉਟਪੁੱਟ ਵਾਲੀਅਮ" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਐਪਲਿਟ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ਖੱਬਾ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ਸੱਜਾ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "ਪਿੱਛੇ" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "ਅੱਗੇ" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ਘੱਟੋ-ਘੱਟ" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "ਵੱਧੋ-ਵੱਧ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ਸੰਤੁਲਨ(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ਫੇਡ(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ਸਬਵੂਫ਼ਰ(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "ਬਿਨਾਂ-ਐਪਲੀਫਾਈ" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ਚੁੱਪ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "ਪਰੋਫਾਇਲ(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "ਕੁਨੈਕਟਰ(_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "ਆਯੋਗ" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ਆਉਟਪੁੱਟ" msgstr[1] "%u ਆਉਟਪੁੱਟ" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ਇੰਪੁੱਟ" msgstr[1] "%u ਇੰਪੁੱਟ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ਨਾਂ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s ਲਈ ਸਪੀਕਰ ਟੈਸਟਿੰਗ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "ਸਪੀਕਰ ਟੈਸਟ ਕਰੋ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ਸਾਊਂਡ ਪਰਭਾਵ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "ਚੇਤਾਵਨੀ ਵਾਲੀਅਮ(_A):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "ਆਉਟਪੁੱਟ ਵਾਲੀਅਮ(_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ਹਾਰਡਵੇਅਰ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ਸੰਰਚਨਾ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ਚੁਣੇ ਜੰਤਰ ਲਈ ਸੈਟਿੰਗ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ਇੰਪੁੱਟ ਵਾਲੀਅਮ(_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ਇੰਪੁੱਟ ਲੈਵਲ:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ਸਾਊਂਡ ਇੰਪੁੱਟ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ਸਾਊਂਡ ਆਉਟਪੁੱਟ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "ਐਪਲੀਕੇਸ਼ਨ" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ਕੋਈ ਵੀ ਐਪਲੀਕੇਸ਼ਨ ਇਸ ਸਮੇਂ ਆਡੀਓ ਚਲਾ ਜਾਂ ਰਿਕਾਰਡ ਨਹੀਂ ਕਰ ਰਹੀ ਹੈ।" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ਸਾਊਂਡ ਪਸੰਦ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ਸਾਊਂਡ ਨਹੀਂ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ਬਿਲਟ-ਇਨ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ਸੋਧ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ਟੈਸਟਿੰਗ ਈਵੈਂਟ ਸਾਊਂਡ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ਮੂਲ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "ਥੀਮ ਤੋਂ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ਟਾਈਪ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ਸਾਊਂਡ ਥੀਮ(_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ਇੱਕ ਚੇਤਾਵਨੀ ਸਾਊਂਡ ਚੁਣੋ(_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "ਵਿੰਡੋ ਅਤੇ ਬਟਨ ਸਾਊਂਡ ਚਾਲੂ(_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "ਰੋਕੋ" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "ਟੈਸਟ" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ਸਾਊਂਡ ਪਸੰਦ ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ ਹੈ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ਚੁੱਪ(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ਸਾਊਂਡ ਪਸੰਦ(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/POTFILES.in0000644000175000017500000000036214565521701014530 0ustar fengfeng# List of source files containing translatable strings. # Please keep this file sorted alphabetically. [encoding: UTF-8] data/ukui-volume-control.desktop.in.in data/ukui-volume-control-applet.desktop.in ukui-volume-control-applet-qt/main.cpp ukui-media-3.1.1.2/po/fr.po0000644000175000017500000002717514565521701013735 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Baptiste Mille-Mathias , 2005 # Benjamin Teissier , 2015 # Christophe Fergeau , 2002 # Étienne Deparis , 2017 # Laurent Coudeur , 2009 # mauron, 2012 # Stéphane Raimbault , 2007 # Thibaut Cousin , 1999 # Tubuntu , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Étienne Deparis \n" "Language-Team: French (http://wiki.ukui.org/trans/fr/)\n" "Language: fr\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Modifier le volume et des événements sonores" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Contrôleur de volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Afficher le contrôleur de volume" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version de cette application" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Activer le déboggage" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Applet du contrôleur de volume MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Le système son n'est pas disponible" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Attente de réponse du système sonore" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Gestionnaire de système son" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Page de démarrage" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Contrôleur de volume MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrée" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Sortie" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume du microphone" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume de sortie sonore" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Applet de contrôle du volume MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Gauche" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Droite" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Arrière" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Avant" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance :" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Fondu :" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Caisson de basse :" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Non amplifié" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100 %" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Sourdine" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil :" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnecteur :" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Désactivé" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u sortie" msgstr[1] "%u sorties" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrée" msgstr[1] "%u entrées" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nom" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Test des haut-parleurs pour %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Tester les haut-parleurs" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Effets sonores" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume d'_alerte : " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Volume de _sortie : " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Matériel" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "C_hoisissez un périphérique à configurer :" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Paramètres du périphérique sélectionné :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume d'_entrée : " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Niveau d'entrée :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Choisissez un _périphérique pour l'entrée son :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Choisissez un _périphérique pour la sortie son :" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Applications" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Aucune application n'émet ou n'enregistre de son actuellement." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Préférences du son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Aucun son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Prédéfini" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personnalisé" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Test du son d'un événement" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Par défaut" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "À partir du thème" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Thème sonore :" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "C_hoisissez un son d'alerte :" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Acti_ver les sons des fenêtres et boutons" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Arrêter" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Tester" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Impossible d'ouvrir les préférences du son : %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "S_ourdine" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Préférences du _son" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Volume avant sourdine à" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Inconnu" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Avant Gauche" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Avant Droit" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Centre Avant" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Effets basse fréquence (LFE)" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Arrière Gauche" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Arrière Droit" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Centre Arrière" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Avant Gauche Central" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Avant Droit Central" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Côté Gauche" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Côté Droit" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Haut Avant Gauche" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Haut Avant Droit" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Haut Avant Centre" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Haut Central" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Haut Arrière Gauche" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Haut Arrière Droit" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Haut Arrière Central" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stéréo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/az.po0000644000175000017500000002326514565521701013734 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Mətin Əmirov , 2004 # Vasif Ismailoglu MD , 2000 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Azerbaijani (http://wiki.ukui.org/trans/az/)\n" "Language: az\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Səs İdarəsi" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Səs İdarəsi" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Səs İdarəsi" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Səs İdarəsi" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Xüsusi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Dayan" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/xh.po0000644000175000017500000002320514565521701013733 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Translation World CC in South Africa, 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Xhosa (http://wiki.ukui.org/trans/xh/)\n" "Language: xh\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ulawulo lweSandi" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Ulawulo lweSandi" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Ulawulo lweSandi" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Ulawulo lweSandi" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Ukuzenzela" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Misa" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/bn_IN.po0000644000175000017500000003171314565521701014304 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Progga , 2005 # Runa Bhattacharjee , 2003 # runa , 2006 # runab , 2008, 2009, 2010 # Sayamindu Dasgupta , 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Bengali (India) (http://wiki.ukui.org/trans/bn_IN/)\n" "Language: bn_IN\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "শব্দ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "শব্দের মাত্রা o নির্দিষ্ট ঘটনার সাথে যুক্ত শব্দ পরিবর্তন করুন" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ডেস্কটপের মধ্যে শব্দের মাত্রা নিয়ন্ত্রণ ব্যবস্থা প্রদর্শন করা হবে" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "অ্যাপ্লিকেশনের সংস্করণ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "শব্দের সিস্টেম থেকে প্রতিক্রিয়া প্রাপ্তির অপেক্ষা করা হচ্ছে" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "প্রারম্ভিক পৃষ্ঠা" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ইনপুট" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "আউটপুট" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "বাঁদিকে" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ডানদিকে" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "পশ্চাৎস্থিত" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "সম্মুখস্থিত" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "সর্বনিম্ন" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "সর্বোচ্চ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ভারসাম্য: (_B)" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "নিষ্প্রভ: (_F)" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "সাব-উফার: (_S)" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "অ্যামপ্লফাই না করা" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "১০০%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "নিঃশব্দ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "প্রোফাইল: (_P)" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "সংযোগকারী: (_n)" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "নিষ্ক্রিয়" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u-টি আউটপুট" msgstr[1] "%u-টি আউটপুট" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u-টি ইনপুট" msgstr[1] "%u-টি ইনপুট" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "নাম" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "শব্দের ইফেক্ট" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "সতর্কবার্তার শব্দের মাত্রা: (_A)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "আউটপুটের শব্দের মাত্রা: (_O)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "হার্ডওয়্যার" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "কনফিগার করার উদ্দেশ্যে একটি ডিভাইস নির্বাচন করুন (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "নির্বাচিত ডিভাইসের বৈশিষ্ট্য:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ইনপুটের শব্দের মাত্রা: (_I)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ইনপুটের মাত্রা:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "শব্দ ইনপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "শব্দ আউটপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "অ্যাপ্লিকেশন" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "কোনো অ্যাপ্লিকেশন দ্বারা বর্তমানে অডিও বাজানো অথবা রেকর্ড করা হচ্ছে না।" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "শব্দ সংক্রান্ত পছন্দ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "শব্দবিহীন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "বিল্ট-ইন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "স্বনির্ধারিত" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ঘটনার জন্য চিহ্নিত শব্দ পরীক্ষা করা হচ্ছে" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ডিফল্ট" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "থিম থেকে প্রাপ্ত" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ধরন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "শব্দের থিম: (_t)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "সতর্কতামূলক একটি শব্দ নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "উইন্ডো ও বাটনের শব্দ সক্রিয় করুন (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "শব্দ সংক্রান্ত পছন্দের মান আরম্ভ করতে ব্যর্থ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "নিঃশব্দ: (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "শব্দ সংক্রান্ত পছন্দ (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ChangeLog0000644000175000017500000050263414565521701014536 0ustar fengfeng2009-04-18 Funda Wang * zh_CN.po: Updated zh_CN translation. 2009-04-08 Mark Krapivner * he.po: Updated Hebrew translation. 2009-04-03 Simos Xenitellis * el.po: Updated Greek translation (Sterios Prosiniklis). 2009-04-03 Baris Cicek * tr.po: Updated Turkish translation. 2009-03-26 Amitakhya Phukan * as.po: Updated Assamese translations. 2009-03-26 Amitakhya Phukan * as.po: Updated Assamese translations. 2009-03-25 Shankar Prasad * kn.po: Updated few correction to Kannada translations. 2009-03-23 Reinout van Schouwen * nl.po: Fixed typo (geluidgen -> geluiden) 2009-03-23 Shankar Prasad * kn.po: Updated Kannada translations. 2008-03-22 Nickolay V. Shmyrev * ru.po: Updated Russian translation. 2009-03-21 Goran Rakic * sr.po, sr@latin.po: Updated Serbian translation by Miloš Popović. 2009-03-18 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2009-03-18 Djihed Afifi * ar.po: Updated Arabic translation by Anas Afif Emad. 2009-03-18 Gabor Kelemen * hu.po: Translation updated. 2009-03-16 Marc-André Lureau * POTFILES.skip: added sound-theme/sounds/mate-sounds-default.xml.in. 2009-03-16 Kostas Papadimas * el.po: Updated Greek Translation by Fotis Tsamis. 2009-03-15 Rajesh Ranjan * mai.po: corrected msgfmt chk for Maithili translation. 2009-03-15 Ignacio Casal Quinteiro * gl.po: Updated Galician translation by Suso Baleato 2009-03-15 Rajesh Ranjan * mai.po: added Maithili translation. * LINGUAS: Added Maithili (mai) to the list of Languages. 2009-03-14 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2009-03-14 Praveen Arimbrathodiyil * ml.po: Malayalam Translation updated by Abhishek Jacob. 2009-03-14 Mișu Moldovan * ro.po: Updated Romanian translation by Adi Roiban. 2009-03-14 Gabor Kelemen * hu.po: Translation updated. 2009-03-14 Kenneth Nielsen * da.po: Updated Danish translation by Ask H. Larsen 2009-03-13 Sandeep Shedmake * mr.po: Updated Marathi Translations. 2009-03-13 felix@redhat.com> * ta.po: Tamil Translation updated 2009-03-13 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation 2009-03-12 Duarte Loreto * pt.po: Updated Portuguese translation. 2009-03-12 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2009-03-12 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2009-03-11 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2009-03-10 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2009-03-10 Ankitkumar Patel * gu.po: Updated Gujarati Translations. 2009-03-10 Tommi Vainikainen * fi.po: Updated Finnish translation. 2009-03-10 Hendrik Richter * de.po: Updated German translation. 2009-03-09 Tomasz Dominikowski * pl.po: Updated Polish translation 2009-03-09 Krishnababu K * te.po: Updated Telugu Translation. 2009-03-08 Yair Hershkovitz * he.po: Updated Hebrew translation. 2009-03-08 Petr Kovar * cs.po: Updated Czech translation. 2009-03-08 Daniel Nylander * sv.po: Updated Swedish translation. 2009-03-07 Jorge Gonzalez * es.po: Updated Spanish translation. 2009-03-07 Milo Casagrande * it.po: Updated Italian translation. 2009-03-07 Gabor Kelemen * hu.po: Translation updated. 2009-03-07 Changwoo Ryu * ko.po: Updated Korean translation. 2009-03-07 Claude Paroz * fr.po: Updated French translation. 2009-03-07 Takeshi AIHANA * ja.po: Updated Japanese translation. 2009-03-07 Wouter Bolsterlee * nl.po: Updated Dutch translation by Wouter Bolsterlee. 2009-03-06 Krishnababu K * te.po: Updated Telugu Translation. 2009-03-06 Philip Withnall * en_GB.po: Updated British English translation. 2009-03-05 Jorge Gonzalez * es.po: Updated Spanish translation 2009-03-05 Gil Forcada * ca.po: Updated Catalan translation. 2009-03-05 Jonh Wendell * pt_BR.po: Updated Brazilian Portuguese translation by Krix Apolinário and myself. 2009-03-05 Manoj Kumar Giri * or.po: Updated Oriya Translation 2009-03-05 Jonh Wendell * POTFILES.in: Updated. 2009-03-03 Claude Paroz * fr.po: Updated French translation. 2009-03-03 Gabor Kelemen * hu.po: Translation updated. ==================== 2.25.92 ==================== 2009-03-02 Priit Laes * et.po: Translation updated by Ivar Smolin 2009-03-01 Og Maciel * it.po: Updated Italian translation by Milo Casagrande. 2009-02-28 Duarte Loreto * pt.po: Updated Portuguese translation. 2009-02-28 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2009-02-26 Changwoo Ryu * ko.po: Updated Korean translation. 2009-02-25 Ihar Hrachyshka * be@latin.po: Updated Belarusian Latin translation by Ihar Hrachyshka. 2009-02-25 Christian Kirbach * de.po: Updated German translation. 2008-09-24 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2009-02-23 Philip Withnall * en_GB.po: Updated British English translation. 2008-09-19 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2009-02-18 Ilkka Tuohela * fi.po: Updated Finnish translation. 2009-02-18 Changwoo Ryu * ko.po: Updated Korean translation. 2009-02-17 Gabor Kelemen * hu.po: Translation updated. 2009-02-17 Jani Monoses * ro.po: Updated Romanian translation by Adi Roiban 2009-02-17 Gil Forcada * ca.po: Updated Catalan translation. 2009-02-17 Sweta Kothari * gu.po: Committed Gujarati Translation. 2009-02-15 Wouter Bolsterlee * nl.po: Updated Dutch translation by Wouter Bolsterlee. 2009-02-15 Kenneth Nielsen * da.po: Updated Danish translation by Ask H. Larsen 2009-02-14 Tomasz Dominikowski * pl.po: Updated Polish translation 2009-02-14 Jani Monoses * ro.po: Updated Romanian translation by Adi Roiban 2009-02-14 Daniel Nylander * sv.po: Updated Swedish translation. 2009-02-14 Takeshi AIHANA * ja.po: Updated Japanese translation. 2009-02-13 Clytie Siddall * vi.po: Updated Vietnamese translation. 2009-02-12 Jorge Gonzalez * es.po: Updated Spanish translation 2009-02-12 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2009-02-11 Daniel Nylander * sv.po: Updated Swedish translation. 2009-02-11 Clytie Siddall * vi.po: Updated Vietnamese translation. 2009-02-10 Jorge Gonzalez * es.po: Updated Spanish translation. 2009-02-10 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2009-02-07 Clytie Siddall * vi.po: Updated Vietnamese translation. 2009-02-07 Gabor Kelemen * hu.po: Translation updated. 2009-02-05 Sweta Kothari * gu.po: Committed Gujarati Translation. 2009-02-05 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2009-01-27 Jorge Gonzalez * es.po: Updated Spanish translation 2009-01-25 Raivis Dejus * lv.po: Updated Latvian translation. 2009-01-25 Changwoo Ryu * ko.po: Updated Korean translation. 2009-01-23 Jorge Gonzalez * es.po: Updated Spanish translation. 2009-01-21 Daniel Nylander * sv.po: Updated Swedish translation. 2009-01-20 Bastien Nocera * POTFILES.in: * POTFILES.skip: Update for distcheck 2009-01-19 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2009-01-18 Jorge Gonzalez * es.po: Updated Spanish translation. 2009-01-16 Thierry Randrianiriana * mg.po: Updated Malagasy translation. 2009-01-08 Leonardo Ferreira Fontenelle * pt_BR.po: Updated Brazilian Portuguese translation. Contributed by Djavan Fagundes. 2009-01-05 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2009-01-04 Raivis Dejus * lv.po: Updated latvian translation 2009-01-03 Priit Laes * et.po: Translation updated by Ivar Smolin 2008-12-26 Jorge Gonzalez * es.po: Updated Spanish translation. 2008-12-21 Jorge Gonzalez * es.po: Updated Spanish translation. 2008-12-20 Claude Paroz * fr.po: Updated French translation. 2008-12-19 Bastien Nocera * POTFILES.in: Add a .desktop file for g-v-c 2008-12-17 Jorge Gonzalez * es.po: Updated Spanish translation. 2008-12-16 William Jon McCann * POTFILES.in: Add missing files. 2008-12-15 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2008-12-15 Jorge Gonzalez * es.po: Updated Spanish translation. 2008-11-14 Jorge Gonzalez * es.po: Updated Spanish translation. 2008-11-08 Jorge Gonzalez * es.po: Updated Spanish translation 2008-11-05 Nickolay V. Shmyrev * ru.po: Updated Russian translation by Anton Shestakov. 2008-11-03 William Jon McCann * POTFILES.in: 2008-11-02 Hendrik Richter * de.po: Updated German translation, fix #556582. 2008-10-19 Djihed Afifi * ar.po: Updated Arabic Translation by Anas Afif Emad. 2008-10-11 Ihar Hrachyshka * be@latin.po: Updated Belarusian Latin translation by Ihar Hračyška. 2008-09-25 Jovan Naumovski * mk.po: Updated Macedonian translation. 2008-09-24 Takeshi AIHANA * ja.po: Fixed wrong translation. 2008-09-23 Laurent Dhima * sq.po: Updated Albanian Translation. 2008-09-21 Kenneth Nielsen * da.po: Updated Danish translation by Kenneth Nielsen 2008-09-22 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2008-09-21 Djihed Afifi * ar.po: Updated Arabic Translation by Anas Afif Emad. 2008-09-21 Takeshi AIHANA * ja.po: Updated Japanese translation. 2008-09-20 Simos Xenitellis * el.po: Updated Greek translation. 2008-09-20 Goran Rakić * sr.po, sr@latin.po: Updated Serbian Translation. 2008-09-19 Tommi Vainikainen * fi.po: Fix from Timo Jyrinki. 2008-09-19 Shankar Prasad * kn.po: Updated Kannada Translation. 2008-09-18 I. Felix * ta.po: Tamil Translation updated 2008-09-18 Shankar Prasad * kn.po: Added Kannada Translation. * LINGUAS: Added kn to list of Languages 2008-09-18 Inaki Larrañaga Murgoitio * eu.po: Updated Basque translation. 2008-09-18 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-18 Gil Forcada * ca.po: Updated Catalan translation. 2008-09-17 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2008-09-15 Gabor Kelemen * hu.po: Translation updated. 2008-09-15 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-15 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2008-09-14 Goran Rakić * sr.po, sr@latin.po: Updated Serbian translation (by Miloš Popović). 2008-09-14 Ilkka Tuohela * fi.po: Updated Finnish translation. 2008-09-14 Baris Cicek * tr.po: Updated Turkish Translation. 2008-09-13 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2008-09-12 Sandeep Shedmake * mr.po: Updated Marathi Translations. 2008-09-11 Robert Sedak * hr.po: Updated Croatian translation. 2008-09-10 Krishnababu K * te.po: Updated Telugu Translation. 2008-09-09 Luca Ferretti * it.po: Updated Italian translation by Milo Casagrande. 2008-09-09 Robert Sedak * hr.po: Updated Croatian translation. 2008-09-08 Tomasz Dominikowski * pl.po: Updated Polish translation 2008-09-08 Robert Sedak * hr.po: Updated Croatian translation. 2008-09-08 Petr Kovar * cs.po: Updated Czech translation. 2008-09-07 Duarte Loreto * pt.po: Updated Portuguese translation. 2008-09-07 Wouter Bolsterlee * nl.po: Updated Dutch translation by Wouter Bolsterlee. 2008-09-06 Philip Withnall * en_GB.po: Updated British English translation. 2008-09-06 Funda Wang * zh_CN.po: Updated zh_CN translation. 2008-09-05 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation 2008-09-04 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2008-09-04 Changwoo Ryu * ko.po: Updated Korean translation. 2008-09-04 Sweta Kothari * gu.po: Committed Gujarati Translation. 2008-09-03 Hendrik Richter * de.po: Updated German translation. 2008-09-02 Ignacio Casal Quinteiro * gl.po: Updated Galician translation 2008-09-02 Daniel Nylander * sv.po: Updated Swedish translation. 2008-09-02 Robert-André Mauchin * fr.po: Updated French translation. 2008-09-02 Jorge Gonzalez * es.po: Updated Spanish translation 2008-09-02 Nguyễn Thái Ngọc Duy * vi.po: Updated Vietnamese translation 2008-09-02 Priit Laes * et.po: Translation updated by Ivar Smolin 2008-09-02 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2008-09-01 Leonardo Ferreira Fontenelle * pt_BR.po: Updated Brazilian Portuguese translation and fixed some terminology. 2008-08-30 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2008-08-29 Seán de Búrca * ga.po: Updated Irish translation. 2008-08-29 Jorge Gonzalez * es.po: Updated Spanish translation 2008-08-28 Petr Kovar * cs.po: Updated Czech translation. 2008-08-27 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation 2008-08-26 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2008-08-25 Daniel Nylander * sv.po: Updated Swedish translation. 2008-08-25 Goran Rakic * LINGUAS, sr@latin.po, sr@Latn.po: Conversion from sr@Latn to sr@latin. 2008-80-24 Arangel Angov * mk.po: Updated Macedonian translation. 2008-08-22 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2008-08-17 Yair Hershkovitz * he.po: Updated Hebrew translation. 2008-08-12 Duarte Loreto * pt.po: Updated Portuguese translation. 2008-08-11 Og Maciel * pt_BR.po: Updated translation by Djavan Fagundes. 2008-08-11 Ilkka Tuohela <> * fi.po: Updated Finnish translation. 2008-08-10 Takeshi AIHANA * ja.po: Updated Japanese translation. 2008-08-02 Leonardo Ferreira Fontenelle * pt_BR.po: Terminology fixes by Fabrício Godoy. 2008-08-01 Sweta Kothari * gu.po: Updated Gujarati Translation by Sweta Kothari 2008-07-29 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-07-27 Leonardo Ferreira Fontenelle * pt_BR.po: Fixed translation of "lock" (by Vladimir Melo). 2008-07-16 Yair Hershkovitz * he.po: Updated Hebrew translation. 2008-07-10 Matej Urbančič * sl.po: Updated Slovenian translation. 2008-07-02 Yannig Marchegay * oc.po: Updated Occitan translation. 2008-06-21 Claude Paroz * fr.po: Updated French translation. 2008-06-11 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-06-11 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2008-06-07 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2008-06-03 Priit Laes * et.po: Translation updated by Ivar Smolin 2008-06-01 Clytie Siddall * vi.po: Updated Vietnamese translation. 2008-06-01 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2008-05-28 Jorge Gonzalez * es.po: Updated Spanish translation 2008-05-25 Clytie Siddall * vi.po: Updated Vietnamese translation. 2008-05-22 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-22 Yair Hershkovitz * he.po: Updated Hebrew translation. 2008-05-21 Ankit Patel * gu.po: Updated Gujarati Translation on behalf of Sweta Kothari. 2008-05-19 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-08 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2008-05-06 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2008-04-29 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. >>>>>>> .r3888 2008-04-19 Daniel Nylander * sv.po: Updated Swedish translation. 2008-04-19 Jorge Gonzalez * es.po: Updated Spanish translation 2008-03-25 Philip Withnall * en_GB.po: Updated British English translation. 2008-03-30 Jorge Gonzalez * es.po: Updated Spanish translation 2008-03-12 Sunil Mohan Adapa * te.po: Added Telugu traslation done by Krishna Babu K . 2008-03-09 Gabor Kelemen * hu.po: Translation updated 2008-03-05 Stéphane Raimbault * fr.po: Updated French translation. 2008-03-05 Rahul Bhalerao * mr.po: Updated Marathi Translations by Sandeep Shedmake. 2008-03-03 Jorge Gonzalez * es.po: Updated Spanish translation 2008-03-03 Vasiliy Faronov * ru.po: Updated Russian translation. 2008-03-03 Changwoo Ryu * ko.po: Updated Korean translation. 2008-03-01 Luca Ferretti * it.po: Updated Italian translation by Milo Casagrande. 2008-02-27 Nikos Charonitakis * el.po: Updated Greek translation. 2008-02-22 Ilkka Tuohela * fi.po: Updated Finnish translation (bug #490774). 2008-02-20 Inaki Larranaga Murgoitio * eu.po: Fixed some term. 2008-02-17 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2008-02-14 Pawan Chitrakar * ne.po: Updated Nepali Translation. 2008-02-01 Amitakhya Phukan * LINGUAS: Added as to LINGUAS. * as.po: Updated assamese translations. 2008-01-31 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-01-25 Petr Kovar * cs.po: Updated Czech translation. 2008-01-25 Petr Kovar * cs.po: Fixed Czech translation. 2008-01-08 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2007-12-31 Yannig Marchegay * oc.po: Updated Occitan translation. 2007-12-08 Jakub Friedl * cs.po: Czech Translation updated by Petr Kovar. 2007-12-01 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2007-11-17 Ihar Hrachyshka * be@latin.po: Updated Belarusian Latin translation. 2007-11-14 Matej Urbančič * sl.po: Updated Slovenian translation. 2007-11-09 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-11-04 Alessio Frusciante * it.po: Updated Italian translation by Milo Casagrande . 2007-11-01 Gil Forcada * ca.po: Updated Catalan translation by Joan Duran. 2007-10-23 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-08 Priit Laes * et.po: Translation update by Ivar Smolin. 2007-09-27 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2007-09-25 Kostas Papadimas * el.po: Updated Greek translation. 2007-09-23 Ihar Hrachyshka * be@latin.po: Added Belarusian Latin translation by Alaksandar Navicki. * LINGUAS: Added be@latin. 2007-09-17 Baris Cicek * tr.po: Updated Turkish translation from Emrah Unal 2007-09-17 Wouter Bolsterlee * nl.po: Translation updated by Wouter Bolsterlee. 2007-09-16 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-09-15 Mugurel Tudor * ro.po: Updated Romanian translation 2007-09-15 Andre Klapper * sk.po: Updated Slovak translation on behalf of Peter Tuharsky . 2007-09-13 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-09-08 Inaki Larranaga Murgoitio * eu.po: Fixed some typos in Basque translation. 2007-09-07 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-09-06 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2007-09-06 Stéphane Raimbault * fr.po: Fixed French translation by Claude Paroz. 2007-09-02 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2007-08-28 Priit Laes * et.po: Estonian translation updates by Ivar Smolin 2007-08-20 Daniel Nylander * sv.po: Updated Swedish translation. 2007-08-20 Stéphane Raimbault * fr.po: Updated French translation. 2007-08-18 Daniel Nylander * sv.po: Updated Swedish translation. 2007-08-17 Stéphane Raimbault * fr.po: Fixed typo found by Claude Paroz. 2007-08-17 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2007-08-16 Priit Laes * et.po: Fixed typo in Estonian translation. 2007-08-16 Ani Peter * ml.po: Updated Malayalam Translation 2007-08-05 Leonardo Ferreira Fontenelle * pt_BR.po: s/_Conteúdo/S_umário; see bug #461308. 2007-08-03 Danishka Navin * si.po: Added Sinhala translation by Danishka Navin * LINGUAS: Added "si". 2007-07-16 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-06-18 I Felix * ta.po: Updated Tamil Translation. 2007-06-08 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2007-06-04 Daniel Nylander * sv.po: Updated Swedish translation. 2007-05-31 Priit Laes * et.po: Updated Estonian translation by Ivar Smolin . 2007-05-22 Yair Hershkovitz * he.po: Updated Hebrew translation. 2007-05-13 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2007-05-06 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2007-04-22 Funda Wang * zh_CN.po: Updated Simplified Chinese translation from Yang Zhang. 2007-04-18 Sven Herzberg * de.po: Fixed German translation 2007-04-15 Christophe Merlet * oc.po: Added Occitan translation from Yannig MARCHEGAY (Kokoyaya) . * LINGUAS: Added "oc". 2007-04-09 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2007-04-05 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation from Espen Stefansen. 2007-04-04 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation 2007-03-29 Claudio Saavedra * es.po: Updated Spanish translation by Jorge González. 2007-03-25 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2007-03-21 Pema Geyleg * dz.po: Updated Dzongkha Translation. 2007-03-12 Goran Rakić * sr.po, sr@Latn.po: Updated Serbian translation. 2007-03-11 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2007-03-11 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation by Jordi Mallach . 2007-03-10 Nickolay V. Shmyrev * ru.po: Updated Russian translation. 2007-03-07 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2007-03-05 Ankit Patel * gu.po: Updated Gujarati Translation. 2007-03-05 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2007-03-05 Jovan Naumovski * mk.po: Updated Macedonian translation. 2007-03-04 Erdal Ronahi * ku.po: Updated Kurdish translation 2007-03-03 Yair Hershkovitz * he.po: Updaed Hebrew translation. 2007-03-03 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2007-03-02 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2007-02-27 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2007-02-27 Priit Laes * et.po: Updated Estonian translation by Ivar Smolin . 2007-02-27 Hendrik Richter * de.po: Updated German translation, by Christian Kintner 2007-02-25 Peter Bach * da.po: Updated Danish translation. 2007-02-25 Matic Zgur * sl.po: Updated Slovenian translation. 2007-02-25 Gabor Kelemen * hu.po: Translation updated. 2007-02-23 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2007-02-23 Nguyễn Thái Ngọc Duy * vi.po: Updated Vietnamese translation 2007-02-22 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2007-02-22 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir Petkov 2007-02-18 Alessio Frusciante * it.po: Updated Italian translation by Milo Casagrande . 2007-02-18 Priit Laes * et.po: Updated Estonian translation by Ivar Smolin . 2007-02-17 Takeshi AIHANA * ja.po: Updated Japanese translation. 2007-02-16 Yair Hershkovitz * he.po: Updated Hebrew translation 2007-02-14 Duarte Loreto * pt.po: Updated Portuguese translation. 2007-02-14 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-02-12 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-02-11 Changwoo Ryu * ko.po: Updated Korean translation by Young-Ho Cha. 2007-02-09 David Lodge * en_GB.po: Updated English (British) translation 2007-02-8 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-02-07 Daniel Nylander * sv.po: Updated Swedish translation. 2007-02-04 Stéphane Raimbault * fr.po: Updated French translation by Jonathan Ernst. 2007-02-04 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation by Og Maciel . 2007-02-04 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2007-02-03 Ihar Hrachyshka * be.po: Updated Belarusian translation. 2007-02-02 Stéphane Raimbault * fr.po: Updated French translation by Robert-André Mauchin, Claude Paroz et Stéphane Raimbault. 2007-01-31 Ihar Hrachyshka * be.po: Updated Belarusian translation. 2007-01-30 Gabor Kelemen * hu.po: Translation updated. 2007-01-29 Priit Laes * et.po: Updated Estonian translation by Ivar Smolin . 2007-01-26 Alexander Shopov * bg.po: Updated Bulgarian translation by Yavor Doganov 2007-01-24 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2007-01-23 David Lodge * en_GB.po: Updated English (British) translation 2007-01-15 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2007-01-15 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-01-13 Djihed Afifi * ar.po: Updated Arabic Translation by Mohamed Magdy. 2007-01-12 Daniel Nylander * sv.po: Updated Swedish translation. * POTFILES.in: Added 1 missing file. 2007-01-09 Daniel Nylander * sv.po: Updated Swedish translation. 2007-01-09 Priit Laes * et.po: Estonian translation update by Ivar Smolin . 2007-01-08 David Lodge * en_GB.po: Updated English (British) translation 2007-01-07 Priit Laes * et.po: Estonian translation update by Ivar Smolin. 2007-01-05 Clytie Siddall * vi.po: Updated Vietnamese translation. 2007-01-3 Djihed Afifi * ar.po: Updated Arabic Translation by Mohamed Magdy. 2006-12-29 David Lodge * en_GB.po: Updated English (British) translation 2006-12-29 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-12-28 Kjartan Maraas * POTFILES.skip: Add some missing files. * nb.po: Updated Norwegian bokmål translation. 2006-12-27 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-12-24 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-12-23 Ales Nyakhaychyk * be.po: Updated Belarusina Translation by Ihar Hrachyshka. 2006-12-22 Daniel Nylander * sv.po: Updated Swedish translation. 2006-12-22 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-12-20 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2006-12-20 Raivis Dejus * lv.po: Updated Latvian Translation. 2006-12-20 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-12-20 Jovan Naumovski * mk.po: Updated Macedonian translation. 2006-12-1 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-19 Wouter Bolsterlee * pl.po: Translation updated by Artur Flinta. 2006-11-18 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-10 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-02 Christophe Merlet * fr.po: Updated French translation. 2006-11-01 Daniel Nylander * sv.po: Updated Swedish translation. 2006-10-30 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-10-30 Satoru SATOH * ja.po: Fixed wrong plural form entries. 2006-10-15 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-10-01 Guilherme de S. Pastore * pt_BR.po: Updated Brazilian Portuguese translation (bug #355852). 2006-09-21 Pawan Chitrakar * ne.po: Updated Nepali Translation 2006-09-10 David Lodge * en_GB.po: Updated English (British) translation. 2006-09-06 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-09-05 Lucas Rocha * pt_BR.po: Updated Brazilian Portuguese translation by Leonardo Ferreira Fontenelle 2006-09-04 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation. 2006-09-01 Jovan Naumovski * mk.po: Updated Macedonian translation. 2006-08-31 Alessio Frusciante * it.po: Updated Italian translation by Milo Casagrande . 2006-08-31 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-08-31 Duarte Loreto * pt.po: Updated Portuguese translation. 2006-08-29 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-08-29 Rahul Bhalerao * LINGUAS: Added an entry for Marathi(mr). * mr.po: Added the file and updated Marathi translation. 2006-08-27 Theppitak Karoonboonyanan * POTFILES.in: Removed mate-cd/eggtrayicon.c * th.po: Updated Thai translation. 2006-08-25 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation. 2006-08-24 Raivis Dejus * lv.po: Updated Latvian translation. 2006-08-24 Abel Cheung * zh_HK.po, zh_TW.po: Updated traditional Chinese translations. 2006-08-22 Daniel Nylander * sv.po: Updated Swedish translation. 2006-08-22 Matic Žgur * sl.po: Updated Slovenian translation. 2006-08-22 Leonid Kanter * ru.po: Updated Russian translation 2006-08-17 Jordi Mas * ca.po: Fixes small mistakes in Catalan translation 2006-08-17 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2006-08-16 Baris Cicek * tr.po: Updated Turkish Translation from Onur Can Cakmak 2006-08-16 Gabor Kelemen * hu.po: Translation updated. 2006-08-15 Sanlig Badral * mn.po: Updated Mongolian translation. 2006-08-14 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2006-08-11 Wouter Bolsterlee * nl.po: Translation updated by Wouter Bolsterlee. 2006-08-07 Inaki Larranaga * eu.po: Fixed some typos. 2006-08-06 Ani Peter * ml.po: Updated Malayalam translation 2006-08-04 Thierry Randrianiriana * mg.po: Added Malagasy translation. * LINGUAS: Added Malagasy 'mg'. 2006-08-01 Jovan Naumovski * mk.po: Updated/fixed Macedonian translation. 2006-07-28 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-07-09 Changwoo Ryu * ko.po: Updated Korean translation by Young-Ho Cha. 2006-07-03 Runa Bhattacharjee * bn_IN.po: Added Bengali India Translation * LINGUAS: Added Bengali India (bn_IN) to the list of languages. 2006-06-29 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-06-27 I. Felix * ta.po: Updated Tamil translation. 2006-06-25 Martin Willemoes Hansen * da.po: Updated Danish translation. 2006-06-15 Hendrik Richter * de.po: Updated German translation. 2006-06-08 Ahmad Riza H Nst * id.po: Updated. 2006-06-05 Gabor Kelemen * hu.po: Translation updated. 2006-06-04 Takeshi AIHANA * ja.po: Updated Japanese translation. 2006-05-28 Pema Geyleg * dz.po: Updated Dzongkha translation. 2006-05-25 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2006-05-24 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-05-21 Benoît Dejean * fr.po: Updated French translation. 2006-05-10 Inaki Larranaga * eu.po: Updated Basque translation. 2006-05-06 Benoît Dejean * fr.po: Updated French translation. 2006-05-01 Hendrik Richter * de.po: Updated German translation. 2006-04-30 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation 2006-04-29 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-04-26 Daniel Nylander * sv.po: Updated Swedish translation. 2006-04-24 Rhys Jones * cy.po: Updated Welsh translation. 2006-04-24 Kostas Papadimas * el.po Updated Greek Translation 2006-04-24 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-04-23 Lukas Novotny * cs.po: Updated Czech translation. 2006-04-23 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2006-04-21 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-04-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-04-21 Laurent Dhima * sq.po: Updated Albanian translation. 2006-04-21 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2006-04-18 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-04-17 Kjartan Maraas * LINGUAS: Remove obsolete entry for no_NO. * no.po: And the translation. 2006-04-17 Josep Puigdemont Casamajó * ca.po: Updated Catalan translation. 2006-04-17 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-04-17 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-04-17 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-04-16 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-04-16 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-04-16 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-04-15 Daniel Nylander * sv.po: Swedish translation updated. 2006-04-15 Vincent van Adrighem * nl.po: Translation updated. 2006-04-14 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2006-04-13 Pema Geyleg * dz.po: Updated Dzongkha translation. 2006-04-09 Daniel Nylander * sv.po: Updated Swedish translation. 2006-04-04 Jérémy Ar Floc'h * br.po: Updated Breton translation. 2006-04-04 Gora Mohanty * or.po: Added Oriya translation. 2006-04-02 Raphael Higino * lv.po: Updated Latvian translation with corrections by Raivis Dejus 2006-04-01 Raphael Higino * lv.po: Updated Latvian translation by Raivis Dejus 2006-03-30 Daniel Nylander * sv.po: Updated Swedish translation. 2006-03-29 Jérémy Ar Floc'h * br.po: Added Breton translation. 2006-03-24 Tommi Vainikainen * dz.po: Added Dzongkha translation from Pema Geyleg. 2006-03-24 Ales Nyakhaychyk * be.po: Updated Belarusian translation by Ihar Hrachyshka. 2006-03-18 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-03-12 Miloslav Trmac * cs.po: Updated Czech translation by Petr Tomeš. 2006-03-09 Ole Laursen * da.po: Updated Danish translation. 2006-03-09 Jordi Mallach * ca.po: Updated Catalan translation. 2006-03-06 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-03-06 Daniel Nylander * sv.po: Updated Swedish translation 2006-03-05 Mugurel Tudor * ro.po: Updated Romanian translation 2006-03-05 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2006-03-03 Maxim Dziumanenko * uk.po: Updated Ukrainian translation. 2006-03-02 Hendrik Richter * de.po: Updated German translation. 2006-02-26 Alessio Frusciante * it.po: Updated Italian translation by Milo Casagrande . 2006-02-25 Rhys Jones * cy.po: Updated Welsh translation. 2006-02-25 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation(Taiwan). * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). 2006-02-23 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2006-02-23 Laurent Dhima * sq.po: Updated Albanian translation. 2006-02-23 Clytie Siddall * ka.po: Added Georgian translation by Alexander Didebulidze . 2006-02-22 Inaki Larranaga * eu.po: Updated Basque translation. 2006-02-22 Leonid Kanter * ru.po: Updated Russian translation 2006-02-21 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2006-02-18 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2006-02-17 Kostas Papadimas * el.po: Updated Greek Translation 2006-02-17 Gabor Kelemen * hu.po: Hungarian translation updated by Mate ORY. 2006-02-17 Satoru SATOH * ja.po: Updated Japanese translation. 2006-02-17 Duarte Loreto * pt.po: Updated Portuguese translation. 2006-02-16 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-02-15 Yair Hershkovitz * he.po: Updated Hebrew translation. 2006-02-15 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-02-13 Miloslav Trmac * cs.po: Updated Czech translation. 2006-02-13 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2006-02-10 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2006-02-07 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-02-07 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-02-07 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-02-05 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-02-03 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2006-02-02 Alexander Shopov * bg.po: Updated Bulgarian translation by Rostislav Raykov 2006-01-31 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-31 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-01-31 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-01-31 Slobodan D. Sredojevic * sr.po, sr@Latn.po: Updated Serbian translation 2006-01-31 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-01-31 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2006-01-30 Theppitak Karoonboonyanan * th.po: Updated Thai translation (merged from BRANCH-GSTREAMER-0-10). 2006-01-27 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2006-01-26 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-23 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-01-22 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-21 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-01-21 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-01-21 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-01-20 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-01-19 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-18 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-01-08 Ilkka Tuohela * fi.po: Updated Finnish translation 2006-01-17 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-01-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-16 Erdal Ronahi * ku.po: Updated Kurdish translation. 2006-01-16 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-01-15 Christian Rose * sv.po: Updated Swedish translation. 2006-01-14 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-01-14 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation(Taiwan). * zh_HK.po: Added Traditional Chinese translation(Hong Kong). 2006-01-13 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2006-01-12 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-01-11 Gabor Kelemen * hu.po: Hungarian translation updated. 2006-01-11 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-11 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2006-01-11 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-01-11 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-10 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-01-09 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-01-04 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-01-03 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-01-02 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2005-12-30 Ilkka Tuohela * fi.po: Updatd Finnish translation 2005-12-30 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-12-29 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-12-28 Marcel Telka * sk.po: Updated Slovak translation. 2005-12-27 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2005-12-26 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-12-25 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-12-25 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-12-25 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-12-23 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-12-14 Inaki Larranaga * eu.po: Updated Basque translation. 2005-12-12 Christophe Merlet * fr.po: Updated French translation. 2005-12-09 Alessio Frusciante * it.po: Updated Italian translation by Luca Ferretti . 2005-12-09 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-12-07 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-12-07 Žygimantas Beručka * lt.po: Oops.. forgot fuzzy entries. 2005-12-07 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-12-06 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-12-06 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-12-04 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same 2005-12-03 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-12-02 Miloslav Trmac * cs.po: Updated Czech translation. 2005-11-30 Marcel Telka * sk.po: Updated Slovak translation. 2005-11-30 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-11-28 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-11-28 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-11-28 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-11-19 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-11-16 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-10-29 Erdal Ronahi * ku.po: Added Kurdish translation. 2005-10-13 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-10-06 Christian Rose * sv.po: Updated Swedish translation. 2005-09-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-09-19 Josep Puigdemont * ca.po: Fixed string in Catalan translation. 2005-09-16 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-09-14 Runa Bhattacharjee * bn.po: Updated Bengali (bn) Translation by Progga 2005-09-12 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-09-08 Inaki Larranaga * eu.po: Updated Basque translation. 2005-09-07 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-09-05 Baris Cicek * tr.po: Updated Turkish Translation 2005-09-02 Josep Puigdemont * ca.po: Reviewed Catalan translation, fixed typos, etc. Mostly by Xavier Conde Rueda . 2005-09-01 Rhys Jones * cy.po: Updated Welsh translation. 2005-08-31 Alessio Frusciante * it.po: Updated Italian translation by Salvatore Isaja . 2005-08-30 Hendrik Richter * de.po: Updated German translation. 2005-08-29 Changwoo Ryu * ko.po: Updated Korean translation by Young-Ho Cha. 2005-08-28 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-08-28 Christophe Merlet * fr.po: Updated French translation. 2005-08-27 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-08-26 Leonid Kanter * ru.po: Updated Russian translation 2005-08-25 Jordi Mallach * ca.po: Updated Catalan translation. 2005-08-24 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-08-23 Gabor Kelemen * hu.po: Hungarian translation updated. 2005-08-22 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2005-08-22 Mugurel Tudor * ro.po: Updated Romanian translation 2005-08-21 Maxim Dziumanenko * uk.po: Updated Ukrainian translation. 2005-08-21 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2005-08-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-08-20 Roozbeh Pournader * fa.po: Updated Persian translation by Alireza Kheirkhahan , Meelad Zakaria , and myself. 2005-08-18 Mugurel Tudor * ro.po: Updated Romanian translation 2005-08-17 Priit Laes * et.po: Translation updated. 2005-08-17 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation. 2005-08-16 Laurent Dhima * sq.po: Updated Albanian translation. 2005-08-14 Mugurel Tudor * ro.po: Updated Romanian translation 2005-08-14 Terance Sola * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2005-08-13 Mohammad DAMT * id.po: Updated Indonesian translation 2005-08-13 Kostas Papadimas * el.po Updated Greek Translation 2005-08-12 Mohammad DAMT * id.po: Updated Indonesian translation 2005-08-08 Danilo Šegan * sr.po, sr@Latn.po: Updated by Igor Nestorović. 2005-08-06 Alexander Shopov * bg.po: Updated Bulgarian translation by Philip Dimitrov 2005-08-07 Guilherme de S. Pastore * pt_BR.po: fixed HIG compliance by pushing the verbs in the Comment in the .desktop file to the imperative form, as well as some other minor fixes. 2005-08-02 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-08-02 Nikos Charonitakis * el.po: Updated Greek translation. 2005-08-01 Vincent van Adrighem * nl.po: Translation updated. 2005-07-31 Ilkka Tuohela * fi.po: Bulk updates to Finnish translation for new mate.fi website. 2005-07-30 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-07-28 Ilkka Tuohela * fi.po: Bulk change to some Finnish translations. 2005-07-27 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-07-24 Ilkka Tuohela * fi.po: Updated Finnish translation. 2005-07-24 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same 2005-07-23 Miloslav Trmac * cs.po: Updated Czech translation. 2005-07-23 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-07-22 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-07-22 Žygimantas Beručka * lt.po: Updated Lithuanian translation by Justina Klingaitė. 2005-07-21 Gabor Kelemen * hu.po: Hungarian translation updated. 2005-07-21 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-07-20 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-07-19 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-07-18 Marcel Telka * sk.po: Updated Slovak translation. 2005-07-18 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-07-18 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-07-18 Priit Laes * et.po: Translation updated. 2005-07-17 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-07-15 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-07-10 Miloslav Trmac * cs.po: Updated Czech translation. 2005-07-06 Marcel Telka * sk.po: Updated Slovak translation. 2005-07-06 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-07-04 Hendrik Richter * de.po: Fixed German translation by Jens Seidel . 2005-07-03 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-07-03 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-07-03 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-07-02 Priit Laes * et.po: Translation updated. 2005-07-02 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-07-02 Priit Laes * et.po: Translation updated. 2005-06-22 Abel Cheung * zh_TW.po: Fix language team reference. 2005-06-20 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2005-06-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-06-15 Alexander Shopov * bg.po: Updated Bulgarian translation by Rostislav Raykov 2005-06-15 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-06-15 Jordi Mallach * ca.po: Updated Catalan translation. 2005-06-14 Marcel Telka * sk.po: Updated Slovak translation. 2005-06-12 Miloslav Trmac * cs.po: Updated Czech translation. 2005-06-12 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-06-10 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-06-10 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-06-09 Terance Sola * nb.po: Updated Norwegian translation * no.po: Same as above 2005-06-09 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-06-09 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-06-08 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-06-08 Sebastien Bacher * POTFILES.in: removed obsolete file. 2005-06-08 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir Petkov 2005-05-27 Pawan Chitrakar * ne.po: Updated Nepali Translation 2005-05-11 Kostas Papadimas * el.po Updated Greek Translation 2005-05-04 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-05-03 Priit Laes * et.po: Translation updated. 2005-04-15 Miloslav Trmac * cs.po: Updated Czech translation. 2005-04-12 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-04-07 Gareth Owen * en_GB.po: Updated British English translation. 2005-03-31 Steve Murphy * rw.po: Added Kinyarwanda translation. 2005-03-30 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-03-30 Adi Attar * xh.po: Updated Xhosa translation. 2005-03-29 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-03-29 Frank Arnold * POTFILES.in: Removed missing file and added new ones. * de.po: Updated German translation. 2005-03-22 Adi Attar * xh.po: Added Xhosa translation. 2005-03-12 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-03-07 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from MATE HK Team 2005-03-07 Mugurel Tudor * ro.po: Updated Romanian translation. 2005-03-06 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2005-03-05 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2005-03-04 Christophe Merlet * fr.po: Updated French translation from Baptiste Mille-Mathias . 2005-03-04 Laszlo Dvornik * hu.po: Hungarian translation updated by Gabor Kelemen. 2005-03-03 Baris Cicek * tr.po: Updated Turkish Translation by Furkan Duman 2005-03-02 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-02-28 Kostas Papadimas * el.po: Updated Greek translation. 2005-02-25 Nikos Charonitakis * el.po: Updated Greek translation. 2005-02-25 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir Petkov 2005-02-23 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-02-23 Ankit Patel * gu.po: Updated Gujarati Translation. 2004-02-22 Roozbeh Pournader * fa.po: Updated Persian translation by Sara Khalatbari . 2004-02-22 Leonid Kanter * ru.po: Updated Russian translation 2005-02-22 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2005-02-22 Miloslav Trmac * cs.po: Updated Czech translation. 2005-02-22 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-02-21 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-02-21 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-02-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-20 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-02-18 Marcel Telka * sk.po: Updated Slovak translation. 2005-02-18 Kostas Papadimas * el.po: Updated Greek translation 2005-02-18 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-02-17 Ilkka Tuohela * Updated Finnish translation. 2005-02-18 Changwoo Ryu * ko.po: Updated Korean translation. 2005-02-17 Hendrik Richter * de.po: Updated German translation. 2005-02-17 Laurent Dhima * sq.po: Updated Albanian translation. 2005-02-17 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-02-16 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-02-16 Francisco Javier Fernandez * es.po: Updated Spanish translation. 2005-02-16 Maxim Dziumanenko * uk.po: Updated Ukrainian translation. 2005-02-16 Kjartan Maraas * nb.po: 2005-02-15 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-02-15 David Lodge * en_GB.po: Update English (British) translation. 2005-02-15 Jordi Mallach * ca.po: Updated Catalan translation. 2005-02-14 Christian Rose * sv.po: Updated Swedish translation. 2005-02-14 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2005-02-14 Hendrik Richter * de.po: Updated German translation. 2005-02-14 Laurent Dhima * sq.po: Updated Albanian translation. 2005-02-14 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-02-13 David Lodge * en_GB.po: Updated British translation. 2005-02-13 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2005-02-13 Priit Laes * et.po: Translation updated. 2005-02-13 Miloslav Trmac * cs.po: Updated Czech translation. 2005-02-12 Marcel Telka * sk.po: Updated Slovak translation. 2005-02-11 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-02-11 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-02-11 Christian Rose * POTFILES.in: Added UTF-8 keyword. * sv.po: Updated Swedish translation. 2005-02-09 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-07 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-06 Miloslav Trmac * cs.po: Updated Czech translation. 2005-02-05 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-02-04 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-02-04 Miloslav Trmac * cs.po: Updated Czech translation. 2005-02-04 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-04 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-02-04 Changwoo Ryu * ko.po: Updated Korean translation. 2005-02-02 Alessio Frusciante * it.po: Updated Italian translation by Salvatore Isaja . 2005-02-02 Laurent Dhima * sq.po: Updated Albanian translation. 2005-01-31 Alessio Frusciante * it.po: Updated Italian translation by Salvatore Isaja . 2005-01-31 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-01-30 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-01-29 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-01-29 Marcel Telka * sk.po: Updated Slovak translation. 2005-01-28 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-01-28 Kjartan Maraas * nb.po: Update * no.po: Update 2005-01-28 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2005-01-28 Miloslav Trmac * cs.po: Updated Czech translation. 2005-01-28 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-01-28 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-01-26 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-01-26 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-01-26 Marcel Telka * sk.po: Updated Slovak translation. 2005-01-25 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-01-25 Hendrik Richter * de.po: Updated German translation. 2005-01-23 Christian Rose * .cvsignore: Added notexist file. 2005-01-23 Christian Rose * POTFILES.skip: Removed no longer existing files. * sv.po: Updated Swedish translation. 2005-01-22 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-01-21 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites. 2005-01-21 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-01-20 Miloslav Trmac * cs.po: Updated Czech translation. 2005-01-20 Frank Arnold * de.po: Updated German translation. 2005-01-19 Marcel Telka * sk.po: Updated Slovak translation. 2005-01-18 Priit Laes * et.po: Translation updated. 2005-01-15 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-01-15 Kjartan Maraas * POTFILES.skip: Add some files to avoid noise. * nb.po: Update * no.po: Update 2005-01-15 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-01-11 Kjartan Maraas * nb.po: Update * no.po: Update 2005-01-09 Sven Herzberg * de.po: Fixed a Typo 2005-01-07 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-01-04 Rajeev Shrestha * ne.po: Updated Nepali Translation 2005-01-03 Kostas Papadimas * el.po: Updated Greek translation 2004-12-31 Christian Rose * sv.po: Updated Swedish translation. 2004-12-29 Pawan Chitrakar * ne.po: Added Nepali Translation 2004-12-23 Leonid Kanter * ru.po: Updated Russian translation 2004-12-22 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir Petkov 2004-12-17 Laurent Dhima * sq.po: Updated Albanian translation. 2004-12-13 David Lodge * en_GB.po: Updated British translation. 2004-12-12 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-12-11 Miloslav Trmac * cs.po: Updated Czech translation. 2004-12-11 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-12-08 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-12-07 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-12-05 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-12-03 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-11-29 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-11-28 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-11-26 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-11-26 Miloslav Trmac * cs.po: Updated Czech translation. 2004-11-25 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-11-16 Hendrik Richter * de.po: Updated German translation. 2004-11-14 David Lodge * en_GB.po: Updated British translation. 2004-11-11 Laurent Dhima * sq.po: Updated Albanian translation. 2004-11-09 Miloslav Trmac * cs.po: Updated Czech translation. 2004-11-08 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2004-11-06 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-11-05 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-11-05 Laurent Dhima * sq.po: Updated Albanian translation. 2004-11-03 Miloslav Trmac * cs.po: Updated Czech translation. 2004-11-02 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-10-31 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2004-10-29 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites. 2004-10-15 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-10-09 Laurent Dhima * sq.po: Updated Albanian translation. 2004-10-03 David Lodge * en_GB.po: Updated British English translation. 2004-10-03 Miloslav Trmac * cs.po: Updated Czech translation. 2004-10-01 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-09-29 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-09-12 Theppitak Karoonboonyanan * th.po: Applied 'msgmerge' with current POT. The last commit was for an old version. 2004-09-12 Laszlo Dvornik * hu.po: Updated Hungarian translation by Gabor Kelemen. 2004-09-12 Supranee Thirawatthanasuk * th.po: Updated Thai translation 2004-09-11 Dafydd Harries * cy.po: Updated Welsh translation. 2004-09-10 Nikos Charonitakis * el.po: Updated Greek translation. 2004-09-08 Mugurel Tudor * ro.po: Updated Romanian translation 2004-09-06 Kostas Papadimas * el.po: Updated Greek translation 2004-09-05 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-09-05 Miloslav Trmac * cs.po: Updated Czech translation. 2004-09-04 Mətin Əmirov * az.po: Translation updated. 2004-09-04 Miloslav Trmac * cs.po: Updated Czech translation. 2004-09-03 Baris Cicek * tr.po: Updated Turkish Translation 2004-09-03 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2004-09-02 Nikos Charonitakis * el.po: Updated Greek translation. 2004-09-01 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-08-31 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-08-31 Miloslav Trmac * cs.po: Updated Czech translation. 2004-08-31 Maxim Dziumanenko * uk.po: Updated Ukrainian translation. 2004-08-31 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-08-31 Arafat Medini * ar.po: Updated Arabic translation. 2004-08-28 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-08-28 Akagic Amila * bs.po: Added Bosnian translation. 2004-08-24 Jarkko Ranta * fi.po: Updated Finnish translation. 2004-08-21 Jordi Mallach * ca.po: Updated Catalan translation. 2004-08-20 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-20 Maxim Dziumanenko * uk.po: Updated Ukrainian translation. 2004-08-18 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-17 Christian Rose * sv.po: Updated Swedish translation. 2004-08-17 Jarkko Ranta * fi.po: Updated Finnish translation. 2004-08-16 Kjartan Maraas * nb.po: Add this. 2004-08-12 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-08-07 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-08-06 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-08-02 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-08-02 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-07-31 Martin Willemoes Hansen * da.po: Updated Danish translation 2004-08-01 Changwoo Ryu * ko.po: Updated Korean translation. 2004-07-31 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-07-05 Francisco Javier F. Serrador * es.po: updated by Lucas Vieites 2004-07-28 Laurent Dhima * sq.po: Updated Albanian translation. 2004-07-27 Alexander Shopov * bg.po: Updated Bulgarian translation by Rostislav "zbrox" Raykov 2004-07-21 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2004-07-14 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation done by Raphael Higino . 2004-07-08 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir "Kaladan" Petkov 2004-07-05 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Lucas Vieites 2004-07-04 Andras Timar * hu.po: Updated Hungarian translation. 2004-07-04 Christiam Neumair * de.po: Updated German translation. 2004-06-29 Laurent Dhima * sq.po: Translation updated. 2004-06-28 Laurent Dhima * sq.po: Translation updated. 2004-06-21 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2004-06-20 Gareth Owen * en_GB.po: Updated British English translation 2004-06-20 Miloslav Trmac * cs.po: Updated Czech translation. 2004-06-11 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-06-03 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-05-31 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-05-30 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-05-29 Dinesh Nadarajah * ta.po: Updated Tamil Translation 2004-05-29 Christian Rose * tk.po: Added Turkmen translation by Gurban Mühemmet Tewekgeli . 2004-05-27 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-05-25 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-05-24 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-05-24 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-05-18 Gareth Owen * en_GB.po: Updated British English translation 2004-05-16 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-05-15 Baris Cicek * tr.po: Updated Turkish Translation 2004-05-13 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-05-11 Laurent Dhima * sq.po: Updated Albanian translation. 2004-05-11 Miloslav Trmac * cs.po: Updated Czech translation. 2004-04-15 Andras Timar * hu.po: Updated Hungarian translation. 2004-04-15 Theppitak Karoonboonyanan * th.po: Fix spellings. 2004-04-14 Iñaki Larrañaga * eu.po: Updated Basque translation. 2004-04-09 Guntupalli Karunakar * gu.po: Added Gujurati translation by Gujarati Team . 2004-03-30 Pablo Saratxaga * wa.po: Updated Walloon file 2004-03-29 Jordi Mallach * ca.po: Updated Catalan translation. 2004-03-28 Robert Sedak * hr.po: Updated Croatian translation. 2004-03-26 Andras Timar * hu.po: Updated Hungarian translation. 2004-03-23 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-03-22 Guntupalli Karunakar * pa.po: Punjabi translation by Jaswinder Singh Phulewala . 2004-03-22 Dmitry G. Mastrukov * ru.po: Updated Russian translation from Russian team . 2004-03-21 Alastair McKinstry * ga.po: Updated Irish translation. 2004-03-21 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from Woodman Tuen . 2004-03-20 Gareth Owen * en_GB.po: Updated British translation 2004-03-19 Andras Timar * hu.po: Updated Hungarian translation. 2004-03-19 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2004-03-18 Arafat Medini * ar.po: Updated Arabic translation. 2004-03-17 Dafydd Harries * cy.po: Updated Welsh translation from Dafydd Tomos. 2004-03-15 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-03-14 Abel Cheung * ar.po: Mark wrong entry as fuzzy (msgfmt check failed). 2004-03-14 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from Woodman Tuen . 2004-03-13 Ales Nyakhaychyk * be.po: Updated Belarusian translation. 2004-03-13 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2004-03-13 Christophe Merlet * fr.po: Updated French translation. 2004-03-12 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation done by Raphael Higino . 2004-03-11 Alexander Winston * en_CA.po: Added Canadian English translation. 2004-03-11 Alessio Frusciante * it.po: Updated Italian translation. 2004-03-11 Miloslav Trmac * cs.po: Updated Czech translation. 2004-03-08 Ole Laursen * da.po: Updated Danish translation. 2004-03-08 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-03-08 Sanlig Badral * mn.po: Updated Mongolian translation. 2004-03-07 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2004-03-07 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-03-06 Mətin Əmirov * az.po: Translation updated. 2004-03-06 Jarkko Ranta * fi.po: Updated finnish translation. 2004-03-06 Priit Laes * et.po: Translation updated. 2004-03-05 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites. 2004-03-05 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-03-04 Christiam Neumair * de.po: Updated German translation. 2004-03-03 Artur Flinta * pl.po: Updated Polish translation. 2004-03-02 Kostas Papadimas * el.po: Updated Greek translation. 2004-03-01 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-03-01 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-03-01 Miloslav Trmac * cs.po: Updated Czech translation. 2004-03-01 Laurent Dhima * sq.po: Updated Albanian translation. 2004-03-01 Changwoo Ryu * ko.po: Updated Korean translation. 2004-03-01 Christian Rose * sv.po: Updated Swedish translation. 2004-02-29 Christophe Merlet * fr.po: Updated French translation. 2004-02-28 Francisco Javier F. Serrador * es.po: Updated Spansih translation. 2004-02-28 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-02-28 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-02-27 Priit Laes * et.po: Translation updated by T?ivo Leedj?rv. 2004-02-26 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-02-26 Vincent van Adrighem * nl.po: Translation updated by Reinout van Schouwen. 2004-02-25 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-02-25 Laurent Dhima * sq.po: Updated Albanian translation. 2004-02-25 Artur Flinta * pl.po: Updated Polish translation. 2004-02-25 Miloslav Trmac * cs.po: Updated Czech translation. 2004-02-24 Alastair McKinstry * ga.po: Updated Irish translation. 2004-02-24 Artur Flinta * pl.po: Updated Polish translation. 2004-02-24 Kostas Papadimas * el.po: Updated Greek translation. 2004-02-25 Changwoo Ryu * ko.po: Updated Korean translation. 2004-02-24 Miloslav Trmac * cs.po: Updated Czech translation. 2004-02-24 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-02-23 Ole Laursen * da.po: Updated Danish translation. 2004-02-23 Laurent Dhima * sq.po: Updated Albanian translation. 2004-02-23 Christian Rose * sv.po: Updated Swedish translation. 2004-02-23 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2004-02-23 Kostas Papadimas * el.po: Updated Greek translation. 2004-02-21 Paisa Seeluangsawat * th.po: Added Thai translation by Sawit Kasuriya, Sapa, and Chanchai Junlouchai. 2040-02-21 Jarkko Ranta * fi.po: Updated Finnish translation. 2004-02-20 Sanlig Badral * mn.po: Updated Mongolian translation. 2004-02-20 Laurent Dhima * sq.po: Fixed Albanian translation. 2004-02-20 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-02-17 Alessio Frusciante * it.po: Updated Italian translation by Salvatore Isaja . 2004-02-17 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-02-16 Laurent Dhima * sq.po: Updated Albanian translation. 2004-02-13 Christian Rose * sv.po: Updated Swedish translation. 2004-02-13 Alessio Frusciante * it.po: Updated Italian translation. 2004-02-12 Arafat Medini * ar.po: Updated faulty Arabic translation. 2004-02-11 Arafat Medini * ar.po: Updated Arabic translation. 2004-02-09 Nikos Charonitakis * el.po: Updated Greek translation. 2004-02-07 Changwoo Ryu * ko.po: Updated Korean translation. 2004-02-06 Robert Sedak * hr.po: Updated Croatian translation. 2004-02-06 Sanlig Badral * mn.po: Updated Mongolian translation. 2004-02-01 Mətin Əmirov * az.po: Translation updated. 2004-02-01 Laurent Dhima * sq.po: Updated Albanian translation. 2004-01-31 Mətin Əmirov * az.po: Translation updated. 2004-01-29 Kjartan Maraas * POTFILES.skip: Add some generated files. * no.po: Updated Norwegian translation. 2004-01-28 Miloslav Trmac * cs.po: Fixed Czech translation. 2004-01-27 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-01-27 Christophe Merlet * fr.po: Updated French translation. 2004-01-22 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-01-21 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-01-18 Christiam Neumair * de.po: Updated German translation. 2004-01-15 Laurent Dhima * sq.po: Updated Albanian translation. 2004-01-14 Francisco Javier F. Serrador * es.po: Updated spanish translation by Lucas Vieites 2004-01-13 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-01-13 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-01-13 Miloslav Trmac * cs.po: Updated Czech translation. 2004-01-13 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2004-01-13 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-01-12 Miloslav Trmac * cs.po: Updated Czech translation. 2004-01-10 Changwoo Ryu * ko.po: Updated Korean translation. 2004-01-10 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. * POTFILES.in: Added missing files. 2004.01.09 Arafat Medini * ar.po: Updated Arabic translation 2004-01-09 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2004-01-06 Miloslav Trmac * cs.po: Updated Czech translation. 2004-01-06 Jarkko Ranta * fi.po: Updated Finnish translation. 2004-01-05 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites. 2004-01-04 Duarte Loreto * pt.po: Updated and revised Portuguese translation. 2004-01-04 Christiam Neumair * de.po: Updated German translation. 2004-01-04 Christophe Merlet * fr.po: Updated French translation. 2004-01-03 Robert Sedak * hr.po: Updated Croatian translation. 2004-01-02 Sanlig Badral * mn.po: Updated Mongolian translation. 2003-12-31 Artur Flinta * pl.po: Updated Polish translation by MATE PL Team. 2003-12-27 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2003-12-26 Kostas Papadimas * el.po: Updated Greek translation. 2003-12-23 Laurent Dhima * sq.po: Updated Albanian translation. 2003-12-23 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2003-12-20 Arafat Medini * ar.po: Updated Arabic translation 2003-12-20 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites. 2003-12-20 Takeshi AIHANA * ja.po: Updated Japanese translation. 2003-12-18 Danilo Šegan * sr.po, sr@Latn.po: Cleaned up Serbian translation. 2003-12-15 Miloslav Trmac * cs.po: Updated Czech translation. 2003-12-15 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-12-14 Miloslav Trmac * cs.po: Updated Czech translation. 2003-12-14 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. * POTFILES.in: Added missing files. 2003-12-12 Francisco Javier F. Serrador * es.po: Updated Spanish translation by Lucas Vieites 2003-11-28 Miloslav Trmac * cs.po: Updated Czech translation. 2003-11-17 Jordi Mallach * ca.po: Updated Catalan translation. 2003-11-12 Kostas Papadimas * el.po: Updated Greek translation. 2003-11-05 Vincent van Adrighem * nl.po: Dutch translation updated by Vincent van Adrighem. 2003-11-01 KAMAGASAKO Masatoshi * ja.po: Updated Japanese translation. 2003-10-26 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-10-25 Ole Laursen * da.po: Updated Danish translation. 2003-10-11 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2003-10-04 Miloslav Trmac * cs.po: Fixed bugs in Czech translation. 2003-09-29 Gustavo Maciel Dias Vieira * pt_BR.po: Applied revision by Augusta Marques da Silva . 2003-09-17 Fatih Demir * ta.po: Committed new Tamil translation by Dinesh. 2003-09-16 Artur Flinta * pl.po: Updated Polish translation. 2003-09-15 Alessio Frusciante * it.po: Fixed typo (bug #122048). 2003-09-14 Andras Timar * hu.po: Updated Hungarian translation. 2003-09-13 Fatih Demir * tr.po: Committed updated Turkish translation by Gorkem. 2003-09-11 Yuriy Syrota * uk.po: Updated Ukrainian translation. 2003-09-09 Taneem Ahmed * bn.po: Updated Bangla (Bengali) translation. 2003-09-10 Roozbeh Pournader * en_GB.po: Converted to UTF-8. 2003-09-07 Nikos Charonitakis * el.po: A few fixes for Greek translation 2003-09-07 Nikos Charonitakis * el.po: Review of Greek translation 2003-09-07 Pablo Saratxaga * vi.po: Updated Vietnamese file 2003-09-05 Jordi Mallach * ca.po: Updated Catalan translation. 2003-09-05 Taneem Ahmed * bn.po: Added Bangla translation by Sayamindu of Ankur group . 2003-09-05 Abel Cheung * eu.po, gl.po, lt.po: Converted to UTF-8. 2003-09-04 Ivan Stojmirov * mk.po: Updated Macedonian translation. 2003-09-03 Jarkko Ranta * fi.po: Updated Finnish translation again. 2003-09-02 Jarkko Ranta * fi.po: Updated Finnish translation. 2003-09-02 Mugurel Tudor * ro.po: Updated Romanian translation. 2003-09-01 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2003-08-30 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-08-28 Pablo Gonzalo del Campo * es.po: Revision of Spanish translation by Francisco Javier F. Serrador . 2003-08-27 Alessio Frusciante * it.po: Updated Italian translation. 2003-08-27 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-08-26 Dafydd Harries * cy.po: Updated Welsh translation. 2003-08-25 Duarte Loreto * pt.po: Fixed typos and accels in Portuguese translation. 2003-08-24 Sanlig Badral * mn.po: Updated Mongolian translation. 2003-08-23 Changwoo Ryu * ko.po: Updated Korean translation. 2003-08-22 Kjartan Maraas * no.po: Update Norwegian translation. 2003-08-19 Yanko Kaneti * bg.po: Updated Bulgarian translation by Evgeni Boevski. 2003-08-18 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-08-13 Danilo Šegan * be.po: Updated Belarusian translation by Ales Nyakhaychyk . 2003-08-09 Laurent Dhima * sq.po: Updated Albanian translation. 2003-08-08 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-08-08 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2003-08-08 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2003-08-07 Christophe Merlet * fr.po: Updated French translation. 2003-08-07 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by Funda Wang . 2003-08-07 Vincent van Adrighem * nl.po: Dutch translation updated by Reinout van Schouwen. 2003-08-06 Ole Laursen * da.po: Updated Danish translation. 2003-08-03 Kostas Papadimas * el.po: Updated Greek translation. 2003-08-02 Telsa Gwynne * cy.po: More typo fixes. 2003-08-01 Telsa Gwynne * cy.po: Typo fixes. 2003-07-31 Christophe Merlet * fr.po: Updated French translation. 2003-07-29 Christian Rose * sv.po: Updated Swedish translation. 2003-07-27 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-07-27 Jordi Mallach * ca.po: Updated Catalan translation. 2003-07-26 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2003-07-25 Pablo Saratxaga * vi.po: Updated Vietnamese file * ms.po: Fixed syntax error 2003-07-24 Dafydd Harries * cy.po: Updated Welsh translation. 2003-07-23 Christian Neumair * de.po: Updated German translation. 2003-07-23 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-07-22 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Yelitza Louze 2003-07-22 Danilo Segan * sr.po, sr@Latn.po: Updated Serbian translation by Serbian team (Prevod.org). 2003-07-22 Miloslav Trmac * cs.po: Updated Czech translation. 2003-07-22 Takeshi AIHANA * ja.po: Updated Japanese translation. 2003-07-21 Artur Flinta * pl.po: Updated Polish translation. 2003-07-20 Changwoo Ryu * ko.po: Updated Korean translation. 2003-07-20 Telsa Gwynne * cy.po: Updated Welsh translation from Owain Green, Dafydd Jones, Steve Griffiths and Dafydd Harries. And I did one too :) 2003-07-19 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-07-19 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2003-07-17 Miloslav Trmac * cs.po: Updated Czech translation. 2003-07-17 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-07-17 Artur Flinta * pl.po: Updated Polish translation. 2003-07-17 Artur Flinta * pl.po: Updated Polish translation. 2003-07-16 Miloslav Trmac * cs.po: Updated Czech translation. 2003-07-16 Christian Neumair * de.po: Updated German translation. 2003-07-15 Miloslav Trmac * cs.po: Updated Czech translation. 2003-07-15 Christian Rose * POTFILES.in: Added missing file. * sv.po: Updated Swedish translation. 2003-07-13 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-07-11 Kjartan Maraas * no.po: Updated Norwegian translation. 2003-07-10 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-07-06 Andras Timar * hu.po: Updated Hungarian translation. 2003-07-02 Artur Flinta * pl.po: Updated Polish translation. 2003-06-30 Pauli Virtanen * fi.po: Set translator_credits. 2003-06-30 Mohammad DAMT * id.po: Added Indonesian translation 2003-06-26 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2003-06-23 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-06-16 Dmitry G. Mastrukov * ru.po: Updated Russian translation from Russian team . 2003-06-04 Jordi Mallach * ca.po: Updated Catalan translation. 2003-06-04 Christian Neumair * de.po: Updated German translation. 2003-05-28 Vincent van Adrighem * nl.po: Dutch translation updated by Reinout van Schouwen. 2003-05-26 Paul Duffy * ga.po: Updated Irish Translation 2003-05-22 Danilo ? egan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-05-20 Danilo ? egan * sr.po, sr@Latn.po: Added Serbian translation by Serbian team (Prevod.org). 2003-05-16 Laurent Dhima * sq.po: Updated Albanian translation. 2003-05-13 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-01-14 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2003-05-12 Christophe Merlet * fr.po: Updated French translation. 2003-05-11 KAMAGASAKO Masatoshi * ja.po: Updated Japanese translation. 2003-05-07 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2003-05-07 Christian Rose * sv.po: Updated Swedish translation. 2003-05-06 Changwoo Ryu * ko.po: Updated Korean translation. 2003-05-05 Miloslav Trmac * cs.po: Updated Czech translation. 2003-05-05 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-04-29 Miloslav Trmac * cs.po: Updated Czech translation. 2003-04-24 Abel Cheung * POTFILES.skip: Remove non-existant file(s). 2003-03-29 Takeshi AIHANA * ja.po: Updated Japanese translation. 2003-03-21 Guntupalli Karunakar * ml.po: Added Malayalam translation by FSF-India 2003-03-13 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2003-03-13 Sanlig Badral * mn.po: Updated Mongolian translation. 2003-03-11 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-03-10 Takeshi AIHANA * ja.po: Updated Japanese translation by KAMAGASAKO Masatoshi . 2003-03-07 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-03-05 Kostas Papadimas * el.po: Updated Greek translation. 2003-03-04 Jarkko Ranta * fi.po: Updated Finnish translation 2003-03-03 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-03-03 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2003-02-27 Vincent van Adrighem * nl.po: Dutch translation updated by Reinout van Schouwen. 2003-02-26 Ole Laursen * da.po: Updated Danish translation. 2003-02-26 Miloslav Trmac * cs.po: Updated Czech translation. 2003-02-25 Pablo Gonzalo del Campo * es.po: Updated one string in Spanish translation. 2003-02-25 Jordi Mallach * ca.po: Updated Catalan translation. 2003-02-24 Christian Neumair * de.po: Updated German translation. 2003-02-23 Christian Rose * sv.po: Updated Swedish translation. 2003-02-23 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-02-23 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-02-22 Laurent Dhima * sq.po: Updated Albanian translation 2003-02-22 Christophe Merlet * fr.po: Updated French translation. 2003-02-22 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2003-02-22 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-02-22 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-02-21 Roozbeh Pournader * fa.po: Added Persian translation. 2003-02-21 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-02-18 Vincent van Adrighem * nl.po: Dutch translation updated by Vincent van Adrighem. 2003-02-13 Vincent van Adrighem * nl.po: Dutch translation updated by Vincent van Adrighem. 2003-02-11 Fatih Demir * tr.po: Committed updated Turkish translation by Arman. 2003-02-07 Miloslav Trmac * cs.po: Fixed typo in Czech translation. 2003-02-03 Daniel Yacob * am.po: Updated Amharic translation. 2003-02-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-02-01 Christian Neumair * de.po: Updated German translation. 2003-01-30 Fatih Demir * tr.po: Committed updated Turkish translation by Gorkem. 2003-01-30 Christian Rose * sv.po: Some fixes for problems catched in translation review. 2003-01-29 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-01-29 Laurent Dhima * sq.po: Added Albanian translation. 2003-01-28 Yuriy Syrota * uk.po: Updated Ukrainiann translation by Maxim Dzumanenko . 2003-01-28 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-01-28 Jarkko Ranta * fi.po: Updated Finnish translation. 2003-01-26 T???µivo Leedj??€rv * et.po: Updated Estonian translation. 2003-01-26 Daniel Yacob * am.po: Updated Amharic translation. 2003-01-26 Kang Jeong-Hee * ko.po: Updated Korean translation. 2003-01-26 He Qiangqiang * zh_CN.po: Updated Simplified Chinese translation by Xiong Jiang . 2003-01-25 Christophe Merlet * fr.po: Updated French translation. 2003-01-25 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2003-01-23 Jordi Mallach * ca.po: Updated Catalan translation. 2003-01-22 Christian Rose * mn.po: Added Mongolian translation by Sanlig Badral . 2003-01-22 Marius Andreiana * ro.po: updated ( thanks to Mugurel Tudor ) 2003-01-22 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-01-22 Alessio Frusciante * it.po: Updated Italian translation 2003-01-21 Christian Neumair * de.po: Updated German translation. 2003-01-21 Kjartan Maraas * no.po: Updated Norwegian (bokmal) translation. 2003-01-20 Pablo Saratxaga * vi.po: Updated Vietnamese file 2003-01-20 Christian Neumair * de.po: Updated German translation. 2003-01-19 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2003-01-18 Yanko Kaneti * bg.po: Updated Bulgarian translation by Evgeni Boevski . 2003-01-16 Gustavo Noronha Silva * pt_BR.po: updated translation. 2003-01-16 Pablo Saratxaga * vi.po: Updated Vietnamese file 2003-01-14 Daniel Yacob * am.po: Updated Amharic translation. 2003-01-14 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-01-11 Daniel Yacob * am.po: Updated Amharic translation. 2003-01-10 Pablo Saratxaga * vi.po: Updated Vietnamese file * ms.po: Fixed syntax error 2003-01-08 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-01-07 Kostas Papadimas * el.po: Updated Greek translation. 2002-01-07 Naba Kumar * hi.po: New hindi translation by Bhopal team Guntupalli Karunakar 2003-01-06 Artis Trops * lv.po: Updated Latvian translation. 2003-01-06 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2003-01-03 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2003-01-03 Kjartan Maraas * no.po: Updated Norwegian (bokmal) translation. 2003-01-01 Ole Laursen * da.po: Fixed a string in the Danish translation. 2002-12-30 Vincent van Adrighem * nl.po: Dutch translation updated by Reinout van Schouwen. 2002-12-23 Artis Trops * lv.po: Updated Latvian translation. 2002-12-23 Miloslav Trmac * cs.po: Updated Czech translation from gstreamer-2-0 branch. 2002-12-22 Christian Rose * sv.po: Updated Swedish translation. 2002-12-22 Ole Laursen * da.po: Updated Danish translation. 2002-12-21 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2002-12-20 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2002-12-20 Christophe Merlet * fr.po: Updated French translation. 2002-12-19 Andras Timar * hu.po: Updated Hungarian translation. 2002-12-16 Christian Neumair * de.po: Updated German translation. 2002-12-16 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-12-13 Daniel Yacob * am.po: Added Amharic translation. 2002-12-12 Andras Timar * hu.po: Updated Hungarian translation. 2002-12-09 Artis Trops * lv.po: sync with mate-2-0 branch. 2002-12-04 Christian Neumair * POTFILES.(in/skip): Updated. * de.po: Updated German translation. 2002-12-03 Yuriy Syrota * uk.po: Ukrainian translation updated by Maxim Dzumanenko 2002-11-17 Kostas Papadimas * el.po: Updated Greek translation. 2002-11-17 Ole Laursen * da.po: Updated Danish translation. 2002-11-15 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-11-09 Dmitry G. Mastrukov * be.po: Updated Belarusian translation * from Belarusian team . 2002-11-05 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-11-03 Dmitry G. Mastrukov * be.po: Added Belarusian translation * from Belarusian team . 2002-10-19 Andras Timar * hu.po: Updated Hungarian translation. 2002-10-13 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-10-11 Stanislav Brabec * cs.po: Updated Czech translation from Miloslav Trmac . 2002-10-10 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-10-08 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-10-08 Christian Neumair * de.po: Updated German translation. 2002-10-08 Peteris Krisjanis * lv.po: Updated Latvian translation by Artis Trops 2002-10-06 Changwoo Ryu * ko.po: Updated Korean translation. 2002-09-30 Stanislav Brabec * cs.po: Updated Czech translation from Michal Bukovjan . 2002-09-29 Yanko Kaneti * bg.po. Updated Bulgarian translation. 2002-09-29 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-09-28 Ole Laursen * da.po: Updated Danish translation. 2002-09-28 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-09-29 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-09-25 Jordi Mallach * ca.po: Updated Catalan translation. 2002-09-24 Christian Neumair * de.po: Updated German translation. 2002-09-24 Christian Rose * sv.po: Updated Swedish translation. 2002-09-13 Stanislav Brabec * cs.po: Updated Czech translation from Michal Bukovjan . 2002-09-13 Marius Andreiana * ro.po: updated ( thanks to Mugurel Tudor ) 2002-09-12 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2002-09-11 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-08-31 Pablo Saratxaga * vi.po: Updated Vietnamese file 2002-08-30 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-08-28 He Qiangqiang * zh_CN.po: Updated Simplified Chinese translation. 2002-08-21 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-08-20 Peteris Krisjanis * lv.po: Updated Latvian translation. 2002-08-17 Changwoo Ryu * ko.po: Updated Korean translation. 2002-08-14 Peteris Krisjanis * lv.po: Updated Latvian translation. 2002-08-13 Ole Laursen * da.po: Updated Danish translation. 2002-08-13 Andras Timar * hu.po: Updated Hungarian translation. 2002-08-10 Christian Meyer * de.po: Fixed. 2002-08-08 Christian Meyer * de.po: Updated German translation. 2002-08-08 Vincent van Adrighem * nl.po: Dutch translation updated by Taco Witte. 2002-08-07 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2002-08-07 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2002-08-07 Christophe Merlet * fr.po: Updated French translation. 2002-08-07 Christian Neumair * de.po: Updated German translation. 2002-08-06 Yanko Kaneti * bg.po. Updated Bulgarian translation. 2002-08-06 Christian Neumair * de.po: Updated German Translation. 2002-08-06 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-08-06 Christophe Merlet * fr.po: Updated French translation. 2002-08-05 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-08-05 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-08-05 T?????µivo Leedj????¢???‚???¬rv * et.po: Updated Estonian translation. 2002-08-04 Gustavo Noronha Silva * pt_BR.po: update by Evandro Fernandes Giovanini 2002-08-03 Jordi Mallach * ca.po: Updated Catalan translation. 2002-08-03 Christian Rose * POTFILES.in: Fixed schemas file names. * sv.po: Updated Swedish translation. 2002-08-04 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-08-03 Dmitry G. Mastrukov * ru.po: updated Russian translation. 2002-08-03 Dmitry G. Mastrukov * POTFILES.in: Fixed schemas filenames. 2002-08-01 Iain * POTFILES.in: Added the schemas files... 2002-08-01 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-07-30 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-07-29 Jordi Mallach * ca.po: Updated Catalan translation. 2002-07-28 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-07-28 Dmitry G. Mastrukov * ru.po: updated Russian translation. 2002-07-27 Yanko Kaneti * bg.po. Updated Bulgarian translation. 2002-07-27 Christian Rose * sv.po: Updated Swedish translation. 2002-07-24 Christian Meyer * de.po: Updated German translation. 2002-07-21 Christophe Merlet * fr.po: Updated French translation. 2002-07-19 Simos Xenitellis * el.po: Updated Greek translation by additions of Aarg. 2002-07-18 Dmitry G. Mastrukov * POTFILES.in: Fixed cddb2/MATE_Media_CDDBSlave2.server.in.in. 2002-07-13 Simos Xenitellis * el.po: Update of Greek translation by Nikos Charonitakis . 2002-07-12 Jordi Mallach * ca.po: Updated Catalan translation. 2002-07-03 Dmitry G. Mastrukov * ru.po: updated Russian translation. 2002-06-25 Christian Rose * sv.po: Updated Swedish translation. 2002-06-24 Christophe Fergeau * fr.po : Updated French translation 2002-06-23 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-06-22 Iain * POTFILES.in: Removed linux-cdrom.c and freebsd-cdrom.c as they don't have _() in them any more. 2002-06-21 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-06-20 Yanko Kaneti * bg.po. Updated Bulgarian translation. 2002-06-20 Abel Cheung * .cvsignore: Ignore more files. * POTFILES.in: Add missing file (freebsd-cdrom.c) 2002-06-17 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-06-15 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-06-11 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-06-11 Abel Cheung * POTFILES.skip: Ignore schemas files which contain no translatable strings. 2002-06-10 Pablo Saratxaga * vi.po: Updated Vientamese file 2002-06-10 Yanko Kaneti * bg.po (added): Bulgarian translation by Evgeni Boevski . 2002-06-10 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-06-09 Vincent van Adrighem * nl.po: Dutch translation updated by Tino Meinen. 2002-06-06 Dmitry G. Mastrukov * ru.po: updated Russian translation. 2002-06-05 Christian Rose * sv.po: Fix. 2002-06-04 T?????µivo Leedj????¢???‚???¬rv * et.po: Updated Estonian translation. 2002-06-03 Germ??n Poo Caama?????±o * es.po: Updated Spanish translation from Lucas 'Basurero' Vieites 2002-06-03 Jarkko Ranta * fi.po: Updated Finnish Translation 2002-06-03 Changwoo Ryu * ko.po: Updated Korean translation. 2002-06-03 Christian Rose * sv.po: Fixed Swedish translation. 2002-06-02 Pablo Saratxaga * ca.po: Updated Catalan file * vi.po: Updated Vietnamese file 2002-06-01 Carlos Perell?????³ Mar?????­n * es.po: Updated by Lucas Vieites 2002-06-01 Christian Rose * sv.po: Updated Swedish translation. 2002-05-31 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-05-31 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-05-31 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-05-31 Ole Laursen * POTFILES.in: Fixed s/.in.h/.in/ and added gmix/mate-volume-control.desktop.in.in instead of gmix/mate-volume-control.desktop.in. * da.po: Updated Danish translation. 2002-05-29 Duarte Loreto * pt.po: Updated Portuguese translation 2002-05-27 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-05-25 Ole Laursen * da.po: Updated Danish translation. 2002-05-25 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-05-21 Ole Laursen * da.po: Updated Danish translation. 2002-05-19 Vlad Harchev * ru.po: updated russian translation from Dmitry G. Mastrukov . 2002-05-19 Vlad Harchev * ru.po: updated russian translation from Dmitry G. Mastrukov . 2002-05-18 Alessio Frusciante * it.po: Updated Italian translation. 2002-05-17 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-05-16 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-05-16 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-05-14 Christophe Merlet * fr.po: Updated French translation. 2002-05-14 Pablo Saratxaga * es.po,uk.po: Fixed syntax errors * vi.po: Added Vietnamese file 2002-05-13 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-05-12 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-05-11 Ole Laursen * da.po: Updated Danish translation. 2002-05-11 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-05-08 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-05-07 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-05-06 Changwoo Ryu * ko.po: Updated Korean translation. 2002-05-04 Duarte Loreto * pt.po: Updated Portuguese translation and converted to UTF-8. 2002-05-03 Vincent van Adrighem * nl.po: Updated Dutch translation (Huib Kleinhout). 2002-04-30 Pablo Saratxaga * eu.po: Added Basque file * wa.po: Added Walloon file 2002-04-30 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-04-29 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-04-26 Changwoo Ryu * ko.po: Updated Korean translation. 2002-04-24 T?????µivo Leedj????¢???‚???¬rv * et.po: Updated Estonian translation by Ilmar Kerm . 2002-04-23 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-04-22 Jarkko Ranta * fi.po: Updated Finnish translation again. 2002-04-22 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-04-18 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-04-18 Changwoo Ryu * ko.po: Updated Korean translation again, to fix some wrong translations. 2002-04-17 Changwoo Ryu * ko.po: Updated Korean translation. 2002-04-16 Christophe Merlet * fr.po: Updated French translation from work of Christophe Fergeau and converted to UTF-8. 2002-04-15 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-04-15 Valek Filippov * ru.po: updated russian translation from Dmitry Mastrukov. 2002-04-14 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-04-09 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-04-06 Ole Laursen * da.po: Updated Danish translation. 2002-04-05 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-04-02 Christian Rose * sv.po: Updated Swedish translation. 2002-04-01 Christian Rose * sv.po: Updated Swedish translation. 2002-04-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-03-31 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by He Qiangqiang . 2002-03-28 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-28 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-03-27 Jarkko Ranta * fi.po: Updated Finnish transltaion once again. 2002-03-27 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-03-26 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-24 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-22 Ole Laursen * da.po: Updated Danish translation. 2002-03-22 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-20 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-20 T?????µivo Leedj????¢???‚???¬rv * et.po: Updated Estonian translation and converterd to UTF-8. 2002-03-19 Ole Laursen * da.po: Updated Danish translation. 2002-03-17 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-15 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-15 Valek Filippov * ru.po: updated russian translation 2002-03-13 Hasbullah Bin Pit * fi.po: Fixed invalid multibyte sequence requested by 'boc' 2002-03-13 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-03-13 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-12 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-11 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-03-10 Christian Rose * sv.po: Updated Swedish translation. 2002-03-09 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-08 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-07 Ole Laursen * da.po: Updated Danish translation. 2002-03-07 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-07 Christian Rose * POTFILES.in: Added missing file (fixes #73750). 2002-03-06 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-03-06 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-06 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-06 Valek Filippov * ru.po: updated russian translation 2002-03-06 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-03-06 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-05 Carlos Perello Marin * es.po: Updated by Lucas 'Basurero' Vieites 2002-03-05 Christian Rose * sv.po: Updated Swedish translation. 2002-03-04 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-04 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-03-04 Fatih Demir * tr.po: Committed updated Turkish translation by G?????¶rkem. 2002-03-03 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-03 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-03-02 Ole Laursen * da.po: Updated Danish translation (with a little help from Caja). 2002-03-02 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-03-02 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-03-01 Christian Rose * sv.po: Updated Swedish translation. 2002-02-27 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-02-27 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-02-26 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-02-24 Zbigniew Chyla * pl.po: Updated Polish translation by MATE PL Team . 2002-02-23 Ole Laursen * da.po: Updated Danish translation. 2002-02-22 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-02-22 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. * POTFILES.in: Added missing cddb-slave2 stuff. 2002-02-20 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-02-16 Ole Laursen * da.po: Updated Danish translation and converted it to UTF-8. 2002-02-10 Kjartan Maraas * no.po: Updated Norwegian (bokm?????¥l) translation. 2002-02-10 Kjartan Maraas * no.po: Updated Norwegian translation. * POTFILES.in: Populate some more. 2002-02-08 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-02-07 Abel Cheung * zh_TW.po: Update traditional Chinese translation. 2002-02-05 Abel Cheung * zh_CN.GB2312.po -> zh_CN.po 2002-02-04 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-01-30 Roy-Magne Mo * nn.po: Updated Norwegian Nynorsk and converted to UTF-8 2002-01-29 Jarkko Ranta * fi.po: Updated Finnish translation. 2002-01-28 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-01-27 Christian Rose * sv.po: Updated and converted to UTF-8. 2002-01-27 Kjartan Maraas * no.po: Updated Norwegian translation. * POTFILES.in: Populate some more. 2002-01-25 Roy-Magne Mo * nn.po: Updated Norwegian (nynorsk) translation. 2002-01-23 Peteris Krisjanis * lv.po: Updated Latvian translation. 2002-01-17 Hasbullah Bin Pit * ms.po: Added Malay Translation. 2002-01-12 Jarkko Ranta * fi.po: Updated Finnish translation. 2001-12-31 Valek Filippov * ru.po: updated russian translation 2001-12-16 Duarte Loreto * pt.po: Updated Portuguese translation. 2001-12-16 Kjartan Maraas * no.po: Updated Norwegian translation. 2001-12-15 Christian Rose * sv.po: Updated Swedish translation. 2001-12-13 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-12-11 Abel Cheung * zh_TW.po: Update traditional Chinese translation. 2001-12-08 Christian Rose * .cvsignore: Changed to incude all potfiles. 2001-12-03 Christian Rose * sv.po: Updated Swedish translation. 2001-11-27 Roy-Magne Mo * nn.po: Updated Norwegian (nynorsk) translation. 2001-11-18 Valek Filippov * ru.po: updated russian translation 2001-11-11 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-11-09 Jarkko Ranta * fi.po: Updated Finnish translation. 2001-11-09 Abel Cheung * zh_TW.po: Update traditional Chinese translation, converted to UTF8. 2001-11-01 Peteris Krisjanis * lv.po: Updated Latvian translation by Artis Trops 2001-10-29 Andras Timar * hu.po: Updated Hungarian translation. 2001-10-26 Peteris Krisjanis * lv.po: Updated Latvian translation by Artis Trops 2001-10-14 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation. 2001-10-14 Zbigniew Chyla * pl.po: Updated Polish translation. 2001-10-13 Christophe Merlet * fr.po: Updated French translation. 2001-10-10 Carlos Perell?????³ Mar?????­n * pt.po: Updated by Duarte Loreto 2001-10-07 Artis Trops * lv.po: Added Latvian translation. 2001-10-06 Simos Xenitellis * el.po: Updated Greek translation. 2001-10-03 Carlos Perell?????³ Mar?????­n * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2001-10-03 Christian Rose * sv.po: Updated Swedish translation. 2001-09-28 Christopher R. Gabriel * it.po: More updates from Salvo Isaja 2001-09-25 Christopher R. Gabriel * it.po: Updates from Salvo Isaja 2001-09-25 Kjartan Maraas * no.po: Updated Norwegian translation. 2001-09-22 Christophe Merlet * fr.po: Updated French translation. 2001-09-21 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-09-20 Stanislav Brabec * cs.po: Updated translation. 2001-09-21 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2001-09-17 Pablo Saratxaga * az.po: Updated Azeri file 2001-09-13 Pablo Saratxaga * da.po: Updated Danish file * ga.po: Updated Irish file * ca.po: Updated Catalan file 2001-09-09 Carlos Perell?????³ Mar?????­n * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2001-09-06 Abel Cheung * zh_TW.po: updated traditional Chinese translation. 2001-09-03 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-08-31 Abel Cheung * zh_TW.Big5.po: Rename to ...... * zh_TW.po: This. 2001-08-25 Christophe Merlet * fr.po: Updated French translation. 2001-08-24 Andras Timar * hu.po: Updated and fixed linguistic issues. 2001-08-19 Zbigniew Chyla * pl.po: Updated Polish translation. 2001-08-19 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2001-08-07 Stanislav Brabec * POTFILES.in: Added vu-meter/reclevel.desktop.in. * cs.po: Updated translation. 2001-08-07 Zbigniew Chyla * pl.po: Updated Polish translation. 2001-07-18 Fatih Demir * tr.po: Committed updated Turkish translation by G?????¶rkem Cetin. 2001-07-17 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-07-16 Kjartan Maraas * nn.po: Added Norwegian (nynorsk) translation. 2001-07-11 Christopher R. Gabriel * it.po: Updated italian translation from Salvo Isaja Mon Jul 02 15:50:06 2001 George Lebl * zh_TW.Big5.po: update from "R.I.P. Deaddog" 2001-07-01 Christian Rose * sv.po: Updated Swedish translation. 2001-06-12 Pablo Saratxaga * az.po: Updated Azeri file 2001-06-17 Christian Meyer * de.po: Updated de.po. 2001-06-14 Stanislav Brabec * cs.po: Updated translation. 2001-06-13 Radek Doulik * cs.po: updated Czech translations 2001-06-12 Pablo Saratxaga * ca.po: Updated Catalan file 2001-06-11 Radek Doulik * cs.po: updated Czech translations 2001-06-10 Pablo Saratxaga * az.po: Updated Azeri file 2001-06-09 Kjartan Maraas * no.po: Updated Norwegian translation. * POTFILES.in: Added gmix/prefs.c 2001-06-07 Fatih Demir * tr.po: Committed updated Turkish translation by G?????¶rkem. 2001-06-07 Pablo Saratxaga * zh_TW.Big5.po: updated Chinese file 2001-06-06 Christian Meyer * de.po: Updated German translation. 2001-06-06 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-06-05 Gediminas Paulauskas * lt.po: Updated Lithuanian translation. 2001-06-05 Kjartan Maraas * no.po: Updated Norwegian translation. 2001-06-04 Pablo Saratxaga * ca.po: Updated Catalan file 2001-06-04 Fatih Demir * tr.po: Committed updated Turkish translation by G?????¶rkem. 2001-06-03 Christian Rose * sv.po: Updated Swedish translation. 2001-06-03 Fatih Demir * ko.po: Committed updated ko.po by Young-Ho. 2001-06-03 Karl Eichwalder * update.pl: Remove file; we're using xml-i18n-update. * update.sh: Ditto. 2001-06-02 Kjartan Maraas * no.po: Updated Norwegian translation. 2001-06-02 Peter Teichman * cs.po, da.po, de.po, el.po, es.po, et.po, fi.po, fr.po, ga.po, gl.po, hu.po, ja.po, ko.po, lt.po, no.po, pt.po, pt_BR.po, ru.po, sk.po, sl.po, sv.po, tr.po, uk.po: Merge translated strings from .desktop files into the po files. The only changes are the additions of already-translated strings, so this shouldn't step on any toes. 2001-06-02 Fatih Demir * ko.po: Committed updated Korean translation by Young-Ho. 2001-06-02 Christian Rose * sv.po: Fixed Swedish translation. Thanks to G?????¶ran Uddeborg and Peter Karlsson for their input. 2001-06-01 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-06-01 Christian Rose * sv.po: Updated Swedish translation. * .cvsignore: Added messages. 2001-05-31 Christian Meyer * de.po: Updated German translation. 2001-05-29 Kjartan Maraas * no.po: Updated Norwegian translation. * POTFILES.in: Added src/prefs.h. 2001-05-21 Pablo Saratxaga * ja.po,ko.po,lt.po,pl.po,pt_BR.po,uk.po: fixed invalid multibyte 2001-05-19 Kjartan Maraas * no.po: Updated Norwegian translation. 2001-05-02 Pablo Saratxaga * az.po: Updated Azeri file 2001-03-31 Pablo Saratxaga * ca.po: Updated Catalan file 2001-03-28 Christian Meyer * de.po: Updated German translation. 2001-03-28 Pablo Saratxaga {en_GB,et,ga,hu,nl}.po: corrected charset lines 2001-03-23 Fatih Demir * tr.po: Updated Turkish translation by G?????¶rkem. 2001-03-20 Stanislav Brabec * cs.po: Updated translation. 2001-03-12 Jarkko Ranta * fi.po: Updated Finnish translation. 2001-03-08 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2001-03-02 Christian Meyer * de.po: Revised German translation. 2001-03-01 Carlos Perell?????³ Mar?????­n * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites 2001-02-18 Simos Xenitellis * el.po: More minor corrections. 2001-02-15 Valek Filippov * ru.po: updated russian translation 2001-02-14 Dan Damian * ro.po: Update Romanian translation. 2001-02-13 Simos Xenitellis * el.po: Minor corrections (verification). * el.po: Updated Greek translation. 2001-02-12 Christophe Merlet * fr.po: Updated French translation. 2001-02-12 Szabolcs Ban * hu.po: Updated Hungarian translations, work of Gergely Nagy 2001-02-09 Christian Meyer * de.po: Small fix. 2001-02-09 Martin Norb????¢???‚???¬ck * sv.po: Updated Swedish translation. 2001-02-07 Christopher R. Gabriel * it.po: Updated italian translation 2001-02-06 Christian Meyer * de.po: Updated German translation. 2001-01-24 Szabolcs Ban * hu.po: Tons of fixes by Andras and Emese (spelling, terminology, headers) 2001-01-23 Valek Filippov * ru.po: updated russian translation 2001-01-19 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2001-01-16 Stanislav Brabec * cs.po: Updated translation. * POTFILES.in: Added gmix/device_labels_alsa.h. 2001-01-15 Christopher R. Gabriel * it.po: Updated italian translation from Salvo Isaja 2001-01-13 Simos Xenitellis * el.po: Small addition. 8-/ 2001-01-11 Jarkko Ranta * fi.po: Small addition ;) 2001-01-11 Christian Rose * sv.po: Small correction. 2001-01-10 Christian Rose * sv.po: Updated Swedish translation. 2001-01-10 Jarkko Ranta * fi.po: Updated Finnish translation. 2001-01-09 Valek Filippov * ru.po: updated russian translation 2001-01-09 Christian Rose * sv.po: Updated Swedish translation. 2001-01-04 Pablo Saratxaga * az.po: Added Azeri file 2001-01-04 Christian Rose * sv.po: Updated Swedish translation. 2001-01-02 Stanislav Visnovsky * sk.po: Updated and corrected Slovak translation. 2000-12-27 Fatih Demir * tr.po: Dumdidum, Rama(d|z)an has finished .. now you're worth getting an updated tr.po ,-) 2000-12-12 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2000-12-08 Fatih Demir * ko.po: Committed updated Korean translation. 2000-12-06 Stanislav Visnovsky * sk.po: Added Slovak translation. 2000-12-05 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-11-16 Akira TAGOH * ja.po: Updated Japanese translation. 2000-11-04 Zbigniew Chyla * pl.po: Updated Polish translation 2000-11-04 Stanislav Brabec * cs.po: Updated translation. 2000-10-10 Christophe Merlet * fr.po: Updated French translation. 2000-10-08 Akira TAGOH * ja.po: Updated Japanese translation. 2000-09-27 Stanislav Brabec * cs.po: Updated translation. 2000-09-13 Christian Meyer * update.pl: Added perl script from kanikus. * README.tools: Added text file. 2000-08-16 Pablo Saratxaga * el.po: updated Greek file * ga.po: corrected small syntax error * ro.po: completed header so msgfmt -c works 2000-08-14 Kai Lahmann * de.po: Updated German translation from chrisime 2000-08-12 Kai Lahmann * de.po: Updated German translation 2000-08-09 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-08-08 Kai Lahmann * de.po: Updated German translation 2000-08-04 Kai Lahmann * de.po: Updated German translation 2000-08-02 Jarkko Ranta * fi.po: Updated Finnish translation 2000-07-31 Kai Lahmann * de.po: Updated German translation 2000-07-13 Benedikt Roth * nl.po: Updated Dutch translation from Dennis Smit 2000-06-30 Christopher R. Gabriel * it.po: updated italian translation from Salvo Isaja 2000-06-14 Christopher R. Gabriel * it.po: updated 2000-06-11 Fatih Demir * tr.po: Updated the Turkish translation. Tue May 30 09:19:59 CEST 2000 Stanislav Brabec * cs.po: Updated translation. 2000-05-23 Valek Filippov * ru.po: updated russian translation * update.sh: 1.2.5 version. 2000-05-20 Jesus Bravo Alvarez * gl.po: Updated Galician translation. * es.po: Updated Spanish translation. 2000-05-20 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-20 Yukihiro Nakai * ja.po: Update from Akira TAGOH. 2000-05-19 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-19 Yuri Syrota * uk.po: Update Ukrainian translation. 2000-05-19 Karl Eichwalder * de.po: Update. 2000-05-18 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-05-18 Yuri Syrota * uk.po: Update Ukrainian translation. 2000-05-18 Yukihiro Nakai * ja.po: Update from Akira TAGOH. 2000-05-18 Jesus Bravo Alvarez * gl.po: Updated Galician translation. * es.po: Updated Spanish translation. 2000-05-17 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-05-17 Karl Eichwalder * de.po: Update. 2000-05-17 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-16 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-16 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-05-14 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-14 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-13 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-05-13 Karl Eichwalder * de.po: Update. Wed May 10 23:08:12 CEST 2000 Stanislav Brabec * cs.po: Updated translation. 2000-05-09 Andreas Hyden * sv.po: Updated Swedish translation. * update.sh: Updated. 2000-05-09 Karl Eichwalder * de.po: Update. 2000-05-09 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2000-05-09 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-05-08 Karl Eichwalder * de.po: Update. 2000-05-08 Kenneth Christiansen * da.po: Updated Danish translations. 2000-05-08 Kenneth Christiansen * update.sh: Updated update.sh to support merging, --help, easier porting to new packages, et al. 2000-05-08 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-06 Andreas Hyden * sv.po: Updated Swedish translation. 2000-05-06 Karl Eichwalder * de.po: Update. 2000-05-05 Karl Eichwalder * pl.po: Merge in polish messages of the grecord module; done by Marcin Owsiany . 2000-05-04 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2000-05-03 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-04-30 Karl Eichwalder * de.po: Update. 2000-04-29 Andreas Hyden * sv.po: Updated Swedish translation. 2000-04-29 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-04-29 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2000-04-29 Karl Eichwalder * de.po: More complete. * POTFILES.in: Sort alphabetically. * de.po: Improve it. * de.po: Add some translations. 2000-04-28 Andreas Hyden * sv.po: Updated Swedish translation. 2000-04-25 Valek Filippov * ru.po: Updated russian translation. 2000-04-25 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-04-25 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2000-04-25 Fatih Demir * tr.po : Updated the Turkish translation . 2000-04-25 Arjan Scherpenisse * nl.po: Updated Dutch translation, credits to Dennis Smit 2000-04-24 Andreas Hyden * sv.po: Updated Swedish translation. 2000-04-24 Andreas Hyden * sv.po: Updated Swedish translation. 2000-04-21 Andreas Hyden * POTFILES.IN: Added grecord source files. 2000-04-20 Andreas Hyden * sv.po: Updated Swedish translation. 2000-04-17 Valek Filippov * ru.po: Updated translation. 2000-04-16 Karl EICHWALDER * de.po: Cleanup. 2000-04-08 Pablo Saratxaga * lt.po: added Lihuanian file 2000-04-01 Kjartan Maraas * no.po: Updated Norwegian translation. * ru.po: Updated Russian translation from Valek Filippov . 2000-03-26 Karl EICHWALDER * de.po: Fix header (charset). 2000-03-08 Alastair McKinstry * ga.po: Updated Irish translation. 2000-02-26 Christopher R. Gabriel * it.po: updated italian translation from "Salvo Isaja" 2000-02-26 Zbigniew Chyla * pl.po: Updated translation. 2000-02-12 Fatih Demir * tr.po : Added the Turkish translation . 2000-01-31 Yuan-Chung Cheng * zh_CN.GB2312.po: Added po file from TurboLinux Chinese Develop Team. 2000-01-19 Kjartan Maraas * no.po: Updated Norwegian translation. 2000-01-12 Yuri Syrota * uk.po: Updated. 2000-01-03 Kjartan Maraas * update.sh: A little script that lets people update the .pot file without makefiles etc. 2000-01-03 Jesus Bravo Alvarez * gl.po: Updated. 1999-12-29 Zbigniew Chyla * pl.po: Updated translation. 1999-12-16 Karl Eichwalder * de.po: Update. Thu Dec 16 11:35:59 1999 Changwoo Ryu * ko.po: Updated Korean translation. 1999-12-16 Kjartan Maraas * no.po: Updated Norwegian translation. 1999-12-13 Stanislav Brabec * POTFILES.in: Added tcd/track_buttons.c. * cs.po: Updated translation. 1999-12-11 Christopher R. Gabriel * it.po: Updated italian translation by Salvo Isaja 1999-12-01 Martin Norb????¢???‚???¬ck * sv.po: Updated Swedish translation. 1999-11-27 Karl EICHWALDER * de.po: Update. 1999-11-22 Yuri Syrota * uk.po: Updated Ukrainian translation. 1999-11-17 Kjartan Maraas * no.po: Updated Norwegian translation. 1999-11-17 Pablo Saratxaga * el.po: added Greek translation * es.po: updated spanish translation * *.po: run update-po as the *.po files were way out of date; so translators can see updated files and complete them 1999-11-02 Yuri Syrota * uk.po: Added Ukrainian translation. 1999-10-21 Stanislav Brabec * POTFILES.in: After fix added back gmix/device_labels_linux.h. 1999-10-12 Dan Damian * ro.po: Added Romanian translation. 1999-10-07 Jesus Bravo Alvarez * gl.po: Added Galician translation. 1999-10-05 Sergey Panov * ru.po: updated 1999-10-04 Stanislav Brabec * POTFILES.in: Added gmix/device_labels_linux.h. * cs.po: Updated. 1999-10-02 Karl Eichwalder * de.po: Update. 1999-10-02 +09 Changwoo Ryu * ko.po: Updated translation. 1999-09-28 Kjartan Maraas * no.po: Updated Norwegian translation. 1999-09-28 Martin Baulig * cs.po: Added from Stanislav Brabec 1999-09-27 Rodrigo Stulzer Lopes * pt_BR.po: Added 1999-09-27 Richard Hult * sv.po: Updated Swedish translation. 1999-09-27 Zbigniew Chyla * pl.po: Updated translation. 1999-09-26 Lauris Kaplinski * et.po: Added Estonian tranlation 1999-09-23 Tomas Ogren * sv.po: Update from Andreas Persenius 1999-09-23 Kjartan Maraas * da.po: Updated Danish translation from Kenneth Christiansen 1999-09-22 Vincent Renardias * fr.po: updated for 1.0.40: > 114 translated messages, 6 fuzzy translations, 5 untranslated messages. < 125 translated messages. 1999-09-22 Yukihiro Nakai * ja.po: Update from ITANI Eiichiro. 1999-09-19 Pablo Saratxaga * es.po: updated spanish language file 1999-09-19 Zbigniew Chyla * pl.po: Updated. 1999-09-18 Kjartan Maraas * no.po: Updated translation. 1999-09-17 Kjartan Maraas * da.po: Updated Danish translation from Kenneth Christiansen . 1999-09-02 Zbigniew Chyla * pl.po: Added translation. 1999-08-26 Kjartan Maraas * no.po: Updated translation. 1999-08-15 Mikko Rauhala * fi.po: Updated. 1999-07-27 Sergey Panov * ru.po: formerly ru_RU.po, updated 1999-07-21 Vincent Renardias * fr.po: Completed. 1999-07-11 Tomas Ogren * sv.po: Updated 1999-06-04 Kjartan Maraas * en_GB.po: Added British translation from Robert Brady. 1999-05-31 James Henstridge * fi.po: fixed problem with po file that Steve Luzynski mentioned on mate-list. 1999-05-26 Tuomas J. Lukka * fi.po: update 1999-05-24 Kjartan Maraas * no.po: Updated translation. 1999-05-19 Yukihiro Nakai * ja.po: Updated translation. 1999-05-05 Kjartan Maraas * no.po: Updated translation. 1999-05-02 Matthias Warkus * de.po: Minor update. 1999-03-27 Kjartan Maraas * no.po: Updated. 1998-12-20 Kjartan Maraas * no.po: Updated. 1998-12-11 Tim P. Gerla * POTFILES.in: Added cddbslave/main.c 1998-11-26 Tuomas J. Lukka * fi.po tiny addition 1998-11-26 Tuomas J. Lukka * update fi.po * cddb_status.c to POTFILES.in 1998-11-26 Nuno Ferreira * pt.po: Updated. 1998-11-17 Tuomas J. Lukka * Update fi.po with "normal" etc. strings from gtcd 1998-11-17 Tuomas J. Lukka * fix da.po to compile 1998-11-17 Tuomas J. Lukka * add fi.po 1998-10-03 Nuno Ferreira * POTFILES.in: Added tcd/popup.c. * pt.po: Updated. 1998-09-02 Nuno Ferreira * pt.po: Updated. * POTFILES.in: Added tcd/callbacks.c. 1998-08-28 Tim P. Gerla * POTFILES.in: Changed tcd/properties.c to tcd/prefs.c, and added tcd/tooltips.h. 1998-08-26 Nuno Ferreira * POTFILES.in: Added `tcd/properties.c', `tcd/gtracked.c'. 1998-08-18 Nuno Ferreira * POTFILES.in: Added `tcd/gtcd.c', `tcd/gabout.c', `tcd/gcddb.c'. * pt.po: Updated Portuguese translation. 1998-08-14 Federico Mena Quintero * POTFILES.in: Removed gnomovision files from POTFILES.in since they are not being distributed. 1998-05-09 Marc Ewing * removed mail headers from ga.po Sat May 2 23:01:35 1998 Kjartan Maraas * no.po: New file. Sun, 22 Feb 1998 19:27:35 +0100 Vincent Renardias * fr.po: New file. 1998-02-22 Carsten Schaar * de.po: New file. Tue Feb 17 11:01:49 KST 1998 Changwoo Ryu * ko.po: New file. ukui-media-3.1.1.2/po/si.po0000644000175000017500000002331614565521701013732 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Danishka Navin , 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Sinhala (http://wiki.ukui.org/trans/si/)\n" "Language: si\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "හඬ පාලකය" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "හඬ පාලකය" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "හඬ පාලකය" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "හඬ පාලකය" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "රිසිකළ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ප්‍රකෘතිය" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "නවතන්න" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/bn.po0000644000175000017500000003101114565521701013705 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Sadia Afroz , 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Bengali (http://wiki.ukui.org/trans/bn/)\n" "Language: bn\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "শব্দ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ভলিউম পরিবর্তন করুন ও নির্দিষ্ট ঘটনার সাথে শব্দ যুক্ত করুন" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ভলিউম নিয়ন্ত্রণ" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ডেস্কটপের মধ্যে ভলিউম নিয়ন্ত্রণ ব্যবস্থা প্রদর্শন করা হবে" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "এই অ্যাপ্লিকেশনের সংস্করণ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ভলিউম নিয়ন্ত্রণ" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "শব্দের সিস্টেম থেকে প্রতিক্রিয়া প্রাপ্তির অপেক্ষা করা হচ্ছে" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "প্রারম্ভিক পৃষ্ঠা" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ভলিউম নিয়ন্ত্রণ" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ইনপুট" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "আউটপুট" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ভলিউম নিয়ন্ত্রণ" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "বামদিকে" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ডানদিকে" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "পেছনের অংশ" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "সামনে" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "সর্বনিম্ন" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "সর্বোচ্চ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "ভারসাম্য: (_B)" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ফেইড (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "সাবউফার (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "অ্যাম্পলিফাই করা হবেনা" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "১০০%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "নিঃশব্দ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "প্রোফাইল: (_P)" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "সংযোগকারী: (_n)" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "নিষ্ক্রিয়" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u আউটপুট" msgstr[1] "%u আউটপুট" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ইনপুট" msgstr[1] "%u ইনপুট" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "নাম" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "শব্দের ইফেক্ট" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "সতর্কবার্তার ভলিউম: (_A)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "আউটপুট ভলিউম: (_O)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "হার্ডওয়্যার" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "কনফিগার করার জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "নির্বাচিত ডিভাইসের বৈশিষ্ট্য:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ইনপুট ভলিউম: (_I)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ইনপুটের মাত্রা:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "শব্দের ইনপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "শব্দের আউটপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "অ্যাপ্লিকেশন" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "কোনো অ্যাপ্লিকেশন দ্বারা বর্তমানে অডিও বাজানো অথবা রেকর্ড করা হচ্ছে না।" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "শব্দ সংক্রান্ত পছন্দ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "শব্দবিহীন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "বিল্ট-ইন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "স্বনির্ধারিত" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ঘটনার জন্য চিহ্নিত শব্দ পরীক্ষা করা হচ্ছে" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "ডিফল্ট" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "থিম থেকে প্রাপ্ত" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "ধরন" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "শব্দের থিম: (_t)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "সতর্কবার্তার জন্য একটি শব্দ নির্বাচন করুন: (_h)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "উইন্ডো ও বোতামের শব্দগুলো সক্রিয় করুন (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "শব্দ সংক্রান্ত পছন্দের মান আরম্ভ করতে ব্যর্থ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "নিঃশব্দ (_M):" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "শব্দ সংক্রান্ত পছন্দ (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ms.po0000644000175000017500000002567214565521701013745 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # abuyop , 2013-2015,2017 # Hasbullah Bin Pit (sebol) , 2001, 2002, 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Malay (http://wiki.ukui.org/trans/ms/)\n" "Language: ms\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Bunyi" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Ubah volum bunyi dan peristiwa bunyi" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Kawalan Volum" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Tunjuk kawalan volum desktop" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versi aplikasi ini" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Benarkan nyahpepijat" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— Aplet Kawalan Volum MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Sistem bunyi tidak tersedia" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Menunggu sistem bunyi memberi respons" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Bahagian belakang sistem bunyi" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Halaman permulaan" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— Kawalan Volum MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Input" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Output" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volum Mikrofon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volum Output Bunyi" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Aplet Kawalan Volum MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Kiri" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Kanan" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Belakang" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Hadapan" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Imbangan:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Resap:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwufer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Tidak dikuatkan" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Senyap" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Pe_nyambung:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Dilumpuhkan" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Output" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Input" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nama" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Pengujian Pembesar Suara untuk %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Uji Pembesar Suara" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Kesan Bunyi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volum _amaran:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Volum _output:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Perkakasan" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "P_ilih peranti untuk dikonfigur:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Tetapan untuk peranti terpilih:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volum _input:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Aras input:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "P_ilih peranti untuk input bunyi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "P_ilih peranti untuk output bunyi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplikasi" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Tiada aplikasi kini dimainkan atau merakam audio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Keutamaan Bunyi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Tiada bunyi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Terbina-dalam" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Suai" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Menguji bunyi peristiwa" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Lalai" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Dari tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Jenis" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema bunyi:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "P_ilih bunyi amaran:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Benarkan bunyi tetingkap dan _butang" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Henti" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Uji" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Gagal memulakan Keutamaan Bunyi: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Sen_yap" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Keutamaan _Bunyi" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Tidak diketahui" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Hadapan Kiri" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Hadapan Kanan" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Hadapan Tengah" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Belakang Kiri" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Belakang Kanan" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Belakang Tengah" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Hadapan Kiri dari Tengah" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Hadapan Kanan dari Tengah" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Sisi Kiri" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Sisi Kanan" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Atas Hadapan Kiri" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Atas Hadapan Kanan" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Atas Hadapan Tengah" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Atas Tengah" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Atas Belakang Kiri" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Atas Belakang Kanan" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Atas Belakang Tengah" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Keliling 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Keliling 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Keliling 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Keliling 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Keliling 7.1" ukui-media-3.1.1.2/po/ml.po0000644000175000017500000003144714565521701013733 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ani Peter , 2006, 2007 # FSF-India , 2003 # Praveen Arimbrathodiyil , 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Malayalam (http://wiki.ukui.org/trans/ml/)\n" "Language: ml\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ശബ്ദം" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ശബ്ദ വോള്യമും ശബ്ദ ഇവന്റുകളും മാറ്റുക" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ശബ്ദം ക്രമീകാരി" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "പണിയിട ശബ്ദ ക്രമീകാരി കാണിക്കുക" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "ഈ പ്രയോഗത്തിന്റെ പതിപ്പുകള്‍" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "ശബ്ദം ക്രമീകാരി" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "മറുപടി നല്‍കുന്നതിനായി ശബ്ദ സിസ്റ്റത്തിനായി കാത്തിരിക്കുന്നു" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "പ്രാരംഭ താള്‍" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "ശബ്ദം ക്രമീകാരി" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "നിവേശകം" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "ഫലം" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "ശബ്ദം ക്രമീകാരി" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ഇടത്" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "വലത്" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "അവസാനം" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "മുന്നില്‍" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "കുറഞ്ഞ" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "കൂടിയ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_ബാലന്‍സ്:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_മങ്ങുക:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_സബ്‌വൂഫര്‍:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "അണ്‍ആംപ്ലിഫൈഡ്" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "നിശബ്ദമാക്കുക" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_പ്രൊഫൈല്‍:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "ക_ണക്ടര്‍:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "പ്രവര്‍ത്തനരഹിതം" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u ഔട്ട്പുട്ട്" msgstr[1] "%u ഔട്ട്പുട്ടുകള്‍" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ഇന്‍പുട്ട്" msgstr[1] "%u ഇന്‍പുട്ടുകള്‍" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "പേര്" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ശബ്ദ പ്രവാഹങ്ങള്‍" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_മുന്നറിയിപ്പിനുള്ള ശബ്ദം: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_ഔട്ട്പുട്ട് വോള്യം: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "ഹാര്‍ഡ്‌വെയര്‍" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ക്രമീകരിക്കുവാനുള്ളൊരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "തെരഞ്ഞെടുത്ത ഉപകരണത്തിന്റെ ക്രമീകരണങ്ങള്‍" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_ഇന്‍പുട്ട് വോള്യം: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ഇന്‍പുട്ട് ലവല്‍:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ശബ്ദ ഇന്‍പുട്ടിനുള്ള ഒരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ശബ്ദ ഔട്ട്പുട്ടിനുള്ള ഒരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "പ്രയോഗങ്ങള്‍" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ഓഡിയോ റിക്കോര്‍ഡ് ചെയ്യുന്നില്ല അല്ലെങ്കില്‍ നിലവില്‍ ഒരു പ്രയോഗവും പ്രവര്‍ത്തിക്കുന്നില്ല" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ശബ്ദ മുന്‍ഗണനകള്‍" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ശബ്ദം ഇല്ല" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ബിള്‍ട്ടിന്‍" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ഇച്ഛാനുസൃതം" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ഇവന്റ് ശബ്ദം പരീക്ഷിക്കുന്നു" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "സ്വഥവേ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "പ്രമേയത്തില്‍ നിന്നും" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "തരം" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ശബ്ദ _പ്രമേയം:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "മുന്നറിയിപ്പ് ശബ്ദം _തെരഞ്ഞെടുക്കുക:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_ജാലകം, ബട്ടണ്‍ ശബ്ദങ്ങള്‍ പ്രവര്‍ത്തന സജ്ജമാക്കുക" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ശബ്ദ മുന്‍ഗണനകള്‍ പ്രവര്‍ത്തിപ്പിക്കുന്നതില്‍ പരാജയപ്പെട്ടു: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_നിശബ്ദമാക്കുക" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_ശബ്ദ മുന്‍ഗണനകള്‍" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/et.po0000644000175000017500000002577614565521701013743 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ivar Smolin , 2014-2015 # Ivar Smolin , 2009, 2010 # Lauris Kaplinski , 1999 # Priit Laes , 2005 # Tõivo Leedjärv , 2002, 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Estonian (http://wiki.ukui.org/trans/et/)\n" "Language: et\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Heli" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Helitugevuse muutmine ja sündmuste jaoks helide määramine" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Helitugevuse regulaator" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Töölaua helitugevuse regulaatori näitamine" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Selle rakenduse versioon" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Luba silumine" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE helitugevuse juhtrakend" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Helisüsteem pole saadaval" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Helisüsteemi vastuse ootamine" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Helisüsteemi taustaprogramm" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Käivitamisel aktiveeritav leht" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE helitugevuse regulaator" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Sisend" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Väljund" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofoni valjus" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Heliväljundi valjus" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE helitugevuse juhtimise rakend" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Vasak" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Parem" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Tagumine" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Eesmine" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Väikseim" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Suurim" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Tasakaal:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Tuhmumine:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "Madal_sageduskõlar:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Võimendamata" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Tumm" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profiil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Pistik:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Keelatud" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u väljund" msgstr[1] "%u väljundit" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u sisend" msgstr[1] "%u sisendit" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nimi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s kõlarite testimine" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Kõlarite test" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Heliefektid" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Hoiatuste valjus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Väljundi valjus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Riistvara" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Seadistatava seadme valimine:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Valitud seadme sätted:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Sisendi valjus: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Sisendi valjus:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "H_elisisendi seadme valimine:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Heliväljundi seadme valimine:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Rakendused" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ükski rakendus ei esita ega salvesta hetkel audiot." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Helieelistused" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Helid puuduvad" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Sisseehitatud" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Kohandatud" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Sündmuse heli testimine" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Vaikimisi" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Teemast" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Liik" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Heli_teema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "H_oiatuse heli valimine:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Akende ja nuppude helid on lubatud" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Peata" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testi" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Tõrge helieelistuste käivitamisel: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Tumm" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Helieelistused" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Tundmatu" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Eesmine vasak" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Eesmine parem" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Eesmine keskmine" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Tagumine vasak" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Tagumine parem" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Tagumine keskmine" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/ca@valencia.po0000644000175000017500000002714114565521701015505 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Antoni Lacasta i Sulla , 2002 # jodufi , 2009, 2010 # jodufi , 2009-2010 # Jordi Mallach , 2002-2007 # Josep Puigdemont , 2007 # Josep Puigdemont , 2007 # Pilar Embid Giner , 2016 # Softcatalà , 2000 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Catalan (Valencian) (http://wiki.ukui.org/trans/ca" "%40valencia/)\n" "Language: ca@valencia\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "So" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Canvieu el volum del so i els sons dels esdeveniments" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control del volum" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Mostra el control del volum de l'escriptori" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versió d'aquesta aplicació" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Habilita la depuració" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " Miniaplicació del control de volum del MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "El sistema de so no està disponible" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "S'està esperant que el sistema de so responga" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Programari especialitzat del sistema de so" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pàgina inicial" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Control de volum del MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Eixida" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volum del micròfon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volum d'eixida" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Miniaplicació del control de volum del MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquerre" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dret" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Posterior" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frontal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínim" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Màxim" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanç:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Esvaïment:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Altaveu de greus:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sense amplificar" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Silenci" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Inhabilitat" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u eixida" msgstr[1] "%u eixides" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entrades" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nom" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Prova d'altaveus per a %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Prova els altaveus" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efectes de so" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volum d'_avís: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Volum d'eixida: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Maquinari" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Seleccioneu un _dispositiu per a configurar-lo:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Paràmetres per al dispositiu seleccionat:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Volum d'entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivell d'entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Seleccioneu un dispositiu per a l'entrada de so:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "S_eleccioneu un dispositiu per a l'eixida de so:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicacions" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "No hi ha cap aplicació que estiga reproduint o gravant àudio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferències de so" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sense sons" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integrat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalitzat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Prova d'esdeveniment de so" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predeterminat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Del tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipus" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de sons:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Trieu un so d'avís:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Habilita els sons de les _finestres i dels botons" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Para" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Prova" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "No s'han pogut iniciar les preferències del so: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Silenci" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferències del _so" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconegut" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Frontal esquerre" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Frontal dret" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frontal centre" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Posterior esquerre" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "posterior dret" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Posterior centre" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Frontal esquerre del centre" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Frontal dret del centre" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Costat esquerre" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "costat dret" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Frontal esquerre superior" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Frontal dret superior" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Frontal centre superior" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Superior centre" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Posterior esquerre superior" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Posterior dret superior" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Posterior centre superior" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estèreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Envoltant 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Envoltant 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Envoltant 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Envoltant 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Envoltant 7.1" ukui-media-3.1.1.2/po/LINGUAS0000644000175000017500000000064214565521701014001 0ustar fengfeng# please keep this list sorted alphabetically af am ar as ast az be bg bn bn_IN br bs ca ca@valencia cmn cs cy da de dz el en_AU en_CA en_GB es es_AR es_CO es_MX es_PR et eu fa fi fr fr_CA frp ga gl gu he hi hr hu hy id is it ja jv ka kk kn ko ku ku_IQ ky lt lv mai mg mk ml mn mr ms nb nds ne nl nn oc or pa pl pms pt pt_BR ro ru rw sc si sk sl sq sr sr@latin sv ta te th tk tr ug uk ur uz vi wa xh zh_CN zh_HK zh_TW ukui-media-3.1.1.2/po/es_CO.po0000644000175000017500000002313214565521701014303 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Jose Barakat , 2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-20 15:44+0000\n" "Last-Translator: monsta \n" "Language-Team: Spanish (Colombia) (http://wiki.ukui.org/trans/es_CO/)\n" "Language: es_CO\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sonido" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Izquierda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Derecha" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nombre" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconocido" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ug.po0000644000175000017500000002664514565521701013742 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Uighur (http://wiki.ukui.org/trans/ug/)\n" "Language: ug\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ئاۋاز" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ئاۋاز مىقدارى ۋە ئاۋاز ھادىسىسى ئۆزگەرت" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "ئاۋاز تىزگىنى" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ئۈستەل`ئۈستى ئاۋاز تىزگىننى كۆرسەت" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "بۇ پروگراممىنىڭ نەشرى" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE ئاۋاز تىزگىن قوللانچاق" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ئاۋاز سىستېمىسىنىڭ ئىنكاسىنى كۈتۈۋاتىدۇ" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "قوزغىتىش بېتى" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE ئاۋاز تىزگىنى" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "كىرگۈز" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "چىقار" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "مىكروفون ئاۋاز مىقدارى" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "چىقىرىدىغان ئاۋاز مىقدارى" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — MATE ئاۋاز تىزگىن قوللانچاق" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "سول" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "ئوڭ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "ئارقا تەرەپ" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "ئالدى" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ئەڭ كىچىك" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "ئەڭ چوڭ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "تەڭپۇڭ(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ئاجىزلىتىش(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ئۇلترا تۆۋەن ئاۋاز(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "چوڭايتىلمىغان" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "ئۈنسىز" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "سەپلىمە ھۆججەت(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "ئۇلىغۇچ(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "چەكلەنگەن" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u چىقار" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u كىرگۈز" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "ئاتى" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s نىڭ ياڭراتقۇسىنى سىناش" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "ياڭراتقۇ سىنا" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ئاۋاز ئۈنۈمى" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "ئاگاھلاندۇرۇش ئاۋاز مىقدارى(_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "چىقىرىدىغان ئاۋاز مىقدارى(_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "قاتتىق دېتال" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "سەپلەيدىغان ئۈسكۈنە تاللاش(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "تاللىغان ئۈسكۈنىنىڭ تەڭشىكى:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "كىرىش ئاۋاز مىقدارى(_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "كىرىش دەرىجىسى:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ئاۋاز كىرگۈزۈش ئۈسكۈنىسى تاللاش(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ئاۋاز چىقىرىش ئۈسكۈنىسى تاللاش(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "پروگراممىلار" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "نۆۋەتتە ئاۋاز قويىدىغان ياكى خاتىرىلەيدىغان پروگرامما يوق." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ئاۋاز مايىللىقى" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "ئاۋاز يوق" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "ئىچكى" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "ئىختىيارى" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ھادىسە ئاۋازىنى سىناۋاتىدۇ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "كۆڭۈلدىكى" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "باش تېمىدىن" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "تىپى" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ئاۋاز باش تېما(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "ئاگاھلاندۇرۇش ئاۋازى تاللاڭ(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "كۆزنەك ۋە توپچا ئاۋازىنى قوزغات(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "توختا" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "سىنا" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ئاۋاز مايىللىقىنى قوزغىتالمىدى: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "ئۈنسىز(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ئاۋاز مايىللىقى(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/zh_HK.po0000644000175000017500000002535514565521701014327 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Chao-Hsiung Liao , 2008 # Fernando , 1999 # tomoe_musashi , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Chinese (Hong Kong) (http://wiki.ukui.org/trans/zh_HK/)\n" "Language: zh_HK\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "聲音" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "改變音效的音量和音效事件" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "音量控制" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "顯示桌面音量控制" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "這個程式的版本" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "啟用除錯" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE 音量控制面板程式" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "音效系統不可用" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "正在等候音效系統回應" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "音效系統後端" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "啟始頁面" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE 音量控制" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "輸入" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "輸出" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "麥克風音量" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "音效輸出音量" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE 音量控制面板程式" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "左" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "右" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "後" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "前" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "最小值" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "最大值" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "平衡(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "淡化(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "重低音(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "未經放大" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "靜音" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "設定組合(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "連接器(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "已停用" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u 輸出" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u 輸入" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "名稱" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s 的喇叭測試" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "測試喇叭" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "聲音效果" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "警示音量(_A):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "輸出音量(_O):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "硬件" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "選擇要設定的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "已選取裝置的設定值:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "輸入音量(_I):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "輸入等級:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "選擇聲音輸入的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "選擇聲音輸出的裝置(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "應用程式" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "沒有應用程式目前正在播放或錄製音效。" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "音效偏好設定" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "不使用音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "內置" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "自選" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "測試事件音效" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "預設值" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "從主題" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "類型" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "音效主題(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "選擇警示音效(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "啟用視窗與按鈕音效(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "停止" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "測試" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "啟動音效偏好設定失敗:%s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "靜音(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "音效偏好設定(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "單聲道" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "立體聲" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "環迴立體聲 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "環迴立體聲 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "環迴立體聲 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "環迴立體聲 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "環迴立體聲 7.1" ukui-media-3.1.1.2/po/es_MX.po0000644000175000017500000002302514565521701014327 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 16:23+0000\n" "Last-Translator: monsta \n" "Language-Team: Spanish (Mexico) (http://wiki.ukui.org/trans/es_MX/)\n" "Language: es_MX\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nombre" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconocido" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/frp.po0000644000175000017500000002323214565521701014103 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alexandre Raymond, 2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 23:26+0000\n" "Last-Translator: monsta \n" "Language-Team: Franco-Provençal (Arpitan) (http://wiki.ukui.org/trans/frp/)\n" "Language: frp\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Controlo du volumo" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Controlo du volumo" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Controlo du volumo" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Controlo du volumo" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Quincalye" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Prèdèfini" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ru.po0000644000175000017500000003234314565521701013745 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alexandre Prokoudine , 2009 # Alexei Sorokin , 2014 # Andrew W. Nosenko , 2003 # Дмитрий Михирев, 2015 # Dmitriy Kulikov , 2017 # Leonid Kanter , 2004, 2005, 2006 # theirix , 2015 # Valery Inozemtsev , 2009 # Yuri Kozlov , 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: Dmitriy Kulikov \n" "Language-Team: Russian (http://wiki.ukui.org/trans/ru/)\n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Звук" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Изменить громкость звука и связать звуки с событиями рабочего стола" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Регулятор громкости" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Показать регулятор громкости" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Версия этого приложения" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Включить отладку" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Апплет регулятора громкости MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Звуковая система недоступна" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Ожидание ответа звуковой подсистемы" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Бэкэнд звуковой системы" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Домашняя страница" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Регулятор громкости MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Вход" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Выход" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Громкость микрофона" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Громкость звука" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Апплет регулятора громкости MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Левый" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Правый" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Задний" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Передний" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Минимум" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Максимум" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Баланс" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Затухание:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "Сабвуфер" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr " Неусиленный" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Приглушить" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Профиль:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Канал:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Выключено" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u выход" msgstr[1] "%u выхода" msgstr[2] "%u выходов" msgstr[3] "%u выходов" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u вход" msgstr[1] "%u входа" msgstr[2] "%u входов" msgstr[3] "%u входов" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Название" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Проверка динамиков для %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Проверить динамики" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Звуковые события" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Громкость _уведомлений: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Громкость звука: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Устройства" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Выберите настраиваемое устройство:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Параметры выбранного устройства:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Громкость _записи: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Уровень записи:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Выберите устройство для записи звука:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "В_ыберите устройство для вывода звука:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Приложения" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "В настоящий момент приложения не проигрывают и не записывают звук." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Параметры звука" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Без звуков" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Встроенная" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Другой" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Тестовый звуковой сигнал" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "По умолчанию" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Из темы" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Тип" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Тема звуков:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Выберите звук уведомления:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Включить звуковые уведомления о действиях с окнами и нажатии кнопок" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Остановить" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Проверить" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Не удалось запустить диалог настройки параметров звука: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Приглушить" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "П_араметры звука" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Отключен" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Неизвестный" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Моно" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Передний левый" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Передний правый" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Фронтальный" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Н/Ч" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Задний левый" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Задний правый" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Задний центральный" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Передний левый или центральный" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Передний правый или центральный" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Боковой левый" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Боковой правый" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Верхний передний левый" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Верхний передний правый" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Верхний передний центральный" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Верхний центральный" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Верхний задний левый" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Верхний задний правый" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Верхний задний центральный" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стерео" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Объёмный звук 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Объёмный звук 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Объёмный звук 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Объёмный звук 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Объёмный звук 7.1" ukui-media-3.1.1.2/po/sq.po0000644000175000017500000002410414565521701013736 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ardit Dani , 2014 # Indrit Bashkimi , 2015 # Laurent Dhima , 2003-2006, 2008 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Albanian (http://wiki.ukui.org/trans/sq/)\n" "Language: sq\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zëri" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Kontrolli i volumit" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versioni i këtij programi" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— MATE Kontrolli i Volumit Applet" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Faqja e nisjes" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— MATEKontrolli i Volumit" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volumi i mikrofonit" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "— MATE Kontrolli i Volumit Applet" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Majtas" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Djathtas" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanca:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profilet:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Çaktivizuar" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Emri" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Ttestimi Bokseve për %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testo Bokset" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efektet Zanore" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Konfigurime për dispozitivët e përzgjedhur:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferencat Zanore" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ska zë" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizuar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Paracaktuar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Lloji" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Ndalo" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Heshtur" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ca.po0000644000175000017500000002723314565521701013704 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Antoni Lacasta i Sulla , 2002 # jodufi , 2009, 2010 # Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007 # Josep Puigdemont , 2007 # Pere O. , 2012-2013 # Robert Antoni Buj Gelonch , 2017 # Robert Antoni Buj Gelonch , 2015-2016 # Softcatalà , 2000 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Robert Antoni Buj Gelonch \n" "Language-Team: Catalan (http://wiki.ukui.org/trans/ca/)\n" "Language: ca\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "So" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Canvieu el volum del so i els sons dels esdeveniments" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control del volum" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Mostra el control del volum de l'escriptori" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versió d'aquesta aplicació" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Habilita la depuració" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " Miniaplicació del control de volum de MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "El sistema de so no està disponible" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "S'està esperant que el sistema de so respongui" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Programari especialitzat del sistema de so" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Pàgina inicial" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Control de volum de MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Sortida" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volum del micròfon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volum de sortida" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Miniaplicació del control de volum de MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquerre" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dret" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Posterior" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frontal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínim" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Màxim" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanç:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Esvair:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Altaveu de greus:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sense amplificar" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Silenci" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nnector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Inhabilitat" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u sortida" msgstr[1] "%u sortides" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entrades" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nom" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Prova d'altaveus per a %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Prova els altaveus" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efectes de so" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volum d'_alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Volum de sortida: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Maquinari" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Seleccioneu un _dispositiu per configurar-lo:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Ajusts per al dispositiu seleccionat:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Volum d'entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivell d'entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Seleccioneu un dispositiu per a l'entrada de so:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "S_eleccioneu un dispositiu per a la sortida de so:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicacions" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "No hi ha cap aplicació que estigui reproduint o enregistrant àudio." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferències de so" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sense sons" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Integrat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalitzat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Prova d'esdeveniment de so" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predeterminat" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Del tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipus" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de sons:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Trieu un so d'alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Habilita els sons de les _finestres i dels botons" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Atura" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Prova" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "No s'han pogut iniciar les preferències del so: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Silenci" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferències del _so" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Silenciat a" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Desconegut" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Frontal esquerre" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Frontal dret" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Frontal centre" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Posterior esquerre" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "posterior dret" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Posterior centre" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Frontal esquerre del centre" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Frontal dret del centre" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Costat esquerre" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "costat dret" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Frontal esquerre superior" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Frontal dret superior" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Frontal esquerre centre" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Superior centre" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Superior posterior esquerre" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Superior posterior dret" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Superior posterior centre" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estèreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Envoltant 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Envoltant 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Envoltant 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Envoltant 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Envoltant 7.1" ukui-media-3.1.1.2/po/gu.po0000644000175000017500000003030614565521701013727 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Ankit Patel , 2009 # Milan Savaliya , 2016 # sweta , 2008, 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Gujarati (http://wiki.ukui.org/trans/gu/)\n" "Language: gu\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "સાઉન્ડ" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "સાઉન્ડ વોલ્યુમ અને સાઉન્ડ ઘટનાઓને બદલો" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "અવાજનું પ્રમાણ નિયંત્રક" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "ડેસ્કટોપ વોલ્યુમ નિયંત્રણ ને બતાવો" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "આ કાર્યક્રમ ની આવૃત્તિ" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "ડિબગ ઍનેબલ કરો" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "અવાજનું પ્રમાણ નિયંત્રક" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "જવાબ આપવા સાઉન્ડ સિસ્ટમ માટે રાહ જોઇ રહ્યા છે" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "શરૂઆતી પાંનુ" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "અવાજનું પ્રમાણ નિયંત્રક" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ઈનપુટ" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "આઉટપુટ" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "માઇક્રોફોન નો અવાજ" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "અવાજનું પ્રમાણ નિયંત્રક" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ડાબું" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "જમણું" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "રિઅર" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "આગળ" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "ન્યૂનત્તમ" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "મહત્તમ" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "સંતુલન (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "ફાડે (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ઉપવુફર (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Unamplified" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "૧૦૦%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "મૂંગુ" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "રૂપરેખા (_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "જોડનાર (_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "નિષ્ક્રિય થયેલ છે" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u આઉટપુટ" msgstr[1] "%u આઉટપુટો" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ઈનપુટ" msgstr[1] "%u ઈનપુટો" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "નામ" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "સાઉન્ડ ની અસરો" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "સચેત વોલ્યુમ (_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "આઉટપુટ વોલ્યુમ (_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "હાર્ડવેર" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "રૂપરેખાંકિત કરવા માટે ઉપકરણને પસંદ કરો (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "પસંદ થયેલ ઉપકરણ માટે સુયોજનો:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ઇનપુટ વોલ્યુમ (_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ઇનપુટ સ્તર:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "સાઉન્ડ ઇનપુટ માટે ઉપકરણ ને પસંદ કરો (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "સાઉન્ડ આઉટપુટ માટે ઉપકરણ ને પસંદ કરો (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "કાર્યક્રમો" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "કાર્યક્રમ અત્યારે ઓડિયો ને ચલાવતુ અથવા રેકોર્ડ કરતુ નથી." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "સાઉન્ડ પસંદગીઓ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "સાઉન્ડ નથી" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "બિલ્ટ-ઇન" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "કસ્ટમ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ઘટના સાઉન્ડની ચકાસણી કરી રહ્યા છે" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "મૂળભૂત" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "થીમ માંથી" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "પ્રકાર" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "સાઉન્ડ થીમ (_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "સચેત સાઉન્ડ ને પસંદ કરો (_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "વિન્ડો અને બટન સાઉન્ડો ને સક્રિય કરો (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "સાઉન્ડ પસંદગીઓ ને શરૂ કરવામાં નિષ્ફળ: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "મૂંગુ (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "સાઉન્ડ પસંદગીઓ (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/kk.po0000644000175000017500000002746614565521701013736 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Baurzhan Muftakhidinov , 2017 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 14:45+0000\n" "Last-Translator: monsta \n" "Language-Team: Kazakh (http://wiki.ukui.org/trans/kk/)\n" "Language: kk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Дыбыс" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Дыбыс деңгейін басқару" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Жұмыс үстелінің дыбыс деңгейін басқаруды көрсету" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Осы бағдарламасының нұсқасы" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Жөндеуді іске қосу" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE дыбысты басқару апплеті" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Дыбыстық қызметі қолжетерсіз" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Дыбыстық қызметінің жауабын күту" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Дыбыстық қызметінің түрі" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Іске қосылу парағы" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE дыбыстарын басқару" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Кіріс" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Шығыс" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Микрофон деңгейі" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Дыбыстың шығыс деңгейі" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE дыбысты басқару апплеті" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Сол жақ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Оң жақ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Артқы" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Алды" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Минимум" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Максимум" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Баланс:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Сөндіру" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Сабвуфер:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Күшейтусіз" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Дыбысын өшіру" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "Проф_иль:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ба_йланыстырушы:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Сөндірулі" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u шығыс" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u кіріс" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Аты" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s үшін динамикті тексеру" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Динамиктерді тексеру" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Дыбыс эффектілері" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Ескертудің дыбыс деңгейі: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Шығыс деңгейі: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Құрылғы" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Баптау үшін құры_лғыны таңдаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Таңдалған құрылғы баптаулары:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Кіріс дыбысы:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Кіріс деңгейі:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Дыбыс жазатын құры_лғыны таңдаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Дыбыс шығаратын құры_лғыны таңдаңыз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Қолданбалар" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Қазір дыбысты ойнатып не жазып тұрған қолданбалар жоқ." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Дыбыс баптаулары" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Дыбыстар жоқ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Құрамындағы" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Таңдауыңызша" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Оқиға дыбысын сынау" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Бастапқы" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Темадан" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Түрі" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Дыбыстар _темасы:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Ес_керту дыбысын таңдау:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Терезе және батырмалар дыбыстарын іске қосу" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Тоқтату" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Сынау" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Дыбыстарды басқаруды іске қосу мүмкін емес: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "Дыбысын _басу" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Дыбы_с баптаулары" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Белгісіз" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Моно" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Алдыңғы сол жақ" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Алдыңғы оң жақ" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Алдыңғы ортаңғы" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Артқы сол жақ" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Артқы оң жақ" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Артқы ортаңғы" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Алдыңғы ортаңғы сол жақ" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Алдыңғы ортаңғы оң жақ" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стерео" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/ko.po0000644000175000017500000002707714565521701013740 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Changwoo Ryu , 1998, 2002, 2003, 2004, 2006, 2008, 2009, 2010 # jaekwon.park , 2014 # 박정규(Jung-Kyu Park) , 2014 # 박정규(Jung-Kyu Park) , 2016-2017 # Seong-ho Cho , 2015 # Updated by Young-Ho, Cha , 2000, 2006, 2007 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: 박정규(Jung-Kyu Park) \n" "Language-Team: Korean (http://wiki.ukui.org/trans/ko/)\n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "사운드" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "사운드 볼륨과 사운드 이벤트를 바꿉니다" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "볼륨 조정" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "데스크톱 볼륨 조정 표시" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "이 프로그램의 버전" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "디버깅 활성화" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "— 마테 볼륨 조정 애플릿" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "사운드 시스템 사용이 불가능합니다. " #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "사운드 시스템이 응답하기를 기다립니다" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "사운드 시스템 백엔드" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "시작 페이지" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "— 마테 볼륨 조정" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "입력" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "출력" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "마이크 볼륨" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "사운드 출력 볼륨" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "마테 볼륨 조정 애플릿" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "왼쪽" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "오른쪽" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "후방" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "전방" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "최소" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "최대" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "균형(_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "페이드(_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "서브우퍼(_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "증폭하지 않음" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "조용히" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "프로파일(_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "커넥터(_N):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "사용하지 않음" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u개 출력" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u개 입력" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "이름" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s에 대한 스피커 테스트" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "스피커 테스트" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "사운드 효과" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "경보 볼륨(_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "출력 볼륨(_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "하드웨어" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "설정할 장치를 선택하십시오(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "선택한 장치의 설정:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "입력 볼륨(_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "입력 단계:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "사운드 입력 장치를 선택하십시오(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "사운드 출력 장치를 선택하십시오(_H):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "프로그램" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "현재 오디오를 재생하거나 녹음하는 프로그램이 없습니다." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "사운드 기본 설정" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "소리 없음" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "내장" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "사용자 지정" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "이벤트 소리 테스트" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "기본값" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "테마에서" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "종류" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "사운드 테마(_T):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "경보 사운드 선택(_H):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "창 및 단추 사운드 사용(_W)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "중지" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "테스트" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "사운드 기본 설정 시작에 실패: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "조용히(_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "사운드 기본 설정(_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "음소거" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "알 수 없음" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "모노" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "전방 좌측" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "전방 우측" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "전방 중앙" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "후방 좌측" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "후방 우측" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "후방 중앙" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "전방 중앙 좌측" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "전방 중앙 우측" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "측면 좌측" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "측면 우측" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "상단 전방 좌측" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "상단 전방 우측" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "상단 전방 중앙" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "상단 중앙" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "상단 후방 좌측" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "상단 후방 우측" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "상단 후방 중앙" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "스트레오" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "서라운드 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "서라운드 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "서라운드 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "서라운드 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "서라운드 7.1" ukui-media-3.1.1.2/po/es_PR.po0000644000175000017500000002314214565521701014324 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Neverest , 2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-20 15:44+0000\n" "Last-Translator: monsta \n" "Language-Team: Spanish (Puerto Rico) (http://wiki.ukui.org/trans/es_PR/)\n" "Language: es_PR\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sonido" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nombre" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicaciones" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Estéreo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/mai.po0000644000175000017500000002417314565521701014067 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Rajesh Ranjan , 2009 # Sangeeta Kumari , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Maithili (http://wiki.ukui.org/trans/mai/)\n" "Language: mai\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ध्वनि" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "आवाज निर्धारक" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "एहि अनुप्रयोग क' संस्करण" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "आवाज निर्धारक" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "आवाज निर्धारक" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "इनपुट" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "आउटपुट" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "आवाज निर्धारक" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "बामाँ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "दहिन्ना" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "मौन" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "अक्षम" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "नाम" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "अनुप्रयोग" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ध्वनि वरीयतासभ " #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "कोनो ध्वनि नहि" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "पसंदीदा" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "मूलभूत" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "प्रसंग सँ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "प्रकार" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "रोकू" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/nb.po0000644000175000017500000002630614565521701013720 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Allan Nordhøy , 2016-2017 # Kenneth Jenssen , 2016 # Terance Edward Sola , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Allan Nordhøy \n" "Language-Team: Norwegian Bokmål (http://wiki.ukui.org/trans/nb/)\n" "Language: nb\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Lyd" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Endre volum og tilegne lyder til hendelser" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volumkontroll" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Vis volumkontroll for skrivebordet" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versjon av dette programmet" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Skru på feilrettingsmodus" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " – MATE panelprogram for volumkontroll" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Lyd system er ikke tilgjengelig" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Venter på svar fra lydsystemet" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Bakstykke for lydsystem" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Oppstartside" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " – MATE volumkontroll" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Inngang" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Utgang" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volum for mikrofon" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Utgangsvolum for lyd" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE-panelprogram for lydstyrkejustering" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Venstre" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Høyre" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Bak" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Front" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanse:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Utfasing:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Uten forsterkning" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Demp" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Tilkobli_ng:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Slått av" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u utgang" msgstr[1] "%u utganger" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u inngang" msgstr[1] "%u innganger" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Navn" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Test av høyttaler for %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Test høyttalere" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Lydeffekter" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volum for v_arsel: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Utgangsv_olum: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Maskinvare" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Velg en en_het som skal settes opp:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Innstillinger for valgt enhet:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volum for _inngang: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivå for inngang:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Velg en inngangsen_het for lyd:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Velg en utgangsen_het for lyd:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programmer" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ingen programmer spiller av eller tar opp lyd nå." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Brukervalg for lyd" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ingen lyder" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Innebygget" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Tilpasset" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Test lyd for hendelse" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Forvalgt" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Fra drakt" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Lyd_tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Velg en varslingslyd:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktiver lyder for knapper og _vinduer" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stopp" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Klarte ikke å starte brukervalg for lyd: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "De_mp" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Brukervalg for lyd" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Dempet klokken" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Ukjent" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Fremme til venstre" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Fremme til høyre" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Fremst i midten" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Bakerst til venstre" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Bakerst til høyre" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Bakerst i midten" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Fremme til venstre for sentrum" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Fremme til høyre for sentrum" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Venstre side" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Høyre side" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Øverst oppe til venstre" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Øverst oppe til høyre" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Øverst fremme i midten" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Øverst i midten" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Bak øverst til venstre" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Øverst oppe til høyre" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Lengst bak i midten" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Kringlyd 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Kringlyd 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Kringlyd 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Kringlyd 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Kringlyd 7.1" ukui-media-3.1.1.2/po/ne.po0000644000175000017500000002441714565521701013724 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Bishnu Adhikari , 2005 # Ganesh Ghimire , 2005 # Jaydeep Bhusal , 2005 # Jyotshna Shrestha , 2005 # Mahesh subedi , 2006 # Nabin Gautam , 2007 # Shiva Pokharel , 2005 # Shiva Prasad Pokharel , 2006 # Shyam Krishna Bal , 2006 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Nepali (http://wiki.ukui.org/trans/ne/)\n" "Language: ne\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "भोल्युम नियन्त्रण" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "भोल्युम नियन्त्रण" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "भोल्युम नियन्त्रण" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "भोल्युम नियन्त्रण" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "बायाँ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "दायाँ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "अनुकूल" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "पूर्वनिर्धारित" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "रोक्नुहोस्" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "अज्ञात" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/mk.po0000644000175000017500000002422414565521701013725 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Arangel Angov , 2003, 2006, 2008 # Ivan Stojmirov , 2003 # Jovan Naumovski , 2006, 2007, 2008 # Misa Popovic , 2003 # Vladislav Bidikov , 2003 # Арангел Ангов , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Macedonian (http://wiki.ukui.org/trans/mk/)\n" "Language: mk\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 % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Поставување на јачина на звукот" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Поставување на јачина на звукот" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Почетна страница" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Поставување на јачина на звукот" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Поставување на јачина на звукот" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Сопствено" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Стандардно" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Запри" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/nn.po0000644000175000017500000002466214565521701013737 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Åsmund Skjæveland , 2003, 2004, 2005, 2006 # Åsmund Skjæveland , 2010 # Kjartan Maraas , 2001 # Torstein Adolf Winterseth , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Norwegian Nynorsk (http://wiki.ukui.org/trans/nn/)\n" "Language: nn\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Lyd" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Endra lydvolum og lydar til hendingar" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volumkontroll" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Vis volumkontroll til skrivebordet" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versjon av dette programmet" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Volumkontroll" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Ventar på svar frå lydsystemet" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Oppstartsside" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Volumkontroll" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Inndata" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Utdata" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Volumkontroll" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Venstre" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Høgre" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Bak" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Front" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balanse:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Utfasing" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Utan forsterking" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100 %" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Demp" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profilar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Tilkopli_ng" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Avslått" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u utgang" msgstr[1] "%u utgangar" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u inngang" msgstr[1] "%u ingangar" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Namn" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Lydeffektar" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "V_arselsvolum:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Utgangsv_olum" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Maskinvare" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Innstillingar til den valte eininga:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Inngangsvolum:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Inngangsnivå:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Program" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ingen program spelar av eller tek opp lyd for augneblikket." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Lydinnstillingar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ingen lydar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Innebygd" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Tilpassa" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testar hendingslyd" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standard" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Frå tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Type" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Lyd_tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Klarte ikkje starte lydinnstillingar: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "De_mp" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Lydinn_stillingar" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/hi.po0000644000175000017500000003007414565521701013716 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # G Karunakar , 2003 # Rajesh Ranjan , 2009 # Rajesh Ranjan , 2005, 2006, 2008, 2009 # Ravishankar Shrivastava , 2004 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Hindi (http://wiki.ukui.org/trans/hi/)\n" "Language: hi\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "ध्वनि" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "ध्वनि आवाज और ध्वनि घटना बदलें" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "आवाज निर्धारक नियंत्रक" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "डेस्कटॉप आवाज नियंत्रण दिखाएँ" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "इस अनुप्रयोग का संस्करण" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "आवाज निर्धारक नियंत्रक" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "ध्वनि तंत्र की प्रतिक्रिया के लिए प्रतीक्षारत" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "आरंभ पेज" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "आवाज निर्धारक नियंत्रक" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "इनपुट" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "आउटपुट" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "आवाज निर्धारक नियंत्रक" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "बायाँ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "दाहिना" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "पिछला" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "अग्र भाग" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "न्यूनतम" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "अधिकतम" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "संतुलन (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "धुंधला (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "उप वूफ़र (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "बिना संवर्द्धित" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "मौन" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "प्रोफाइल (_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "कनेक्टर (_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "अक्षम" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u आउटपुट" msgstr[1] "%u आउटपुट" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u इनपुट" msgstr[1] "%u इनपुट" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "नाम" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "ध्वनि प्रभाव" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "आवाज चेताएँ (_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "आउटपुट आवाज (_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "हार्डवेयर" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "विन्यस्त करने के लिए कोई युक्ति चुनें (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "चयनित युक्ति के लिए सेटिंग:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "इनपुट आवाज (_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "इनपुट स्तर:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "ध्वनि इनपुट के लिए कोई युक्ति चुनें (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "ध्वनि आउटपुट के लिए कोई युक्ति चुनें (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "अनुप्रयोग" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "कोई अनुप्रयोग अभी ध्वनि बजा या रिकार्ड नहीं कर रहा है." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "ध्वनि वरीयता" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "कोई ध्वनि नहीं" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "अंतर्निर्मित" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "अनुकूलित" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "घटना ध्वनि जाँच रहा है" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "डिफ़ॉल्ट" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "प्रसंग से" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "क़िस्म" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "ध्वनि प्रसंग (_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "कोई चेतावनी ध्वनि चुनें (_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "विंडो और बटन ध्वनि सक्रिय करें (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "ध्वनि वरीयता आरंभ करने में विफल: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "मूक (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "ध्वनि वरीयता (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/sc.po0000644000175000017500000002310514565521701013720 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Fabrizio Pedes , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:52+0000\n" "Last-Translator: monsta \n" "Language-Team: Sardinian (http://wiki.ukui.org/trans/sc/)\n" "Language: sc\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Sonu" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Muda volùmene e eventos de su sonu" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/tr.po0000644000175000017500000002645314565521701013751 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Arman Aksoy (Armish) , 2003 # Baris Cicek , 2004, 2005, 2008, 2009 # Butterfly , 2017 # Fatih Demir , 2000 # Kudret , 2014 # mauron, 2014 # mauron, 2012 # Umut Barış GÖKMEN , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Butterfly \n" "Language-Team: Turkish (http://wiki.ukui.org/trans/tr/)\n" "Language: tr\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Ses" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Ses seviyesini ve olay seslerini değiştir" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ses Kontrolü" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Masaüstü ses kontrolünü göster" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Bu uygulamanın sürümü" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Hata ayıklamayı etkinleştir" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — MATE Ses Seviyesi Kontrol Programcığı" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Ses sistemi kullanılabilir değil" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Ses sisteminin cevabı bekleniyor" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Ses sistemi arka ucu" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Başlangıç sayfası" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — MATE Ses Seviyesi Kontrolü" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Giriş" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Çıkış" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofon seviyesi" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Ses Çıktı Seviyesi" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE Ses Seviyesi Kontrol Programcığı" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Sol" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Sağ" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Arka" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Ön" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "En az" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "En fazla" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Denge:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Geçiş:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Yükseltilmemiş" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "%100" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Sessiz" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Bağlayıcı:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Kapalı" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Çıkış" msgstr[1] "%u Çıkış" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Giriş" msgstr[1] "%u Giriş" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "İsim" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "%s İçin Hoparlör Testi" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Hoparlörleri sına" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ses Etkileri" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Uyarı ses seviyesi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Çıkış _ses seviyesi: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Donanım" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Yapılandırmak için bir aygıt seçin:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Seçilen aygıt için ayarlar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Giriş ses seviyesi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Giriş seviyesi:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Ses _girişi için bir aygıt seçin:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Ses çı_kışı için bir aygıt seçin:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Uygulamalar" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Şu an da hiçbir uygulama ses çalmıyor veya kaydetmiyor." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Ses Tercihleri" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Ses yok" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Dahili" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Özel" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Olay sesleri deneniyor" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Öntanımlı" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Teması" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tür" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Ses _teması:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Bir _uyarı sesi seçin:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Pencere ve tuş seslerini etkinleştir" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Dur" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Test" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Ses Tercihleri başlatılamadı: %ss" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Sessiz" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Ses Tercihleri" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Şuna kapalı" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Bilinmeyen" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Ön Sol" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Ön Sağ" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Ön Merkez" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Bas Hoparlörü" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Arka Sol" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Arka Sağ" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Arka Merkez" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Ön Merkezin Solu" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Ön Merkezin Sağı" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Sol Kenar" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Sağ Kenar" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "En Ön Sol" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "En Ön Sağ" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "En Ön Merkez" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "En Orta" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "En Arka Sol" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "En Arka Sağ" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "En Arka Merkez" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Çevresel ses 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Çevresel ses 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Çevresel ses 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Çevresel Ses 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Çevresel ses 7.1" ukui-media-3.1.1.2/po/is.po0000644000175000017500000002316714565521701013736 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 13:02+0000\n" "Last-Translator: monsta \n" "Language-Team: Icelandic (http://wiki.ukui.org/trans/is/)\n" "Language: is\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 % 10 != 1 || n % 100 == 11);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Hljóð" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Útgáfa þessa forrits" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Til vinstri" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Til hægri" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Hámark" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Óvirkt" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Heiti" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Forrit" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Sérsniðið" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Sjálfgefið" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Óþekktur" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/sv.po0000644000175000017500000002674314565521701013756 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Andreas Hyden , 2000 # Christian Rose , 2001, 2002, 2003, 2004, 2005, 2006 # Daniel Gullbransen , 2017 # Daniel Nylander , 2006, 2007, 2008, 2009, 2010 # Erik, 2016 # Henrik Mattsson-Mårn , 2016 # Kristoffer Grundström , 2015 # Martin Wahlen , 1998, 1999 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Swedish (http://wiki.ukui.org/trans/sv/)\n" "Language: sv\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Ljud" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Ändra ljudvolym och ljudhändelser" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volymkontroll" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Visa skrivbordets volymkontroll" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Version av detta program" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Aktivera felsökning" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Volympanelprogram för MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Ljudsystemet är inte tillgängligt" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Väntar på att ljudsystemet ska svara" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Ljudsystemets bakände" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Uppstartssida" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Volymkontroll för MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ingång" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Utgång" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Mikrofonvolym" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Ljudutgångsvolym " #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Volymkontrollsapplet för MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Vänster" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Höger" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Bak" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Fram" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balans:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Tona:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Ej förstärkt" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Tyst" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ko_ntakt:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Inaktiverad" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u utgång" msgstr[1] "%u utgångar" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ingång" msgstr[1] "%u ingångar" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Namn" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Högtalartest för %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testa högtalare" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Ljudeffekter" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Larmvolym: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Utgångsvolym: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hårdvara" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Välj en enhet att _konfigurera:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Inställningar för vald enhet:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Ingångsvolym: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Ingångsnivå:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Välj _en enhet för ljudingång:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Välj _en enhet för ljudutgång:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Program" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Inget program spelar upp eller in ljud för tillfället." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Ljudinställningar" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Inga ljud" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Inbyggt" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Anpassad" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testar händelseljud" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Standard" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Från tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Typ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Ljud_tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Väl_j ett larmljud:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktivera ljud för _fönster och knappar" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stopp" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Testa" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Misslyckades med att starta ljudinställningar: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Tyst" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Ljudinställningar" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Okänt" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Fronthögtalare vänster" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Fronthögtalare höger" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Fronthögtalare mitten" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Bashögtalare" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Bakre högtalare vänster" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Bakre högtalare höger" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Bakre högtalare mitten" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Fronthögtalare vänster mitten" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Fronthögtalare höger mitten" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Sidohögtalare vänster" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Sidohögtalare höger" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Fronthögtalare övre vänster" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Fronthögtalare övre höger" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Fronthögtalare övre mitten" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Längst upp i mitten" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Bakre högtalare övre vänster" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Bakre högtalare övre höger" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Bakre högtalare övre mitten" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/gl.po0000644000175000017500000002634314565521701013724 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Antón Méixome , 2009 # Fran Diéguez , 2009 # Fran Diéguez , 2010 # Fran Diéguez , 2010 # Ignacio Casal Quinteiro , 2007-2008 # Ignacio Casal Quinteiro , 2005-2006 # Mancomún - Centro de Referencia e Servizos de Software Libre , 2009 # Miguel Anxo Bouzada , 2013 # Sergio Rua , 1999 # Suso Baleato , 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Galician (http://wiki.ukui.org/trans/gl/)\n" "Language: gl\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Son" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Modificar o volume do son e asociar sons a eventos" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Control de volume" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Amosar o control de volume do escritorio" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Versión deste aplicativo" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Miniaplicativo de control de volume do MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Agardando a que o sistema de son responda" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Páxina de inicio" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Control de volume do MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Entrada" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Saída" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Volume do micrófono" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Volume do son de saída" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr " — Miniaplicativo de control de volume do MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Esquerda" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Dereita" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Traseira" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Frontal" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Mínimo" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Máximo" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balance:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Esvaecer:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Sen amplificación" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Sen son" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Perfil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Co_nector:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Desactivado" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u saída" msgstr[1] "%u saídas" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u entrada" msgstr[1] "%u entradas" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nome" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Proba de altofalantes para %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Probar altofalantes" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efectos de son" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Volume da _alerta: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "V_olume de saída: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "E_scolla un dispositivo para configurar:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Configuracións para o dispositivo seleccionado:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Volume de _entrada: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Nivel de entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "E_scolla un dispositivo para o son de entrada:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "E_scolla un dispositivo para o son de saída:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Aplicativos" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Neste momento non hai ningún aplicativo reproducindo ou gravando son." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferencias de son" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Sen sons" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Incorporado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Personalizado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Probando o son da acción" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predeterminado" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Do tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipo" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Tema de son:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "E_scolla un son de alerta:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Activar sons de _xanela e de botóns" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Deter" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Probar" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Produciuse un fallo ao iniciar as Preferencias de son: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "S_en son" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferencias de _son" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/mg.po0000644000175000017500000002312614565521701013721 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Malagasy (http://wiki.ukui.org/trans/mg/)\n" "Language: mg\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Fanamafisam-peo" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Fanamafisam-peo" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Fanamafisam-peo" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Fanamafisam-peo" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Safidy" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Mijanona" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/af.po0000644000175000017500000002461114565521701013704 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # F Wolff , 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Afrikaans (http://wiki.ukui.org/trans/af/)\n" "Language: af\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Klank" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Verander klankvolume en klankgebeure" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Volumebeheer" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Wys volumebeheer vir die werkskerm" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Weergawe van hierdie toepassing" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Volumebeheer" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Wat tans vir die klankstelsel om te reageer" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Beginbladsy" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Volumebeheer" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Toevoer" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Afvoer" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Volumebeheer" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Links" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Regs" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Agter" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Voor" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Balans:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Doo_f:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Onversterk" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Doof uit" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profiel:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ver_binding:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Gedeaktiveer" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u afvoer" msgstr[1] "%u afvoere" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u toevoer" msgstr[1] "%u toevoere" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Naam" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Klankeffekte" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "W_aarskuwingvolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "_Afvoervolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardeware" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Kies 'n toestel om in te stel:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Instellings vir die gekose toestel:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Toevoervolume: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Toevoervlak:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Kies 'n toestel vir klanktoevoer:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Kies 'n toestel vir klankafvoer:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Toepassings" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Daar is geen toepassing wat tans oudio speel of opneem nie." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Klankvoorkeure" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Geen klanke" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Ingebou" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Pasgemaak" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Verstek" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Vanaf tema" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Tipe" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Klank_tema:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Kies 'n waarskuwingklank:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Aktiveer _venster- en knoppieklanke" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Kon nie klankvoorkeure begin nie: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Doof uit" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "_Klankvoorkeure" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/pms.po0000644000175000017500000002324714565521701014121 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Randy Ichinose , 2016 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 22:29+0000\n" "Last-Translator: monsta \n" "Language-Team: Piemontese (http://wiki.ukui.org/trans/pms/)\n" "Language: pms\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 msgid " — UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 msgid " — UKUI Volume Control" msgstr "" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Input" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Output" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 msgid "UKUI Volume Control Applet" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Dësabilità" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Output" msgstr[1] "%u Outputs" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Input" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nòm" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Stop" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/sk.po0000644000175000017500000002724214565521701013736 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Dušan Kazik , 2015-2017 # Ján Ďanovský , 2013-2014 # Marcel Telka , 2005 # Pavol Šimo , 2015 # Peter Tuharsky , 2007 # Stanislav Visnovsky , 2003 # Stanislav Višňovský , 2002 # Stanislav Visnovsky , 2000-2002,2003, 2004 # Tibor Kaputa , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Dušan Kazik \n" "Language-Team: Slovak (http://wiki.ukui.org/trans/sk/)\n" "Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Zvuk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Zmení hlasitosť zvuku a priradí zvuky k udalostiam" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Ovládanie hlasitosti" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Zobrazí ovládanie hlasitosti pracovného prostredia" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Verzia tohto programu" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Povoliť ladenie" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "– applet ovládania hlasitosti MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Zvukový systém nie je dostupný" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Čakanie na odpoveď zvukového systému" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Backend zvukového systému" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Spúšťacia stránka" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Ovládanie hlasitosti MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Vstup" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Výstup" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Hlasitosť mikrofónu" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Hlasitosť výstupného zvuku" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "MATE applet na ovládanie hlasitosti" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Ľavý" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Pravý" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Zadný" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Predný" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maximum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "Vyváž_enie:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Prelínanie:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Subwoofer:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Nezosilnené" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Stlmiť" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "Ko_nektor:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Vypnuté" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Výstup" msgstr[1] "%u Výstupy" msgstr[2] "%u Výstupov" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Vstup" msgstr[1] "%u Vstupy" msgstr[2] "%u Vstupov" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Názov" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Testovanie reproduktora %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Otestovať reproduktory" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Zvukové efekty" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Hl_asitosť upozornení: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Výst_upná hlasitosť: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Hardvér" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Zariadenie nastavíte je_ho vybraním:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Nastavenie vybraného zariadenia:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Vstupná hlas_itosť: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Vstupná úroveň:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "V_yberte zariadenie zvukového vstupu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "V_yberte zariadenie zvukového výstupu:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programy" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Žiadny program momentálne neprehráva alebo nenahráva zvuk." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Nastavenia zvuku" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Bez zvukov" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Zabudované" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Vlastný" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testujú sa zvuky udalostí" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Predvolené" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Z témy" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Typ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Téma zvuku:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "V_yberte zvuk upozornení:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "P_ovoliť zvuky okien a tlačidiel" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zastaviť" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Otestovať" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Nepodarilo sa spustiť nastavenia zvuku: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "S_tlmiť" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Na_stavenia zvuku" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Stlmené na" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Neznámy" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Predný ľavý" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Predný pravý" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Predný stredový" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "LFE" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Zadný ľavý" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Zadný pravý" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Zadný stredový" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Predný ľavý stredový" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Predný pravý stredový" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Bočný ľavý" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Bočný pravý" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Horný predný ľavý" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Horný predný pravý" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Horný predný stredový" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Horný stredový" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Horný zadný ľavý" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Horný zadný pravý" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Horný zadný stredový" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/pl.po0000644000175000017500000002717314565521701013737 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Marcin Kralka , 2014 # Paweł Bandura , 2016 # Piotr Drąg , 2017 # Piotr Strębski , 2015 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-23 18:10+0000\n" "Last-Translator: monsta \n" "Language-Team: Polish (http://wiki.ukui.org/trans/pl/)\n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n" "%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n" "%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Dźwięk" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Zmiana głośności dźwięku i dźwięków zdarzeń" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Regulacja głośności" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Wyświetlanie regulacji głośności na pulpicie" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Wersja tego programu" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Włącz debugowanie" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Aplet regulacji głośności środowiska MATE" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "System dźwięku jest niedostępny" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Oczekiwanie na odpowiedź systemu dźwięku" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Backend systemu dźwięku" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Strona początkowa" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Regulacja głośności w środowisku MATE" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Wejście" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Wyjście" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Głośność mikrofonu" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Głośność dźwięku na wyjściu" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Aplet kontroli głośności MATE" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Lewy" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Prawy" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Tył" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Przód" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Minimum" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Maksimum" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "B_alans:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Natężenie głośności:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Głośnik niskotonowy:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Bez wzmocnienia" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Wyciszenie" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Profil:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Złącze:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Wyłączone" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u wyjście" msgstr[1] "%u wyjścia" msgstr[2] "%u wyjść" msgstr[3] "%u wyjść" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u wejście" msgstr[1] "%u wejścia" msgstr[2] "%u wejść" msgstr[3] "%u wejść" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Nazwa" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Testowanie głośnika %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Testuj głośniki" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Efekty dźwiękowe" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "_Głośność powiadomień: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Gł_ośność na wyjściu: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Sprzęt" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Wy_bór urządzenia do konfiguracji:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Ustawienia wybranego urządzenia:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "_Głośność na wejściu: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Poziom wejścia:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Wy_bór urządzenia do wejścia dźwięku:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Wy_bór urządzenia do wyjścia dźwięku:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Programy" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Żaden program obecnie nie odtwarza lub nagrywa dźwięku." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Preferencje dźwięku" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Bez dźwięków" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Wbudowany" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Własne" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Testowanie dźwięku zdarzenia" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Domyślne" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Z motywu" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Typ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "Motyw _dźwiękowy:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Wy_bór dźwięku powiadomienia:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Dźwięki o_kien i przycisków" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Zatrzymaj" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Przetestuj" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Uruchomienie preferencji dźwięku się nie powiodło: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Wyciszenie" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Preferencje _dźwięku" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Nieznany" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Przedni lewy" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Przedni prawy" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Przedni środkowy" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "Niskotonowy" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Tylny lewy" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Tylny prawy" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Tylny środkowy" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Przedni lewy do środkowego" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Przedni prawy do środkowego" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Boczny lewy" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Boczny prawy" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Górny przedni lewy" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Górny przedni prawy" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Górny przedni środkowy" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Górny środkowy" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Górny tylni lewy" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Górny tylni prawy" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Górny tylni środkowy" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Stereo" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Surround 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Surround 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Surround 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Surround 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Surround 7.1" ukui-media-3.1.1.2/po/sr.po0000644000175000017500000003130214565521701013735 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007 # Miloš Popović , 2010 # Miloš Popović , 2010 # Мирослав Николић , 2014 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: Мирослав Николић \n" "Language-Team: Serbian (http://wiki.ukui.org/trans/sr/)\n" "Language: sr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Звук" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Измените јачину звука и догађаје звука" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Управљање јачином звука" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "Прикажите управљање јачином звука" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Издање овог програма" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "Укључује прочишћавање" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr " — Мејтово програмче за управљање звуком" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "Звук система није доступан" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "Чекам на одговор система звука" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "Позадинац система звука" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "Почетна страница" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr " — Мејтово управљање звуком" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Улаз" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Излаз" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "Јачина звука микрофона" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "Јачина излазног звука" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Мејтово програмче за управљање звуком" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Леви" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Десни" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Задњи" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Предњи" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Најтише" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Најгласније" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Однос:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "_Ишчезавање:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Дубокотонац:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Без појачавања" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Утишај" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Профил:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Конектор:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Искључен" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u излаз" msgstr[1] "%u излаза" msgstr[2] "%u излаза" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u улаз" msgstr[1] "%u улаза" msgstr[2] "%u улаза" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Назив" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "Испробавање звучника %s" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "Испробавање звучника" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Звучна дејства" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Јачина звука за _упозорења: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Јачина звука на _излазу: " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Звучне картице" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "Изаберите _уређај за подешавање:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Подешавања изабраног уређаја:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Јачина звука на _улазу: " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Улазни ниво:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "Изаберите уређај као звучни _улаз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "Изаберите уређај као звучни _излаз:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Програми" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Ниједан програм тренутно не пушта нити снима звук." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Поставке звука" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Без звука" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "Уграђено" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Произвољно" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Испробавање звука догађаја" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Основно" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Из теме" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Врста" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Тема звука:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "Изабери звук _упозорења:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "Укључи звуке за _прозоре и дугмиће" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Заустави" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "Испробај" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Нисам успео да покренем поставке звука: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Утишај" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Поставке _звука" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "Утишано на" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "Непознато" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "Mono" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "Предњи леви" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "Предњи десни" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "Предњи средишњи" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "ЛФЕ" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "Позадински леви" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "Позадински десни" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "Позадински средишњи" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "Предњи леви средишњи" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "Предњи десни средишњи" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "Бочни леви" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "Бочни десни" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "Горњи предњи леви" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "Горњи предњи десни" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "Горњи предњи средишњи" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "Горњи средишњи" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "Горњи позадински леви" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "Горњи позадински десни" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "Горњи позадински средишњи" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "Стерео" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "Окружујући 4.0" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "Окружујући 4.1" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "Окружујући 5.0" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "Окружујући 5.1" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "Окружујући 7.1" ukui-media-3.1.1.2/po/ga.po0000644000175000017500000002542514565521701013711 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Alastair McKinstry , 1999 # Paul Duffy , 2003 # Seán de Búrca , 2008, 2009 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Irish (http://wiki.ukui.org/trans/ga/)\n" "Language: ga\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : " "4);\n" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "Fuaim" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "Athraigh airde agus teagmhais fuaime" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Rialtán Airde" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "‭Taispeáin rialtán airde deisce" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "Leagan an fheidhmchláir seo" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Rialtán Airde" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Rialtán Airde" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "Ionchur" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "Aschur" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Rialtán Airde" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "Clé" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "Deas" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "Cúl" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "Aghaidh" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "Íosmhéid" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "Uasmhéid" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "_Cothromaíocht:" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "Cé_imniú:" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "_Fo-dhordaire:" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "Neamhaimplithe" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "Gan fuaim" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "_Próifíl:" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "_Nascóir:" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "Díchumasaithe" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u Aschur" msgstr[1] "%u Aschur" msgstr[2] "%u Aschur" msgstr[3] "%u nAschur" msgstr[4] "%u Aschur" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u Ionchur" msgstr[1] "%u Ionchur" msgstr[2] "%u Ionchur" msgstr[3] "%u nIonchur" msgstr[4] "%u Ionchur" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "Ainm" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "Maisíochtaí Fuaime" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "Airde _foláirimh:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "Airde _aschurtha:" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "Crua-earraí" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "_Roghnaigh gléas le cumrú" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "Socruithe don ghléas roghnaithe:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "Airde _ionchurtha:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "Leibhéal ionchurtha:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "_Roghnaigh gléas le haghaidh ionchurtha fuaime:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "_Roghnaigh gléas le haghaidh aschurtha fuaime:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "Feidhmchláir" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "Níl aon fheidhmchlár ag seinm nó ag taifeadadh fuaime faoi láthair." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "Sainroghanna Fuaime" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "Gan fhuaimeanna" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Saincheaptha" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "Fuaim teagmhais tástála" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "Réamhshocrú" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "Ó théama" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "Cineál" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "_Téama fuaime:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "_Roghnaigh fuaim foláirimh:" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "_Cumasaigh fuaimeanna fuinneog agus cnaipí" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "Theip ar thosú Sainroghanna Fuaime: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "_Gan Fuaim" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "Sainroghanna _Fuaime" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/mn.po0000644000175000017500000002351014565521701013725 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Sanlig Badral , 2003 # Sanlig Badral , 2003, 2004, 2006 # Sanlig Badral , 2003, 2004 # Sukhochir , 2003 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Mongolian (http://wiki.ukui.org/trans/mn/)\n" "Language: mn\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Дууны хянагч" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Дууны хянагч" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Дууны хянагч" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Дууны хянагч" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Хэрэглэгч тод." #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Зогс" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/gnome-copyrights.txt0000644000175000017500000010607514565521701017022 0ustar fengfeng========== af.po ========== # Afrikaans translation of mate-media. # Copyright (C) 2010 # This file is distributed under the same license as the mate-media package. # Contributors: # F Wolff , 2010. ========== am.po ========== # Translations into the Amharic Language. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # Ge'ez Frontier Foundation , 2002. # # ========== ar.po ========== # translation of mate-media.HEAD.po to Arabic # This file is distributed under the same license as the mate-media.ar package. # Copyright (C) 2003 THE mate-media.ar'S COPYRIGHT HOLDER. # Sayed Jaffer Al-Mosawi , 2002. # Arafat Medini , 2002,2003. # Isam Bayazidi , 2002. # , 2003. # Abdulaziz Al-Arfaj , 2004. # Djihed Afifi , 2006. # Khaled Hosny , 2006, 2007, 2008, 2009, 2010. # Anas Afif Emad , 2008. # Amitakhya Phukan , 2009. ========== ast.po ========== # Asturian translation for mate-media. # Copyright (C) 2009 mate-media's COPYRIGHT HOLDER # This file is distributed under the same license as the mate-media package. # Astur , 2009. # ========== az.po ========== # translation of mate-media.HEAD.az.po to Azerbaijani # Copyright (C) 2000, 2004 Free Software Foundation, Inc. # Vasif Ismailoglu MD , 2000. # Mətin Əmirov , 2004. # ========== be.po ========== # Беларускі пераклад mate-media.HEAD. # Copyright (C) 2003, 2004 Free Software Foundation, Inc. # Vital Khilko , 2003. # Ales Nyakhaychyk , 2004. # Ihar Hrachyshka , 2006 # ========== be@latin.po ========== # Biełaruski pierakład mate-media # Alaksandar Navicki , 2007. Łacinka.org # ========== bg.po ========== # Bulgarian translation of mate-media po-file. # Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Copyright (C) 2009, 2010 Free Software Foundation, Inc. # Evgeni Boevski , 2002, 2003. # Yanko Kaneti , 2003. # Vladimir "Kaladan" Petkov , 2004. # Rostislav Raykov , 2004. # Alexander Shopov , 2005, 2008, 2009, 2010. # Philip Dimitrov , 2005. # Yavor Doganov , 2007. # ========== bn.po ========== # Bengali Translation of the mate-media. # This file is distributed under the same license as the MATE-MEDIA package. # Copyright (C) 2003-2005 The MATE Foundation. # # Sayamindu Dasgupta , 2003. # Runa Bhattacharjee , 2003. # Progga , 2005. # Runa Bhattacharjee , 2006. # Runa Bhattacharjee , 2008, 2009. # Maruf Ovee , 2009. # Sadia Afroz , 2010. # ========== bn_IN.po ========== # translation of bn_IN.po to Bengali INDIA # Translation of mate-media.mate-2-12.po to Bengali India # This file is distributed under the same license as the MATE-MEDIA package. # Copyright (C) 2003-2005 The MATE Foundation. # # Sayamindu Dasgupta , 2003. # Runa Bhattacharjee , 2003. # Progga , 2005. # Runa Bhattacharjee , 2006. # Runa Bhattacharjee , 2008, 2009, 2010. ========== br.po ========== # Breton translation of mate-media. # Copyright (C) 2006 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Jérémy Ar Floc'h , 2006. # ========== bs.po ========== # translation of mate-media.HEAD.bs.po to Bosnian # This file is distributed under the same license as the mate-media package. # Copyright (C) 2004 Free Software Foundation, Inc. # Mehemed Sacirovic , 2004. # ========== ca.po ========== # Traducció del mate-media de l'equip de Softcatalà. # Copyright © 2000-2009 Free Software Foundation, Inc. # Softcatalà , 2000. # Antoni Lacasta i Sulla , 2002. # Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. # Josep Puigdemont i Casamajó , 2007. # Joan Duran , 2009, 2010. # ========== ca@valencia.po ========== # Traducció del mate-media de l'equip de Softcatalà. # Copyright © 2000-2009 Free Software Foundation, Inc. # Softcatalà , 2000. # Antoni Lacasta i Sulla , 2002. # Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. # Josep Puigdemont i Casamajó , 2007. # Joan Duran , 2009, 2010. # ========== cs.po ========== # Czech messages for mate-media. # Copyright (C) 2001, 2007, 2008, 2009, 2010 the author(s) of mate-media. # Copyright (C) 2004, 2005, 2006 Miloslav Trmac . # Copyright (C) 2006 Lukas Novotny . # This file is distributed under the same license as the mate-media package. # Stanislav Brabec , 2000, 2001. # Michal Bukovjan , 2002. # Miloslav Trmac , 2003, 2004, 2005, 2006. # Petr Tomeš , 2006. # Lukas Novotny , 2006. # Petr Kovar , 2007, 2008, 2009, 2010. ========== cy.po ========== # mate-media yn Gymraeg. # Copyright (C) 2003 Free Software Foundation, Inc. # www.kyfieithu.co.uk , 2003. # KGyfieithu , 2003. # Owain Green, 2003. # Dafydd Harries , 2003. # Dafydd Jones, 2003. # Steve Griffiths, 2003. # ========== da.po ========== # Danish translation of the mate-media. # Copyright (C) 1998-99, 2000-10 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # Kenneth Christiansen , 1998-2000 # Keld Simonsen , 2000-2001. # Ole Laursen , 2001-2004, 06. # Martin Willemoes Hansen , 2004-2006. # Peter Bach , 2007. # Kenneth Nielsen . 2008. # Ask Hjorth Larsen , 2010. # # Konventioner: # # Mate-CD -> cd-afspiller # sample -> (oftest) lydklip # sink -> destination # track -> spor # # Husk at tilføje dig i credit-listen (besked id "translator-credits") # ========== de.po ========== # German mate-media translation # Copyright (C) 2000-2004 Free Software Foundation, Inc. # Matthias Warkus , 1999. # Karl Eichwalder , 1999, 2000. # Christian Meyer , 2000-2002. # Christian Neumair , 2002-2004. # Hendrik Richter , 2004, 2005, 2006, 2008, 2009. # Christian Kirbach , 2009. # Mario Blättermann , 2010. # ========== dz.po ========== # Dzongkha translation of mate-media # Copyright @ 2006, Free Software Foundation, Inc. # Mindu Dorji # ========== el.po ========== # Greek translation of MATE media # Copyright (C) 1999 - 2009 Free Software Foundation, Inc. # simos: around 250 messages (initial translation, started counting) # kostas: 05Jan2003, one more update # kostas: 03Aug2003, update for Mate 2.4 # nikos: 07Sep2003, Review translation # nikos: 07Sep2003, change some messages for better shape of vol control window # kostas:12Nov2003, fixes # kostas:26Dec2003, update # kostas:23Feb2004, update # nikos:2Sep2004, update # # # nikos: 336 messages, 13Jul2002, updated translation for MATE 2.0. # aarg : 336 messages, 19Jul2002, fixes to translation. # kostas: 475 messages, 26Oct2002, completed translation. # kostas: fixed 3 typos, 21Nov2002 (thanks to Nikos Charonitakis). # kostas: 583 messages, 06Jan2003, updated translation for Mate 2.1x. # Kostas Papadimas 2002, 2003. # Simos Xenitellis , 1999, 2000, 2001, 2002. # Nikos Charonitakis , 2002, 2003, 2004. # AARG! Anonymous , 2002. # Kostas Papadimas , 2003, 2004, 2005, 2006. # Nikos Charonitakis , 2005. # Simos Xenitellis , 2008. # Fotis Tsamis , 2009. ========== en@shaw.po ========== # Shavian translation for mate-media. # Copyright (C) 2009 The Mate Foundation. # Thomas Thurman , 2009. ========== en_CA.po ========== # Canadian English translation of mate-media # Copyright (C) 2004-2006 Adam Weinberger and the MATE Foundation # This file is distributed under the same licence as the mate-media package. # Alexander Winston , 2004. # Adam Weinberger , 2004, 2005, 2006. # ========== en_GB.po ========== # English (British) # Copyright (C) 1999 Free Software Foundation, Inc. # Robert Brady , 1999. # Gareth Owen , David Lodge , 2004. # Bruce Cowan , 2009, 2010. # Bruce Cowan , 2010. ========== es.po ========== # translation of mate-media.HEAD.po to Español # Copyright © 1998-2003, 2006, 2007, 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # Miguel de Icaza 1998. # # # Pablo Saratxaga , 1998-2000. # Jesús Bravo Álvarez , 2000. # Germán Poo Caamaño , 2002 (Revisor). # Yelitza Louze , 2003. # Francisco Javier F. Serrador , 2004. # Lucas Vieites , 2002-2004. # Francisco Javier F. Serrador , 2004, 2005, 2006. # Lucas Vieites Fariña , 2005, 2006, 2007. # Claudio Saavedra 2007 (QA). # Jorge González , 2008, 2009, 2010. # ========== et.po ========== # MATE-meedia eesti keele tõlge. # Estonian translation of MATE-media. # # Copyright (C) 1999, 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # Copyright (C) 2007, 2009, 2010 The MATE Project. # This file is distributed under the same license as the mate-media package. # # Lauris Kaplinski , 1999. # Tõivo Leedjärv , 2002, 2003. # Ivar Smolin , 2005-2007, 2009, 2010. # Priit Laes , 2005. # ========== eu.po ========== # translation of eu_to_be_translate.po to Basque # Copyright (C) 2001, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # # Hizkuntza Politikarako Sailburuordetza , 2004. # Iñaki Larrañaga Murgoitio , 2004, 2005, 2006, 2007, 2008, 2009, 2010. # Iñaki Larrañaga Murgoitio , 2007. ========== fa.po ========== # Persian translation of mate-media. # Copyright (C) 2003, 2005 Sharif FarsiWeb, Inc. # Roozbeh Pournader , 2003, 2005. # Sara Khalatbari , 2005. # Alireza Kheirkhahan , 2005. # Meelad Zakaria , 2005. # ========== fi.po ========== # Finnish translation of the mate-media module. # Copyright (C) 1998-2009 Free Software Foundation, Inc. # Tuomas J. Lukka , 1998. # Mikko Rauhala , 1999. # Jarkko Ranta , 2000-2004. # Ilkka Tuohela , 2005-2009. # Tommi Vainikainen , 2009-2010. # # ========== fr.po ========== # French translation of mate-media. # Copyright (C) 1998-2010 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Vincent Renardias , 1998-1999. # Thibaut Cousin , 1999. # Christophe Merlet , 2000-2006. # Christophe Fergeau , 2002. # Baptiste Mille-Mathias , 2005. # Robert-André Mauchin , 2006-2008. # Jonathan Ernst , 2006-2007. # Stéphane Raimbault , 2007. # Claude Paroz , 2007-2010. # Laurent Coudeur , 2009. # ========== ga.po ========== # Irish translations for mate-media package. # Copyright (C) 1998-2009 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # Alastair McKinstry , 1999. # Paul Duffy , 2003. # Seán de Búrca , 2008, 2009. # ========== gl.po ========== # translation of mate-media.master.po to Galician # Galician translation of mate-media. # Copyright (C) 1999 Sergio Rua # Copyright (C) 2000-2001 Jesús Bravo Álvarez # # Proxecto Trasno - Adaptación do software libre á lingua galega: Se desexas # colaborar connosco, podes atopar máis información en http://www.trasno.net # # Jesús Bravo Álvarez , 2000-2001. # Sergio Rua , 1999. # Ignacio Casal Quinteiro , 2005, 2006. # Ignacio Casal Quinteiro , 2007, 2008. # Mancomún - Centro de Referencia e Servizos de Software Libre , 2009. # Suso Baleato , 2009. # Fran Diéguez , 2009. # Antón Méixome , 2009. # Fran Diéguez , 2010. # Fran Dieguez , 2010. # ========== gu.po ========== # translation of mate-media.master.gu.po to Gujarati # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Sweta Kothari , 2008, 2009. # Ankit Patel , 2009. ========== he.po ========== # translation of mate-media.HEAD.he.po to Hebrew # translation of mate-media.mate-2-0-gstreamer.he.po to Hebrew # translation of mate-media.mate-2-0.he.po to Hebrew # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Gil 'Dolfin' Osher , 2002,2003 # ========== hi.po ========== # translation of mate-media.master.po to Hindi # Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # G Karunakar , 2003. # Ravishankar Shrivastava , 2004. # Rajesh Ranjan , 2005, 2006, 2008, 2009. # Rajesh Ranjan , 2009. ========== hr.po ========== # Translation of mate-media to Croatiann # Copyright (C) Croatiann team # Translators: Automatski Prijevod <>,Denis Lackovic ,pr pr ,Robert Sedak , ========== hu.po ========== # Hungarian translation of mate-media. # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Szabolcs Ban , 1999, 2000. # Miklos Szel , 2000. # Gergely Nagy , 2001. # Andras Timar , 2001, 2002, 2003. # Emese Kovacs , 2002. # Laszlo Dvornik , 2004. # Gabor Kelemen , 2004, 2005, 2006, 2007, 2008, 2009, 2010. # Mate ORY , 2006. ========== id.po ========== # ========== it.po ========== # mate-media Italian translation # Copyright (C) 2000-2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same licence of the mate-media package # Salvatore Isaja , 2000-2002. # Luca Ferretti . # Alessio Frusciante , 2004. # Salvatore Isaja , 2004, 2005. # # Milo Casagrande , 2006-2009, 2009, 2010. ========== ja.po ========== # mate-media ja.po. # Copyright (C) 1998-2000, 2002-2010 Free Software Foundation, Inc. # Mitsuru Oka <95i44@is.kochi-u.ac.jp>, 1998. # Eiichiro ITANI , 1999. # Akira TAGOH , 2000. # Takayuki KUSANO , 2002, 2009-2010. # KAMAGASAKO Masatoshi , 2003. # Takeshi AIHANA , 2003-2009. # Satoru SATOH , 2006. # Hideki Yamane (Debian-JP) , 2010. # ========== ka.po ========== # Georgian translation for Mate Media. # # Copyright © 2006 Georgian Ubuntu Translators. # Alexander Didebulidze , 2005. # ========== kn.po ========== # translation of mate-media.master.kn.po to Kannada # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Shankar Prasad , 2008, 2009, 2010. ========== ko.po ========== # mate-media ko.po # This file is distributed under the same license as the mate-media package. # # Updated by Young-Ho, Cha , 2000, 2006, 2007. # Changwoo Ryu , 1998, 2002, 2003, 2004, 2006, 2008, 2009, 2010. # # ========== ku.po ========== # translation of ku.po to Kurdish # translation of mate-media.HEAD.po to Kurdish # German translation of PACKAGE. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Erdal Ronahî , 2005. # Erdal Ronahi , 2005, 2006. # ========== lt.po ========== # Lithuanian translation of mate-media # Copyright © 2000-2010 Free Software Foundation, Inc. # Gediminas Paulauskas , 2000-2003. # Žygimantas Beručka , 2003-2006, 2009, 2010. # Justina Klingaitė , 2005. # Gintautas Miliauskas , 2007. # Rimas Kudelis , 2009. # Aurimas Černius , 2010. ========== lv.po ========== # translation of lv.po to Latvian # Mate-media for Latvian. # Copyright (C) 2001, 2006, 2009 Free Software Foundation, Inc. # # Artis Trops , 2001. # Raivis Dejus , 2006, 2009. # Peteris Krisjanis , 2010. ========== mai.po ========== # translation of mai.po to Hindi # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Sangeeta Kumari , 2009. # Rajesh Ranjan , 2009. ========== mg.po ========== # MALAGASY TRANSLATION OF MATE-MEDIA. # Copyright (C) 2006-2009 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Thierry Randrianiriana , 2006-2009. ========== mk.po ========== # translation of mate-media.HEAD.mk.po to Macedonian # translation of mate-media.HEAD.po to # translation of mate-media.HEAD.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2004 THE PACKAGE'S COPYRIGHT HOLDER. # # Misa Popovic , 2003. # Vladislav Bidikov , 2003. # Ivan Stojmirov , 2003. # Arangel Angov , 2003, 2006, 2008. # Арангел Ангов , 2005. # Jovan Naumovski , 2006, 2007, 2008. ========== ml.po ========== # translation of mate-media.master.ml.po to Malayalam # This file is distributed under the same license as the mate-media package. # Copyright (C) 2003, 2006-2007, 2010 mate-media'S COPYRIGHT HOLDER. # # FSF-India , 2003. # Ani Peter , 2006, 2007. # Praveen Arimbrathodiyil , 2010. ========== mn.po ========== # translation of mn.po to Mongolian # translation of mate-media.mate-2-4.po to Mongolian # translation of mate-media.HEAD.po to Mongolian # translation of mate-media.HEAD.mn.po to Mongolian # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Sukhochir , 2003. # Sanlig Badral , 2003. # Sanlig Badral , 2003, 2004. # Sanlig Badral , 2003, 2004, 2006. ========== mr.po ========== # translation of mr.po to Marathi # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Rahul Bhalerao , 2006. # Sandeep Shedmake , 2008, 2009. # Sandeep Shedmake , 2009, 2010. ========== ms.po ========== # Mate-media Bahasa Melayu (ms) # Jika takut risiko, Jangan bicara tentang Perjuangan # Hasbullah Bin Pit (sebol) , 2001,2002, 2003 # ========== nb.po ========== # Norwegian (bokmål dialect) translation of the mate-media module. # Copyright (C) 1998-2004, 2005 Free Software Foundation, Inc. # Kjartan Maraas , 1998-2010. # Terance Edward Sola , 2005. # ========== nds.po ========== # Low German translation for mate-media. # Copyright (C) 2009 mate-media's COPYRIGHT HOLDER # This file is distributed under the same license as the mate-media package. # Nils-Christoph Fiedler , 2009. # ========== ne.po ========== # translation of mate-media.HEAD.ne.po to Nepali # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # # Jyotshna Shrestha , 2005. # Ganesh Ghimire , 2005. # Bishnu Adhikari , 2005. # Jaydeep Bhusal , 2005. # Shiva Pokharel , 2005. # Shyam Krishna Bal , 2006. # Mahesh subedi , 2006. # Shiva Prasad Pokharel , 2006. # Nabin Gautam , 2007. ========== nl.po ========== # Dutch translation for mate-media # # This package is distributed under the same license as the mate-media package. # # Wing Tung Leung , 1999. # Dennis Smit , 2002. # Huib Kleinhout , 2002. # Tino Meinen , 2002, 2007, 2008. # Taco Witte , 2002. # Reinout van Schouwen , 2002–2006, 2009 # Wouter Bolsterlee , 2006–2010. # Mario Blättermann , 2010. # # alert - waarschuwing # event - gebeurtenis # ========== nn.po ========== # translation of nn.po to # translation of nn.po to Norwegian Nynorsk # Norwegian (nynorsk) translation of mate-media. # Copyright (C) 2000-2002 Free Software Foundation # # Kjartan Maraas , 2001. # Roy-Magne Mo , 2001-2002. # Åsmund Skjæveland , 2003, 2004, 2005, 2006. # Torstein Adolf Winterseth , 2009. # Åsmund Skjæveland , 2010. ========== oc.po ========== # Translation of oc.po to Occitan # Occitan translation of mate-media. # Copyright (C) 2007 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Yannig Marchegay (Kokoyaya) , 2007. ========== or.po ========== # translation of mate-media.mate-2-30.or.po to Oriya # Oriya translation of mate-media.HEAD.pot. # Copyright (C) 2004, 2006, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # $Id: or.po,v 1.1 2006/04/03 23:09:31 gmohanty Exp $ # # Parashar Nayak , 2004. # Gora Mohanty , 2004, 2006. # Manoj Kumar Giri , 2009, 2010. ========== pa.po ========== # translation of mate-media.HEAD.po to Punjabi # Copyright (C) 2004 THE mate-media.HEAD'S COPYRIGHT HOLDER # This file is distributed under the same license as the mate-media.HEAD package. # # Amanpreet Singh Alam , 2004. # A S Alam , 2005, 2006, 2007, 2009, 2010. # Amanpreet Singh Alam , 2008, 2009. ========== pl.po ========== # Polish translation for gnome-media. # Copyright © 1999-2010 the gnome-media authors. # This file is distributed under the same license as the gnome-media package. # Zbigniew Chyla , 1999-2003. # Marcin Owsiany , 2000. # Artur Flinta , 2003-2006. # Wadim Dziedzic , 2007. # Tomasz Dominikowski , 2008-2009. # Piotr Drąg , 2010. # Aviary.pl , 2007-2010. # ========== pt.po ========== # mate-media's Portuguese Translation # Copyright © 1998, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 mate-media # Distributed under the same licence as the mate-media package # Nuno Ferreira , 1998. # Duarte Loreto , 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010. # ========== pt_BR.po ========== # Brazilian Portuguese translation of MATE Media. # Copyright (C) 2001-2009 the MATE Media authors. # This file is distributed under the same license as the mate-media package. # Gustavo Maciel Dias Vieira , 2001. # Evandro Fernandes Giovanini , 2002-2003. # Raphael Higino , 2004-2005. # Licio Fernando Nascimento da Fonseca , 2006. # Leonardo Ferreira Fontenelle , 2006, 2008, 2009. # Guilherme de S. Pastore , 2006. # Og Maciel , 2007. # Fabrício Godoy , 2008. # Djavan Fagundes , 2008. # Jonh Wendell , 2009. # Henrique P Machado , 2009. # André Gondim , 2009, 2010. # ========== ro.po ========== # translation of mate-media.HEAD.ro.po to Română # translation of mate-media.HEAD.ro.po to # Romanian translation for mate-media. # Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. # Mugurel Tudor , 2002-2003, 2004, 2005, 2006, 2007. # Adi Roiban https://launchpad.net/~adiroiban, 2008, 2009 # Lucian Adrian Grijincu , 2010. ========== ru.po ========== # translation of mate-media.master.ru.po to Russian # Russian translation of mate-media # Copyright (C) 1998-2008, 2010 Free Software Foundation, Inc. # # Valek Filippov , 2000-2002. # Dmitry G. Mastrukov , 2002-2004. # Andrew W. Nosenko , 2003. # Leonid Kanter , 2004, 2005, 2006. # Valery Inozemtsev , 2009. # Alexandre Prokoudine , 2009. # Yuri Kozlov , 2010. # Max Valianskiy 1998-99 # Sergey Panov 1999 ========== rw.po ========== # translation of mate-media to Kinyarwanda. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # Steve Murphy , 2005 # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005.. # ========== si.po ========== # translation of si.po to Sinhala # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Danishka Navin , 2007. ========== sk.po ========== # translation of sk.po to Slovak # MATE-media Slovak translation # Copyright (C) 2000-2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. # # $Id: sk.po,v 1.69 2006/01/31 00:07:02 thomasvs Exp $ # # Stanislav Visnovsky , 2000-2002,2003, 2004. # Stanislav Višňovský , 2002. # Stanislav Visnovsky , 2003. # Marcel Telka , 2005. # Peter Tuharsky , 2007. ========== sl.po ========== # Slovenian translations for mate-media. # Copyright (C) 2005-2007 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Andraž Tori , 2000. # Matjaž Horvat , 2006. # Matic Žgur , 2007. # Matej Urbančič , 2007 - 2010. # ========== sq.po ========== # Përkthimi i mesazheve të mate-media në shqip # Copyright (C) 2003-2006, 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the mate-media package. # # Laurent Dhima , 2003-2006, 2008. ========== sr.po ========== # Serbian translation of mate-media # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. # # This file is distributed under the same license as the mate-media package. # # Maintainer: Данило Шеган # Reviewed on 2005-08-08 by: Игор Несторовић " # Translated on 2006-01-31 by: Слободан Д. Средојевић # Милош Поповић , 2010. # ========== sr@latin.po ========== # Serbian translation of mate-media # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. # # This file is distributed under the same license as the mate-media package. # # Maintainer: Danilo Šegan # Reviewed on 2005-08-08 by: Igor Nestorović " # Translated on 2006-01-31 by: Slobodan D. Sredojević # Miloš Popović , 2010. # ========== sv.po ========== # Swedish messages for mate-media. # Copyright (C) 1998-2010 Free Software Foundation, Inc. # Martin Wahlen , 1998, 1999. # Andreas Hyden , 2000. # Christian Rose , 2001, 2002, 2003, 2004, 2005, 2006. # Daniel Nylander , 2006, 2007, 2008, 2009, 2010. # # $Id: sv.po,v 1.99 2006/12/22 21:34:08 dnylande Exp $ # ========== ta.po ========== # translation of mate-media.master.ta.po to Tamil # translation of media.po to # Tamil translation of Tamil Mate Media 2.4. # Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # # # Dinesh Nadarajah , 2003. # Jayaradha N , 2004. # Felix , 2006. # Dr.T.Vasudevan , 2007, 2009. # I. Felix , 2008, 2009. # Dr,T,Vasudevan , 2010. ========== te.po ========== # translation of te.po to Telugu # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Krishna Babu K , 2008, 2009, 2010. ========== th.po ========== # Thai translation of mate-media. # This file is distributed under the same license as the mate-media package. # Copyright (C) 2003-2010 Free Software Foundation, Inc. # Sawit Kasuriya , 2003. # Sapa , 2003, 2004. # Chanchai Junlouchai , 2004. # Supranee Thirawatthanasuk , 2004. # Theppitak Karoonboonyanan , 2005-2010. # ========== tk.po ========== # Turkmen translation of mate-media # Copyright (C) 2004 Free Software Foundation # Copyright (C) 2004 Gurban Mühemmet Tewekgeli and # Kakilik - Turkmen free software developers community # This file is distributed under the terms of GNU General Public License (GPL) # Gurban Mühemmet Tewekgeli , 2004. # # ========== tr.po ========== # Turkish translation of mate-media. # Copyright (C) 2000,2001,2002,2003, 2004, 2005 Free Software Foundation, Inc. # Fatih Demir , 2000. # Arman Aksoy (Armish) , 2003. # Baris Cicek , 2004, 2005. # # Baris Cicek , 2008, 2009. ========== ug.po ========== # Uyghur translations for mate-media. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Sahran , 2010-09-22. # ========== uk.po ========== # Ukrainian translation of the mate-media module. # Copyright (C) 1999 Free Software Foundation, Inc. # Yuri Syrota 1999 # Maxim Dizumanenko , 2002-2007 # # wanderlust , 2009. ========== vi.po ========== # Vietnamese translation for MATE Media. # Copyright © 2009 MATE i18n Project for Vietnamese. # Nguyễn Thái Ngọc Duy , 2002. # Clytie Siddall , 2005-2009. # ========== wa.po ========== # SOME DESCRIPTIVE TITLE. # Copyright (C) 2002 Free Software Foundation, Inc. # Pablo Saratxaga , 2002. # Pablo Saratxaga , 2004. # Lucyin Mahin , 2004. # ========== xh.po ========== # Xhosa translation of mate-media # Copyright (C) 2005 Canonical Ltd. # This file is distributed under the same license as the mate-media package. # Translation by Canonical Ltd with thanks to # Translation World CC in South Africa, 2005. # ========== zh_CN.po ========== # Simplified Chinese translation of mate-media # Copyright (C) 2002, 2003, 2004, 2007, 2009, 2010 Free Software Foundation, Inc. # Dillion Chen , 1999 # Replaced by He Qiangqiang , 2002 # Sun G11n , 2002 # Funda Wang , 2003,2004. # Yang Zhang , 2007. # Deng Xiyue , 2009. # Hinker Liu , 2009. # Aron Xu , 2010. # ========== zh_HK.po ========== # Chinese (Hong Kong) translation of mate-media. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # Fernando , 1999. # Abel Cheung , 2001-2003. # Woodman Tuen , 2004-2007. # Chao-Hsiung Liao , 2008. # # ========== zh_TW.po ========== # Chinese (Taiwan) translation of mate-media. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # Fernando , 1999. # Abel Cheung , 2001-2003. # Woodman Tuen , 2004-2007. # Chao-Hsiung Liao , 2008. # # ukui-media-3.1.1.2/po/ku.po0000644000175000017500000002330414565521701013733 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # erdalronahi , 2005, 2006 # erdalronahi , 2005 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Kurdish (http://wiki.ukui.org/trans/ku/)\n" "Language: ku\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "Kontrolkirina Deng" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "Kontrolkirina Deng" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "Kontrolkirina Deng" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "Kontrolkirina Deng" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "" msgstr[1] "" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "" msgstr[1] "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "Taybet" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "Rawestîne" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/po/te.po0000644000175000017500000003073714565521701013734 0ustar fengfeng# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Translators: # Krishnababu Krothapalli , 2008, 2009, 2010 msgid "" msgstr "" "Project-Id-Version: UKUI Desktop Environment\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-12-20 11:02+0800\n" "PO-Revision-Date: 2017-09-19 11:49+0000\n" "Last-Translator: monsta \n" "Language-Team: Telugu (http://wiki.ukui.org/trans/te/)\n" "Language: te\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" #: ../data/ukui-volume-control.desktop.in.in.h:1 msgid "Sound" msgstr "శబ్ధము" #: ../data/ukui-volume-control.desktop.in.in.h:2 msgid "Change sound volume and sound events" msgstr "శబ్దపు ఘటనలను మరియు శబ్ధపు ధ్వనిని మార్చుము" #: ../data/ukui-volume-control-applet.desktop.in.h:1 #: ../ukui-volume-control/dialog-main.c:255 #: ../ukui-volume-control/gvc-channel-bar.c:487 #: ../ukui-volume-control/gvc-speaker-test.c:434 msgid "Volume Control" msgstr "వాల్యూమ్ నియంత్రిక" #: ../data/ukui-volume-control-applet.desktop.in.h:2 msgid "Show desktop volume control" msgstr "డెస్కుటాప్ ధ్వని నియంత్రణను చూపుము" #: ../ukui-volume-control/applet-main.c:45 #: ../ukui-volume-control/dialog-main.c:193 msgid "Version of this application" msgstr "ఈ అనువర్తనముయొక్క వర్షన్" #: ../ukui-volume-control/applet-main.c:46 #: ../ukui-volume-control/dialog-main.c:191 msgid "Enable debug" msgstr "" #: ../ukui-volume-control/applet-main.c:55 #, fuzzy msgid " — UKUI Volume Control Applet" msgstr "వాల్యూమ్ నియంత్రిక" #: ../ukui-volume-control/dialog-main.c:143 msgid "Sound system is not available" msgstr "" #: ../ukui-volume-control/dialog-main.c:165 msgid "Waiting for sound system to respond" msgstr "శబ్ధపు వ్యవస్థ స్పందన కొరకు వేచివుంది" #: ../ukui-volume-control/dialog-main.c:190 msgid "Sound system backend" msgstr "" #: ../ukui-volume-control/dialog-main.c:192 msgid "Startup page" msgstr "ప్రారంభ పుట" #: ../ukui-volume-control/dialog-main.c:202 #, fuzzy msgid " — UKUI Volume Control" msgstr "వాల్యూమ్ నియంత్రిక" #: ../ukui-volume-control/gvc-applet.c:322 #: ../ukui-volume-control/gvc-mixer-dialog.c:1999 msgid "Input" msgstr "ఇన్పుట్" #: ../ukui-volume-control/gvc-applet.c:323 #: ../ukui-volume-control/gvc-mixer-dialog.c:2086 msgid "Output" msgstr "అవుట్పుట్" #: ../ukui-volume-control/gvc-applet.c:326 msgid "Microphone Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:328 msgid "Sound Output Volume" msgstr "" #: ../ukui-volume-control/gvc-applet.c:333 #, fuzzy msgid "UKUI Volume Control Applet" msgstr "వాల్యూమ్ నియంత్రిక" #: ../ukui-volume-control/gvc-balance-bar.c:140 msgctxt "balance" msgid "Left" msgstr "ఎడమ" #: ../ukui-volume-control/gvc-balance-bar.c:141 msgctxt "balance" msgid "Right" msgstr "కుడి" #: ../ukui-volume-control/gvc-balance-bar.c:144 msgctxt "balance" msgid "Rear" msgstr "ముందలి" #: ../ukui-volume-control/gvc-balance-bar.c:145 msgctxt "balance" msgid "Front" msgstr "ఫాంటు" #: ../ukui-volume-control/gvc-balance-bar.c:148 msgctxt "balance" msgid "Minimum" msgstr "కనిష్టం" #: ../ukui-volume-control/gvc-balance-bar.c:149 msgctxt "balance" msgid "Maximum" msgstr "గరిష్టం" #: ../ukui-volume-control/gvc-balance-bar.c:337 msgid "_Balance:" msgstr "సమతుల్యం (_B):" #: ../ukui-volume-control/gvc-balance-bar.c:340 msgid "_Fade:" msgstr "మాసిన (_F):" #: ../ukui-volume-control/gvc-balance-bar.c:343 msgid "_Subwoofer:" msgstr "ఉపవూఫర్ (_S):" #: ../ukui-volume-control/gvc-channel-bar.c:312 msgctxt "volume" msgid "Unamplified" msgstr "విస్తృతపరచని(అన్‌యాంప్లిఫైడ్)" #: ../ukui-volume-control/gvc-channel-bar.c:325 msgctxt "volume" msgid "100%" msgstr "100%" #. Mute button #: ../ukui-volume-control/gvc-channel-bar.c:1086 msgid "Mute" msgstr "నిశ్శబ్దము" #: ../ukui-volume-control/gvc-combo-box.c:253 #: ../ukui-volume-control/gvc-mixer-dialog.c:1613 msgid "_Profile:" msgstr "ప్రొఫైల్ (_P):" #: ../ukui-volume-control/gvc-mixer-dialog.c:355 #: ../ukui-volume-control/gvc-mixer-dialog.c:504 msgid "Co_nnector:" msgstr "అనుసంధానకి (_n):" #. translators: #. * The device has been disabled #: ../ukui-volume-control/gvc-mixer-dialog.c:1126 msgid "Disabled" msgstr "అచేతనమైన" #. translators: #. * The number of sound outputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1132 #, c-format msgid "%u Output" msgid_plural "%u Outputs" msgstr[0] "%u అవుట్పుట్" msgstr[1] "%u అవుట్పుట్లు" #. translators: #. * The number of sound inputs on a particular device #: ../ukui-volume-control/gvc-mixer-dialog.c:1141 #, c-format msgid "%u Input" msgid_plural "%u Inputs" msgstr[0] "%u ఇన్పుట్" msgstr[1] "%u ఇన్పుట్లు" #: ../ukui-volume-control/gvc-mixer-dialog.c:1504 #: ../ukui-volume-control/gvc-mixer-dialog.c:1773 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 msgid "Name" msgstr "నామము" #: ../ukui-volume-control/gvc-mixer-dialog.c:1552 #, c-format msgid "Speaker Testing for %s" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1616 msgid "Test Speakers" msgstr "" #: ../ukui-volume-control/gvc-mixer-dialog.c:1821 msgid "Sound Effects" msgstr "శబ్ధము ప్రభావములు" #: ../ukui-volume-control/gvc-mixer-dialog.c:1844 msgid "_Alert volume: " msgstr "హెచ్చరిక ధ్వని (_A): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1913 msgid "_Output volume: " msgstr "అవుట్పుట్ ధ్వని (_O): " #: ../ukui-volume-control/gvc-mixer-dialog.c:1956 msgid "Hardware" msgstr "హార్డువేర్" #: ../ukui-volume-control/gvc-mixer-dialog.c:1961 msgid "C_hoose a device to configure:" msgstr "ఆకృతీకరించుటకు వొక పరికరమును యెంచుకొనుము (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:1985 #: ../ukui-volume-control/gvc-mixer-dialog.c:2115 msgid "Settings for the selected device:" msgstr "ఎంపికచేసిన పరికరము కొరకు అమరికలు:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2008 msgid "_Input volume: " msgstr "ఇన్పుట్ ధ్వని (_I): " #: ../ukui-volume-control/gvc-mixer-dialog.c:2033 msgid "Input level:" msgstr "ఇన్పుట్ స్థాయి:" #: ../ukui-volume-control/gvc-mixer-dialog.c:2058 msgid "C_hoose a device for sound input:" msgstr "శబ్ధపు యిన్పుట్ కొరకు వొక పరికరమును యెంచుకొనుము (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2091 msgid "C_hoose a device for sound output:" msgstr "శబ్ధపు అవుట్పుట్ కొరకు పరికరమును యెంచుకొనుము (_h):" #: ../ukui-volume-control/gvc-mixer-dialog.c:2140 msgid "Applications" msgstr "అనువర్తనములు" #: ../ukui-volume-control/gvc-mixer-dialog.c:2145 msgid "No application is currently playing or recording audio." msgstr "ఎటువంటి అనువర్తనము ప్రస్తుతము ప్లేఅవుటలేదు లేదా ఆడియో రికార్డు అవుటలేదు." #: ../ukui-volume-control/gvc-mixer-dialog.c:2337 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 msgid "Sound Preferences" msgstr "శబ్ధపు అభీష్టములు" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 msgid "No sounds" msgstr "శబ్ధములు లేవు" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 msgid "Built-in" msgstr "అంతర్-నిర్మిత(బుల్ట్-ఇన్)" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 #: ../ukui-volume-control/sound-theme-file-utils.c:292 msgid "Custom" msgstr "మలుచుకొనిన" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 #: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 msgid "Testing event sound" msgstr "ఘటనా శబ్ధమును పరిశీలించుచున్నది" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 msgid "Default" msgstr "అప్రమేయ" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 msgid "From theme" msgstr "థీమ్ నుండి" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 msgid "Type" msgstr "రకము" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 msgid "Sound _theme:" msgstr "శబ్ధపు థీమ్ (_t):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 msgid "C_hoose an alert sound:" msgstr "హెచ్చరిక శబ్ధమును యెంచుకొనుము (_h):" #: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 msgid "Enable _window and button sounds" msgstr "విండో మరియు బటన్ శబ్దములను చేతనముచేయుము (_w)" #: ../ukui-volume-control/gvc-speaker-test.c:258 msgid "Stop" msgstr "" #: ../ukui-volume-control/gvc-speaker-test.c:258 #: ../ukui-volume-control/gvc-speaker-test.c:372 msgid "Test" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:240 #, c-format msgid "Failed to start Sound Preferences: %s" msgstr "శబ్ధము అభీష్టాలు ప్రారంభించుటలో విఫలమైంది: %s" #: ../ukui-volume-control/gvc-stream-status-icon.c:291 msgid "_Mute" msgstr "నిశ్శబ్దము (_M)" #: ../ukui-volume-control/gvc-stream-status-icon.c:301 msgid "_Horizontal" msgstr "" #: ../ukui-volume-control/gvc-stream-status-icon.c:310 msgid "_Sound Preferences" msgstr "శబ్ధము ఆభీష్టాలు (_S)" #: ../ukui-volume-control/gvc-stream-status-icon.c:496 msgid "Muted at" msgstr "" #: ../ukui-volume-control/gvc-utils.c:58 msgid "Unknown" msgstr "" #. Speaker channel names #: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 msgid "Mono" msgstr "" #: ../ukui-volume-control/gvc-utils.c:61 msgid "Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:62 msgid "Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:63 msgid "Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:64 msgid "LFE" msgstr "" #: ../ukui-volume-control/gvc-utils.c:65 msgid "Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:66 msgid "Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:67 msgid "Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:68 msgid "Front Left of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:69 msgid "Front Right of Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:70 msgid "Side Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:71 msgid "Side Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:72 msgid "Top Front Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:73 msgid "Top Front Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:74 msgid "Top Front Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:75 msgid "Top Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:76 msgid "Top Rear Left" msgstr "" #: ../ukui-volume-control/gvc-utils.c:77 msgid "Top Rear Right" msgstr "" #: ../ukui-volume-control/gvc-utils.c:78 msgid "Top Rear Center" msgstr "" #: ../ukui-volume-control/gvc-utils.c:113 msgid "Stereo" msgstr "" #: ../ukui-volume-control/gvc-utils.c:120 msgid "Surround 4.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:128 msgid "Surround 4.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:130 msgid "Surround 5.0" msgstr "" #: ../ukui-volume-control/gvc-utils.c:140 msgid "Surround 5.1" msgstr "" #: ../ukui-volume-control/gvc-utils.c:151 msgid "Surround 7.1" msgstr "" ukui-media-3.1.1.2/ukui-volume-control-applet-qt/0000755000175000017500000000000014567025031020176 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.cpp0000644000175000017500000001700214565521701027641 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include ApplicationVolumeWidget::ApplicationVolumeWidget(QWidget *parent) : QWidget (parent) { connect(qApp, &QApplication::paletteChanged, this, &ApplicationVolumeWidget::onPaletteChanged); app_volume_list = new QStringList; //系统音量label systemVolumeLabel = new QLabel(tr("System Volume"),this); QWidget *systemVolumeLabelWidget = new QWidget(this); systemVolumeLabelWidget->setFixedSize(412,29); systemVolumeLabel->setFixedSize(372,29); QHBoxLayout *systemVolumeLabelLayout = new QHBoxLayout; systemVolumeLabelLayout->addWidget(systemVolumeLabel); systemVolumeLabelWidget->setLayout(systemVolumeLabelLayout); systemVolumeLabelLayout->setContentsMargins(16,0,24,0); //应用label applicationLabel = new QLabel(tr("Application Volume"),this); QWidget *applicationLabelWidget = new QWidget(this); applicationLabelWidget->setFixedSize(412,29); applicationLabel->setFixedSize(372,29); QHBoxLayout *applicationLabelLayout = new QHBoxLayout; applicationLabelLayout->addWidget(applicationLabel); applicationLabelWidget->setLayout(applicationLabelLayout); applicationLabelLayout->setContentsMargins(16,0,24,0); //文本颜色置灰 QPalette palette = applicationLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); applicationLabel->setPalette(palette); systemVolumeLabel->setPalette(palette); //音量滑动条 systemVolumeSliderWidget = new QWidget(this); systemVolumeSliderWidget->setFixedSize(412,48); systemVolumeBtn = new QPushButton(systemVolumeSliderWidget); systemVolumeBtn->setFixedSize(36,36); systemVolumeBtn->setCheckable(true); systemVolumeBtn->setProperty("isRoundButton",true); //圆形按钮 systemVolumeBtn->setProperty("useButtonPalette",true); //灰色按钮 systemVolumeBtn->setProperty("needTranslucent", true); //灰色半透明按钮 systemVolumeSlider = new UkmediaVolumeSlider(systemVolumeSliderWidget); systemVolumeSlider->setOrientation(Qt::Horizontal); systemVolumeSlider->setFocusPolicy(Qt::StrongFocus); systemVolumeSlider->setProperty("needTranslucent", true); // Increase translucent effect systemVolumeSlider->setRange(0,100); systemVolumeSlider->setFixedSize(276,48); systemVolumeDisplayLabel = new QLabel(systemVolumeSliderWidget); systemVolumeDisplayLabel->setText("0%"); systemVolumeDisplayLabel->setFixedSize(52,48); systemVolumeDisplayLabel->setAlignment(Qt::AlignRight | Qt::AlignVCenter); //系统音量滑动条布局 QHBoxLayout *systemVolumeSliderLayout = new QHBoxLayout(); systemVolumeSliderLayout->addWidget(systemVolumeBtn); systemVolumeSliderLayout->addSpacing(8); systemVolumeSliderLayout->addWidget(systemVolumeSlider); systemVolumeSliderLayout->addWidget(systemVolumeDisplayLabel); systemVolumeSliderLayout->setSpacing(0); systemVolumeSliderWidget->setLayout(systemVolumeSliderLayout); systemVolumeSliderLayout->setContentsMargins(16,0,24,0); systemVolumeSlider->setObjectName("systemVolumeSlider"); //声音设置布局 volumeSettingButton = new UkuiSettingButton(volumeSettingFrame); volumeSettingButton->setText(tr("Sound Settings")); volumeSettingButton->setCursor(Qt::PointingHandCursor); volumeSettingButton->setScaledContents(true); volumeSettingFrame = new QFrame(this); volumeSettingFrame->setFixedHeight(52); QHBoxLayout *volumeSettingLayout = new QHBoxLayout(volumeSettingFrame); volumeSettingLayout->addWidget(volumeSettingButton); volumeSettingLayout->addStretch(); volumeSettingFrame->setLayout(volumeSettingLayout); volumeSettingLayout->setContentsMargins(16,0,24,0); //应用音量widget appArea = new QScrollArea(this); appArea->setFixedSize(412,245); appArea->setFrameShape(QFrame::NoFrame);//bjc去掉appArea的边框 appArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); appArea->verticalScrollBar()->setProperty("drawScrollBarGroove",false);//滚动条背景透明 QPalette pal = appArea->palette(); pal.setColor(QPalette::Window, QColor(0x00,0xff,0x00,0x00)); //改变appArea背景色透明 appArea->setPalette(pal); displayAppVolumeWidget = new UkuiApplicationWidget(appArea); displayAppVolumeWidget->setFixedWidth(412); displayAppVolumeWidget->setAttribute(Qt::WA_TranslucentBackground); appArea->setWidget(displayAppVolumeWidget); m_pVlayout = new QVBoxLayout(displayAppVolumeWidget); displayAppVolumeWidget->setLayout(m_pVlayout); // this->setObjectName("mainWidget"); // setObjectName("appWidget"); //整体布局 QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(systemVolumeLabelWidget); mainLayout->addSpacing(3); mainLayout->addWidget(systemVolumeSliderWidget); mainLayout->addSpacing(13); mainLayout->addWidget(applicationLabelWidget); mainLayout->addSpacing(3); mainLayout->addWidget(appArea); mainLayout->addSpacing(2); mainLayout->addWidget(volumeSettingFrame); mainLayout->setSpacing(0); this->setLayout(mainLayout); mainLayout->setContentsMargins(8,12,0,0); this->setFixedSize(420,436); } void ApplicationVolumeWidget::fullushBlueRecordStream() { isRecording = true; outputFile.setFileName("/tmp/test.raw"); outputFile.open( QIODevice::WriteOnly | QIODevice::Truncate ); QAudioFormat format; format.setSampleRate(8000); format.setChannelCount(1); format.setSampleSize(8); format.setCodec("audio/pcm"); format.setByteOrder(QAudioFormat::LittleEndian); format.setSampleType(QAudioFormat::UnSignedInt); QAudioDeviceInfo info = QAudioDeviceInfo::defaultInputDevice(); qDebug() << "input device" << info.deviceName(); if (!info.isFormatSupported(format)) { qWarning()<<"default format not supported try to use nearest"; format = info.nearestFormat(format); } qDebug() << "准备蓝牙录音-------"; audio = new QAudioInput(info, format, this); audio->start(&outputFile); } void ApplicationVolumeWidget::deleteBlueRecordStream() { isRecording = false; qDebug() << "停止录制-------"; audio->stop(); outputFile.close(); system("rm /tmp/test.raw"); delete audio; } void ApplicationVolumeWidget::onPaletteChanged(){ QPalette palette = applicationLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); applicationLabel->setPalette(palette); systemVolumeLabel->setPalette(palette); } ApplicationVolumeWidget::~ApplicationVolumeWidget() { // delete app_volume_list; // delete appIconBtn; } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/customstyle.h0000644000175000017500000001760214565521701022753 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include "ukmedia_slider_tip_label_helper.h" /*! * \brief The CustomStyle class * \details * 自定义QStyle * 基于QProxyStyle,默认使用QProxyStyle的实例绘制控件,你需要针对某一个控件重新实现若干对应的接口。 * QProxyStyle可以从现有的qt style实例化,我们只需要知道这个style的名字即可。 * 这种做法带来了不错的扩展性和自由度,因为我们不需要将某个style的代码直接引入我们的项目中, * 也能够“继承”这个style类进行二次开发。 * * 下面的方法展现了QStyle的所有的接口,使用QStyle进行控件的绘制使得qt应用能够进行风格的切换, * 从而达到不修改项目源码却对应用外观产生巨大影响的效果。 * * \note * 需要注意QStyle与QSS并不兼容,因为QSS本身其实上也是QStyle的一种实现,对一个控件而言,本身理论上只能 * 在同一时间调用唯一一个QStyle进行绘制。 */ class CustomStyle : public QProxyStyle { Q_OBJECT public: explicit CustomStyle(const QString &proxyStyleName = "windows", QObject *parent = nullptr); ~CustomStyle(); /*! * \brief drawComplexControl * \param control 比如ScrollBar,对应CC枚举类型 * \param option * \param painter * \param widget * \details * drawComplexControl用于绘制具有子控件的复杂控件,它本身一般不直接绘制控件, * 而是通过QStyle的其它方法将复杂控件分解成子控件再调用其它的draw方法绘制。 * 如果你需要重新实现一个复杂控件的绘制方法,首先考虑的应该是在不改变它原有的绘制流程的情况下, * 对它调用到的其它方法进行重写。 * * 如果你不想使用原有的绘制流程,那你需要重写这个接口,然后自己实现一切, * 包括背景的绘制,子控件的位置和状态计算,子控件的绘制等。 * 所以,你需要对这个控件有足够的了解之后再尝试直接重写这个接口。 */ virtual void drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const; /*! * \brief drawControl * \param element 比如按钮,对应CE枚举类型 * \param option * \param painter * \param widget * \details * drawControl用于绘制基本控件元素,它本身一般只负责绘制控件的一部分或者一层。 * 如果你想要知道控件具体如何绘制,你需要同时研究这个控件的源码和QStyle中的源码, * 因为它们都有可能改变控件的绘制流程。 * * QStyle一般会遵循QCommonStyle的绘制流程,QCommenStyle是大部分主流style的最基类, * 它本身不能完全称之为一个主题,如果你直接使用它,你的控件将不能被正常绘制,因为它有可能只是 * 在特定的时候执行了特定却未实现的绘制方法,它更像一个框架或者规范。 */ virtual void drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; virtual void drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const; virtual void drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const; /*! * \brief drawPrimitive * \param element 背景绘制,对应PE枚举类型 * \param option * \param painter * \param widget * \details * drawPrimitive用于绘制控件背景,比如按钮和菜单的背景, * 我们一般需要判断控件的状态来绘制不同的背景, * 比如按钮的hover和点击效果。 */ virtual void drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const; virtual QStyle::SubControl hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const; virtual QRect itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const; virtual QRect itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const; //virtual int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option, const QWidget *widget); virtual int pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const; /*! * \brief polish * \param widget * \details * polish用于对widget进行预处理,一般我们可以在polish中修改其属性, * 另外,polish是对动画和特效实现而言十分重要的一个方法, * 通过polish我们能够使widget和特效和动画形成对应关系。 */ virtual void polish(QWidget *widget); virtual void polish(QApplication *application); virtual void polish(QPalette &palette); virtual void unpolish(QWidget *widget); virtual void unpolish(QApplication *application); virtual QSize sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const; virtual QIcon standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const; virtual QPalette standardPalette() const; /*! * \brief styleHint * \param hint 对应的枚举是SH * \param option * \param widget * \param returnData * \return * \details * styleHint比较特殊,通过它我们能够改变一些控件的绘制流程或者方式,比如说QMenu是否可以滚动。 */ virtual int styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const; /*! * \brief subControlRect * \param control * \param option * \param subControl * \param widget * \return * \details * subControlRect返回子控件的位置和大小信息,这个方法一般在内置流程中调用, * 如果我们要重写某个绘制方法,可能需要用到它 */ virtual QRect subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const; /*! * \brief subElementRect * \param element * \param option * \param widget * \return * \details * 与subControlRect类似 */ virtual QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const; Q_SIGNALS: public Q_SLOTS: private: SliderTipLabelHelper *m_helpTip; }; #endif // CUSTOMSTYLE_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/0000755000175000017500000000000014567025031022563 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/bluez-adaptor.cpp0000644000175000017500000000305114567025031026037 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include "ukmedia_main_widget.h" QT_BEGIN_NAMESPACE class QByteArray; template class QList; template class QMap; class QString; class QStringList; class QVariant; QT_END_NAMESPACE /* * Adaptor class for interface org.ukui.media */ class MediaAdaptor: public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.ukui.media") Q_CLASSINFO("D-Bus Introspection", "" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" "") public: MediaAdaptor(QObject *parent); virtual ~MediaAdaptor(); public: // PROPERTIES public Q_SLOTS: // METHODS QStringList getAllInputDevices(); QStringList getAllOutputDevices(); QString getDefaultInputDevice(); bool getDefaultInputMuteState(); int getDefaultInputVolume(); QString getDefaultOutputDevice(); bool getDefaultOutputMuteState(); int getDefaultOutputVolume(); bool setDefaultInputDevice(const QString &deviceName); bool setDefaultInputMuteState(bool mute); bool setDefaultInputVolume(int value); bool setDefaultOutputDevice(const QString &deviceName); bool setDefaultOutputMuteState(bool mute); bool setDefaultOutputVolume(int value); int getBatteryLevel(const QString &deviceName); Q_SIGNALS: // SIGNALS void batteryChanged(const QString &device, int battery); }; #endif ukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/dbus-adaptor.cpp0000644000175000017500000001167514567025031025666 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include /* * Implementation of adaptor class MediaAdaptor */ MediaAdaptor::MediaAdaptor(QObject *parent) : QDBusAbstractAdaptor(parent) { // constructor setAutoRelaySignals(true); } MediaAdaptor::~MediaAdaptor() { // destructor } QStringList MediaAdaptor::getAllInputDevices() { // handle method call org.ukui.media.getAllInputDevices QStringList out0; QMetaObject::invokeMethod(parent(), "getAllInputDevices", Q_RETURN_ARG(QStringList, out0)); return out0; } QStringList MediaAdaptor::getAllOutputDevices() { // handle method call org.ukui.media.getAllOutputDevices QStringList out0; QMetaObject::invokeMethod(parent(), "getAllOutputDevices", Q_RETURN_ARG(QStringList, out0)); return out0; } QString MediaAdaptor::getDefaultInputDevice() { // handle method call org.ukui.media.getDefaultInputDevice QString out0; QMetaObject::invokeMethod(parent(), "getDefaultInputDevice", Q_RETURN_ARG(QString, out0)); return out0; } bool MediaAdaptor::getDefaultInputMuteState() { // handle method call org.ukui.media.getDefaultInputMuteState bool out0; QMetaObject::invokeMethod(parent(), "getDefaultInputMuteState", Q_RETURN_ARG(bool, out0)); return out0; } int MediaAdaptor::getDefaultInputVolume() { // handle method call org.ukui.media.getDefaultInputVolume int out0; QMetaObject::invokeMethod(parent(), "getDefaultInputVolume", Q_RETURN_ARG(int, out0)); return out0; } QString MediaAdaptor::getDefaultOutputDevice() { // handle method call org.ukui.media.getDefaultOutputDevice QString out0; QMetaObject::invokeMethod(parent(), "getDefaultOutputDevice", Q_RETURN_ARG(QString, out0)); return out0; } bool MediaAdaptor::getDefaultOutputMuteState() { // handle method call org.ukui.media.getDefaultOutputMuteState bool out0; QMetaObject::invokeMethod(parent(), "getDefaultOutputMuteState", Q_RETURN_ARG(bool, out0)); return out0; } int MediaAdaptor::getDefaultOutputVolume() { // handle method call org.ukui.media.getDefaultOutputVolume int out0; QMetaObject::invokeMethod(parent(), "getDefaultOutputVolume", Q_RETURN_ARG(int, out0)); return out0; } bool MediaAdaptor::setDefaultInputDevice(const QString &deviceName) { // handle method call org.ukui.media.setDefaultInputDevice bool out0; QMetaObject::invokeMethod(parent(), "setDefaultInputDevice", Q_RETURN_ARG(bool, out0), Q_ARG(QString, deviceName)); return out0; } bool MediaAdaptor::setDefaultInputMuteState(bool mute) { // handle method call org.ukui.media.setDefaultInputMuteState bool out0; QMetaObject::invokeMethod(parent(), "setDefaultInputMuteState", Q_RETURN_ARG(bool, out0), Q_ARG(bool, mute)); return out0; } bool MediaAdaptor::setDefaultInputVolume(int value) { // handle method call org.ukui.media.setDefaultInputVolume bool out0; QMetaObject::invokeMethod(parent(), "setDefaultInputVolume", Q_RETURN_ARG(bool, out0), Q_ARG(int, value)); return out0; } bool MediaAdaptor::setDefaultOutputDevice(const QString &deviceName) { // handle method call org.ukui.media.setDefaultOutputDevice bool out0; QMetaObject::invokeMethod(parent(), "setDefaultOutputDevice", Q_RETURN_ARG(bool, out0), Q_ARG(QString, deviceName)); return out0; } bool MediaAdaptor::setDefaultOutputMuteState(bool mute) { // handle method call org.ukui.media.setDefaultOutputMuteState bool out0; QMetaObject::invokeMethod(parent(), "setDefaultOutputMuteState", Q_RETURN_ARG(bool, out0), Q_ARG(bool, mute)); return out0; } bool MediaAdaptor::setDefaultOutputVolume(int value) { // handle method call org.ukui.media.setDefaultOutputVolume bool out0; QMetaObject::invokeMethod(parent(), "setDefaultOutputVolume", Q_RETURN_ARG(bool, out0), Q_ARG(int, value)); return out0; } int MediaAdaptor::getBatteryLevel(const QString &deviceName) { // handle method call org.ukui.media.bluetooth.getBatteryLevel int out0; QMetaObject::invokeMethod(parent(), "getBatteryLevel", Q_RETURN_ARG(int, out0), Q_ARG(QString, deviceName)); return out0; } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/dbus-adaptor.pri0000644000175000017500000000024314565521701025666 0ustar fengfengINCLUDEPATH += $$PWD HEADERS += \ $$PWD/dbus-adaptor.h \ $$PWD/bluez-adaptor.h \ SOURCES += \ $$PWD/dbus-adaptor.cpp \ $$PWD/bluez-adaptor.cpp \ ukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/org.ukui.media.xml0000644000175000017500000000407614565521701026140 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/dbus-adaptor/bluez-adaptor.h0000644000175000017500000000260514567025031025510 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #define ERROR -1 class Bluetooth_Dbus : public QObject { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.ukui.media") public: Bluetooth_Dbus(); ~Bluetooth_Dbus(); int batteryLevel = -1;//蓝牙耳机电量 QString macAddress = ""; void UkmediaDbusRegister(); void sendBatteryChangedSignal(QString macAddr, int battery); Q_SIGNALS: void batteryChanged(QString macAddr, int battery);//蓝牙电量改变信号 public Q_SLOTS: int getBatteryLevel(QString macAddr);//获取蓝牙耳机电量 }; #endif // BLUEZ_ADAPTOR_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.cpp0000644000175000017500000002145214565521701026265 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include "xatom/xatom-helper.h" #include #include #include UkmediaOsdDisplayWidget::UkmediaOsdDisplayWidget(QWidget *parent) : QWidget (parent) { setFixedSize(OSDWIDGET_SIZE); m_frame = new QFrame(this); m_frame->setFixedSize(QSize(72,72)); m_frame->move(10,10); iconLabel = new QLabel(m_frame); iconLabel->setFixedSize(QSize(ICON_SIZE)); iconLabel->move((m_frame->width() - iconLabel->width())/2,( m_frame->height() - iconLabel->height())/2); initGsettings(); initAttribute(); geometryChangedHandle(); } /** * @brief UkmediaOsdDisplayWidget::initAttribute * 初始化界面属性 */ void UkmediaOsdDisplayWidget::initAttribute() { mTimer = new QTimer(); connect(mTimer,SIGNAL(timeout()),this,SLOT(timeoutHandle())); connect(QApplication::primaryScreen(), &QScreen::geometryChanged, this, &UkmediaOsdDisplayWidget::geometryChangedHandle); connect(static_cast(QCoreApplication::instance()), &QApplication::primaryScreenChanged, this, &UkmediaOsdDisplayWidget::geometryChangedHandle); setWindowFlags(Qt::FramelessWindowHint | Qt::Tool | Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint | Qt::Popup); setAttribute(Qt::WA_TranslucentBackground,true); setAutoFillBackground(true); } /** * @brief UkmediaOsdDisplayWidget::initGsettings * 初始化配置文件 */ void UkmediaOsdDisplayWidget::initGsettings() { if(QGSettings::isSchemaInstalled(THEME)){ m_pThemeSetting = new QGSettings(THEME); connect(m_pThemeSetting, &QGSettings::changed, this, &UkmediaOsdDisplayWidget::ukuiThemeChangedSlot); } #define MARGIN 8 QDBusInterface iface("org.ukui.panel", "/panel/position", "org.ukui.panel", QDBusConnection::sessionBus()); QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); QVariantList position_list=reply.value(); this->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-200, position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, this->width(),this->height()); } /** * @brief UkmediaOsdDisplayWidget::dialogShow * 弹出窗口 */ void UkmediaOsdDisplayWidget::dialogShow() { geometryChangedHandle(); repaintWidget(); show(); mTimer->start(2000); } /** * @brief UkmediaOsdDisplayWidget::timeoutHandle * 超时隐藏窗口 */ void UkmediaOsdDisplayWidget::timeoutHandle() { hide(); mTimer->stop(); } /** * @brief UkmediaOsdDisplayWidget::setIcon * 设置弹窗图标 */ void UkmediaOsdDisplayWidget::setIcon(QString iconStr) { mIconName.clear(); mIconName = iconStr; } /** * @brief UkmediaOsdDisplayWidget::repaintWidget * 重绘窗口 */ void UkmediaOsdDisplayWidget::repaintWidget() { if(m_pThemeSetting->get("style-name").toString() == "ukui-light"){ setPalette(QPalette(QColor("#F5F5F5")));//设置窗口背景 } else{ setPalette(QPalette(QColor("#232426")));//设置窗口背景色 } QPixmap m_pixmap = QIcon::fromTheme(mIconName).pixmap(QSize(48,48)); iconLabel->setPixmap(drawLightColoredPixmap(m_pixmap,m_pThemeSetting->get("style-name").toString())); } /** * @brief UkmediaOsdDisplayWidget::ukuiThemeChangedSlot * 更换系统主题自动刷新界面 */ void UkmediaOsdDisplayWidget::ukuiThemeChangedSlot(const QString &themeStr) { if(!this->isHidden()) { hide(); repaintWidget(); show(); } } /** * @brief UkmediaOsdDisplayWidget::getGlobalOpacity * 获取系统透明度 */ double UkmediaOsdDisplayWidget::getGlobalOpacity() { double transparency=0.0; if(QGSettings::isSchemaInstalled(TRANSPARENCY)) { QGSettings gsetting(TRANSPARENCY); if(gsetting.keys().contains(QString("transparency"))) transparency=gsetting.get("transparency").toDouble(); } return transparency; } QT_BEGIN_NAMESPACE extern void qt_blurImage(QImage &blurImage, qreal radius, bool quality, int transposed); QT_END_NAMESPACE QPixmap UkmediaOsdDisplayWidget::drawLightColoredPixmap(const QPixmap &source, const QString &style) { int value = 255; if(style == "ukui-light"){ value = 0; } QColor gray(255,255,255); QColor standard (0,0,0); QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { color.setRed(value); color.setGreen(value); color.setBlue(value); img.setPixelColor(x, y, color); } else { color.setRed(value); color.setGreen(value); color.setBlue(value); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } void UkmediaOsdDisplayWidget::geometryChangedHandle() { int x=QApplication::primaryScreen()->geometry().x(); int y=QApplication::primaryScreen()->geometry().y(); int width = QApplication::primaryScreen()->size().width(); int height = QApplication::primaryScreen()->size().height(); int pSize = 0; const QByteArray id(PANEL_SCHEMA); if (QGSettings::isSchemaInstalled(id)){ QGSettings * settings = new QGSettings(id); pSize = settings->get(PANEL_SIZE_KEY).toInt(); delete settings; } int ax,ay; ax = x+width - this->width() - 200; ay = y+height - this->height() - pSize - 8; move(ax,ay); } void UkmediaOsdDisplayWidget::paintEvent(QPaintEvent *event) { QPainter painter(this); QPainterPath rectPath; rectPath.addRoundedRect(this->rect().adjusted(10, 10, -10, -10), 12, 12); //画一个黑底 QPixmap pixmap(this->rect().size()); pixmap.fill(Qt::transparent); QPainter pixmapPainter(&pixmap); pixmapPainter.setRenderHint(QPainter::Antialiasing); pixmapPainter.setPen(Qt::transparent); pixmapPainter.setBrush(Qt::black); pixmapPainter.setOpacity(0.20); pixmapPainter.drawPath(rectPath); pixmapPainter.end(); //模糊这个黑底 QImage img = pixmap.toImage(); qt_blurImage(img, 8, false, false); //挖掉中心 pixmap = QPixmap::fromImage(img); QPainter pixmapPainter2(&pixmap); pixmapPainter2.setRenderHint(QPainter::Antialiasing); pixmapPainter2.setCompositionMode(QPainter::CompositionMode_Clear); pixmapPainter2.setPen(Qt::transparent); pixmapPainter2.setBrush(Qt::transparent); pixmapPainter2.drawPath(rectPath); //绘制阴影 painter.drawPixmap(this->rect(), pixmap, pixmap.rect()); //绘制描边 QPainterPath linePath; linePath.addRoundedRect(QRect(9, 9, m_frame->width()+1, m_frame->height()+1), 12, 12); painter.setRenderHint(QPainter::Antialiasing); painter.setPen(Qt::white); painter.setBrush(Qt::transparent); painter.setOpacity(0.20); painter.drawPath(linePath); //毛玻璃 qreal opacity = getGlobalOpacity(); painter.setRenderHint(QPainter::Antialiasing); painter.setPen(Qt::transparent); painter.setBrush(this->palette().base()); painter.setOpacity(opacity); painter.drawPath(linePath); KWindowEffects::enableBlurBehind(this->winId(), true, QRegion(linePath.toFillPolygon().toPolygon())); QWidget::paintEvent(event); } void UkmediaOsdDisplayWidget::resizeEvent(QResizeEvent* event) { // iconLabel->move((width() - iconLabel->width())/2,(height() - iconLabel->height())/2); QWidget::resizeEvent(event); } UkmediaOsdDisplayWidget::~UkmediaOsdDisplayWidget() { delete mTimer; mTimer = nullptr; } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_volume_slider.h0000644000175000017500000001246214565521701024727 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include //typedef struct UkuiThemeIcon //{ // QImage image; // QColor color; //}UkuiThemeIcon; //enum DisplayerMode{ // MINI_MODE, // ADVANCED_MODE //}; //enum SwitchButtonState{ // SWITCH_BUTTON_NORMAL, // SWITCH_BUTTON_HOVER, // SWITCH_BUTTON_PRESS //}; //static QColor symbolic_color = Qt::gray; //class UkuiMediaSliderTipLabel:public QLabel //{ // public: // UkuiMediaSliderTipLabel(); // ~UkuiMediaSliderTipLabel(); //protected: // void paintEvent(QPaintEvent*); //}; //class UkuiButtonDrawSvg:public QPushButton //{ // Q_OBJECT //public: // UkuiButtonDrawSvg(QWidget *parent = nullptr); // ~UkuiButtonDrawSvg(); // QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); // QRect IconGeometry(); // void draw(QPaintEvent* e); // void init(QImage image ,QColor color); // friend class DeviceSwitchWidget; // friend class UkmediaOsdDisplayWidget; //protected: // void paintEvent(QPaintEvent *event); // bool event(QEvent *e); //private: // UkuiThemeIcon themeIcon; //}; //class UkuiApplicationWidget:public QWidget //{ // Q_OBJECT //public: // UkuiApplicationWidget(QWidget *parent = nullptr); // ~UkuiApplicationWidget(); //protected: // void paintEvent(QPaintEvent*); //}; //class UkuiMediaButton:public QPushButton //{ // Q_OBJECT //public: // UkuiMediaButton(QWidget *parent = nullptr); // ~UkuiMediaButton(); // friend class UkmediaMiniMasterVolumeWidget; //Q_SIGNALS: // void advanceToMiniSignal(); // void miniToAdvanceSignal(); // void moveMiniSwitchBtnSignale(); // void moveAdvanceSwitchBtnSignal(); //protected: // void mousePressEvent(QMouseEvent *e)override; // void mouseMoveEvent(QMouseEvent *e)override; // void mouseReleaseEvent(QMouseEvent *e)override; //// void paintEvent(QPaintEvent *event); // void enterEvent(QEvent *event); // void leaveEvent(QEvent *event); //private: //}; //class UkmediaVolumeSlider : public QSlider //{ // Q_OBJECT //public: //// UkmediaVolumeSlider(QWidget *parent = nullptr); // UkmediaVolumeSlider(QWidget *parent = nullptr,bool needTip = false); // void initStyleOption(QStyleOptionSlider *option); // ~UkmediaVolumeSlider(); //Q_SIGNALS: // void silderPressSignal(); // void silderReleaseSignal(); //private: // UkuiMediaSliderTipLabel *m_pTiplabel; // bool state = false; // bool mousePress = false; //protected: // void mousePressEvent(QMouseEvent *ev); // void mouseReleaseEvent(QMouseEvent *e); // void mouseMoveEvent(QMouseEvent *e) // { // int value = 0; // int currentX = e->pos().x(); // double per = currentX * 1.0 / this->width(); // if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 // value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); // if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { // value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); // } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { // value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); // } else { // value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); // } // } else { // value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); // } // this->setValue(value); // QSlider::mousePressEvent(e); //// setCursor(QCursor(Qt::OpenHandCursor)); //// m_displayLabel->move((this->width()-m_displayLabel->width())*this->value()/(this->maximum()-this->minimum()),3); //// QSlider::mouseMoveEvent(e); // } // void leaveEvent(QEvent *e); // void enterEvent(QEvent *e); // void paintEvent(QPaintEvent *e); //}; //class UkuiScrollArea : public QScrollArea //{ // Q_OBJECT //public: // UkuiScrollArea(QWidget *parent = nullptr); // ~UkuiScrollArea(); //protected: // void paintEvent(QPaintEvent *e); //}; //class UkuiQMenu:public QMenu //{ // Q_OBJECT //public: // UkuiQMenu(); // ~UkuiQMenu(); //protected: // void hideEvent(QHideEvent *e); // virtual bool event(QEvent *e) override; //}; #endif // UKMEDIAVOLUMESLIDER_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_custom_class.cpp0000644000175000017500000006042414565521701025111 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #define TIMER_TIMEOUT (2*1000) #define FOREGROUND_COLOR_NORMAL qApp->palette().text().color() extern double transparency; UkmediaTrayIcon::UkmediaTrayIcon(QWidget *parent) { Q_UNUSED(parent); } UkmediaTrayIcon::~UkmediaTrayIcon() { } /*! * \brief * \details * 处理托盘的滚动事件 */ bool UkmediaTrayIcon::event(QEvent *event) { bool value = false; QWheelEvent *e = static_cast(event); if (event->type() == QEvent::Wheel) { if (e->delta() > 0) { value = true; } else if (e->delta() < 0) { value = false; } Q_EMIT wheelRollEventSignal(value); } return QSystemTrayIcon::event(e); } MyTimer::MyTimer(QObject *parent) :QObject(parent) { m_nTimerID = this->startTimer(TIMER_TIMEOUT); } MyTimer::~MyTimer() { } void MyTimer::timerEvent(QTimerEvent *event) { if(event->timerId() == m_nTimerID){ handleTimeout(); Q_EMIT timeOut(); } } void MyTimer::handleTimeout() { killTimer(m_nTimerID); } UkuiApplicationWidget::UkuiApplicationWidget(QWidget *parent) { // this->setAttribute(Qt::WA_TranslucentBackground); // this->setStyleSheet("QWiget{background:rgba(0,0,0,0);}"); Q_UNUSED(parent); } UkuiMediaSliderTipLabel::UkuiMediaSliderTipLabel(){ setAttribute(Qt::WA_TranslucentBackground); } UkuiMediaSliderTipLabel::~UkuiMediaSliderTipLabel(){ } void UkuiApplicationWidget::paintEvent(QPaintEvent *e) { QStyleOption opt; opt.init(this); QPainter p(this); double transparence = transparency * 255; QColor color = palette().color(QPalette::Base); color.setAlpha(transparence); QBrush brush = QBrush(QColor(0,0,0,0)); p.setBrush(brush); p.setBrush(this->palette().base()); p.setBrush(QBrush(QColor(19, 19, 20, 0))); p.setPen(Qt::NoPen); QPainterPath path; opt.rect.adjust(0,0,0,0); path.addRoundedRect(opt.rect,0,0); p.setRenderHint(QPainter::Antialiasing); // 反锯齿; p.drawRoundedRect(opt.rect,0,0); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } UkuiApplicationWidget::~UkuiApplicationWidget() { } void UkuiMediaSliderTipLabel::paintEvent(QPaintEvent *e) { QStyleOptionFrame opt; initStyleOption(&opt); QStylePainter p(this); // p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x00))); p.setPen(Qt::NoPen); p.drawRoundedRect(this->rect(), 1, 1); QPainterPath path; path.addRoundedRect(opt.rect,6,6); p.setRenderHint(QPainter::Antialiasing); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); QLabel::paintEvent(e); } UkuiMediaMuteButton::UkuiMediaMuteButton(QWidget *parent) { Q_UNUSED(parent); this->setFixedSize(36,36); m_iconLabel = new QLabel(this); m_iconLabel->setFixedSize(36,36); m_iconLabel->setAlignment(Qt::AlignCenter); connect(qApp, &QApplication::paletteChanged, this, &UkuiMediaMuteButton::onPaletteChanged); } /*! * \brief * \details * 绘制窗体的颜色及圆角 */ void UkuiMediaMuteButton::paintEvent(QPaintEvent *event) { QPalette pal = this->palette(); pal.setColor(QPalette::Base, BACKGROUND_COLOR); pal.setColor(QPalette::Text, m_backgroundColor); QPainterPath cPath; cPath.addRect(0, 0, this->width(), this->height()); cPath.addEllipse(0, 0, this->width(), this->width()); QPainterPath innerPath; innerPath.addEllipse(0, 0, this->width(), this->width()); QPainter painter(this); painter.setRenderHint(QPainter:: Antialiasing, true); //设置渲染,启动反锯齿 painter.setPen(Qt::NoPen); painter.setBrush(pal.color(QPalette::Base)); painter.drawPath(cPath); painter.fillPath(innerPath, pal.color(QPalette::Text)); } void UkuiMediaMuteButton::mousePressEvent(QMouseEvent *e) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.20); } this->update(); QPushButton::mousePressEvent(e); } void UkuiMediaMuteButton::mouseReleaseEvent(QMouseEvent *e) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); } this->update(); QPushButton::mouseReleaseEvent(e); } void UkuiMediaMuteButton::enterEvent(QEvent *e) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.32); } this->update(); QPushButton::enterEvent(e); } void UkuiMediaMuteButton::leaveEvent(QEvent *e) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); } this->update(); return QPushButton::leaveEvent(e); } UkuiMediaMuteButton::~UkuiMediaMuteButton() { } //根据连接状态更改图标颜色 void UkuiMediaMuteButton::setActive(const bool &isActive) { m_isActivated = isActive; refreshButtonIcon(); } void UkuiMediaMuteButton::onPaletteChanged() { refreshButtonIcon(); } void UkuiMediaMuteButton::setButtonIcon(const QIcon &icon) { if (icon.isNull()) { return; } m_pixmap = icon.pixmap(18,18); } //显示默认图标 void UkuiMediaMuteButton::setDefaultPixmap() { m_iconLabel->setPixmap(m_pixmap); } void UkuiMediaMuteButton::refreshButtonIcon() { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); if (qApp->palette().base().color().red() > MIDDLE_COLOR) { m_iconLabel->setPixmap(m_pixmap); } else { m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); } } return; } const QPixmap UkuiMediaMuteButton:: loadSvg(const QPixmap &source, const PixmapColor &cgColor) { QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { switch (cgColor) { case PixmapColor::WHITE: color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); break; case PixmapColor::BLACK: color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); break; case PixmapColor::GRAY: color.setRed(152); color.setGreen(163); color.setBlue(164); img.setPixelColor(x, y, color); break; case PixmapColor::BLUE: color.setRed(61); color.setGreen(107); color.setBlue(229); img.setPixelColor(x, y, color); break; default: return source; break; } } } } return QPixmap::fromImage(img); } UkuiMediaButton::UkuiMediaButton(QWidget *parent) { Q_UNUSED(parent); this->setFixedSize(36,36); m_iconLabel = new QLabel(this); m_iconLabel->setFixedSize(36,36); m_iconLabel->setAlignment(Qt::AlignCenter); setActive(false); connect(qApp, &QApplication::paletteChanged, this, &UkuiMediaButton::onPaletteChanged); } UkuiMediaButton::~UkuiMediaButton() { } //根据连接状态更改图标颜色 void UkuiMediaButton::setActive(const bool &isActive) { m_isActivated = isActive; refreshButtonIcon(); } void UkuiMediaButton::onPaletteChanged() { refreshButtonIcon(); } void UkuiMediaButton::setButtonIcon(const QIcon &icon) { if (icon.isNull()) { return; } m_pixmap = icon.pixmap(18,18); } //显示默认图标 void UkuiMediaButton::setDefaultPixmap() { m_iconLabel->setPixmap(m_pixmap); } void UkuiMediaButton::refreshButtonIcon() { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); if (qApp->palette().base().color().red() > MIDDLE_COLOR) { m_iconLabel->setPixmap(m_pixmap); } else { m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); } } return; } const QPixmap UkuiMediaButton:: loadSvg(const QPixmap &source, const PixmapColor &cgColor) { QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { switch (cgColor) { case PixmapColor::WHITE: color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); break; case PixmapColor::BLACK: color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); break; case PixmapColor::GRAY: color.setRed(152); color.setGreen(163); color.setBlue(164); img.setPixelColor(x, y, color); break; case PixmapColor::BLUE: color.setRed(61); color.setGreen(107); color.setBlue(229); img.setPixelColor(x, y, color); break; default: return source; break; } } } } return QPixmap::fromImage(img); } /*! * \brief * \details * 绘制窗体的颜色及圆角 */ void UkuiMediaButton::paintEvent(QPaintEvent *event) { QPalette pal = this->palette(); pal.setColor(QPalette::Base, BACKGROUND_COLOR); pal.setColor(QPalette::Text, m_backgroundColor); QPainterPath cPath; cPath.addRect(0, 0, this->width(), this->height()); cPath.addEllipse(0, 0, this->width(), this->width()); QPainterPath innerPath; innerPath.addEllipse(0, 0, this->width(), this->width()); QPainter painter(this); painter.setRenderHint(QPainter:: Antialiasing, true); //设置渲染,启动反锯齿 painter.setPen(Qt::NoPen); painter.setBrush(pal.color(QPalette::Base)); painter.drawPath(cPath); painter.fillPath(innerPath, pal.color(QPalette::Text)); } void UkuiMediaButton::mousePressEvent(QMouseEvent *event) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.21); } this->update(); return QWidget::mousePressEvent(event); } void UkuiMediaButton::mouseReleaseEvent(QMouseEvent *event) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); } this->update(); return QWidget::mouseReleaseEvent(event); } void UkuiMediaButton::enterEvent(QEvent *event) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.32); } this->update(); return QWidget::enterEvent(event); } void UkuiMediaButton::leaveEvent(QEvent *event) { if (m_isActivated) { m_backgroundColor = qApp->palette().highlight().color(); } else { m_backgroundColor = qApp->palette().brightText().color(); m_backgroundColor.setAlphaF(0.18); } this->update(); return QWidget::leaveEvent(event); } static inline qreal mixQreal(qreal a, qreal b, qreal bias) { return a + (b - a) * bias; } QColor mixColor(const QColor &c1, const QColor &c2, qreal bias) { if (bias <= 0.0) { return c1; } if (bias >= 1.0) { return c2; } if (qIsNaN(bias)) { return c1; } qreal r = mixQreal(c1.redF(), c2.redF(), bias); qreal g = mixQreal(c1.greenF(), c2.greenF(), bias); qreal b = mixQreal(c1.blueF(), c2.blueF(), bias); qreal a = mixQreal(c1.alphaF(), c2.alphaF(), bias); return QColor::fromRgbF(r, g, b, a); } void UkuiSettingButton::onPaletteChanged() { m_foregroundColor = FOREGROUND_COLOR_NORMAL; this->repaint(); } void UkuiSettingButton::setPressColor() { QColor hightlight = this->palette().color(QPalette::Active,QPalette::Highlight); QColor mix = this->palette().color(QPalette::Active,QPalette::BrightText); m_foregroundColor = mixColor(hightlight, mix, 0.05); } void UkuiSettingButton::setHoverColor() { QColor hightlight = this->palette().color(QPalette::Active,QPalette::Highlight); QColor mix = this->palette().color(QPalette::Active,QPalette::BrightText); m_foregroundColor = mixColor(hightlight, mix, 0.2); } void UkuiSettingButton::setNormalColor() { m_foregroundColor = FOREGROUND_COLOR_NORMAL; } UkuiSettingButton::UkuiSettingButton(QWidget *parent) { connect(qApp, &QApplication::paletteChanged, this, &UkuiSettingButton::onPaletteChanged); onPaletteChanged(); } UkuiSettingButton::~UkuiSettingButton() { } void UkuiSettingButton::paintEvent(QPaintEvent *event) { QPalette pal = this->palette(); pal.setColor(QPalette::WindowText, m_foregroundColor); this->setPalette(pal); return QLabel::paintEvent(event); } void UkuiSettingButton::enterEvent(QEvent *event) { setHoverColor(); this->update(); } void UkuiSettingButton::leaveEvent(QEvent *event) { setNormalColor(); this->update(); } void UkuiSettingButton::mousePressEvent(QMouseEvent *event) { setPressColor(); this->update(); return QLabel::mousePressEvent(event); } void UkuiSettingButton::mouseReleaseEvent(QMouseEvent *event) { setHoverColor(); this->update(); Q_EMIT clicked(); return QLabel::mouseReleaseEvent(event); } UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent,bool needTip) { Q_UNUSED(parent); if (needTip) { state = needTip; m_pTiplabel = new UkuiMediaSliderTipLabel(); m_pTiplabel->setWindowFlags(Qt::ToolTip); // qApp->installEventFilter(new AppEventFilter(this)); m_pTiplabel->setFixedSize(52,30); m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); } this->setFixedSize(276,20); } void UkmediaVolumeSlider::updateValue(QMouseEvent *e) { int value = 0; int currentX = e->pos().x(); double per = currentX * 1.0 / this->width(); if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); } else { value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); } } else { value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); } this->setValue(value); } void UkmediaVolumeSlider::mousePressEvent(QMouseEvent *e) { if (state) m_pTiplabel->show(); updateValue(e); mousePress = true; Q_EMIT silderPressSignal(); //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 QEvent evEvent(static_cast(QEvent::User + 1)); QCoreApplication::sendEvent(parentWidget(), &evEvent); } void UkmediaVolumeSlider::mouseReleaseEvent(QMouseEvent *e) { if (mousePress) Q_EMIT silderReleaseSignal(); mousePress = false; isMouseWheel = false; Q_EMIT blueValueChanged(this->value()); QSlider::mouseReleaseEvent(e); } void UkmediaVolumeSlider::mouseMoveEvent(QMouseEvent *e) { isMouseWheel = true; if (mousePress) updateValue(e); if (this->value() - blueValue >= 10 || blueValue - this->value() >= 10) { blueValue = value(); Q_EMIT blueValueChanged(blueValue); } QSlider::mouseMoveEvent(e); } void UkmediaVolumeSlider::wheelEvent(QWheelEvent *e) { if (this->value() - blueValue >= 10 || blueValue - this->value() >= 10) { blueValue = value(); Q_EMIT blueValueChanged(blueValue); } QSlider::wheelEvent(e); } void UkmediaVolumeSlider::keyReleaseEvent(QKeyEvent *e) { Q_EMIT blueValueChanged(this->value() ); QSlider::keyReleaseEvent(e); } void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) { QSlider::initStyleOption(option); } void UkmediaVolumeSlider::leaveEvent(QEvent *e) { if (state) { m_pTiplabel->hide(); } return QSlider::leaveEvent(e); } void UkmediaVolumeSlider::enterEvent(QEvent *e) { if (state) { m_pTiplabel->show(); } return QSlider::enterEvent(e); } void UkmediaVolumeSlider::paintEvent(QPaintEvent *e) { QRect rect; QStyleOptionSlider m_option; QSlider::paintEvent(e); if (state) { this->initStyleOption(&m_option); rect = this->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,this); QPoint gPos = this->mapToGlobal(rect.topLeft()); QString percent; percent = QString::number(this->value()); percent.append("%"); m_pTiplabel->setText(percent); m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); } } UkmediaVolumeSlider::~UkmediaVolumeSlider() { // delete m_pTiplabel; } void UkuiButtonDrawSvg::init(QImage img, QColor color) { themeIcon.image = img; themeIcon.color = color; } void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) { QStyleOptionComplex opt; opt.init(this); QPainter p(this); QColor color; switch (buttonState) { case PUSH_BUTTON_NORMAL: color = QColor(0x25,0x25,0x25,0xFF); break; case PUSH_BUTTON_CLICK: color = QColor(0x37,0x90,0xFA,0xFF); break; case PUSH_BUTTON_PRESS: color = QColor(0x24,0x6D,0xD4,0xFF); break; default: break; } p.setBrush(QBrush(color)); p.setPen(Qt::NoPen); QPainterPath path; opt.rect.adjust(0,0,0,0); path.addRoundedRect(opt.rect,18,18); p.setRenderHint(QPainter::Antialiasing); // 反锯齿; p.drawRoundedRect(opt.rect,18,18); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); style()->drawComplexControl(QStyle::CC_ToolButton,&opt,&p,this); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); // QStyleOption opt; // opt.init(this); // QPainter p(this); // p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); // p.setPen(Qt::NoPen); // QPainterPath path; // opt.rect.adjust(0,0,0,0); // path.addRoundedRect(opt.rect,18,18); // p.setRenderHint(QPainter::Antialiasing); // 反锯齿; // p.drawRoundedRect(opt.rect,18,18); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } QRect UkuiButtonDrawSvg::IconGeometry() { QRect res = QRect(QPoint(0,0),QSize(24,24)); res.moveCenter(QRect(0,0,width(),height()).center()); return res; } void UkuiButtonDrawSvg::draw(QPaintEvent* e) { Q_UNUSED(e); QPainter painter(this); QRect iconRect = IconGeometry(); if (themeIcon.image.size() != iconRect.size()) { themeIcon.image = themeIcon.image.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); QRect r = themeIcon.image.rect(); r.moveCenter(iconRect.center()); iconRect = r; } this->setProperty("fillIconSymbolicColor", true); filledSymbolicColoredPixmap(themeIcon.image,themeIcon.color); painter.drawImage(iconRect, themeIcon.image); } bool UkuiButtonDrawSvg::event(QEvent *event) { switch (event->type()) { case QEvent::Paint: draw(static_cast(event)); break; case QEvent::Move: case QEvent::Resize: { QRect rect = IconGeometry(); } break; case QEvent::MouseButtonPress: case QEvent::MouseButtonRelease: case QEvent::MouseButtonDblClick: event->accept(); break; default: break; } return QPushButton::event(event); } UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) { Q_UNUSED(parent); } UkuiButtonDrawSvg::~UkuiButtonDrawSvg() { } QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) { for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { int hue = color.hue(); if (!qAbs(hue - symbolic_color.hue()) < 10) { color.setRed(baseColor.red()); color.setGreen(baseColor.green()); color.setBlue(baseColor.blue()); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } FixLabel::FixLabel(QWidget *parent): QLabel(parent) { } FixLabel::FixLabel(QString text , QWidget *parent): QLabel(parent) { this->setText(text); } FixLabel::~FixLabel() { } void FixLabel::paintEvent(QPaintEvent *event) { QFontMetrics fontMetrics(this->font()); int fontSize = fontMetrics.width(fullText); if (fontSize > this->width()) { this->setText(fontMetrics.elidedText(fullText, Qt::ElideRight, this->width()), false); // this->setToolTip(mStr); } else { this->setText(fullText, false); this->setToolTip(""); } QLabel::paintEvent(event); } void FixLabel::setText(const QString & text, bool saveTextFlag) { if (saveTextFlag) fullText = text; QLabel::setText(text); } Divider::Divider(QWidget * parent) : QFrame(parent) { this->setFixedSize(420,1); } void Divider::paintEvent(QPaintEvent * e) { QPainter p(this); QColor color = qApp->palette().color(QPalette::BrightText); color.setAlphaF(0.08); p.save(); p.setBrush(color); p.setPen(Qt::transparent); p.drawRoundedRect(this->rect(), 6, 6); p.restore(); return QFrame::paintEvent(e); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_custom_sound.cpp0000644000175000017500000001415214565521701025131 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see close(); } bool CustomSound::createAudioFile() { //打开或创建文件 QFile *file; QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; if(!QFile::exists(audioPath)){ file = new QFile(audioPath); if(!file->open(QFile::WriteOnly)) return false; //写入xml头部 QDomDocument doc; QDomProcessingInstruction instruction; //添加处理命令 instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); doc.appendChild(instruction); //添加根节点 QDomElement root = doc.createElement("root"); doc.appendChild(root); //添加子节点 QDomElement node = doc.createElement("firstRun"); QDomElement init = doc.createElement("init"); //创建子元素 QDomText text = doc.createTextNode("true"); init.appendChild(text); node.appendChild(init); root.appendChild(node); //输出到文件 QTextStream out_stream(file); doc.save(out_stream,4); //缩进4格 file->close(); return true; } return true; } //判断某个节点是否存在 bool CustomSound::isExist(QString nodeName) { if (nodeName == "") return false; //打开文件 QString errorStr; int errorLine; int errorCol; QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); if(!file.exists()) createAudioFile(); if(file.open(QFile::ReadOnly)){ QDomDocument doc; if(doc.setContent(&file,true,&errorStr,&errorLine,&errorCol)){ // qDebug() << "isExist" <='0' && nodeName.at(0)<='9'){ nodeName = "Audio_"+nodeName; } while(!ele.isNull()) { if(ele.nodeName() == nodeName) return true; ele = ele.nextSiblingElement(); } } else { QFile::remove(audioPath); qDebug() << errorStr << "line: " << errorLine << "col: " << errorCol; } file.close(); } return false; } //添加第一个子节点及其子元素 int CustomSound::addXmlNode(QString nodeName, bool initState) { //打开文件 QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); QDomDocument doc;//增加一个一级子节点以及元素 if(file.open(QFile::ReadOnly)){ if(doc.setContent(&file)){ file.close(); } else { file.close(); return -1; } } else return -1; //添加新节点 nodeName.remove(" "); nodeName.remove("/"); nodeName.remove("("); nodeName.remove(")"); nodeName.remove("["); nodeName.remove("]"); nodeName.remove(";"); if(nodeName != "" && nodeName.at(0)>='0' && nodeName.at(0)<='9'){ nodeName = "Audio_"+nodeName; } QDomElement root=doc.documentElement(); QDomElement node=doc.createElement(nodeName); QDomElement init=doc.createElement("init"); QDomText text; if(initState) text = doc.createTextNode("true"); else text = doc.createTextNode("false"); init.appendChild(text); node.appendChild(init); root.appendChild(node); qDebug() << "addXmlNode" << nodeName ; //修改first-run状态 QDomElement ele = root.firstChildElement(); while(!ele.isNull()) { if(ele.nodeName() == "firstRun"){ QString value = ele.firstChildElement().firstChild().nodeValue(); if(value == "true") ele.firstChildElement().firstChild().setNodeValue("false"); } ele = ele.nextSiblingElement(); } if(file.open(QFile::WriteOnly|QFile::Truncate)) { //输出到文件 QTextStream out_stream(&file); doc.save(out_stream,4); //缩进4格 file.close(); } return 0; } bool CustomSound::isFirstRun() { QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; QFile file(audioPath); if(!file.exists()){ createAudioFile(); } if(file.open(QFile::ReadOnly)){ QDomDocument doc; if(doc.setContent(&file)){ file.close(); QDomElement root = doc.documentElement(); QDomElement ele = root.firstChildElement(); qDebug()<<"===================ele.nodeName() :"< UkmediaMonitorWindowThread::UkmediaMonitorWindowThread() { bStopThread = false; bCreateWindow = false; bFirstEnterSystem = true; } void UkmediaMonitorWindowThread::get_window_nameAndid() { Display *display; Window rootwin; display = XOpenDisplay( NULL ); rootwin = DefaultRootWindow( display ); Atom atom = XInternAtom(display, "WM_DELETE_WINDOW", false); XSelectInput( display, rootwin, SubstructureNotifyMask | ExposureMask);/*事件可以参考x.h*/ XEvent event; // while ( 1 ) // { // printf("get event\n"); fflush(stdout); while (true) { XNextEvent(display, &event ); // printf("event type is %d\n",event.type); fflush(stdout); if (event.type == Expose /*ReparentNotify*/ /*&& bCreateWindow == false*/) { printf("ReparentNotify\n\n"); fflush(stdout); if (bFirstEnterSystem == false) { Window x11window; Display *x11display; char **srname = (char **)malloc(sizeof(char *)); XReparentEvent *reparentevent = (XReparentEvent *)&event; //printf( "new window: %ld \n", (unsigned long)(reparentevent->window)); //printf( "new parent: %ld \n", (unsigned long)(reparentevent->parent)); fflush(stdout); windowId.append((unsigned long)reparentevent->window); /*获取到新建窗口的window ID*/ x11window = (unsigned long)(reparentevent->window); x11display =(reparentevent->display); XFetchName(x11display, x11window, srname); x11display = XOpenDisplay( NULL );/*!!!注意这里以后如果你想对获取到的window ID进行操作必须重新链接*/ fflush(stdout); free(srname); bCreateWindow = true; XCloseDisplay(x11display); } bFirstEnterSystem = false; } else if (event.type == /*DestroyNotify*//*ClientMessage*/ UnmapNotify /*&&*/ /*bCreateWindow*/) { bCreateWindow = false; // 执行用户定义的关闭窗口操作 fflush(stdout); Window x11window; Display *x11display; char **srname = (char **)malloc(sizeof(char *)); XUnmapEvent *reparentevent = (XUnmapEvent *)&event; //printf( "close window: %ld \n", (unsigned long)(reparentevent->window)); fflush(stdout); if (windowId.contains((unsigned long)reparentevent->window)) { int index = windowId.indexOf((unsigned long)reparentevent->window); //printf( "remove ---------------------------- index : %d \n\n",index); fflush(stdout); windowId.removeAt(index); } /*获取到新建窗口的window ID*/ x11window = (unsigned long)(reparentevent->window); x11display =(reparentevent->display); XFetchName(x11display, x11window, srname); x11display = XOpenDisplay( NULL );/*!!!注意这里以后如果你想对获取到的window ID进行操作必须重新链接*/ fflush(stdout); free(srname); XCloseDisplay(x11display); } } XCloseDisplay(display); } //线程执行函数 void UkmediaMonitorWindowThread::run() { // qDebug()<<"thread run!"; bStopThread = false; while(!bStopThread) { // printf("thread run! \n\n"); fflush(stdout); //to do what you want get_window_nameAndid(); //延时等待一会 QEventLoop eventloop; QTimer::singleShot(1000, &eventloop, SLOT(quit())); eventloop.exec(); } } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp0000644000175000017500000025607014565521726025474 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define KEY_SOUNDS_SCHEMA "org.ukui.sound" #define MONO_AUDIO "mono-audio" //pa_sink_info *m_pDefaultSink; /* Used for profile sorting */ struct profile_prio_compare { bool operator() (pa_card_profile_info2 const * const lhs, pa_card_profile_info2 const * const rhs) const { if (lhs->priority == rhs->priority) return strcmp(lhs->name, rhs->name) > 0; return lhs->priority > rhs->priority; } }; struct sink_port_prio_compare { bool operator() (const pa_sink_port_info& lhs, const pa_sink_port_info& rhs) const { if (lhs.priority == rhs.priority) return strcmp(lhs.name, rhs.name) > 0; return lhs.priority > rhs.priority; } }; struct source_port_prio_compare { bool operator() (const pa_source_port_info& lhs, const pa_source_port_info& rhs) const { if (lhs.priority == rhs.priority) return strcmp(lhs.name, rhs.name) > 0; return lhs.priority > rhs.priority; } }; UkmediaVolumeControl::UkmediaVolumeControl(): showSinkInputType(SINK_INPUT_CLIENT), showSinkType(SINK_ALL), showSourceOutputType(SOURCE_OUTPUT_CLIENT), showSourceType(SOURCE_NO_MONITOR), canRenameDevices(false), m_connected(false), m_config_filename(nullptr) { profileNameMap.clear(); //创建声音初始化记录文件 customSoundFile = new CustomSound(); customSoundFile->createAudioFile(); connectToPulse(this); if (reconnectTimeout >= 0) { } if (reconnectTimeout < 0) showError(QObject::tr("Fatal Error: Unable to connect to PulseAudio").toUtf8().constData()); } /* * 设置输出设备静音 */ void UkmediaVolumeControl::setSinkMute(bool status) { pa_operation* o; if (!(o = pa_context_set_sink_mute_by_index(getContext(), sinkIndex, status, nullptr, nullptr))) { showError(tr("pa_context_set_sink_volume_by_index() failed").toUtf8().constData()); } } /* * 设置输出设备音量通过info */ void UkmediaVolumeControl::setSinkVolumeByInfo(const pa_sink_info &info,int value) { pa_cvolume v = info.volume; // v.channels = channel; for (int i=0;ivolume; v.channels = channel; for (int i=0;ivolume; v.channels = inputChannel; for (int i=0;i::iterator it; for (it=sinkInputMuteMap.begin();it!=sinkInputMuteMap.end();) { qDebug() << "getSinkInputMuted" << it.key() << description << it.value(); if (it.key() == description) { muteStatus = it.value(); break; } ++it; } return muteStatus==1?true:false; } /* * 根据模块名称获取对应模块索引 */ int UkmediaVolumeControl::getModuleIndexByName(QString name) { findModuleStr = name; pa_context_get_module_info_list(getContext(), moduleInfoCb,this); } /* * 滑动条更改设置sink input 音量值 */ void UkmediaVolumeControl::setSinkInputVolume(int index, int value,int channel) { pa_cvolume v = m_pDefaultSink->volume; v.channels = channel; for (int i=0;ivolume; v.channels = channel; for (int i=0;iget(MONO_AUDIO).toBool(); pa_operation* o; if (!(o = pa_context_set_default_sink(getContext(), name, nullptr, nullptr))) { showError(tr("pa_context_set_default_sink() failed").toUtf8().constData()); return false; } if(monoAudioState) { if (!(o = pa_context_set_default_sink(getContext(), "mono", nullptr, nullptr))) { showError(tr("pa_context_set_default_sink() failed").toUtf8().constData()); return false; } } qDebug() << " setDefaultSink " << name << defaultSinkName << monoAudioState; return true; } /* * 设置默认的输入设备 */ bool UkmediaVolumeControl::setDefaultSource(const gchar *name) { qDebug() << "setDefaultSource" << name; pa_operation* o; if (!(o = pa_context_set_default_source(getContext(), name, nullptr, nullptr))) { showError(tr("pa_context_set_default_source() failed").toUtf8().constData()); return false; } return true; } /* * 设置输出设备的端口 */ bool UkmediaVolumeControl::setSinkPort(const gchar *sinkName, const gchar *portName) { qDebug() << "setSinkPort" << "sinkname:" << sinkName << "portname:" << portName; pa_operation* o; if (!(o = pa_context_set_sink_port_by_name(getContext(), sinkName, portName, nullptr, nullptr))) { showError(tr("pa_context_set_sink_port_by_name() failed").toUtf8().constData()); return false; } return true; } /* * 设置输入设备端口 */ bool UkmediaVolumeControl::setSourcePort(const gchar *sourceName, const gchar *portName) { qDebug() << "setSourcePort" << sourceName << portName; pa_operation* o; if (!(o = pa_context_set_source_port_by_name(getContext(), sourceName, portName, nullptr, nullptr))) { showError(tr("pa_context_set_source_port_by_name() failed").toUtf8().constData()); return false; } return true; } /* * kill 索引为index 的sink input */ bool UkmediaVolumeControl::killSinkInput(int index) { pa_operation* o; if (!(o = pa_context_kill_sink_input(getContext(), index, nullptr, nullptr))) { showError(tr("pa_context_kill_sink_input() failed").toUtf8().constData()); return false; } return true; } UkmediaVolumeControl::~UkmediaVolumeControl() { while (!clientNames.empty()) { auto i = clientNames.begin(); g_free(i->second); clientNames.erase(i); } } static void updatePorts(UkmediaVolumeControl *d, std::map &ports) { std::map::iterator it; PortInfo p; for (auto & port : d->dPorts) { QByteArray desc; it = ports.find(port.first); if (it == ports.end()) continue; p = it->second; desc = p.description; if (p.available == PA_PORT_AVAILABLE_YES) desc += UkmediaVolumeControl::tr(" (plugged in)").toUtf8().constData(); else if (p.available == PA_PORT_AVAILABLE_NO) { if (p.name == "analog-output-speaker" || p.name == "analog-input-microphone-internal") desc += UkmediaVolumeControl::tr(" (unavailable)").toUtf8().constData(); else desc += UkmediaVolumeControl::tr(" (unplugged)").toUtf8().constData(); } port.second = desc; } qDebug() << "updatePorts" << p.name << p.description; Q_EMIT d->updatePortSignal(); it = ports.find(d->activePort); if (it != ports.end()) { p = it->second; // d->setLatencyOffset(p.latency_offset); } } static void setIconByName(QLabel* label, const char* name) { QIcon icon = QIcon::fromTheme(name); int size = label->style()->pixelMetric(QStyle::PM_ToolBarIconSize); QPixmap pix = icon.pixmap(size, size); label->setPixmap(pix); } int UkmediaVolumeControl::boolToInt(bool b) { if (b == true) return 1; else return 0; } void UkmediaVolumeControl::updateCard(UkmediaVolumeControl *c, const pa_card_info &info) { const char *description; QMap tempInput; QMap tempOutput; QList profileName; QMapportMap; QMap outputPortNameLabelMap; QMapinputPortNameLabelMap; QMap profilePriorityMap; std::set profile_priorities; description = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_DESCRIPTION);//获取device.description字符串 hasSinks = c->hasSources = false; profile_priorities.clear(); for (pa_card_profile_info2 ** p_profile = info.profiles2; *p_profile != nullptr; ++p_profile) { // c->hasSinks = c->hasSinks || ((*p_profile)->n_sinks > 0); // c->hasSources = c->hasSources || ((*p_profile)->n_sources > 0); profile_priorities.insert(*p_profile); profileName.append((*p_profile)->name); profilePriorityMap.insertMulti((*p_profile)->name,(*p_profile)->priority); } QList> cardProfilePriorityMapList; if(cardProfilePriorityMap.isEmpty()) cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); cardProfilePriorityMapList = cardProfilePriorityMap.values(); if(!cardProfilePriorityMapList.contains(profilePriorityMap)) cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); c->ports.clear(); for (uint32_t i = 0; i < info.n_ports; ++i) { PortInfo p; p.name = info.ports[i]->name; p.description = info.ports[i]->description; p.priority = info.ports[i]->priority; p.available = info.ports[i]->available; p.direction = info.ports[i]->direction; p.latency_offset = info.ports[i]->latency_offset; if (info.ports[i]->profiles2)//bug#92426 该蓝牙音响存在输入端口无输入配置文件会导致段错误 for (pa_card_profile_info2 ** p_profile = info.ports[i]->profiles2; *p_profile != nullptr; ++p_profile) { p.profiles.push_back((*p_profile)->name); } if (p.direction == 1 && p.available != PA_PORT_AVAILABLE_NO) { // portMap.insertMulti(p.name,p.description.data()); //新增UI设计,combobox显示portname+description QString outputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) QString outputPortName_and_description = outputPortName + "(" + description + ")"; tempOutput.insertMulti(p.name,outputPortName_and_description); QList portProfileName; for (auto p_profile : p.profiles) { portProfileName.append(p_profile.data()); outputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); qDebug() << "ctf profilename map insert -----------" << p.description.data() << p_profile.data(); } profileNameMap.insert(info.index,outputPortNameLabelMap); cardProfileMap.insert(info.index,portProfileName); } else if (p.direction == 2 && p.available != PA_PORT_AVAILABLE_NO){ qDebug() << " add source port name "<< info.index << p.name << p.description.data(); QString inputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) QString inputPortName_and_description = inputPortName + "(" + description + ")"; tempInput.insertMulti(p.name,inputPortName_and_description); for (auto p_profile : p.profiles) { inputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); } inputPortProfileNameMap.insert(info.index,inputPortNameLabelMap); } c->ports[p.name] = p; } inputPortMap.insert(info.index,tempInput); outputPortMap.insert(info.index,tempOutput); cardActiveProfileMap.insert(info.index,info.active_profile->name); c->profiles.clear(); for (auto p_profile : profile_priorities) { bool hasNo = false, hasOther = false; std::map::iterator portIt; QByteArray desc = p_profile->description; for (portIt = c->ports.begin(); portIt != c->ports.end(); portIt++) { PortInfo port = portIt->second; if (std::find(port.profiles.begin(), port.profiles.end(), p_profile->name) == port.profiles.end()) continue; if (port.available == PA_PORT_AVAILABLE_NO) hasNo = true; else { hasOther = true; break; } } if (hasNo && !hasOther) desc += tr(" (unplugged)").toUtf8().constData(); if (!p_profile->available) desc += tr(" (unavailable)").toUtf8().constData(); c->profiles.push_back(std::pair(p_profile->name, desc)); if (p_profile->n_sinks == 0 && p_profile->n_sources == 0) c->noInOutProfile = p_profile->name; } c->activeProfile = info.active_profile ? info.active_profile->name : ""; //bug 102001 针对hw990 9a0 panguv panguw,由于连上部分音箱后,创建蓝牙声卡时a2d_sink对应transport状态还是不可用的状态,因此进行延迟300ms的异常处理 QString sessionType = getenv("XDG_SESSION_TYPE"); if (sessionType.compare("wayland", Qt::CaseSensitive)) { if (strstr(info.name,"bluez_card") && strcmp(info.active_profile->name,"off") == 0) { qDebug() << "bluez card profile is off,need to set profile..."; QTimer::singleShot(300,this,[=](){ setCardProfile(info.index,"a2dp_sink"); }); } } if (strstr(info.name, "bluez_card")) { getBatteryLevel(info.name); } /* Because the port info for sinks and sources is discontinued we need * to update the port info for them here. */ updatePorts(c,c->ports); Q_EMIT checkDeviceSelectionSianal(&info); } /* 获取声卡名,参考aplay -L */ QString card_get(int card) { snd_ctl_t *handle; int err, dev, idx; snd_ctl_card_info_t *info; snd_pcm_info_t *pcminfo; snd_ctl_card_info_alloca(&info); snd_pcm_info_alloca(&pcminfo); char name[32]; sprintf(name, "hw:%d", card); if ((err = snd_ctl_open(&handle, name, 0)) < 0) { qInfo("control open (%i): %s", card, snd_strerror(err)); return "Error"; } if ((err = snd_ctl_card_info(handle, info)) < 0) { qInfo("control hardware info (%i): %s", card, snd_strerror(err)); snd_ctl_close(handle); return "Error"; } dev = -1; while (1) { unsigned int count; if (dev < 0) break; snd_pcm_info_set_device(pcminfo, dev); snd_pcm_info_set_subdevice(pcminfo, 0); snd_pcm_info_set_stream(pcminfo, SND_PCM_STREAM_PLAYBACK); if ((err = snd_ctl_pcm_info(handle, pcminfo)) < 0) { // if (err != -ENOENT) // error("control digital audio info (%i): %s", card, snd_strerror(err)); continue; } qDebug() <<"card_get"<< card << snd_ctl_card_info_get_id(info); count = snd_pcm_info_get_subdevices_count(pcminfo); printf((" Subdevices: %i/%i\n"), snd_pcm_info_get_subdevices_avail(pcminfo), count); for (idx = 0; idx < (int)count; idx++) { snd_pcm_info_set_subdevice(pcminfo, idx); if ((err = snd_ctl_pcm_info(handle, pcminfo)) < 0) { qInfo("control digital audio playback info (%i): %s", card, snd_strerror(err)); } else { printf((" Subdevice #%i: %s\n"), idx, snd_pcm_info_get_subdevice_name(pcminfo)); } } } snd_ctl_close(handle); return snd_ctl_card_info_get_id(info); } void UkmediaVolumeControl::insertCardInfoJson(QString cardKey, QString cardstr, QString volumeKey, int volume, QString muteKey, bool mute, QString jsonfile) { QJsonObject rootObj; rootObj.insert(cardKey, cardstr); //插入数据 rootObj.insert(volumeKey, paVolumeToValue(volume)); rootObj.insert(muteKey, mute); // 将json对象里的数据转换为字符串 QJsonDocument doc; // 将object设置为本文档的主要对象 doc.setObject(rootObj); QString filename = QDir::homePath(); filename += jsonfile; QFile file(filename); if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { qDebug() << "can't open error!"; return ; } QTextStream stream(&file); stream.setCodec("UTF-8"); // 设置写入编码是UTF8 // 写入文件 stream << doc.toJson(); file.close(); } void UkmediaVolumeControl::insertJson(QString key, QString value, QString jsonfile) { QJsonObject rootObj; rootObj.insert(key, value); //插入数据 // 将json对象里的数据转换为字符串 QJsonDocument doc; // 将object设置为本文档的主要对象 doc.setObject(rootObj); QString filename = QDir::homePath(); filename += jsonfile; QFile file(filename); if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { qDebug() << "can't open error!"; return ; } QTextStream stream(&file); stream.setCodec("UTF-8"); // 设置写入编码是UTF8 // 写入文件 stream << doc.toJson(); file.close(); } /* * 滑动条值转换成音量值 */ int UkmediaVolumeControl::valueToPaVolume(int value) { return value / UKMEDIA_VOLUME_NORMAL * PA_VOLUME_NORMAL; } /* * 音量值转换成滑动条值 */ int UkmediaVolumeControl::paVolumeToValue(int value) { return (value / PA_VOLUME_NORMAL * UKMEDIA_VOLUME_NORMAL) + 0.5; } /* * 根据声卡索引查找声卡名 */ QString UkmediaVolumeControl::findCardName(int index,QMap cardMap) { QMap::iterator it; for(it=cardMap.begin();it!=cardMap.end();) { if (it.key() == index) { return it.value(); } ++it; } return ""; } /* * 初始化默认输出音量 */ void UkmediaVolumeControl::initDefaultSinkVolume(const pa_sink_info &info) { int volume; QString outputCardName = findCardName(defaultOutputCard,cardMap); QString active_port_name = ""; if (info.active_port->name != "") active_port_name = info.active_port->name; if (!defaultSinkName.contains("bluez") && strstr(info.name, "bluez")) { return; } else if (defaultSinkName.contains("bluez") && strstr(defaultSinkName,info.name) && !customSoundFile->isExist(stringRemoveUnrecignizedChar(active_port_name))) { Q_EMIT initBlueDeviceVolumeSig(info.index, active_port_name); return; } if (!active_port_name.isEmpty() && !customSoundFile->isExist(stringRemoveUnrecignizedChar(active_port_name))) { if (active_port_name.contains("headphone",Qt::CaseInsensitive)) { if(outputCardName.contains("bluez",Qt::CaseSensitive)) volume = OUTPUT_VOLUME; else volume = HEADPHONE_VOLUME; } else if (active_port_name.contains("hdmi",Qt::CaseInsensitive)) { volume = HDMI_VOLUME; } else if (active_port_name.contains("speaker",Qt::CaseInsensitive)){ volume = OUTPUT_VOLUME; } else if (active_port_name.contains("lineout",Qt::CaseInsensitive)){ volume = HEADPHONE_VOLUME; } else { volume = OUTPUT_VOLUME; } const pa_sink_info *i = &info; setSinkVolumeByInfo(*i,valueToPaVolume(volume)); customSoundFile->addXmlNode(active_port_name,false); qDebug() << "initDefaultSinkVolume" << active_port_name << volume ; } } /* * Update output device when the default output device or port is updated */ bool UkmediaVolumeControl::updateSink(UkmediaVolumeControl *w,const pa_sink_info &info) { bool is_new = false; m_defaultSinkVolume = info.volume; QMaptemp; int volume; QString now_card ="hw:CARD="; if (info.volume.channels >= 2) volume = MAX(info.volume.values[0],info.volume.values[1]); else volume = info.volume.values[0]; if (info.active_port) sinkActivePortMap.insert(info.name,info.active_port->name); if(pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) masterSinkDev = pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE); //fixed bug#155860 【声音】声音输出设备由外放切换耳机音量不会自动变成17% if (info.active_port) { if (!customSoundFile->isExist(stringRemoveUnrecignizedChar(info.active_port->name)) && !strstr(info.active_port->name,"histen") && !strstr(info.active_port->name,"3a_algo")) { const pa_sink_info *i = &info; initDefaultSinkVolume(*i); } } else if(strcmp(info.name,"auto_null")==0 && strcmp(defaultSinkName,"auto_null")==0){ //此处引发问题:164995(音量初始化问题)、157123(自适应升级音量改变) //#if (QT_VERSION > QT_VERSION_CHECK(5, 12, 8)) if (!customSoundFile->isExist(stringRemoveUnrecignizedChar("auto_null_sink"))) { setSinkVolumeByInfo(info, valueToPaVolume(OUTPUT_VOLUME)); customSoundFile->addXmlNode("auto_null_sink", false); qDebug() << "initSystemVolume for auto_null_sink"; } //#endif } //默认的输出音量 if (strcmp(defaultSinkName.data(), info.name) == 0) { channel = info.volume.channels; channelMap = info.channel_map; sinkIndex = info.index; QString portName = ""; if (info.active_port) { portName = info.active_port->name; //获取当前声卡名 if( pa_proplist_gets(info.proplist,"alsa.card") && pa_proplist_gets(info.proplist,"alsa.device")) { now_card +=card_get(atoi(pa_proplist_gets(info.proplist,"alsa.card"))); now_card +=",DEV="; now_card += pa_proplist_gets(info.proplist,"alsa.device"); } } else portName = ""; // 是否发送音乐暂停信号 if (isNeedSendPortChangedSignal(portName, sinkPortName, info.name)) sendPortChangedSignal(); // 是否发送声音输出设备切换弹窗信号 sendOsdWidgetSignal(portName, info.description); // 同步sinkPortName if (sinkPortName != portName) { sinkPortName = portName; QTimer::singleShot(100, this, SLOT(timeoutSlot())); } //向 /home/username/.config/audio.json 文件中插入属性 insertCardInfoJson("card", now_card, "volume", volume, "mute", info.mute, "/.config/audio.json"); // 同步默认声卡index defaultOutputCard = info.card; // 同步音量,同步UI balance = pa_cvolume_get_balance(&info.volume,&info.channel_map); refreshVolume(SoundType::SINK, volume, info.mute); } qDebug() << "UpdateSink--->" << "sinkIndex:" << sinkIndex << "sinkPortName:" << sinkPortName << "sinkVolume:" << sinkVolume << "channel:" << channel; if (info.ports) { for (pa_sink_port_info ** sinkPort = info.ports; *sinkPort != nullptr; ++sinkPort) { temp.insertMulti(info.name,(*sinkPort)->name); } QList > sinkPortMapList; if(sinkPortMap.isEmpty()) sinkPortMap.insertMulti(info.card,temp); sinkPortMapList = sinkPortMap.values(); if(!sinkPortMapList.contains(temp)) sinkPortMap.insertMulti(info.card,temp); const char *icon; std::set port_priorities; icon = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_ICON_NAME); port_priorities.clear(); for (uint32_t i=0; iports.clear(); } return is_new; } QString UkmediaVolumeControl::stringRemoveUnrecignizedChar(QString str) { str.remove(" "); str.remove("/"); str.remove("("); str.remove(")"); str.remove("["); str.remove("]"); return str; } /* * stream suspend callback */ static void suspended_callback(pa_stream *s, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (pa_stream_is_suspended(s)) { // w->updateVolumeMeter(pa_stream_get_device_index(s), PA_INVALID_INDEX, -1); } } static void read_callback(pa_stream *s, size_t length, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); const void *data; double v; if (pa_stream_peek(s, &data, &length) < 0) { w->showError(UkmediaVolumeControl::tr("Failed to read data from stream").toUtf8().constData()); return; } if (!data) { /* nullptr data means either a hole or empty buffer. * Only drop the stream when there is a hole (length > 0) */ if (length) pa_stream_drop(s); return; } assert(length > 0); assert(length % sizeof(float) == 0); v = ((const float*) data)[length / sizeof(float) -1]; pa_stream_drop(s); if (v < 0) v = 0; if (v > 1) v = 1; } pa_stream* UkmediaVolumeControl::createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx = -1, bool suspend = false) { pa_stream *s; char t[16]; pa_buffer_attr attr; pa_sample_spec ss; pa_stream_flags_t flags; ss.channels = 1; ss.format = PA_SAMPLE_FLOAT32; ss.rate = 25; memset(&attr, 0, sizeof(attr)); attr.fragsize = sizeof(float); attr.maxlength = (uint32_t) -1; snprintf(t, sizeof(t), "%u", source_idx); m_pPaContext = getContext(); if (!(s = pa_stream_new(getContext(), tr("Peak detect").toUtf8().constData(), &ss, nullptr))) { showError(tr("Failed to create monitoring stream").toUtf8().constData()); return nullptr; } if (stream_idx != (uint32_t) -1) pa_stream_set_monitor_stream(s, stream_idx); pa_stream_set_read_callback(s, read_callback, this); pa_stream_set_suspended_callback(s, suspended_callback, this); flags = (pa_stream_flags_t) (PA_STREAM_DONT_MOVE | PA_STREAM_PEAK_DETECT | PA_STREAM_ADJUST_LATENCY | (suspend ? PA_STREAM_DONT_INHIBIT_AUTO_SUSPEND : PA_STREAM_NOFLAGS) /*| (!showVolumeMetersCheckButton->isChecked() ? PA_STREAM_START_CORKED : PA_STREAM_NOFLAGS)*/); if (pa_stream_connect_record(s, t, &attr, flags) < 0) { showError(tr("Failed to connect monitoring stream").toUtf8().constData()); pa_stream_unref(s); return nullptr; } return s; } void UkmediaVolumeControl::initDefaultSourceVolume(const pa_source_info &info) { QString active_port_name = ""; if (info.active_port->name != "") active_port_name = info.active_port->name; if (!active_port_name.isEmpty() && !customSoundFile->isExist(stringRemoveUnrecignizedChar(active_port_name))) { if(active_port_name.contains("hda")) { QString str = "hda-"; QString preSourcePortName = active_port_name; int index = preSourcePortName.indexOf(str); str = preSourcePortName.remove(index,4); if(customSoundFile->isExist(stringRemoveUnrecignizedChar(preSourcePortName))){ qDebug() << "自适应升级输入音量问题"; return; } } if(active_port_name.contains("alc269vc")) { QString str = "alc269vc-"; QString preSourcePortName = active_port_name; int index = preSourcePortName.indexOf(str); str = preSourcePortName.remove(index,9); if(customSoundFile->isExist(stringRemoveUnrecignizedChar(preSourcePortName))){ qDebug() << "自适应升级输入音量问题" << active_port_name << preSourcePortName; return; } } setSourceVolumeByInfo(info,valueToPaVolume(MIC_VOLUME)); customSoundFile->addXmlNode(active_port_name,false); qDebug() << "initDefaultSourceVolume" << active_port_name << MIC_VOLUME; } } void UkmediaVolumeControl::updateSource(const pa_source_info &info) { int volume; if (info.volume.channels >= 2) volume = MAX(info.volume.values[0],info.volume.values[1]); else volume = info.volume.values[0]; if(pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) masterDevice = pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE); if (info.active_port) { if(!customSoundFile->isExist(stringRemoveUnrecignizedChar(info.active_port->name))&&!strstr(info.active_port->name,"histen") && !strstr(info.active_port->name,"3a-algo")) { const pa_source_info *i = &info; initDefaultSourceVolume(*i); } } else { #if (QT_VERSION > QT_VERSION_CHECK(5, 12, 8)) if (!customSoundFile->isExist(stringRemoveUnrecignizedChar("auto_null_source"))) { setSourceVolume(info.index, valueToPaVolume(MIC_VOLUME)); customSoundFile->addXmlNode("auto_null_source", false); qDebug() << "initSystemVolume for auto_null_source"; } #endif } if (strcmp(defaultSourceName.data(),info.name) == 0) { inputChannel = info.volume.channels; sourceIndex = info.index; QString portName = ""; if (info.active_port) portName = info.active_port->name; else portName = ""; if(pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) portName = findMasterDeviceInfo(info.proplist, info.name); if (sourcePortName != portName) { qDebug() << "Send SIGNAL: sourcePortChanged. Case: different port" << sourcePortName << portName; sourcePortName = portName; sendSourcePortChangedSignal(); } else { int index = -1; if (pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) index = findPortSourceIndex(masterDevice); if (defaultInputCard != info.card && defaultInputCard != index) { sendSourcePortChangedSignal(); qDebug() << "Send SIGNAL: sourcePortChanged. Case: same port, different card" << defaultInputCard << info.card; } } if (pa_proplist_gets(info.proplist,PA_PROP_DEVICE_MASTER_DEVICE)) defaultInputCard = findPortSourceIndex(masterDevice); else defaultInputCard = info.card; refreshVolume(SoundType::SOURCE, volume, info.mute); } QMaptemp; if(info.ports) { for (pa_source_port_info ** sourcePort = info.ports; *sourcePort != nullptr; ++sourcePort) { temp.insertMulti(info.name,(*sourcePort)->name); } QList > sourcePortMapList; if(sourcePortMap.isEmpty()) sourcePortMap.insertMulti(info.card,temp); sourcePortMapList = sourcePortMap.values(); if(!sourcePortMapList.contains(temp)) sourcePortMap.insertMulti(info.card,temp); qDebug() << "UpdateSource--->" << "sourceIndex:" << sourceIndex << "sourcePortName:" << sourcePortName << "sourceVolume:" << sourceVolume << "inputChannel:" << inputChannel; } } void UkmediaVolumeControl::setIconFromProplist(QLabel *icon, pa_proplist *l, const char *def) { const char *t; if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_WINDOW_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_APPLICATION_ICON_NAME))) goto finish; if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ROLE))) { if (strcmp(t, "video") == 0 || strcmp(t, "phone") == 0) goto finish; if (strcmp(t, "music") == 0) { t = "audio"; goto finish; } if (strcmp(t, "game") == 0) { t = "applications-games"; goto finish; } if (strcmp(t, "event") == 0) { t = "dialog-information"; goto finish; } } t = def; finish: setIconByName(icon, t); } void UkmediaVolumeControl::updateSinkInput(const pa_sink_input_info &info) { sinkInputChannel = info.volume.channels; const char *t; if ((t = pa_proplist_gets(info.proplist, "module-stream-restore.id"))) { if (t && strcmp(t, "sink-input-by-media-role:event") == 0) { g_debug("%s", tr("Ignoring sink-input due to it being designated as an event and thus handled by the Event widget").toUtf8().constData()); return; } } const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); QString appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); QString appIconName = pa_proplist_gets(info.proplist,PA_PROP_APPLICATION_ICON_NAME);\ const gchar *appBinary = pa_proplist_gets(info.proplist,PA_PROP_APPLICATION_PROCESS_BINARY); if(appBinary && strcmp(appBinary,"qaxbrowser") == 0){ appBinary = "qaxbrowser-safe"; } else if (description && strstr(description,"ALSA")){ appBinary = nullptr; } else if (appBinary && strcmp(appBinary,"kylin-kmre-audio") == 0){ appBinary = nullptr; } //网页版微信需要适配desktop文件 else if (appBinary && strcmp(appBinary,"微信") == 0){ appBinary = "wechat"; } //win32微信 else if (description && strstr(description, "WeChat")) { appBinary = "kylin-kwre-wechat"; } //fixed bug:100614、100610 无线投屏时应用音量界面里应用音量没有图标显示 else if (description && (strcmp(description,"castplayer") == 0 || strcmp(description,"miraclecast") == 0 )) { appBinary = "kylin-miracast"; } if(appBinary) { appId = appBinary; appIconName = appBinary; description = appBinary; } else { qDebug() << "updateSinkInput appBinary is null"; return; } qDebug() << " updateSinkInput:" << "icon:"<< appIconName << "id" << appId <<"dess"<< description <<"bind"<< appBinary << info.volume.values[0]; //没制定应用名称的不加入到应用音量中 if(description && !strstr(description,"QtPulseAudio") && !strstr(description,"ALSA") && !strstr(description,"aplay")) { sinkInputIndexMap.insert(info.index,description); //记录每个sinkinput的index sinkInputValueMap.insert(description,info.volume.values[0]); //记录相同description的最新音量 sinkInputMuteMap.insert(description,info.mute); if(!sinkInputList.contains(description)){ sinkInputList.append(description); //记录应用的个数 来增删应用widget Q_EMIT addSinkInputSignal(description,appId.toLatin1().data(),info.index,info.volume.values[0],info.volume.channels); } Q_EMIT sinkInputVolumeChangedSignal(description,appId.toLatin1().data(),info.volume.values[0]); //应用音量发生改变时发送信号更新滑动条的值 } } void UkmediaVolumeControl::updateSourceOutput(const pa_source_output_info &info) { sourceOutputChannel = info.volume.channels; const char *app; bool is_new = false; if ((app = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID))) if (strcmp(app, "org.PulseAudio.pavucontrol") == 0 || strcmp(app, "org.gnome.VolumeControl") == 0 || strcmp(app, "org.kde.kmixd") == 0) return; const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); QString appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); QString appIconName = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ICON_NAME); const gchar *appBinary = pa_proplist_gets(info.proplist,PA_PROP_APPLICATION_PROCESS_BINARY); //kmre没有设计对应的desktop图标,暂时不显示在应用音量窗口 if (appBinary && strcmp(appBinary,"kylin-kmre-audio") == 0){ appBinary = nullptr; } //fixed bug:100614、100610 无线投屏时应用音量界面里应用音量没有图标显示 else if (description && (strcmp(description,"castplayer") == 0 || strcmp(description,"miraclecast") == 0 )) { appBinary = "kylin-miracast"; } if(appBinary) { appId = appBinary; description = appBinary; appIconName = appBinary; } else { qDebug() << "updateSourceOutput appBinary is null"; return; } qDebug() << "updateSourceOutput:" << "icon:"<< appIconName << "id" << appId <<"dess"<< description <<"bind"<< appBinary << info.volume.values[0]; if(sinkInputValueMap.keys().contains(description)){ qDebug() << description << "已产生了sink-input,不再对其source-output生成app widget"; return; } if(description && !strstr(description,"QtPulseAudio") && !strstr(description,"ALSA") && !strstr(description,"Volume Control") && !strstr(description,"aplay")) { sourceOutputIndexMap.insert(info.index,description); //记录所有source-output index sourceOutputValueMap.insert(description,info.volume.values[0]); //记录相同description的最新音量 sinkInputMuteMap.insert(description,info.mute); if(!sinkInputList.contains(description)){ sinkInputList.append(description); Q_EMIT addSinkInputSignal(description,appId.toLatin1().data(),info.index,info.volume.values[0],info.volume.channels); } Q_EMIT sinkInputVolumeChangedSignal(description,appId.toLatin1().data(),info.volume.values[0]); } } void UkmediaVolumeControl::updateClient(const pa_client_info &info) { g_free(clientNames[info.index]); clientNames[info.index] = g_strdup(info.name); } void UkmediaVolumeControl::updateServer(const pa_server_info &info) { defaultSourceName = info.default_source_name ? info.default_source_name : ""; defaultSinkName = info.default_sink_name ? info.default_sink_name : ""; qDebug() << "updateServer" << "defaultSinkName " << defaultSinkName << "defaultSourceName" << defaultSourceName; } #if HAVE_EXT_DEVICE_RESTORE_API void UkmediaVolumeControl::updateDeviceInfo(const pa_ext_device_restore_info &info) { // if (sinkWidgets.count(info.index)) { // SinkWidget *w; // pa_format_info *format; // w = sinkWidgets[info.index]; // w->updating = true; // /* Unselect everything */ // for (int j = 1; j < PAVU_NUM_ENCODINGS; ++j) // w->encodings[j].widget->setChecked(false); // for (uint8_t i = 0; i < info.n_formats; ++i) { // format = info.formats[i]; // for (int j = 1; j < PAVU_NUM_ENCODINGS; ++j) { // if (format->encoding == w->encodings[j].encoding) { // w->encodings[j].widget->setChecked(true); // break; // } // } // } // w->updating = false; // } } #endif void UkmediaVolumeControl::setConnectionState(gboolean connected) { if (m_connected != connected) { m_connected = connected; if (m_connected) { // connectingLabel->hide(); // notebook->show(); } else { // notebook->hide(); // connectingLabel->show(); } } } void UkmediaVolumeControl::removeCard(uint32_t index) { } void UkmediaVolumeControl::removeSink(uint32_t index) { QMap::iterator it; Q_EMIT removeSinkSignal(); for (it=sinkMap.begin();it!=sinkMap.end();) { if (it.key() == index) { qDebug() << "removeSink" << index; sinkMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeSource(uint32_t index) { QMap::iterator it; for (it=sourceMap.begin();it!=sourceMap.end();) { if (it.key() == index) { qDebug() << "removeSource" << index; sourceMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeSinkInput(uint32_t index) { QString description = ""; qDebug() << "removeSinkInput" << index; description = sinkInputIndexMap.value(index); //先获取要移除sinkinput的description sinkInputIndexMap.remove(index);//移除对应index的sinkinput if(!sinkInputIndexMap.values().contains(description) || sinkInputIndexMap.isEmpty()) { sinkInputValueMap.remove(description);//如果所有相同description的index都被移除,需要移除valueMap对应的description sinkInputMuteMap.remove(description); if(description != "") Q_EMIT removeSinkInputSignal(description.toLatin1().data());//并移除对应app widget } } void UkmediaVolumeControl::removeSourceOutput(uint32_t index) { QString description = ""; qDebug() << "removeSourceOutput" << index; description = sourceOutputIndexMap.value(index); sourceOutputIndexMap.remove(index); if(description == "Loopback") isLoadLoopback = false; if(!sourceOutputIndexMap.values().contains(description) || sourceOutputIndexMap.isEmpty()) { sourceOutputValueMap.remove(description); sinkInputMuteMap.remove(description); if(description != "") Q_EMIT removeSinkInputSignal(description.toLatin1().data()); } } void UkmediaVolumeControl::removeClient(uint32_t index) { g_free(clientNames[index]); clientNames.erase(index); } void UkmediaVolumeControl::setConnectingMessage(const char *string) { QByteArray markup = ""; if (!string) markup += tr("Establishing connection to PulseAudio. Please wait...").toUtf8().constData(); else markup += string; markup += ""; } void UkmediaVolumeControl::showError(const char *txt) { char buf[256]; snprintf(buf, sizeof(buf), "%s: %s", txt, pa_strerror(pa_context_errno(context))); qDebug() <n_outstanding <= 0) return; if (--w->n_outstanding <= 0) { w->setConnectionState(true); } } void UkmediaVolumeControl::cardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Card callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->cardMap.insert(i->index,i->name); w->signalCount += 1; // if(w->signalCount >= 2){ // w->updateCard(w,*i); // w->signalCount = 1; // } w->updateCard(w,*i); } void UkmediaVolumeControl::batteryLevelCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Card callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } qDebug() << "batteryLevelCb" << i->index << eol; const char *battery = pa_proplist_gets(i->proplist,"bluetooth.battery"); QString macAddr = pa_proplist_gets(i->proplist, "device.string"); if (battery) { qDebug() << "get bluetooth battery is:" << battery << atoi(battery); w->batteryLevel = atoi(battery); } else w->batteryLevel = -1; Q_EMIT w->bluetoothBatteryChanged(macAddr, w->batteryLevel); } void UkmediaVolumeControl::bluetoothCardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Card callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } qDebug() << "bluetooth card cb" << i->index << eol; const char *battery = pa_proplist_gets(i->proplist,"bluetooth.battery"); QString macAddr = pa_proplist_gets(i->proplist, "device.string"); if (battery) { qDebug() << "bluetooth battery is ===" << battery << atoi(battery); // char *str = strtok(battery,"."); w->batteryLevel = atoi(battery); } else w->batteryLevel = -1; Q_EMIT w->bluetoothBatteryChanged(macAddr, w->batteryLevel); } #if HAVE_EXT_DEVICE_RESTORE_API static void ext_device_restore_subscribeCb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); #endif void UkmediaVolumeControl::sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } int volume; QString portName = ""; if(i->volume.channels >= 2) volume = MAX(i->volume.values[0],i->volume.values[1]); else volume = i->volume.values[0]; w->channel = i->volume.channels; w->sinkIndex = i->index; w->balance = pa_cvolume_get_balance(&i->volume,&i->channel_map); /* 同步sinkPortName三种情况 * case1: 默认声卡端口可用,直接同步当前可用端口 * case2:默认声卡端口不可用,端口设置为空 * case3: 默认声卡为虚拟声卡,查找master.device声卡信息并同步 */ if (i->active_port) portName = i->active_port->name; else portName = ""; if (pa_proplist_gets(i->proplist, PA_PROP_DEVICE_MASTER_DEVICE)) portName = w->findSinkMasterDeviceInfo(i->proplist, i->name); // 是否发送音乐暂停信号 if (w->isNeedSendPortChangedSignal(portName, w->sinkPortName, i->name)) w->sendPortChangedSignal(); // 是否发送声音输出设备切换弹窗信号 w->sendOsdWidgetSignal(portName, i->description); // 同步sinkPortName w->sinkPortName = (w->sinkPortName != portName) ? portName : w->sinkPortName; // 同步默认声卡index w->defaultOutputCard = i->card; // 同步音量,同步UI w->refreshVolume(SoundType::SINK, volume, i->mute); qDebug() << "sinkIndexCb" << w->defaultOutputCard << w->sinkPortName << w->sinkIndex; } void UkmediaVolumeControl::sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } int volume; if(i->volume.channels >= 2) volume = MAX(i->volume.values[0],i->volume.values[1]); else volume = i->volume.values[0]; w->inputChannel = i->volume.channels; w->sourceIndex = i->index; QString portName = ""; if (i->active_port) portName = i->active_port->name; else portName = ""; if(pa_proplist_gets(i->proplist,PA_PROP_DEVICE_MASTER_DEVICE)) portName = w->findMasterDeviceInfo(i->proplist, i->name); if (w->sourcePortName != portName) { qDebug() << "Send SIGNAL: sourcePortChanged. Case: different port" << w->sourcePortName << portName; w->sourcePortName = portName; w->sendSourcePortChangedSignal(); } else { int index = -1; if (pa_proplist_gets(i->proplist,PA_PROP_DEVICE_MASTER_DEVICE)) index = w->findPortSourceIndex(w->masterDevice); if (w->defaultInputCard != i->card && w->defaultInputCard != index) { w->sendSourcePortChangedSignal(); qDebug() << "Send SIGNAL: sourcePortChanged. Case: same port, different card" << w->defaultInputCard << i->card; } } if (pa_proplist_gets(i->proplist,PA_PROP_DEVICE_MASTER_DEVICE)) w->defaultInputCard = w->findPortSourceIndex(w->masterDevice); else w->defaultInputCard = i->card; w->refreshVolume(SoundType::SOURCE, volume, i->mute); qDebug() << "sourceIndexCb---" << w->sourcePortName; } void UkmediaVolumeControl::sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->m_pDefaultSink = i; qDebug() << "SinkCb" << "Volume:" << i->volume.values[0] << "isMute:" << i->mute << i->name; w->sinkMap.insert(i->index,i->name); w->updateSink(w,*i); } void UkmediaVolumeControl::sourceCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } qDebug() << "SourceCb" << "Volume:" << i->volume.values[0] << "isMute:" << i->mute << i->name ; // w->sourceIndex = i->index; w->sourceMap.insert(i->index,i->name); w->updateSource(*i); } void UkmediaVolumeControl::sinkInputCb(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->updateSinkInput(*i); } void UkmediaVolumeControl::sourceOutputCb(pa_context *c, const pa_source_output_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Source output callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } if (strstr(i->name,"Loopback")) { w->sourceOutputIndexMap.insert(i->index,"Loopback"); qDebug() << "The module-loopback has been loaded." << w->sourceOutputIndexMap; } qDebug() << "sourceOutputCb" << i->name; w->updateSourceOutput(*i); } void UkmediaVolumeControl::clientCb(pa_context *c, const pa_client_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Client callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } // qDebug() << "clientCb" << i->name; w->updateClient(*i); } void UkmediaVolumeControl::serverInfoCb(pa_context *, const pa_server_info *i, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (!i) { w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); return; } pa_operation *o; //默认的输出设备改变时需要获取默认的输出音量 if (strcmp(w->defaultSinkName.data(),i->default_sink_name) != 0) { //默认输出改变时才走sinkindexcb if(!(o = pa_context_get_sink_info_by_name(w->getContext(),i->default_sink_name,sinkIndexCb,w))) { w->showError(tr("pa_context_get_sink_info_by_name() failed").toUtf8().constData()); } } if(!(o = pa_context_get_source_info_by_name(w->getContext(),i->default_source_name,sourceIndexCb,w))){ w->showError(tr("pa_context_get_source_info_by_name() failed").toUtf8().constData()); } qDebug() << "serverInfoCb" << i->default_sink_name << i->default_source_name; w->updateServer(*i); QTimer::singleShot(100, w, SLOT(timeoutSlot())); decOutstanding(w); } void UkmediaVolumeControl::serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (!i) { w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); return; } pa_operation *o; // qDebug() << "serverInfoIndexCb" << i->default_sink_name << i->default_source_name; w->updateServer(*i); decOutstanding(w); } void UkmediaVolumeControl::timeoutSlot() { Q_EMIT deviceChangedSignal(); } void UkmediaVolumeControl::getBatteryLevel(QString dev) { pa_operation *o; if (!(o = pa_context_get_card_info_by_name(getContext(), dev.toLatin1().data(), batteryLevelCb, this))) { showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); return ; } pa_operation_unref(o); } void UkmediaVolumeControl::extStreamRestoreReadCb( pa_context *c, const pa_ext_stream_restore_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { decOutstanding(w); g_debug(QObject::tr("Failed to initialize stream_restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); return; } if (eol > 0) { decOutstanding(w); return; } } void UkmediaVolumeControl::extStreamRestoreSubscribeCb(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); pa_operation *o; if (!(o = pa_ext_stream_restore_read(c, extStreamRestoreReadCb, w))) { w->showError(QObject::tr("pa_ext_stream_restore_read() failed").toUtf8().constData()); return; } qDebug() << "extStreamRestoreSubscribeCb" ; pa_operation_unref(o); } #if HAVE_EXT_DEVICE_RESTORE_API void ext_device_restore_read_cb( pa_context *, const pa_ext_device_restore_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { w->decOutstanding(w); g_debug(QObject::tr("Failed to initialize device restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(context))); return; } if (eol > 0) { w->decOutstanding(w); return; } /* Do something with a widget when this part is written */ w->updateDeviceInfo(*i); } static void ext_device_restore_subscribeCb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); pa_operation *o; if (type != PA_DEVICE_TYPE_SINK) return; if (!(o = pa_ext_device_restore_read_formats(c, type, idx, ext_device_restore_read_cb, w))) { w->showError(QObject::tr("pa_ext_device_restore_read_sink_formats() failed").toUtf8().constData()); return; } pa_operation_unref(o); } #endif void UkmediaVolumeControl::extDeviceManagerReadCb( pa_context *c, const pa_ext_device_manager_info *, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { decOutstanding(w); g_debug(QObject::tr("Failed to initialize device manager extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); return; } w->canRenameDevices = true; if (eol > 0) { decOutstanding(w); return; } qDebug() << "extDeviceManagerReadCb"; /* Do something with a widget when this part is written */ } void UkmediaVolumeControl::extDeviceManagerSubscribeCb(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); pa_operation *o; if (!(o = pa_ext_device_manager_read(c, extDeviceManagerReadCb, w))) { w->showError(QObject::tr("pa_ext_device_manager_read() failed").toUtf8().constData()); return; } qDebug() << "extDeviceManagerSubscribeCb"; pa_operation_unref(o); } void UkmediaVolumeControl::subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); switch (t & PA_SUBSCRIPTION_EVENT_FACILITY_MASK) { case PA_SUBSCRIPTION_EVENT_SINK: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSink(index); else { pa_operation *o; if (!(o = pa_context_get_sink_info_by_index(c, index, sinkCb, w))) { w->showError(QObject::tr("pa_context_get_sink_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SOURCE: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSource(index); else { pa_operation *o; if (!(o = pa_context_get_source_info_by_index(c, index, sourceCb, w))) { w->showError(QObject::tr("pa_context_get_source_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SINK_INPUT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSinkInput(index); else { pa_operation *o; if (!(o = pa_context_get_sink_input_info(c, index, sinkInputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeSourceOutput(index); else { pa_operation *o; if (!(o = pa_context_get_source_output_info(c, index, sourceOutputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_CLIENT: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) w->removeClient(index); else { pa_operation *o; if (!(o = pa_context_get_client_info(c, index, clientCb, w))) { w->showError(QObject::tr("pa_context_get_client_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; case PA_SUBSCRIPTION_EVENT_SERVER: { pa_operation *o; if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; //case PA_SUBSCRIPTION_EVENT_BLUETOOTH_BATTERY: // qDebug() << "PA_SUBSCRIPTION_EVENT_BLUETOOTH_BATTERY" ; // pa_operation *o; // if (!(o = pa_context_get_card_info_by_index(c, index, bluetoothCardCb, w))) { // w->showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); // return; // } // pa_operation_unref(o); // break; case PA_SUBSCRIPTION_EVENT_CARD: if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) { qDebug() << "remove cards------"; //移除outputPort w->removeSinkPortMap(index); w->removeOutputPortMap(index); w->removeInputPortMap(index); Q_EMIT w->updatePortSignal(); w->removeCardMap(index); w->removeCardProfileMap(index); w->removeProfileMap(index); w->removeInputProfile(index); w->removeCard(index); } else { pa_operation *o; if (!(o = pa_context_get_card_info_by_index(c, index, cardCb, w))) { w->showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); return; } pa_operation_unref(o); } break; } } void UkmediaVolumeControl::contextStateCallback(pa_context *c, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); g_assert(c); switch (pa_context_get_state(c)) { case PA_CONTEXT_UNCONNECTED: case PA_CONTEXT_CONNECTING: case PA_CONTEXT_AUTHORIZING: case PA_CONTEXT_SETTING_NAME: break; case PA_CONTEXT_READY: { pa_operation *o; qDebug() << "pa_context_get_state" << "PA_CONTEXT_READY" << pa_context_get_state(c); w->reconnectTimeout = 1; /* Create event widget immediately so it's first in the list */ pa_context_set_subscribe_callback(c, subscribeCb, w); if (!(o = pa_context_subscribe(c, (pa_subscription_mask_t) (PA_SUBSCRIPTION_MASK_SINK| PA_SUBSCRIPTION_MASK_SOURCE| PA_SUBSCRIPTION_MASK_SINK_INPUT| PA_SUBSCRIPTION_MASK_SOURCE_OUTPUT| PA_SUBSCRIPTION_MASK_CLIENT| PA_SUBSCRIPTION_MASK_SERVER| PA_SUBSCRIPTION_MASK_CARD), nullptr, nullptr))) { w->showError(QObject::tr("pa_context_subscribe() failed").toUtf8().constData()); return; } pa_operation_unref(o); /* Keep track of the outstanding callbacks for UI tweaks */ w->n_outstanding = 0; if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_client_info_list(c, clientCb, w))) { w->showError(QObject::tr("pa_context_client_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_card_info_list(c, cardCb, w))) { w->showError(QObject::tr("pa_context_get_card_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_sink_info_list(c, sinkCb, w))) { w->showError(QObject::tr("pa_context_get_sink_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_source_info_list(c, sourceCb, w))) { w->showError(QObject::tr("pa_context_get_source_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_sink_input_info_list(c, sinkInputCb, w))) { w->showError(QObject::tr("pa_context_get_sink_input_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; if (!(o = pa_context_get_source_output_info_list(c, sourceOutputCb, w))) { w->showError(QObject::tr("pa_context_get_source_output_info_list() failed").toUtf8().constData()); return; } pa_operation_unref(o); w->n_outstanding++; Q_EMIT w->paContextReady(); break; } case PA_CONTEXT_FAILED: w->setConnectionState(false); pa_context_unref(w->m_pPaContext); w->m_pPaContext = nullptr; if (w->reconnectTimeout > 0) { g_debug("%s", QObject::tr("Connection failed, attempting reconnect").toUtf8().constData()); // g_timeout_add_seconds(reconnectTimeout, connectToPulse, w); } return; case PA_CONTEXT_TERMINATED: default: return; } } void UkmediaVolumeControl::moduleInfoCb(pa_context *c, const pa_module_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("moduleInfoCb callback failure").toUtf8().constData()); return; } if(i && strcmp(i->name,w->findModuleStr.toLatin1().data()) == 0) { w->findModuleIndex = i->index; } } pa_context* UkmediaVolumeControl::getContext(void) { return context; } gboolean UkmediaVolumeControl::connectToPulse(gpointer userdata) { pa_glib_mainloop *m = pa_glib_mainloop_new(g_main_context_default()); api = pa_glib_mainloop_get_api(m); pa_proplist *proplist = pa_proplist_new(); pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, QObject::tr("Ukui Media Volume Control").toUtf8().constData()); pa_proplist_sets(proplist, PA_PROP_APPLICATION_ID, "org.PulseAudio.pavucontrol"); pa_proplist_sets(proplist, PA_PROP_APPLICATION_ICON_NAME, "audio-card"); pa_proplist_sets(proplist, PA_PROP_APPLICATION_VERSION, "PACKAGE_VERSION"); context = pa_context_new_with_proplist(api, nullptr, proplist); g_assert(context); pa_proplist_free(proplist); pa_context_set_state_callback(getContext(), contextStateCallback, this); if (pa_context_connect(getContext(), nullptr, PA_CONTEXT_NOFAIL, nullptr) < 0) { if (pa_context_errno(getContext()) == PA_ERR_INVALID) { /*w->setConnectingMessage(QObject::tr("Connection to PulseAudio failed. Automatic retry in 5s\n\n" "In this case this is likely because PULSE_SERVER in the Environment/X11 Root Window Properties\n" "or default-server in client.conf is misconfigured.\n" "This situation can also arrise when PulseAudio crashed and left stale details in the X11 Root Window.\n" "If this is the case, then PulseAudio should autospawn again, or if this is not configured you should\n" "run start-pulseaudio-x11 manually.").toUtf8().constData());*/ qFatal("connect pulseaudio failed") ; } else { // g_timeout_add_seconds(5,connectToPulse,w); } } return false; } /* * 根据名称获取sink input音量 */ int UkmediaVolumeControl::getSinkInputVolume(const gchar *name) { return sinkInputValueMap.value(name); } /* * 根据名称获取source output音量 */ int UkmediaVolumeControl::getSourceOutputVolume(const gchar *name) { return sourceOutputValueMap.value(name); } void UkmediaVolumeControl::sinkInputCallback(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata) { UkmediaVolumeControl *w = static_cast(userdata); if (eol < 0) { if (pa_context_errno(c) == PA_ERR_NOENTITY) return; w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); return; } if (eol > 0) { decOutstanding(w); return; } w->sinkInputMuted = i->mute; if (i->volume.channels >= 2) w->sinkInputVolume = MAX(i->volume.values[0],i->volume.values[1]); else w->sinkInputVolume = i->volume.values[0]; qDebug() << "sinkInputCallback" <sinkInputVolume <name; } /* * 移除指定索引的output port */ void UkmediaVolumeControl::removeOutputPortMap(int index) { QMap>::iterator it; for (it=outputPortMap.begin();it!=outputPortMap.end();) { if (it.key() == index) { qDebug() << "removeoutputport" <>::iterator it; for (it=inputPortMap.begin();it!=inputPortMap.end();) { if (it.key() == index) { inputPortMap.erase(it); break; } ++it; } } /* * 移除指定索引的card */ void UkmediaVolumeControl::removeCardMap(int index) { QMap::iterator it; for (it=cardMap.begin();it!=cardMap.end();) { if (it.key() == index) { cardMap.erase(it); break; } ++it; } } void UkmediaVolumeControl::removeCardProfileMap(int index) { qDebug() << "removeCardProfileMap"; QMap>::iterator it; QMap>::iterator at; for (it=cardProfileMap.begin();it!=cardProfileMap.end();) { if (it.key() == index) { cardProfileMap.erase(it); break; } ++it; } for (at=cardProfilePriorityMap.begin();at!=cardProfilePriorityMap.cend();) { if (at.key() == index) { cardProfilePriorityMap.erase(at); break; } ++at; } } void UkmediaVolumeControl::removeSinkPortMap(int index) { qDebug() << "removeSinkPortMap///"; QMap>::iterator it; for(it=sinkPortMap.begin();it!=sinkPortMap.end();){ if(it.key() == index) { //usb耳机一个声卡存在两个端口,使用erase时只会擦除一个key时,导致拔出耳机时没有完全移除key值,需要使用remove将存入的两个相同的key值全部删除 //sinkPortMap.erase(it); sinkPortMap.remove(index); break; } ++it; } } void UkmediaVolumeControl::removeProfileMap(int index) { QMap>::iterator it; qDebug() << "removeProfileMap" << index; for (it=profileNameMap.begin();it!=profileNameMap.end();) { if(it.key() == index) { profileNameMap.erase(it); break; } ++it; } } bool UkmediaVolumeControl::isExitOutputPort(QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for (it=outputPortMap.begin();it!=outputPortMap.end();) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (at.value() == name) return true; ++at; } ++it; } return false; } int UkmediaVolumeControl::findOutputPort(QString name){ QMap>::iterator it; QMap::iterator at; QMap portMap; int count = 0; for (it=outputPortMap.begin();it!=outputPortMap.end();) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (at.key() == name) { ++count; } ++at; } ++it; } return count; } QString UkmediaVolumeControl::findSinkActivePortName(QString name) { QString portName = ""; QMap::iterator at; for (at=sinkActivePortMap.begin();at!=sinkActivePortMap.end();++at) { if (at.key() == name) { portName = at.value(); break; } } return portName; } void UkmediaVolumeControl::removeInputProfile(int index) { QMap>::iterator it; qDebug() << "removeInputProfile" << index; for (it=inputPortProfileNameMap.begin();it!=inputPortProfileNameMap.end();) { if(it.key() == index){ inputPortProfileNameMap.erase(it); break; } ++it; } } bool UkmediaVolumeControl::isExitInputPort(QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for (it=inputPortMap.begin();it!=inputPortMap.end();) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (at.value() == name) return true; ++at; } ++it; } return false; } bool UkmediaVolumeControl::isNeedSendPortChangedSignal(QString newPort, QString prePort, QString cardName) { // 端口不变时不发送信号 if (newPort == prePort) return false; // 切换到空端口发送信号 if (newPort.isEmpty() && !prePort.isEmpty()&&(cardName!="mono")) { qDebug() << "Send SIGNAL: sinkPortChanged. Case: Switch to a null port" << newPort << prePort; return true; } // 拔插设备自动切换到扬声器端口时发送信号,用户主动切换输出时不做信号发送 if (newPort.contains(SPEAKER) && !cardName.contains("bluez") && !cardName.contains("usb")) { int newPortCount = -1; int prePortCount = -1; newPortCount = findOutputPort(newPort); prePortCount = findOutputPort(prePort); // 保证outputPortMap中只含有一个扬声器端口,并且之前的端口已不在map中 if (newPortCount == 1 && prePortCount == 0) { qDebug() << "Send SIGNAL: sinkPortChanged. Case: Switch to speaker port" << newPort << prePort; return true; } } return false; } void UkmediaVolumeControl::sendPortChangedSignal() { QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sinkPortChanged"); message<<"portChanged"; QDBusConnection::sessionBus().send(message); qDebug() << "sendPortChangedSignal sinkPortChanged " << endl; } void UkmediaVolumeControl::sendSourcePortChangedSignal() { QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sourcePortChanged"); message<<"portChanged"; QDBusConnection::sessionBus().send(message); qDebug() << "sendPortChangedSignal sourcePortChanged " << endl; } int UkmediaVolumeControl::findPortSinkIndex(QString name) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; int cardIndex = -1; for (it=sinkPortMap.begin();it!=sinkPortMap.end();) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.key() == name) { cardIndex = it.key(); break; } ++tempMap; } ++it; } return cardIndex; } int UkmediaVolumeControl::findPortSourceIndex(QString name) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; int cardIndex = -1; for (it=sourcePortMap.begin();it!=sourcePortMap.end();) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.key() == name) { cardIndex = it.key(); break; } ++tempMap; } ++it; } return cardIndex; } QString UkmediaVolumeControl::findSinkPortName(int cardIndex) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString portName = ""; for (it=outputPortMap.begin();it!=outputPortMap.end();) { if(it.key() == cardIndex){ portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { portName = tempMap.key(); break; } ++tempMap; } ++it; } return portName; } QString UkmediaVolumeControl::findSourcePortName(int cardIndex) { QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString portName = ""; for (it=inputPortMap.begin();it!=inputPortMap.end();) { if(it.key() == cardIndex){ portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { portName = tempMap.key(); break; } ++tempMap; } ++it; } return portName; } QString UkmediaVolumeControl::findSinkMasterDeviceInfo(pa_proplist *proplist, const char *info_name) { masterSinkDev = pa_proplist_gets(proplist,PA_PROP_DEVICE_MASTER_DEVICE); if (!masterSinkDev.isEmpty()) { int cardIndex = findPortSinkIndex(masterSinkDev); if (cardIndex != -1) { qDebug() << "findSinkMasterDeviceInfo" << sinkPortName << findSinkPortName(cardIndex); defaultOutputCard = findPortSinkIndex(masterSinkDev); return findSinkPortName(cardIndex); } else { qDebug() << "can't find masterDevice info in findSinkMasterDeviceInfo()"; return ""; } } } QString UkmediaVolumeControl::findMasterDeviceInfo(pa_proplist *proplist, const char *info_name) { masterDevice = pa_proplist_gets(proplist,PA_PROP_DEVICE_MASTER_DEVICE); if (!masterDevice.isEmpty()) { int cardIndex = findPortSourceIndex(masterDevice); if (cardIndex != -1) { qDebug() << "findMasterDeviceInfo" << sourcePortName << findSourcePortName(cardIndex); defaultInputCard = findPortSourceIndex(masterDevice); return findSourcePortName(cardIndex); } else { qDebug() << "can't find masterDevice info in findMasterDeviceInfo()"; return ""; } } } /** * @brief UkmediaVolumeControl::refreshVolume * 发送信号刷新音量 */ void UkmediaVolumeControl::refreshVolume(int soundType, int info_Vol, bool info_Mute) { switch (soundType) { case SoundType::SINK: if(sinkMuted != info_Mute) { sinkMuted = info_Mute; Q_EMIT updateMute(sinkMuted); } if(sinkVolume != info_Vol) { sinkVolume = info_Vol; sinkMuted = info_Mute; Q_EMIT updateVolume(info_Vol); } break; case SoundType::SOURCE: if(sourceMuted != info_Mute) { sourceMuted = info_Mute; Q_EMIT updateSourceMute(sourceMuted); } if(sourceVolume != info_Vol) { sourceVolume = info_Vol; sourceMuted = info_Mute; Q_EMIT updateSourceVolume(info_Vol); } break; default: break; } } void UkmediaVolumeControl::sendOsdWidgetSignal(QString portName, QString description) { if (portName == "histen-algo") return; if (osdFirstFlag) { m_description = description; osdFirstFlag = false; return; } if (portName != sinkPortName || (sinkPortName == portName && !m_description.contains(description) && !description.contains(m_description))) { QString iconStr = ""; if (portName.contains("headphone", Qt::CaseInsensitive)) iconStr = "audio-headphones-symbolic"; else if (portName.contains("headset", Qt::CaseInsensitive)) iconStr = "audio-headset-symbolic"; else iconStr = "audio-volume-high-symbolic"; Q_EMIT device_changed_signal(iconStr); qDebug() << "Send SIGNAL: osdWidgetSignal. Case: sink port has changed" << portName << sinkPortName << description << m_description; } m_description = description; } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.cpp0000644000175000017500000004022214565521701026734 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include extern double transparency; UkuiMediaSetHeadsetWidget::UkuiMediaSetHeadsetWidget(QWidget *parent) : QWidget (parent) { headphoneIconButton = new QToolButton(); headsetIconButton = new QToolButton(); microphoneIconButton = new QToolButton(); soundSettingButton = new QPushButton(tr("Sound Settings")); cancelButton = new QPushButton(tr("Cancel")); selectSoundDeviceLabel = new QLabel(tr("Select Sound Device")); initSetHeadsetWidget(); headphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); connect(headphoneIconButton,SIGNAL(clicked()),this,SLOT(headphoneButtonClickedSlot())); connect(headsetIconButton,SIGNAL(clicked()),this,SLOT(headsetButtonClickedSlot())); connect(microphoneIconButton,SIGNAL(clicked()),this,SLOT(microphoneButtonClickedSlot())); connect(soundSettingButton,SIGNAL(clicked()),this,SLOT(soundSettingButtonClickedSlot())); connect(cancelButton,SIGNAL(clicked()),this,SLOT(cancelButtonClickedSlot())); this->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | Qt::ToolTip); } void UkuiMediaSetHeadsetWidget::initSetHeadsetWidget() { this->setFixedSize(402,252); headphoneIconButton->setFixedSize(96,96); headsetIconButton->setFixedSize(96,96); microphoneIconButton->setFixedSize(96,96); headphoneIconButton->setIconSize(QSize(32,32)); headsetIconButton->setIconSize(QSize(32,32)); microphoneIconButton->setIconSize(QSize(32,32)); selectSoundDeviceLabel->setFixedSize(402,24); soundSettingButton->setFixedSize(120,36); cancelButton->setFixedSize(107,36); soundSettingButton->setContextMenuPolicy(Qt::DefaultContextMenu); headphoneIconButton->setText(tr("Headphone")); headsetIconButton->setText(tr("Headset")); microphoneIconButton->setText(tr("Microphone")); headphoneIconButton->setIcon(QIcon::fromTheme("headphones-symbolic")); headsetIconButton->setIcon(QIcon::fromTheme("audio-headset-symbolic")); microphoneIconButton->setIcon(QIcon::fromTheme("audio-input-microphone")); headphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); headsetIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); microphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); selectSoundDeviceLabel->setAlignment(Qt::AlignCenter); QWidget *labelWidget = new QWidget; labelWidget->setFixedSize(402,24); QVBoxLayout *labelLayout = new QVBoxLayout; labelLayout->addWidget(selectSoundDeviceLabel); labelLayout->setContentsMargins(0,0,0,0); labelWidget->setLayout(labelLayout); QWidget *headsetButtonWidget = new QWidget(); headsetButtonWidget->setFixedSize(402,96); QHBoxLayout *headsetButtonLayout = new QHBoxLayout; headsetButtonLayout->addWidget(headphoneIconButton); headsetButtonLayout->addWidget(headsetIconButton); headsetButtonLayout->addWidget(microphoneIconButton); headsetButtonLayout->setSpacing(24); headsetButtonLayout->setContentsMargins(32,0,32,0); headsetButtonWidget->setLayout(headsetButtonLayout); QWidget *buttonWidget = new QWidget; buttonWidget->setFixedSize(402,36); // buttonWidget->setStyleSheet("QWidget{background-color:rgb(255,0,0);}"); QHBoxLayout *buttonLayout = new QHBoxLayout(); buttonLayout->addWidget(soundSettingButton); buttonLayout->addWidget(cancelButton); buttonLayout->setSpacing(108); buttonLayout->setContentsMargins(32,0,32,0); buttonWidget->setLayout(buttonLayout); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(labelWidget); mainLayout->addWidget(headsetButtonWidget); mainLayout->addWidget(buttonWidget); this->setLayout(mainLayout); this->setProperty("useSystemStyleBlur",true); this->setWindowTitle("whole window blur"); this->setAttribute(Qt::WA_TranslucentBackground); this->setContentsMargins(0,16,0,16); } void UkuiMediaSetHeadsetWidget::paintEvent(QPaintEvent *event) { QStyleOption opt; opt.init(this); QPainter p(this); // double transparence = transparency * 255; QColor color = palette().color(QPalette::Base); // color.setAlpha(transparence); QBrush brush = QBrush(color); p.setBrush(brush); p.setPen(Qt::NoPen); QPainterPath path; opt.rect.adjust(0,0,0,0); path.addRoundedRect(opt.rect,12,12); p.setRenderHint(QPainter::Antialiasing); // 反锯齿; p.drawRoundedRect(opt.rect,12,12); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); QWidget::paintEvent(event); } /* * set input and output port. * input: intel mic * output: headphone */ void UkuiMediaSetHeadsetWidget::headphoneButtonClickedSlot() { isShow = false; // cset("name=Capture Source", HW_CARD, "2", 0, 0); QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); message<<"headphone"; QDBusConnection::sessionBus().send(message); this->hide(); } /* * set input and output port. * input: headsed mic * output: headphone */ void UkuiMediaSetHeadsetWidget::headsetButtonClickedSlot() { isShow = false; // cset("name=Capture Source", HW_CARD, "0", 0, 0); QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); message<<"headset"; QDBusConnection::sessionBus().send(message); this->hide(); } /* * set input and output port. * input: headphone mic * output: speaker */ void UkuiMediaSetHeadsetWidget::microphoneButtonClickedSlot() { isShow = false; // int ret = cset("name=Capture Source", HW_CARD, "1", 0, 0); QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); message<<"headphone mic" ; // if (ret < 0) // cset("name=Input Source", HW_CARD, "1", 0, 0); QDBusConnection::sessionBus().send(message); this->hide(); } /* * Jump to the control panel */ void UkuiMediaSetHeadsetWidget::soundSettingButtonClickedSlot() { QProcess *process; QStringList args; args.append("-m Audio"); QString command = "ukui-control-center"; process = new QProcess(); process->setProcessChannelMode(QProcess::MergedChannels); process->start(command, args); if (!process->waitForStarted()) { qDebug() << "start failed:" << process->errorString(); } else { qDebug() << "start success:"; } this->hide(); isShow = false; } /* * Cancel settings */ void UkuiMediaSetHeadsetWidget::cancelButtonClickedSlot() { this->hide(); isShow = false; } int UkuiMediaSetHeadsetWidget::cset(char * name, char *card, char *c, int roflag, int keep_handle) { int err; static snd_ctl_t *handle = NULL; snd_ctl_elem_info_t *info; snd_ctl_elem_id_t *id; snd_ctl_elem_value_t *control; snd_ctl_elem_info_alloca(&info); snd_ctl_elem_id_alloca(&id); snd_ctl_elem_value_alloca(&control); printf("name[%s]card[%s]c[%s]", name, card, c); if (snd_ctl_ascii_elem_id_parse(id, name)) { printf("Wrong control identifier: %\n", name); return -1; } if (handle == NULL && (err = snd_ctl_open(&handle, card, 0)) < 0) { printf("Control %s open error: %s", card, snd_strerror(err)); return err; } snd_ctl_elem_info_set_id(info, id); if ((err = snd_ctl_elem_info(handle, info)) < 0) { //if (ignore_error) //return 0; printf("Cannot find the given element from control %s", card); if (! keep_handle) { snd_ctl_close(handle); handle = NULL; } return err; } snd_ctl_elem_info_get_id(info, id); if (!roflag) { snd_ctl_elem_value_set_id(control, id); if ((err = snd_ctl_elem_read(handle, control)) < 0) { //if (ignore_error) //return 0; printf("Cannot read the given element from control %s", card); if (! keep_handle) { snd_ctl_close(handle); handle = NULL; } return err; } err = snd_ctl_ascii_value_parse(handle, control, info, c); if (err < 0) { //if (!ignore_error) //error("Control %s parse error: %s\n", card, snd_strerror(err)); if (!keep_handle) { snd_ctl_close(handle); handle = NULL; } //return ignore_error ? 0 : err; return err; } if ((err = snd_ctl_elem_write(handle, control)) < 0) { //if (!ignore_error) //error("Control %s element write error: %s\n", card, snd_strerror(err)); if (!keep_handle) { snd_ctl_close(handle); handle = NULL; } //return ignore_error ? 0 : err; return err; } } if (! keep_handle) { snd_ctl_close(handle); handle = NULL; } snd_hctl_t *hctl; snd_hctl_elem_t *elem; if ((err = snd_hctl_open(&hctl, card, 0)) < 0) { printf("Control %s open error: %s", card, snd_strerror(err)); return err; } if ((err = snd_hctl_load(hctl)) < 0) { printf("Control %s load error: %s", card, snd_strerror(err)); return err; } elem = snd_hctl_find_elem(hctl, id); if (elem) showControl(" ", elem, LEVEL_BASIC | LEVEL_ID); else printf("Could not find the specified element"); snd_hctl_close(hctl); return 0; } void UkuiMediaSetHeadsetWidget::showControlId(snd_ctl_elem_id_t *id) { char *str; str = snd_ctl_ascii_elem_id_get(id); if (str) printf("%s", str); free(str); } int UkuiMediaSetHeadsetWidget::showControl(const char *space, snd_hctl_elem_t *elem, int level) { int err; unsigned int item, idx, count, *tlv; snd_ctl_elem_type_t type; snd_ctl_elem_id_t *id; snd_ctl_elem_info_t *info; snd_ctl_elem_value_t *control; snd_aes_iec958_t iec958; snd_ctl_elem_id_alloca(&id); snd_ctl_elem_info_alloca(&info); snd_ctl_elem_value_alloca(&control); if ((err = snd_hctl_elem_info(elem, info)) < 0) { printf("Control hw snd_hctl_elem_info error: %s\n", snd_strerror(err)); return err; } if (level & LEVEL_ID) { snd_hctl_elem_get_id(elem, id); showControlId(id); printf("\n"); } count = snd_ctl_elem_info_get_count(info); type = snd_ctl_elem_info_get_type(info); switch (type) { case SND_CTL_ELEM_TYPE_INTEGER: printf(",min=%li,max=%li,step=%li \n", snd_ctl_elem_info_get_min(info), snd_ctl_elem_info_get_max(info), snd_ctl_elem_info_get_step(info)); break; case SND_CTL_ELEM_TYPE_INTEGER64: printf(",min=%lli,max=%lli,step=%lli \n", snd_ctl_elem_info_get_min64(info), snd_ctl_elem_info_get_max64(info), snd_ctl_elem_info_get_step64(info)); break; case SND_CTL_ELEM_TYPE_ENUMERATED: { unsigned int items = snd_ctl_elem_info_get_items(info); printf(",items=%u\n", items); for (item = 0; item < items; item++) { snd_ctl_elem_info_set_item(info, item); if ((err = snd_hctl_elem_info(elem, info)) < 0) { printf("Control hw element info error: %s\n", snd_strerror(err)); return err; } printf("%s; Item #%u '%s' \n", space, item, snd_ctl_elem_info_get_item_name(info)); } break; } default: printf("\n"); break; } if (level & LEVEL_BASIC) { if (!snd_ctl_elem_info_is_readable(info)) goto __skip_read; if ((err = snd_hctl_elem_read(elem, control)) < 0) { printf("Control hw:0 element read error: %s\n", snd_strerror(err)); return err; } for (idx = 0; idx < count; idx++) { if (idx > 0) printf(",\n"); switch (type) { case SND_CTL_ELEM_TYPE_BOOLEAN: printf("%s \n", snd_ctl_elem_value_get_boolean(control, idx) ? "on" : "off"); break; case SND_CTL_ELEM_TYPE_INTEGER: printf("%li \n", snd_ctl_elem_value_get_integer(control, idx)); break; case SND_CTL_ELEM_TYPE_INTEGER64: printf("%lli \n", snd_ctl_elem_value_get_integer64(control, idx)); break; case SND_CTL_ELEM_TYPE_ENUMERATED: printf("%u \n", snd_ctl_elem_value_get_enumerated(control, idx)); break; case SND_CTL_ELEM_TYPE_BYTES: printf("0x%02x \n", snd_ctl_elem_value_get_byte(control, idx)); break; case SND_CTL_ELEM_TYPE_IEC958: snd_ctl_elem_value_get_iec958(control, &iec958); printf("[AES0=0x%02x AES1=0x%02x AES2=0x%02x AES3=0x%02x] \n", iec958.status[0], iec958.status[1], iec958.status[2], iec958.status[3]); break; default: printf("? \n"); break; } } __skip_read: if (!snd_ctl_elem_info_is_tlv_readable(info)) goto __skip_tlv; /* skip ASoC ext bytes controls that may have huge binary TLV data */ if (type == SND_CTL_ELEM_TYPE_BYTES && !snd_ctl_elem_info_is_readable(info) && !snd_ctl_elem_info_is_writable(info)) { printf("%s; ASoC TLV Byte control, skipping bytes dump \n", space); goto __skip_tlv; } tlv = (unsigned int *)malloc(4096); if ((err = snd_hctl_elem_tlv_read(elem, tlv, 4096)) < 0) { printf("Control hw:0 element TLV read error: %s \n", snd_strerror(err)); free(tlv); return err; } //decode_tlv(strlen(space), tlv, 4096); free(tlv); } __skip_tlv: return 0; } void UkuiMediaSetHeadsetWidget::showWindow() { #define MARGIN 4 QDBusInterface iface("org.ukui.panel", "/panel/position", "org.ukui.panel", QDBusConnection::sessionBus()); QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); QVariantList position_list=reply.value(); /* * 通过这个dbus接口获取到的6个参数分别为 :可用屏幕大小的x坐标、y坐标、宽度、高度,任务栏位置 */ this->setGeometry((position_list.at(0).toInt()+position_list.at(2).toInt()-this->width())/2, (position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height())/2, this->width(),this->height()); isShow = true; this->show(); } UkuiMediaSetHeadsetWidget::~UkuiMediaSetHeadsetWidget() { } UkmediaHeadsetButtonWidget::UkmediaHeadsetButtonWidget(QString icon, QString text) { iconLabel = new QLabel; textLabel = new QLabel(text); this->setFixedSize(96,96); iconLabel->setFixedSize(32,32); textLabel->setFixedHeight(20); QVBoxLayout *vLayout = new QVBoxLayout(); vLayout->addWidget(iconLabel); vLayout->addWidget(textLabel); vLayout->setSpacing(7); vLayout->setContentsMargins(0,20,0,20); this->setLayout(vLayout); iconLabel->setPixmap(QIcon::fromTheme(icon).pixmap(32,32)); } UkmediaHeadsetButtonWidget::~UkmediaHeadsetButtonWidget() { } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.h0000644000175000017500000000512214565521701026401 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include "customstyle.h" //设置声卡的key controls #define LEVEL_BASIC (1<<0) #define LEVEL_ID (1<<2) #define HW_CARD "hw:0" class UkmediaHeadsetButtonWidget : public QWidget { Q_OBJECT public: UkmediaHeadsetButtonWidget(QString icon,QString text); ~UkmediaHeadsetButtonWidget(); private: QLabel *iconLabel; QLabel *textLabel; }; class UkuiMediaSetHeadsetWidget : public QWidget { Q_OBJECT public: UkuiMediaSetHeadsetWidget(QWidget *parent = nullptr); ~UkuiMediaSetHeadsetWidget(); void initSetHeadsetWidget(); int cset(char * name, char *card, char *c, int roflag, int keep_handle); void showControlId(snd_ctl_elem_id_t *id); int showControl(const char *space, snd_hctl_elem_t *elem,int level); void showWindow(); friend class DeviceSwitchWidget; friend class UkmediaMainWidget; private: QToolButton *headphoneIconButton; QToolButton *headsetIconButton; QToolButton *microphoneIconButton; QLabel *headphoneLabel; QLabel *headsetLabel; QLabel *microphoneLabel; QLabel *selectSoundDeviceLabel; QPushButton *soundSettingButton; QPushButton *cancelButton; bool isShow = false; private Q_SLOTS: void headphoneButtonClickedSlot(); //点击headphone按钮 void headsetButtonClickedSlot(); //点击headset 按钮 void microphoneButtonClickedSlot(); //点击microphone 按钮 void soundSettingButtonClickedSlot(); //点击声音设置按钮 void cancelButtonClickedSlot(); //点击取消按钮 protected: void paintEvent(QPaintEvent *event); }; #endif // UKUIMEDIASETHEADSETWIDGET_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/res.qrc0000644000175000017500000000033514565521701021502 0ustar fengfeng data/img/setting.svg data/img/tick.png data/img/tick.svg data/qss/ukuimedia.qss ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.h0000644000175000017500000000257214565521701026464 0ustar fengfeng/* * Copyright 2020. kylinos.cn. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include #include #include class UkmediaMonitorWindowThread : public QThread { public: UkmediaMonitorWindowThread(); void get_window_nameAndid(); //结束线程标志位 bool bStopThread; bool bCreateWindow; bool bFirstEnterSystem; QVector windowId; void run(); }; #endif // UKMEDIAMONITORWINDOWTHREAD_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/translations/0000755000175000017500000000000014565521701022722 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/translations/bo_CN.qm0000644000175000017500000002403314565521701024243 0ustar fengfeng ApplicationVolumeWidget Application Volume བཀོལ་སྤྱོད་བྱེད་ཚད། System Volume མ་ལག་གི་བོངས་ཚད། Sound Settings སྒྲའི་སྒྲིག་བཀོད། DeviceSwitchWidget Go Into Mini Mode 进入Mini模式 Output volume control 输出音量控制 Mute 静音 Sound preference(S) 声音首选项 Device Volume 设备音量 Application Volume 应用音量 is using 正在使用 Bluetooth 蓝牙 Error 错误 Unable to connect to the sound system, please check whether the pulseaudio service is running! 无法连接到系统声音,请检查pulseaudio服务是否正在运行! Dummy output 伪输出 Speaker (Realtek Audio) 扬声器(Realtek Audio) Headphone 模拟耳机 QObject pa_context_subscribe() failed pa_context_subscribe()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_card_info_list() failed pa_context_get_card_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_sink_info_list() failed pa_context_get_sink_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_source_info_list() failed pa_context_get_source_info_list()ཕམ་ཁ་བྱུང་བ་རེད། Failed to initialize stream_restore extension: %s stream_restore་རིང་དུ་གཏོང་བའི་ཐོག་མའི་དུས་ཚོད་ལ་སླེབས་མ་ཐུབ་པ། %s pa_ext_stream_restore_read() failed pa_ext_stream_restore_read()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_sink_info_by_index() failed pa_context_get_sink_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_source_info_by_index() failed pa_context_get_source_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_card_info_by_index() failed pa_context_get_card_info_by_index()ཕམ་ཉེས་བྱུང་བ། Card callback failure བྱང་བུ་ཕྱིར་སློག་བྱེད་མ་ཐུབ་པ། Sink callback failure ཕྱིར་ལྡོག་བྱེད་པར་ཕམ་ཉེས་བྱུང་བ། Source callback failure འབྱུང་ཁུངས་ཕྱིར་ལྡོག་བྱེད་མ་ཐུབ་པ། Fatal Error: Unable to connect to PulseAudio སྲོག་ལ་ཐུག་པའི་ནོར་འཁྲུལ། ཕུའུ་ལུའུ་ཧྲི་ཨོ་ཏོ་དང་འབྲེལ་མཐུད་བྱེད་ཐབས་བྲལ། pa_context_get_server_info() failed pa_context_get_server_info()ཕམ་ཉེས་བྱུང་བ། Sink input callback failure མ་དངུལ་འཇོག་པའི་ཕྱིར་ལྡོག་ལ་ཕམ་ཉེས་བྱུང Source output callback failure འབྱུང་ཁུངས་ཕྱིར་ལྡོག་བྱེད་པར་ཕམ་ཉེས་བྱུང་བ། Client callback failure མངགས་བཅོལ་བྱེད་མཁན་གྱིས་ཕྱིར་སློག་ Server info callback failure ཞབས་ཞུའི་ཡོ་བྱད་ཀྱི་ཆ་འཕྲིན་ཕྱིར་ལྡོག་བྱེད་མ་ཐུབ Failed to initialize device restore extension: %s 设备恢复扩展%s pa_ext_device_restore_read_sink_formats() failed pa_ext_device_restore_read_sink_formats()ཕམ་ཉེས་བྱུང་བ། Failed to initialize device manager extension: %s སྒྲིག་ཆས་དོ་དམ་གྱི་དུས་འགྱངས་ལ་ཐོག་མའི་དུས་འགྱངས་བྱེད་མ་ཐུབ་པ། %s pa_ext_device_manager_read() failed pa_ext_device_manager_read()ཕམ་ཉེས་བྱུང་བ། pa_context_get_sink_input_info() failed pa_context_get_sink_input_info()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_client_info() failed pa_context_get_client_info()ཕམ་ཉེས་བྱུང་བ། pa_context_client_info_list() failed pa_context_client_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_sink_input_info_list() failed pa_context_get_sink_input_info_list()ཕམ་ཉེས་བྱུང་བ། pa_context_get_source_output_info_list() failed pa_context_get_source_output_info_list()ཕམ་ཁ་བྱུང་བ་རེད། Connection failed, attempting reconnect འབྲེལ་མཐུད་བྱེད་མ་ཐུབ་པར་ཡང་བསྐྱར་འབྲེལ་མཐུད་བྱེད་རྩིས་བྱས། moduleInfoCb callback failure moduleInfoCb ཕྱིར་ལྡོག་བྱེད་པར་ཕམ་ཉེས་བྱུང་བ། Ukui Media Volume Control ཝུའུ་ཁི་ལན་གྱི་སྨྱན་སྦྱོར་གྱི་བོངས་ pa_context_load_module() failed pa_context_load_module()ཕམ་ཉེས་བྱུང་བ། UkmediaDeviceWidget Input Device 输入设备 Microphone 麦克风 Output Device 输出设备 Speaker Realtek Audio 扬声器(Realtek Audio) Input device can not be detected 无法检测到输入设备 UkmediaMainWidget Output volume control ཐོན་ཚད་ཚོད་འཛིན་ Mute 静音 Sound preference(S) སྒྲ་གདངས་ཀྱི་དགའ་ཕྱོགས་ System Volume མ་ལག་གི་བོངས་ཚད། App Volume ཉེར་སྤྱོད་གྲངས་འབོར། Current volume: མིག་སྔའི་བོངས་ཚད་ནི། UkmediaMiniMasterVolumeWidget Speaker (Realtek Audio) 扬声器(Realtek Audio) Go Into Full Mode 进入完整模式 UkmediaSystemVolumeWidget Volume བོངས་ཚད། Output ཐོན་ཚད། Sound Settings སྒྲའི་སྒྲིག་བཀོད། UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_sink_volume_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_output_volume() failed pa_context_set_source_output_volume()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_output_mute() failed pa_context_set_source_output_mute()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_card_profile_by_index() failed pa_context_set_card_profile_by_index()ཕམ་ཉེས་བྱུང་བ། pa_context_set_default_sink() failed pa_context_set_default_sink()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_default_source() failed pa_context_set_default_source()ཕམ་ཉེས་བྱུང་བ། pa_context_set_sink_port_by_name() failed pa_context_set_sink_port_by_name()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_set_source_port_by_name() failed pa_context_set_source_port_by_name()ཕམ་ཉེས་བྱུང་བ། pa_context_kill_sink_input() failed pa_context_kill_sink_input()ཕམ་ཉེས་བྱུང་བ། (plugged in) (ནང་དུ་བཅུག་པ་)། (unavailable) (སྤྱོད་གོ་མི་ཆོད་པ)། (unplugged) (ཁ་ཐོར་ཡ་བྲལ་དུ་སོང་བ་)། Failed to read data from stream ཆུ་ཕྲན་ནས་གཞི་གྲངས་ཀློག་མ་ཐུབ་པ། Peak detect ཡང་རྩེར་ཞིབ་དཔྱད་ཚད་ལེན Failed to create monitoring stream ལྟ་ཞིབ་ཚད་ལེན་གྱི་ཆུ་ཕྲན་གསར་སྐྲུན་བྱེད་མ་ཐུབ་པ Failed to connect monitoring stream ལྟ་ཞིབ་ཚད་ལེན་གྱི་ཆུ་ཕྲན་སྦྲེལ་མཐུད་བྱེད་མ་ཐུབ་པ Ignoring sink-input due to it being designated as an event and thus handled by the Event widget དོན་རྐྱེན་ཞིག་ཏུ་བརྩིས་ནས་དོན་རྐྱེན་ཆུང་ཆུང་ཞིག་ཏུ་བརྩིས་ནས་ཐག་གཅོད་བྱས་པའི་རྐྱེན་གྱིས་ཆུ་ནང་དུ་འཛུལ་བར་སྣང་མེད་བྱས་པ་རེད། Establishing connection to PulseAudio. Please wait... ཕུའུ་ལུའུ་ཧྲི་ཨོ་ཏོ་དང་འབྲེལ་བ་བཙུགས་པ་རེད། སྐུ་མཁྱེན་སྒུག་རོགས།... pa_context_get_sink_info_by_name() failed pa_context_get_sink_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། pa_context_get_source_info_by_name() failed pa_context_get_source_info_by_index()ཕམ་ཁ་བྱུང་བ་རེད། UkuiMediaSetHeadsetWidget Sound Settings སྒྲའི་སྒྲིག་བཀོད། Cancel ཕྱིར་འཐེན། Select Sound Device སྒྲའི་སྒྲིག་ཆས་བདམས་པ། Headphone རྣ་ཉན། Headset རྣ་ཉན། Microphone སྐད་སྦུག ukui-media-3.1.1.2/ukui-volume-control-applet-qt/translations/tr.qm0000644000175000017500000000313314565521701023706 0ustar fengfeng ApplicationVolumeWidget Application Volume 应用 System Volume 系统音量 Sound Settings 声音设置 DeviceSwitchWidget Go Into Mini Mode 进入Mini模式 Output volume control 输出音量控制 Mute 静音 Sound preference(S) 声音首选项 Device Volume 设备音量 Application Volume 应用音量 is using 正在使用 Bluetooth 蓝牙 Error 错误 Unable to connect to the sound system, please check whether the pulseaudio service is running! 无法连接到系统声音,请检查pulseaudio服务是否正在运行! Dummy output 伪输出 Speaker (Realtek Audio) 扬声器(Realtek Audio) Headphone 模拟耳机 QObject pa_context_subscribe() failed pa_context_get_card_info_list() failed pa_context_get_sink_info_list() failed pa_context_get_source_info_list() failed Failed to initialize stream_restore extension: %s pa_ext_stream_restore_read() failed pa_context_get_sink_info_by_index() failed pa_context_get_source_info_by_index() failed pa_context_get_card_info_by_index() failed Card callback failure Sink callback failure Source callback failure Fatal Error: Unable to connect to PulseAudio pa_context_get_server_info() failed Sink input callback failure Source output callback failure Client callback failure Server info callback failure Failed to initialize device restore extension: %s pa_ext_device_restore_read_sink_formats() failed Failed to initialize device manager extension: %s pa_ext_device_manager_read() failed pa_context_get_sink_input_info() failed pa_context_get_client_info() failed pa_context_client_info_list() failed pa_context_get_sink_input_info_list() failed pa_context_get_source_output_info_list() failed Connection failed, attempting reconnect moduleInfoCb callback failure Ukui Media Volume Control pa_context_load_module() failed UkmediaDeviceWidget Input Device 输入设备 Microphone 麦克风 Output Device 输出设备 Speaker Realtek Audio 扬声器(Realtek Audio) Input device can not be detected 无法检测到输入设备 UkmediaMainWidget Output volume control 输出音量控制 Mute 静音 Sound preference(S) 设置声音项 System Volume 系统音量 App Volume 应用音量 Current volume: 当前音量: UkmediaMiniMasterVolumeWidget Speaker (Realtek Audio) 扬声器(Realtek Audio) Go Into Full Mode 进入完整模式 UkmediaSystemVolumeWidget Volume 音量 Output 输出 Sound Settings 声音设置 UkmediaVolumeControl pa_context_set_sink_volume_by_index() failed pa_context_set_source_output_volume() failed pa_context_set_source_output_mute() failed pa_context_set_card_profile_by_index() failed pa_context_set_default_sink() failed pa_context_set_default_source() failed pa_context_set_sink_port_by_name() failed pa_context_set_source_port_by_name() failed pa_context_kill_sink_input() failed (plugged in) (unavailable) (unplugged) Failed to read data from stream Peak detect Failed to create monitoring stream Failed to connect monitoring stream Ignoring sink-input due to it being designated as an event and thus handled by the Event widget Establishing connection to PulseAudio. Please wait... pa_context_get_sink_info_by_name() failed pa_context_get_source_info_by_name() failed UkuiMediaSetHeadsetWidget Sound Settings 声音设置 Cancel 取消 Select Sound Device 选择输出设备 Headphone 耳机 Headset 耳麦 Microphone 麦克风 ukui-media-3.1.1.2/ukui-volume-control-applet-qt/translations/tr.ts0000644000175000017500000001066714565521701023731 0ustar fengfeng ApplicationVolumeWidget Application Volume Uygulama Sesi System Volume Sistem Sesi DeviceSwitchWidget Go Into Mini Mode Mini Moda Geç Output volume control Çıkış ses kontrolü Mute Sessiz Sound preference(S) Ses tercihi Device Volume Aygıt Sesi Application Volume Uygulama Sesi Speaker (Realtek Audio) Hoparlör (Realtek Audio) Headphone Kulaklık UkmediaDeviceWidget Input Device Giriş Sesi Microphone Mikrofon Output Device Çıkış Sesi Speaker Realtek Audio Hoparlör Realtek Audio Input device can not be detected Giriş cihazı algılanamıyor UkmediaMiniMasterVolumeWidget Speaker (Realtek Audio) Hoparlör (Realtek Audio) Go Into Full Mode Tam Moda Geçin ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_main_widget.h0000644000175000017500000004102514565521701024342 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include "ukmedia_application_volume_widget.h" #include "ukmedia_osd_display_widget.h" #include "ukmedia_custom_sound.h" #include "ukui_media_set_headset_widget.h" #include "ukmedia_volume_control.h" #include "ukui_list_widget_item.h" #include "ukmedia_system_volume_widget.h" #include "windowmanager/windowmanager.h" #include "ukuistylehelper/ukuistylehelper.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "dbus-adaptor/dbus-adaptor.h" #include "dbus-adaptor/bluez-adaptor.h" extern "C" { #include #include #include #include } #include #include #define HAVE_EXT_DEVICE_RESTORE_API PA_CHECK_VERSION(0,99,0) #define UKUI_THEME_SETTING "org.ukui.style" #define UKUI_TRANSPARENCY_SETTING "org.ukui.control-center.personalise" #define UKUI_THEME_NAME "style-name" //主题名称 #define UKUI_THEME_WHITE "ukui-default" //默认主题 #define UKUI_THEME_BLACK "ukui-dark" //深色主题 #define PORT_NUM 5 //为平板模式提供设置音量值 #define UKUI_VOLUME_BRIGHTNESS_GSETTING_ID "org.ukui.quick-operation.panel" #define UKUI_VOLUME_KEY "volumesize" //音量大小 #define UKUI_VOLUME_STATE "soundstate" //音量状态 #define UKUI_GLOBALTHEME_SETTINGS "org.ukui.globaltheme.settings" #define GLOBAL_THEME_NAME "global-theme-name" #define KEY_SOUNDS_SCHEMA "org.ukui.sound" #define TIMER_TIMEOUT (2*1000) #define PA_VOLUME_NORMAL 65536.0 #define UKMEDIA_VOLUME_NORMAL 100.0 #define DBUS_NAME "org.ukui.SettingsDaemon" #define DBUS_PATH "/org/ukui/SettingsDaemon/wayland" #define DBUS_INTERFACE "org.ukui.SettingsDaemon.wayland" #define STARTUP_MUSIC "startup-music" #define DNS_NOISE_REDUCTION "dns-noise-reduction" #define LOOP_BACK "loopback" #define VOLUME_INCREASE "volume-increase" #define VOLUME_INCREASE_VALUE "volume-increase-value" #define MONO_AUDIO "mono-audio" #define SOUND_THEME_KEY "theme-name" //第一次运行时初始化音量 #define UKUI_AUDIO_SCHEMA "org.ukui.audio" //定制音量 #define FIRST_RUN "first-run" //是否第一次运行 #define HEADPHONE_OUTPUT_VOLUME "headphone-output-volume" #define PLUGIN_INIT_VOLUME "plugin-init-volume" #define INTEL_MIC "intel-mic" #define REAR_MIC "rear-mic" #define HEADSET_MIC "headset-mic" #define LINEIN "linein" #define SPEAKER "speaker" #define HDMI "hdmi" #define BLUEZ "bluez" #define HEADPHONE "headphone" #define HEADPHONES_1 "headphones-1" #define HEADPHONES_2 "headphones-2" #define HEADPHONE_VOLUME 11141 #define HDMI_VOLUME 65536 #define OUTPUT_VOLUME 43909 #define MIC_VOLUME 65536 const QByteArray TRANSPARENCY_GSETTINGS = "org.ukui.control-center.personalise"; static const gchar *iconNameOutputs[] = { "audio-volume-muted-symbolic", "audio-volume-low-symbolic", "audio-volume-medium-symbolic", "audio-volume-high-symbolic", NULL }; static const gchar *iconNameInputs[] = { "microphone-sensitivity-muted-symbolic", "microphone-sensitivity-low-symbolic", "microphone-sensitivity-medium-symbolic", "microphone-sensitivity-high-symbolic", NULL }; typedef struct { const pa_card_port_info *headphones; const pa_card_port_info *headsetmic; const pa_card_port_info *headphonemic; const pa_card_port_info *internalmic; const pa_card_port_info *internalspk; } headsetPorts; class QDBusServiceWatcher; class UkmediaMainWidget : public QMainWindow { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.ukui.media")//ukui-media的dbus接口 public: explicit UkmediaMainWidget(QMainWindow *parent = nullptr); ~UkmediaMainWidget(); enum SoundType { SINK, SOURCE, }; void UkmediaDbusRegister(); //注册Dbus信号 void initSystemTrayIcon(); //初始化系统托盘 void initWidget(); //初始化弹出框 void initVolumeLed();//初始化静音灯 void initGsettings(); //初始化gsetting void initStrings(); void initAlertSound(); void initSystemVolume(); //初始化系统音量 void myLine(QFrame *volumeLine,QFrame *volumeSettingLine);//添加分隔线 void dealSlot(); //处理槽函数 void systemTrayMenuInit(); //初始化右键菜单 void initOutputListWidgetItem();//初始化默认选择的输出设备 void initInputListWidgetItem();//初始化默认选择的输输入设备 QList listExistsPath(); //动态gseting列出存在的路径 QString findFreePath(); //动态gsetting找到下一个为空的路径 void addValue(QString name,QString filename); //动态gsetting添加键值 QPixmap drawLightColoredPixmap(const QPixmap &source); //绘制高亮颜色图标 QPixmap drawDarkColoredPixmap(const QPixmap &source); //绘制深色颜色图标 void themeChangeIcons(); //主题更改时更新图标颜色 void hideWindow(); //隐藏窗口 void inputVolumeDarkThemeImage(int value,bool status); //绘制input button颜色 void outputVolumeDarkThemeImage(int value,bool status); //绘制output button颜色 void drawImagColorFromTheme(UkuiButtonDrawSvg *button, QString iconStr); //绘制iamge颜色 void setVolumeSettingValue(int value); //设置volume gsetting的值 void setVolumeSettingMute(bool state); //设置volume gsetting的静音 int valueToPaVolume(int value); //滑动条值转换成音量 int paVolumeToValue(int value); //音量值转换成滑动条值 QString outputVolumeToIconStr(bool status,int volume); QString getAppName(QString desktopfp); //从desktop中获取应用名称 QString getAppIcon(QString desktopfp); //从desktop中获取应用图标 QString appNameToIconName(const gchar *appName,const gchar *appIconName); void initSubApplicationWidget(QString str); //子应用窗口布局 static gboolean verifyAlsaCard (int cardindex,gboolean *headsetmic,gboolean *headphonemic); static headsetPorts *getHeadsetPorts (const pa_card_info *c); void freePrivPortNames(); void setDeviceButtonState(int row); void addOutputListWidgetItem(QString portName, QString portLabel,QString cardName); //添加output listWidget item void addInputListWidgetItem(QString portName, QString cardName); //添加input listwidget item int findCardIndex(QString cardName, QMap cardMap);//查找声卡指定的索引 QString findCardName(int index,QMap cardMap); QString findHighPriorityProfile(int index,QString profile); QString findPortSink(int index,QString portName); QString findPortSource(int index,QString portName); bool outputPortIsNeedDelete(int index,QString name);//port是否需要在outputListWidget删除 bool outputPortIsNeedAdd(int index,QString name);//port是否需要在outputListWidget删除 bool inputPortIsNeedDelete(int index,QString name);//port是否需要在inputListWidget删除 bool inputPortIsNeedAdd(int index,QString name);//port是否需要在inputListWidget删除 int indexOfOutputPortInOutputListWidget(QString portName); int indexOfInputPortInInputListWidget(QString portName); void deleteNotAvailableOutputPort(); //删除不可用的输出端口 void addAvailableOutputPort(); //添加可用输出端口 void deleteNotAvailableInputPort(); //删除不可用的输入端口 void addAvailableInputPort(); //添加可用输入端口 QString findOutputPortName(int index,QString portLabel); //找到outputPortLabel对应的portName QString findInputPortName(int index,QString portLabel); //找到inputPortLabel对应的portName QString findOutputPortLabel(int index,QString portName); //查找名为portName对应的portLabel QString findInputPortLabel(int index,QString portName); //查找名为portName对应的portLabel void setCardProfile(QString name,QString profile); //设置声卡的配置文件 void setDefaultOutputPortDevice(QString devName,QString portName); //设置默认的输出端口 void setDefaultInputPortDevice(QString devName,QString portName); //设置默认的输入端口 QString findCardActiveProfile(int index); //查找声卡的active profile QString stringRemoveUnrecignizedChar(QString str);//移除xml文件中不能识别的字符 void findOutputListWidgetItem(QString cardName,QString portLabel); void findInputListWidgetItem(QString cardName,QString portLabel); QString blueCardName(); //记录蓝牙声卡名称 bool inputDeviceContainBluetooth(); QString findFile(const QString path,QString str); void inhibit(); void uninhibit(); void switchModuleEchoCancel(); //加载或卸载降噪模块 void switchModuleLoopBack(); void resetVolumeSliderRange(); //重新设置滑动条的范围 void switchMonoAudio(); void switchStartupPlayMusic(); //接收到开关按钮的gsetting信号 void monitorSessionStatus(); protected: bool eventFilter(QObject *obj, QEvent *event); void paintEvent(QPaintEvent *event); void keyPressEvent(QKeyEvent *event); Q_SIGNALS: void updateVolume(int value); void updateSourceVolume(int value); void updateMute(bool isMute); void updateSourceMute(bool isMute); public Q_SLOTS: QString getDefaultOutputDevice(); QString getDefaultInputDevice(); QStringList getAllOutputDevices(); QStringList getAllInputDevices(); int getDefaultOutputVolume(); int getDefaultInputVolume(); bool getDefaultOutputMuteState(); bool getDefaultInputMuteState(); bool setDefaultOutputVolume(int value); bool setDefaultInputVolume(int value); bool setDefaultOutputMuteState(bool mute); bool setDefaultInputMuteState(bool mute); bool setDefaultOutputDevice(QString deviceName); bool setDefaultInputDevice(QString deviceName); void advancedWidgetShow(); //显示advance widget private Q_SLOTS: void activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason reason); //托盘图标 void jumpControlPanelSlot(); //跳转到控制面板 void setHeadsetPort(QString str); //根据弹出框选择的切换不同的端口 void handleTimeout(); //超时播放提示音 void advancedSystemSliderChangedSlot(int value); //advancedSystemSlider值改变 void systemVolumeSliderChangedSlot(int value); void systemVolumeSliderChangedSlotInBlue(int value); //蓝牙模式下调节音量特殊处理 void systemVolumeButtonClickedSlot(); void mouseMeddleClickedTraySlot(); //鼠标中间贱点击托盘图标 void trayWheelRollEventSlot(bool step); //鼠标滚轮在托盘图标上滚动 void appWidgetMuteButtonCLickedSlot();//应用音量静音按钮点击 void ukuiThemeChangedSlot(const QString &themeStr); //主题改变 void soundThemeChangedSlot(const QString &soundThemeStr); void fontSizeChangedSlot(const QString &themeStr); //字体大小改变 void volumeSettingChangedSlot(const QString &key); //volume gseting值改变 void initVolumeSlider(); //初始化滑动条 void initDefaultSinkVolume();//初始化默认音量 void initDefaultSourceVolume(); void addAppToAppwidget(const gchar *name,const gchar *iconName,int index,int value,int channel); //添加应用 void removeSubAppWidget(const gchar *m_pAppName); //移除子应用窗口 void sinkInputVolumeChangedSlot(const gchar *name,const gchar *iconName,int value); //sinkInput音量更新 void soundSettingChanged(const QString &); //添加拔插headset提示 void checkAudioDeviceSelectionNeeded (const pa_card_info *info); void updateDevicePort(); void updateListWidgetItemSlot(); //更新输出设备列表 void outputListWidgetCurrentRowChangedSlot(int row); //output list widget选项改变 void inputListWidgetCurrentRowChangedSlot(int row); //output list widget选项改变 void updateAppVolume(QString str, int value, bool state); void deviceChangedShowSlot(QString dev_name);//osd提示弹窗 void onTransChanged(); void paintWithTrans(); void onPrepareForSleep(bool sleep); void getSessionActive(); //获取session的活跃状态 void batteryLevelChanged(QString dev_macAddr, int battery); void sendUpdateVolumeSignal(int soundType, int value); void sendUpdateMuteSignal(int soundType, bool isMute); void initBlueDeviceVolume(int index, QString name); private: QLabel *systemWidgetLabel; QLabel *appWidgetLabel; QHBoxLayout * m_tabBarLayout = nullptr; UkmediaVolumeControl *m_pVolumeControl; Bluetooth_Dbus *m_pBluetoothDbus; UkmediaSystemVolumeWidget *systemWidget; QTabWidget *m_pTabWidget; ApplicationVolumeWidget *appWidget; //应用界面窗口 UkmediaOsdDisplayWidget *osdWidget; UkuiMediaSetHeadsetWidget *headsetWidget; //当声卡中有headsetmic 端口时插入4段式耳机的弹窗 UkmediaOsdDisplayWidget *headset; //需求:输出设备插拔提示弹出 Divider *volumeLine; Divider *volumeSettingLine; MyTimer *timer; //定时器 QMenu *menu; //右键菜单 QGSettings *m_pSoundSettings; QGSettings *m_pStartUpSetting; QGSettings *m_pThemeSetting; //主题gsettting QGSettings *m_pTransparencySetting; //透明度gestting QGSettings *m_pVolumeSetting; // QGSettings *m_pFontSetting; //字体gsetting QGSettings *m_pInitSystemVolumeSetting; //初始化系统音量 QGSettings *m_pSoundThemeSetting; QGSettings * m_pTransGsettings; //透明度配置文件 double m_pTransparency=0.0; //透明度 UkmediaTrayIcon *soundSystemTrayIcon; //系统托盘 QAction *m_pSoundPreferenceAction; //声音首选项菜单项 QStringList *eventList; //提示声音类型列表 QStringList *eventIdNameList; //提示声音名称列表 QMap currentOutputPortLabelMap; QMap currentInputPortLabelMap; int headsetCard; //headset 声卡 gboolean hasHeadsetmic; //是否包含headset mic端口 gboolean hasHeadphonemic; //是否包含headphone mic端口 gboolean headsetPluggedIn; //headpset 是否插入 char *m_pHeadphonesName; //headphone名称 char *m_pHeadsetmicName; // char *m_pHeadphonemicName; char *m_pInternalspkName; char *m_pInternalmicName; QTimer *m_pTimer; QTimer *m_pTimer2; bool mouseReleaseState = false; //鼠标释放状态 bool mousePress = false; //鼠标按下状态 bool shortcutMute = false; bool firstEntry = true; bool inputFirstEntry = true; bool isFirstMuteLed = true; QProcess *m_process; QString mThemeName = UKUI_THEME_WHITE; bool firstEnterSystem = true; ca_context *caContext; bool firstLoad = true; bool isPlay = true; //用于避免运行托盘时第一次响起的提示音 bool sinkInputMute = false; bool isFirstRecive = true; bool kylinVideoMuteSignal = false; bool kylinVideoVolumeSignal = false; bool isAppMuteBtnPress = false; bool isLoadEchoCancel = false; int updateAppVolumeCount = 0; int outputListWidgetRow = -1; int sliderValueForBlue = 0; QString m_sessionControllerName; QString m_sessionPath; QString m_sessionControllerService ; QString m_sessionControllerPath; QString m_sessionControllerManagerInterface; QString m_sessionControllerSeatInterface ; QString m_sessionControllerSessionInterface ; QString m_sessionControllerActiveProperty ; QString m_sessionControllerPropertiesInterface; QDBusUnixFileDescriptor m_inhibitFileDescriptor; }; #endif // UKMEDIAMAINWIDGET_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.cpp0000644000175000017500000001244014565521701027241 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include "ukmedia_custom_class.h" MediaSliderTipLabel::MediaSliderTipLabel(){ setAttribute(Qt::WA_TranslucentBackground); } MediaSliderTipLabel::~MediaSliderTipLabel(){ } void MediaSliderTipLabel::paintEvent(QPaintEvent *e) { QStyleOptionFrame opt; initStyleOption(&opt); QStylePainter p(this); // p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x33))); p.setPen(Qt::NoPen); p.drawRoundedRect(this->rect(), 1, 1); QPainterPath path; path.addRoundedRect(opt.rect,6,6); p.setRenderHint(QPainter::Antialiasing); setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); QLabel::paintEvent(e); } SliderTipLabelHelper::SliderTipLabelHelper(QObject *parent) :QObject(parent) { m_pTiplabel = new MediaSliderTipLabel(); m_pTiplabel->setWindowFlags(Qt::ToolTip); m_pTiplabel->setFixedSize(52,30); m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); } void SliderTipLabelHelper::registerWidget(QWidget *w) { w->removeEventFilter(this); w->installEventFilter(this); } void SliderTipLabelHelper::unregisterWidget(QWidget *w) { w->removeEventFilter(this); } bool SliderTipLabelHelper::eventFilter(QObject *obj, QEvent *e) { auto slider = qobject_cast(obj); if (obj == slider) { switch (e->type()) { case QEvent::MouseMove: { QMouseEvent *event = static_cast(e); mouseMoveEvent(obj, event); return false; } case QEvent::MouseButtonRelease: { QMouseEvent *event = static_cast(e); mouseReleaseEvent(obj, event); return false; } case QEvent::MouseButtonPress:{ QMouseEvent *event = static_cast(e); mousePressedEvent(obj,event); } default: return false; } } return QObject::eventFilter(obj,e); } void SliderTipLabelHelper::mouseMoveEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(e); QRect rect; QStyleOptionSlider m_option; auto slider = qobject_cast(obj); // auto slider = qobject_cast(obj); slider->initStyleOption(&m_option); rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); QPoint gPos = slider->mapToGlobal(rect.topLeft()); QString percent; percent = QString::number(slider->value()); percent.append("%"); m_pTiplabel->setText(percent); m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); m_pTiplabel->show(); } void SliderTipLabelHelper::mouseReleaseEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(obj); Q_UNUSED(e); m_pTiplabel->hide(); } void SliderTipLabelHelper::mousePressedEvent(QObject *obj, QMouseEvent *e) { Q_UNUSED(e); QStyleOptionSlider m_option; auto slider = qobject_cast(obj); QRect rect; //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) double pos = e->pos().x() / (double)slider->width(); slider->setValue(pos *(slider->maximum() - slider->minimum()) + slider->minimum()); //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 QEvent evEvent(static_cast(QEvent::User + 1)); QCoreApplication::sendEvent(obj, &evEvent); int value = pos *(slider->maximum() - slider->minimum()) + slider->minimum(); slider->initStyleOption(&m_option); rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); QPoint gPos = slider->mapToGlobal(rect.topLeft()); QString percent; percent = QString::number(slider->value());//(m_option.sliderValue); percent.append("%"); m_pTiplabel->setText(percent); m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); m_pTiplabel->show(); } // AppEventFilter AppEventFilter::AppEventFilter() { } bool AppEventFilter::eventFilter(QObject *obj, QEvent *e) { Q_UNUSED(obj); Q_UNUSED(e); return false; } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.cpp0000644000175000017500000001377714565521701026701 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include UkmediaSystemVolumeWidget::UkmediaSystemVolumeWidget(QWidget *parent) : QWidget(parent) { connect(qApp, &QApplication::paletteChanged, this, &UkmediaSystemVolumeWidget::onPaletteChanged); m_pOutputListWidget = new QListWidget(this); m_pInputListWidget = new QListWidget(this); m_pSysSliderWidget = new QWidget(this); m_pOutputListWidget->setFixedSize(404,245); m_pOutputListWidget->setFrameShape(QFrame::Shape::NoFrame); QPalette pal = m_pOutputListWidget->palette(); pal.setBrush(QPalette::Base, QColor(0,0,0,0)); //背景透明 m_pOutputListWidget->setPalette(pal); m_pOutputListWidget->setProperty("needTranslucent", true); m_pOutputListWidget->setSelectionMode(QAbstractItemView:: NoSelection); QWidget *outputWidget = new QWidget(this); outputWidget->setFixedSize(412,245); QHBoxLayout *outputWidgetLayout = new QHBoxLayout; outputWidgetLayout->addWidget(m_pOutputListWidget); outputWidgetLayout->setSpacing(0); outputWidgetLayout->setContentsMargins(0,0,8,0); outputWidget->setLayout(outputWidgetLayout); m_pInputListWidget->hide(); m_pSysSliderWidget->setFixedSize(412,48); m_pSystemVolumeBtn = new QPushButton(m_pSysSliderWidget); m_pSystemVolumeBtn->setFixedSize(36,36); m_pSystemVolumeBtn->setCheckable(true); m_pSystemVolumeBtn->setProperty("isRoundButton",true); //圆形按钮 m_pSystemVolumeBtn->setProperty("useButtonPalette",true); //灰色按钮 m_pSystemVolumeBtn->setProperty("needTranslucent", true); //灰色半透明按钮 m_pSystemVolumeSlider = new UkmediaVolumeSlider(m_pSysSliderWidget); m_pSystemVolumeSlider->setOrientation(Qt::Horizontal); m_pSystemVolumeSlider->setFocusPolicy(Qt::StrongFocus); m_pSystemVolumeSlider->setProperty("needTranslucent", true); // Increase translucent effect m_pSystemVolumeSlider->setFixedSize(276,48); m_pSystemVolumeSlider->setRange(0,100); m_pSystemVolumeSliderLabel = new QLabel(m_pSysSliderWidget); m_pSystemVolumeSliderLabel->setText("0%"); m_pSystemVolumeSliderLabel->setFixedSize(52,48); //音量label布局 m_pSystemVolumeLabel = new QLabel(this); m_pSystemVolumeLabel->setText(tr("Volume")); m_pSystemVolumeLabel->setFixedSize(372,29);//防止字体显示不全 QWidget *systemVolumeLabelWidget = new QWidget(this); systemVolumeLabelWidget->setFixedSize(412,29); QHBoxLayout *systemVolumeLabelLayout = new QHBoxLayout; systemVolumeLabelLayout->addWidget(m_pSystemVolumeLabel); systemVolumeLabelWidget->setLayout(systemVolumeLabelLayout); systemVolumeLabelLayout->setContentsMargins(16,0,24,0); //输出label布局 m_pOutputLabel = new QLabel(this); m_pOutputLabel->setText(tr("Output")); m_pOutputLabel->setFixedSize(412,29); QWidget *outputLabelWidget = new QWidget(this); outputLabelWidget->setFixedSize(372,29); QHBoxLayout *outputLabelLayout = new QHBoxLayout; outputLabelLayout->addWidget(m_pOutputLabel); outputLabelWidget->setLayout(outputLabelLayout); outputLabelLayout->setContentsMargins(16,0,24,0); QPalette palette = m_pSystemVolumeLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); m_pSystemVolumeLabel->setPalette(palette); m_pOutputLabel->setPalette(palette); volumeSettingButton = new UkuiSettingButton(volumeSettingFrame); volumeSettingButton->setText(tr("Sound Settings")); volumeSettingButton->setCursor(Qt::PointingHandCursor); volumeSettingButton->setScaledContents(true); volumeSettingFrame = new QFrame(this); volumeSettingFrame->setFixedHeight(52); QHBoxLayout *volumeSettingLayout = new QHBoxLayout; volumeSettingLayout->addWidget(volumeSettingButton); volumeSettingLayout->addStretch(); volumeSettingFrame->setLayout(volumeSettingLayout); volumeSettingLayout->setContentsMargins(16,0,24,0); //系统音量滑动条布局 QHBoxLayout *sysVolumeLay = new QHBoxLayout(); sysVolumeLay->addWidget(m_pSystemVolumeBtn); sysVolumeLay->addSpacing(8); sysVolumeLay->addWidget(m_pSystemVolumeSlider); sysVolumeLay->addWidget(m_pSystemVolumeSliderLabel); sysVolumeLay->setSpacing(0); m_pSystemVolumeSliderLabel->setAlignment(Qt::AlignRight | Qt::AlignVCenter); m_pSysSliderWidget->setLayout(sysVolumeLay); sysVolumeLay->setContentsMargins(16,0,24,0); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(systemVolumeLabelWidget); mainLayout->addSpacing(3); mainLayout->addWidget(m_pSysSliderWidget); mainLayout->addSpacing(13); mainLayout->addWidget(outputLabelWidget); mainLayout->addSpacing(3); mainLayout->addWidget(outputWidget); mainLayout->addSpacing(2); mainLayout->addWidget(volumeSettingFrame); mainLayout->setSpacing(0); this->setLayout(mainLayout); mainLayout->setContentsMargins(8,12,0,0); this->setFixedSize(420,436); } void UkmediaSystemVolumeWidget::onPaletteChanged(){ QPalette palette = m_pSystemVolumeLabel->palette(); QColor color = palette.color(QPalette::PlaceholderText); palette.setColor(QPalette::WindowText,color); m_pSystemVolumeLabel->setPalette(palette); m_pOutputLabel->setPalette(palette); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukui_list_widget_item.h0000644000175000017500000000265014565521701024746 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include "ukmedia_custom_class.h" class UkuiListWidgetItem : public QWidget { Q_OBJECT public: UkuiListWidgetItem(QWidget *parent = 0); ~UkuiListWidgetItem(); void setLabelText(QString portText,QString deviceLabel); void setSelected(bool selected); void setButtonIcon(QString iconName); QLabel *deviceLabel; FixLabel *portLabel; QPushButton *deviceButton; private: QHBoxLayout *hLayout; protected: void mousePressEvent(QMouseEvent *event); }; #endif // UKUILISTWIDGETITEM_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/xatom/0000755000175000017500000000000014565521701021331 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/xatom/xatom-helper.cpp0000644000175000017500000001372614565521701024453 0ustar fengfeng/* * KWin Style UKUI * * Copyright (C) 2020, KylinSoft Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Yue Lan * */ #include "xatom-helper.h" #include #include #include #include static XAtomHelper *global_instance = nullptr; XAtomHelper *XAtomHelper::getInstance() { if(!global_instance) global_instance = new XAtomHelper; return global_instance; } bool XAtomHelper::isFrameLessWindow(int winId) { auto hints = getInstance()->getWindowMotifHint(winId); if(hints.flags == MWM_HINTS_DECORATIONS && hints.functions == 1) { return true; } return false; } bool XAtomHelper::isWindowDecorateBorderOnly(int winId) { return isWindowMotifHintDecorateBorderOnly(getInstance()->getWindowMotifHint(winId)); } bool XAtomHelper::isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint) { bool isDeco = false; if(hint.flags & MWM_HINTS_DECORATIONS && hint.flags != MWM_HINTS_DECORATIONS) { if(hint.decorations == MWM_DECOR_BORDER) isDeco = true; } return isDeco; } bool XAtomHelper::isUKUICsdSupported() { // fixme: return false; } bool XAtomHelper::isUKUIDecorationWindow(int winId) { if(m_ukuiDecorationAtion == None) return false; Atom type; int format; ulong nitems; ulong bytes_after; uchar *data; bool isUKUIDecoration = false; XGetWindowProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, 0, LONG_MAX, false, m_ukuiDecorationAtion, &type, &format, &nitems, &bytes_after, &data); if(type == m_ukuiDecorationAtion) { if(nitems == 1) { isUKUIDecoration = data[0]; } } return isUKUIDecoration; } UnityCorners XAtomHelper::getWindowBorderRadius(int winId) { UnityCorners corners; Atom type; int format; ulong nitems; ulong bytes_after; uchar *data; if(m_unityBorderRadiusAtom != None) { XGetWindowProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, 0, LONG_MAX, false, XA_CARDINAL, &type, &format, &nitems, &bytes_after, &data); if(type == XA_CARDINAL) { if(nitems == 4) { corners.topLeft = static_cast(data[0]); corners.topRight = static_cast(data[1 * sizeof(ulong)]); corners.bottomLeft = static_cast(data[2 * sizeof(ulong)]); corners.bottomRight = static_cast(data[3 * sizeof(ulong)]); } XFree(data); } } return corners; } void XAtomHelper::setWindowBorderRadius(int winId, const UnityCorners &data) { if(m_unityBorderRadiusAtom == None) return; ulong corners[4] = {data.topLeft, data.topRight, data.bottomLeft, data.bottomRight}; XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof(corners) / sizeof(corners[0])); } void XAtomHelper::setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight) { if(m_unityBorderRadiusAtom == None) return; ulong corners[4] = {(ulong)topLeft, (ulong)topRight, (ulong)bottomLeft, (ulong)bottomRight}; XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof(corners) / sizeof(corners[0])); } void XAtomHelper::setUKUIDecoraiontHint(int winId, bool set) { if(m_ukuiDecorationAtion == None) return; XChangeProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, m_ukuiDecorationAtion, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &set, 1); } void XAtomHelper::setWindowMotifHint(int winId, const MotifWmHints &hints) { if(m_unityBorderRadiusAtom == None) return; XChangeProperty(QX11Info::display(), winId, m_motifWMHintsAtom, m_motifWMHintsAtom, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *)&hints, sizeof(MotifWmHints) / sizeof(ulong)); } MotifWmHints XAtomHelper::getWindowMotifHint(int winId) { MotifWmHints hints; if(m_unityBorderRadiusAtom == None) return hints; uchar *data; Atom type; int format; ulong nitems; ulong bytes_after; XGetWindowProperty(QX11Info::display(), winId, m_motifWMHintsAtom, 0, sizeof(MotifWmHints) / sizeof(long), false, AnyPropertyType, &type, &format, &nitems, &bytes_after, &data); if(type == None) { return hints; } else { hints = *(MotifWmHints *)data; XFree(data); } return hints; } XAtomHelper::XAtomHelper(QObject *parent) : QObject(parent) { if(!QX11Info::isPlatformX11()) return; m_motifWMHintsAtom = XInternAtom(QX11Info::display(), "_MOTIF_WM_HINTS", true); m_unityBorderRadiusAtom = XInternAtom(QX11Info::display(), "_UNITY_GTK_BORDER_RADIUS", false); m_ukuiDecorationAtion = XInternAtom(QX11Info::display(), "_KWIN_UKUI_DECORAION", false); } Atom XAtomHelper::registerUKUICsdNetWmSupportAtom() { // fixme: return None; } void XAtomHelper::unregisterUKUICsdNetWmSupportAtom() { // fixme: } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/xatom/xatom-helper.h0000644000175000017500000000630514565521701024113 0ustar fengfeng/* * KWin Style UKUI * * Copyright (C) 2020, KylinSoft Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Yue Lan * */ #ifndef XATOMHELPER_H #define XATOMHELPER_H #include #include #include struct UnityCorners { ulong topLeft = 0; ulong topRight = 0; ulong bottomLeft = 0; ulong bottomRight = 0; }; typedef struct { ulong flags = 0; ulong functions = 0; ulong decorations = 0; long input_mode = 0; ulong status = 0; } MotifWmHints, MwmHints; #define MWM_HINTS_FUNCTIONS (1L << 0) #define MWM_HINTS_DECORATIONS (1L << 1) #define MWM_HINTS_INPUT_MODE (1L << 2) #define MWM_HINTS_STATUS (1L << 3) #define MWM_FUNC_ALL (1L << 0) #define MWM_FUNC_RESIZE (1L << 1) #define MWM_FUNC_MOVE (1L << 2) #define MWM_FUNC_MINIMIZE (1L << 3) #define MWM_FUNC_MAXIMIZE (1L << 4) #define MWM_FUNC_CLOSE (1L << 5) #define MWM_DECOR_ALL (1L << 0) #define MWM_DECOR_BORDER (1L << 1) #define MWM_DECOR_RESIZEH (1L << 2) #define MWM_DECOR_TITLE (1L << 3) #define MWM_DECOR_MENU (1L << 4) #define MWM_DECOR_MINIMIZE (1L << 5) #define MWM_DECOR_MAXIMIZE (1L << 6) #define MWM_INPUT_MODELESS 0 #define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1 #define MWM_INPUT_SYSTEM_MODAL 2 #define MWM_INPUT_FULL_APPLICATION_MODAL 3 #define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL #define MWM_TEAROFF_WINDOW (1L<<0) namespace UKUI { class Decoration; } class XAtomHelper : public QObject { // friend class UKUI::Decoration; Q_OBJECT public: static XAtomHelper *getInstance(); static bool isFrameLessWindow(int winId); static bool isWindowDecorateBorderOnly(int winId); static bool isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint); bool isUKUICsdSupported(); bool isUKUIDecorationWindow(int winId); UnityCorners getWindowBorderRadius(int winId); void setWindowBorderRadius(int winId, const UnityCorners &data); void setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight); void setUKUIDecoraiontHint(int winId, bool set = true); void setWindowMotifHint(int winId, const MotifWmHints &hints); MotifWmHints getWindowMotifHint(int winId); private: explicit XAtomHelper(QObject *parent = nullptr); Atom registerUKUICsdNetWmSupportAtom(); void unregisterUKUICsdNetWmSupportAtom(); Atom m_motifWMHintsAtom = None; Atom m_unityBorderRadiusAtom = None; Atom m_ukuiDecorationAtion = None; }; #endif // XATOMHELPER_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/xatom/xatom.pri0000644000175000017500000000015114565521701023172 0ustar fengfengINCLUDEPATH += $$PWD HEADERS += \ $$PWD/xatom-helper.h \ SOURCES += \ $$PWD/xatom-helper.cpp \ ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.h0000644000175000017500000000337714565521701026717 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include "ukmedia_custom_class.h" class MediaSliderTipLabel:public QLabel { public: MediaSliderTipLabel(); ~MediaSliderTipLabel(); protected: void paintEvent(QPaintEvent*); }; class SliderTipLabelHelper : public QObject { Q_OBJECT friend class AppEventFilter; public: SliderTipLabelHelper(QObject *parent = nullptr); ~SliderTipLabelHelper() {} void registerWidget(QWidget *w); void unregisterWidget(QWidget *w); bool eventFilter(QObject *obj, QEvent *e); void mouseMoveEvent(QObject *obj, QMouseEvent *e); void mouseReleaseEvent(QObject *obj, QMouseEvent *e); void mousePressedEvent(QObject *obj,QMouseEvent *e); private: MediaSliderTipLabel *m_pTiplabel; }; class AppEventFilter { friend class SliderTipLabelHelper; private: explicit AppEventFilter(); ~AppEventFilter() {} bool eventFilter(QObject *obj, QEvent *e); SliderTipLabelHelper *m_wm = nullptr; }; #endif // SLIDERTIPLABELHELPER_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/config.h0000644000175000017500000000220714565521701021620 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include "ukmedia_custom_class.h" class UkmediaSystemVolumeWidget : public QWidget { Q_OBJECT public: explicit UkmediaSystemVolumeWidget(QWidget *parent = nullptr); friend class UkmediaMainWidget; Q_SIGNALS: private: QListWidget *m_pInputListWidget; QListWidget *m_pOutputListWidget; QLabel *m_pOutputLabel; QWidget *m_pSysSliderWidget; QLabel *m_pSystemVolumeLabel; UkmediaVolumeSlider *m_pSystemVolumeSlider; QLabel *m_pSystemVolumeSliderLabel; QFrame *volumeSettingFrame; UkuiSettingButton *volumeSettingButton; QPushButton *m_pSystemVolumeBtn; public Q_SLOTS: void onPaletteChanged(); }; #endif // UKMEDIASYSTEMVOLUMEWIDGET_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.h0000644000175000017500000000411414565521701027306 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include "ukmedia_custom_class.h" class ApplicationVolumeWidget : public QWidget { Q_OBJECT public: ApplicationVolumeWidget(QWidget *parent = nullptr); ~ApplicationVolumeWidget(); void fullushBlueRecordStream(); void deleteBlueRecordStream(); friend class DeviceSwitchWidget; friend class UkmediaMainWidget; private: QLabel *applicationLabel; QLabel *systemVolumeLabel; QPushButton *systemVolumeBtn; UkmediaVolumeSlider *systemVolumeSlider; QLabel *systemVolumeDisplayLabel; QWidget *systemVolumeSliderWidget; QWidget *displayAppVolumeWidget; QStringList *app_volume_list; QLabel *appVolumeLabel; QPushButton *appMuteBtn; QPushButton *appIconBtn; QSlider *appSlider; QScrollArea *appArea; QVBoxLayout *m_pVlayout; QFrame * volumeSettingFrame; UkuiSettingButton *volumeSettingButton; QFile outputFile; // class member. QAudioInput* audio; // class member. QAudioOutput *outAudio; bool isRecording = false; protected: // void paintEvent(QPaintEvent *event); public Q_SLOTS: void onPaletteChanged(); }; #endif // APPLICATIONVOLUMEWIDGET_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp0000644000175000017500000042517314567025031024704 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MAINWINDOW_WIDTH 420 #define MAINWINDOW_HEIGHT 476 #define WIDGET_RADIUS 12 #define CONTENTS_MARGINS_WIDTH 0,0,0,0 #define VOLUMELINE_POS 0,140 #define SETTINGLINE_POS 0,424 #define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" #define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" #define KEY_SOUNDS_SCHEMA "org.ukui.sound" #define UKUI_SWITCH_SETTING "org.ukui.session" #define UKUI_STARTUP_MUSIC_KEY "startup-music" #define EVENT_SOUNDS_KEY "event-sounds" #define MAX_CUSTOM_SHORTCUTS 1000 #define FILENAME_KEY "filename" #define NAME_KEY "name" double transparency = 0.8; typedef enum { DEVICE_VOLUME_BUTTON, APP_VOLUME_BUTTON }ButtonType; ButtonType btnType = DEVICE_VOLUME_BUTTON; guint appnum = 0; int app_count = 0; extern bool isCheckBluetoothInput; extern DisplayerMode displayMode ; QString application_name; UkmediaMainWidget::UkmediaMainWidget(QMainWindow *parent) : QMainWindow(parent) { //初始化系统托盘 m_pVolumeControl = new UkmediaVolumeControl(); //初始化gsetting initGsettings(); initStrings(); //初始化界面 initWidget(); //初始化托盘图标 initSystemTrayIcon(); //Dbus注册 UkmediaDbusRegister(); initAlertSound(); //处理槽函数 dealSlot(); } bool UkmediaMainWidget::eventFilter(QObject *obj, QEvent *event) { if (event->type() == QEvent::ActivationChange) { if(QApplication::activeWindow() != this) { this->hide(); } } return QWidget::eventFilter(obj,event); } void UkmediaMainWidget::paintEvent(QPaintEvent *event) { } void UkmediaMainWidget::initSystemTrayIcon() { soundSystemTrayIcon = new UkmediaTrayIcon(this); ca_context_create(&caContext); //为系统托盘图标添加菜单静音和声音首选项 soundSystemTrayIcon->setToolTip(tr("Output volume control")); #if (QT_VERSION <= QT_VERSION_CHECK(5,6,1)) m_pSoundPreferenceAction = new QAction(tr("Sound preference(S)"),this); #elif (QT_VERSION > QT_VERSION_CHECK(5,6,1)) m_pSoundPreferenceAction = new QAction(tr("Sound preference(S)")); #endif QString settingsIconStr = "document-page-setup-symbolic"; QIcon settingsIcon = QIcon::fromTheme(settingsIconStr); m_pSoundPreferenceAction->setIcon(settingsIcon); soundSystemTrayIcon->setVisible(true); int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); bool outputStatus = m_pVolumeControl->getSinkMute(); outputVolumeDarkThemeImage(nOutputValue,outputStatus); //初始化右键菜单 systemTrayMenuInit(); } /* * 初始化右键菜单 */ void UkmediaMainWidget::systemTrayMenuInit() { menu = new QMenu(); menu->setAttribute(Qt::WA_NoMouseReplay); soundSystemTrayIcon->setContextMenu(menu); //设置右键菜单 menu->addAction(m_pSoundPreferenceAction); } /* * 初始化界面 */ void UkmediaMainWidget::initWidget() { QWidget::installEventFilter(this);//为这个窗口安装过滤器 this->setFixedSize(MAINWINDOW_WIDTH,MAINWINDOW_HEIGHT); this->setAttribute(Qt::WA_TranslucentBackground,true); //透明 this->setMouseTracking(true); this->setFocusPolicy(Qt::NoFocus); QString platform = QGuiApplication::platformName(); if(!platform.startsWith(QLatin1String("wayland"),Qt::CaseInsensitive)){ QPainterPath path; auto rect = this->rect(); path.addRoundedRect(rect, WIDGET_RADIUS, WIDGET_RADIUS); KWindowEffects::enableBlurBehind(this->winId(), true, QRegion(path.toFillPolygon().toPolygon())); // 背景模糊 } osdWidget = new UkmediaOsdDisplayWidget(); headsetWidget = new UkuiMediaSetHeadsetWidget; // osd弹窗 m_pTabWidget = new QTabWidget(this); m_pTabWidget->setFocusPolicy(Qt::StrongFocus); this->setCentralWidget(m_pTabWidget); m_pTabWidget->tabBar()->setFixedWidth(this->width()+1); systemWidget = new UkmediaSystemVolumeWidget(m_pTabWidget); appWidget = new ApplicationVolumeWidget(m_pTabWidget); volumeLine = new Divider(this); volumeSettingLine = new Divider(this); volumeLine->move(VOLUMELINE_POS); volumeSettingLine->move(SETTINGLINE_POS); m_pTabWidget->addTab(systemWidget, tr("")); m_pTabWidget->addTab(appWidget,tr("")); m_tabBarLayout = new QHBoxLayout(this); m_tabBarLayout->setContentsMargins(CONTENTS_MARGINS_WIDTH); systemWidgetLabel = new QLabel(tr("System Volume")); systemWidgetLabel->setAlignment(Qt::AlignCenter); appWidgetLabel = new QLabel(tr("App Volume")); appWidgetLabel->setAlignment(Qt::AlignCenter); m_tabBarLayout->addWidget(systemWidgetLabel); m_tabBarLayout->addWidget(appWidgetLabel); m_pTabWidget->tabBar()->setLayout(m_tabBarLayout); m_pTabWidget->tabBar()->setProperty("setRadius", WIDGET_RADIUS); // tabbar界面内圆角 m_pTabWidget->tabBar()->setProperty("useTabbarSeparateLine",false); // 去掉标签页中间的分隔线 m_pTabWidget->setAttribute(Qt::WA_TranslucentBackground,true); // 背景透明 解决切换黑屏问题 paintWithTrans(); } void UkmediaMainWidget::onTransChanged() { m_pTransparency = m_pTransGsettings->get("transparency").toDouble() + 0.15; m_pTransparency = (m_pTransparency > 1) ? 1 : m_pTransparency; paintWithTrans(); } void UkmediaMainWidget::paintWithTrans() { QPalette pal = m_pTabWidget->palette(); QColor color = qApp->palette().base().color(); color.setAlphaF(m_pTransparency); pal.setColor(QPalette::Base, color); m_pTabWidget->setPalette(pal); QPalette tabPal = m_pTabWidget->tabBar()->palette(); tabPal.setColor(QPalette::Base, color); QColor inactiveColor = qApp->palette().window().color(); inactiveColor.setAlphaF(0.86 *m_pTransparency); tabPal.setColor(QPalette::Window, inactiveColor); m_pTabWidget->tabBar()->setPalette(tabPal); } /* * 添加分隔线 */ void UkmediaMainWidget::myLine(QFrame *volumeLine,QFrame *volumeSettingLine) { volumeLine = new QFrame(this); volumeLine->setFrameShape(QFrame::NoFrame); volumeLine->setFrameStyle(QFrame::HLine); volumeLine->setFixedSize(420,1); volumeLine->setParent(this); QPalette palette = volumeLine->palette(); QColor color = QColor(239,239,239); color.setAlphaF(0.1); palette.setColor(QPalette::WindowText, color); volumeLine->setPalette(palette); volumeSettingLine = new QFrame(this); volumeSettingLine->setFrameShape(QFrame::NoFrame); volumeSettingLine->setFrameStyle(QFrame::HLine); volumeSettingLine->setFixedSize(420,1); volumeSettingLine->setParent(this); palette = volumeSettingLine->palette(); palette.setColor(QPalette::WindowText, color); volumeSettingLine->setPalette(palette); volumeLine->move(0,140); volumeSettingLine->move(0,424); } /* * 初始化静音灯 */ void UkmediaMainWidget::initVolumeLed() { bool outputStatus = m_pVolumeControl->getSinkMute();//获取输出设备的静音状态 if(outputStatus) { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); message << "mute"; QDBusConnection::systemBus().send(message); } else { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); message << "no"; QDBusConnection::systemBus().send(message); } themeChangeIcons(); } /* * 注册dbus */ void UkmediaMainWidget::UkmediaDbusRegister() { QDBusConnection::sessionBus().unregisterService("org.ukui.media"); MediaAdaptor(this); QDBusConnection con=QDBusConnection::sessionBus(); if (!con.registerService("org.ukui.media")) qDebug() << "registerService failed" << con.lastError().message(); if (!con.registerObject("/org/ukui/media", this, QDBusConnection::ExportAllSlots| QDBusConnection::ExportAllSignals)) qDebug() << "registerObject failed" << con.lastError().message(); m_pBluetoothDbus = new Bluetooth_Dbus(); } /** * @brief UkmediaMainWidget::initVolumeSlider * 初始化音量滑动条和输出设备列表 **/ void UkmediaMainWidget::initVolumeSlider() { resetVolumeSliderRange(); int sinkVolume = paVolumeToValue(m_pVolumeControl->getSinkVolume()); QString percent; percent = QString::number(sinkVolume); appWidget->systemVolumeDisplayLabel->setText(percent+"%"); systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); appWidget->systemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->setValue(sinkVolume); appWidget->systemVolumeSlider->setValue(sinkVolume); systemWidget->m_pSystemVolumeSlider->blockSignals(false); appWidget->systemVolumeSlider->blockSignals(false); initOutputListWidgetItem(); initInputListWidgetItem(); themeChangeIcons(); } /* * 初始化默认音量 */ void UkmediaMainWidget::initDefaultSinkVolume() { qDebug() << "initDefaultSinkVolume----" << m_pVolumeControl->sinkIndex << m_pVolumeControl->sinkPortName; int volume; QString temp = ""; QString outputCardName = findCardName(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->cardMap); if (m_pVolumeControl->sinkPortName.contains("histen-algo",Qt::CaseInsensitive)) { m_pVolumeControl->sinkPortName = m_pVolumeControl->findSinkActivePortName(PANGUW_SINK); temp = "histen-algo"; } if(m_pVolumeControl->sinkPortName != "" && !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->sinkPortName))) { if (m_pVolumeControl->sinkPortName.contains(HEADPHONE,Qt::CaseInsensitive)) { volume = HEADPHONE_VOLUME; } else if (m_pVolumeControl->sinkPortName.contains(HDMI,Qt::CaseInsensitive)) { volume = HDMI_VOLUME; } else if (m_pVolumeControl->sinkPortName.contains(SPEAKER,Qt::CaseInsensitive)){ volume = OUTPUT_VOLUME; } else { volume = OUTPUT_VOLUME; } if(outputCardName.contains(BLUEZ,Qt::CaseInsensitive)) volume = OUTPUT_VOLUME; m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); m_pVolumeControl->setSinkMute(false); m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sinkPortName,false); qDebug() << "初始化输出音量为:" << volume ; if (temp != "") m_pVolumeControl->sinkPortName = temp; } else if(m_pVolumeControl->sinkPortName == "" && !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->defaultSinkName))) { volume = OUTPUT_VOLUME; m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); m_pVolumeControl->setSinkMute(false); m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSinkName,false); qDebug()<< "初始化音量SinkPortName不存在的情况" << volume; } } void UkmediaMainWidget::initDefaultSourceVolume() { qDebug() << "initDefaultSourceVolume-----" << m_pVolumeControl->sourceIndex << m_pVolumeControl->sourcePortName; if(m_pVolumeControl->sourcePortName == "" && !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->defaultSourceName))) { m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSourceName,false); m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME); m_pVolumeControl->setSourceMute(false); qDebug()<< "初始化音量SourcePortName不存在的情况" <defaultSourceName ; } else if(m_pVolumeControl->sourcePortName != "" && !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->sourcePortName))) { if(m_pVolumeControl->sourcePortName.contains("hda")) { QString str = "hda-"; QString preSourcePortName = m_pVolumeControl->sourcePortName; int index = preSourcePortName.indexOf(str); str = preSourcePortName.remove(index,4); if(m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(preSourcePortName))){ qDebug() << "自适应升级输入音量问题"; return; } } if(m_pVolumeControl->sourcePortName.contains("alc269vc")) { QString str = "alc269vc-"; QString preSourcePortName = m_pVolumeControl->sourcePortName; int index = preSourcePortName.indexOf(str); str = preSourcePortName.remove(index,9); if(m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(preSourcePortName))){ qDebug() << "自适应升级输入音量问题" << m_pVolumeControl->sourcePortName << preSourcePortName; return; } } m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sourcePortName,false); m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME); m_pVolumeControl->setSourceMute(false); qDebug() << "初始化输入音量为100" ; } } /* * 初始化output/input list widget的选项 */ void UkmediaMainWidget::initOutputListWidgetItem() { QString outputCardName = findCardName(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->cardMap); QString outputPortLabel = findOutputPortLabel(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->sinkPortName); if(outputCardName == "histen.algo") outputPortLabel = "HUAWEI Histen"; findOutputListWidgetItem(outputCardName,outputPortLabel); int vol = m_pVolumeControl->getSinkVolume(); systemWidget->m_pSystemVolumeSlider->blockSignals(true); appWidget->systemVolumeSlider->blockSignals(true); appWidget->systemVolumeSlider->setValue(paVolumeToValue(vol)); systemWidget->m_pSystemVolumeSlider->setValue(paVolumeToValue(vol)); systemWidget->m_pSystemVolumeSlider->blockSignals(false); appWidget->systemVolumeSlider->blockSignals(false); systemWidget->m_pSystemVolumeSliderLabel->setText(QString::number(paVolumeToValue(vol))+"%"); appWidget->systemVolumeDisplayLabel->setText(QString::number(paVolumeToValue(vol))+"%"); outputListWidgetRow = systemWidget->m_pOutputListWidget->currentRow(); qDebug() <<"initOutputListWidgetItem" << m_pVolumeControl->defaultOutputCard << outputCardName <sinkPortName << outputPortLabel; } void UkmediaMainWidget::initInputListWidgetItem() { QString inputCardName = findCardName(m_pVolumeControl->defaultInputCard,m_pVolumeControl->cardMap); QString inputPortLabel = findInputPortLabel(m_pVolumeControl->defaultInputCard,m_pVolumeControl->sourcePortName); findInputListWidgetItem(inputCardName,inputPortLabel); //bug#165600 接入两个及以上输入设备时,切换输入设备切换不成功(切换之后默认使用和音量值的仍是上个设备) //华为机器,降噪模块会将主设备映射在usb设备上 if(inputCardName.contains("usb",Qt::CaseInsensitive)) { m_pVolumeControl->getModuleIndexByName("module-echo-cancel"); QTimer::singleShot(300,this,[=](){ qDebug() << "unload module echo cancel" << m_pVolumeControl->findModuleIndex; pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr); }); } qDebug() <<"initInputListWidgetItem" << m_pVolumeControl->defaultInputCard << inputCardName <sourcePortName << inputPortLabel; } /* * 滑动条值转换成音量值 */ int UkmediaMainWidget::valueToPaVolume(int value) { return value / UKMEDIA_VOLUME_NORMAL * PA_VOLUME_NORMAL; } /* * 音量值转换成滑动条值 */ int UkmediaMainWidget::paVolumeToValue(int value) { return (value / PA_VOLUME_NORMAL * UKMEDIA_VOLUME_NORMAL) + 0.5; } QString UkmediaMainWidget::outputVolumeToIconStr(bool status,int volume) { QString iconStr; if (status) { iconStr = iconNameOutputs[0]; } else if (volume <= 0 && !shortcutMute) { iconStr = iconNameOutputs[0]; } else if(volume <= 0 && shortcutMute){ iconStr = iconNameOutputs[0]; } else if (volume > 0 && volume <= 33) { iconStr = iconNameOutputs[1]; } else if (volume >33 && volume <= 66) { iconStr = iconNameOutputs[2]; } else { iconStr = iconNameOutputs[3]; } return iconStr; } /* * 处理槽函数 */ void UkmediaMainWidget::dealSlot() { QDBusInterface *iface = new QDBusInterface("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus(), this); connect(iface, SIGNAL(PrepareForSleep(bool)), this, SLOT(onPrepareForSleep(bool))); //根据设备检测发来的信号,显示相应的提示窗 connect(m_pVolumeControl,SIGNAL(device_changed_signal(QString)),this,SLOT(deviceChangedShowSlot(QString))); //声卡包含headsetmic 端口时插入4段式mic需要设置对应的port QDBusConnection::sessionBus().connect( QString(), "/", "org.ukui.media", "headsetJack", this, SLOT(setHeadsetPort(QString))); QTimer::singleShot(50, this, SLOT(initVolumeSlider())); connect(m_pVolumeControl,&UkmediaVolumeControl::updateMute,this,[=](bool state) { bool outputStatus = m_pVolumeControl->getSinkMute();//获取输出设备的静音状态 if(outputStatus) { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); message << "mute"; QDBusConnection::systemBus().send(message); } else { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); message << "no"; QDBusConnection::systemBus().send(message); } themeChangeIcons(); sendUpdateMuteSignal(SoundType::SINK, state); }); connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceMute,this,[=](bool state) { bool inputStatus = m_pVolumeControl->getSourceMute();//获取输入设备的静音状态 if(inputStatus) { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemInputVolumeIsMute"); message << "mute"; QDBusConnection::systemBus().send(message); } else { QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemInputVolumeIsMute"); message << "no"; QDBusConnection::systemBus().send(message); } themeChangeIcons(); sendUpdateMuteSignal(SoundType::SOURCE, state); }); connect(m_pVolumeControl,&UkmediaVolumeControl::updateVolume,this,[=](int value){ bool outputStatus = m_pVolumeControl->getSinkMute(); qDebug() << "UpdateSinkVolume" << value << paVolumeToValue(value) << outputStatus; QString percent; percent = QString::number(paVolumeToValue(value)); //设置调节输入音量的提示音 const gchar *id = NULL; const gchar *desc = NULL; gint retval; QList existsPath = listExistsPath(); QString filenameStr; for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "volume-change") { break; } else filenameStr = ""; } } const QByteArray text = filenameStr.toLocal8Bit(); id = text.data(); desc = "Volume Changed"; const gchar *eventId =id; if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("eventSounds")) { bool alertStatus = m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); if (alertStatus) { m_pTimer->start(100); } } } appWidget->systemVolumeDisplayLabel->setText(percent+"%"); systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); appWidget->systemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->setValue(paVolumeToValue(value)); appWidget->systemVolumeSlider->setValue(paVolumeToValue(value)); systemWidget->m_pSystemVolumeSlider->blockSignals(false); appWidget->systemVolumeSlider->blockSignals(false); initOutputListWidgetItem(); themeChangeIcons(); sendUpdateVolumeSignal(SoundType::SINK, paVolumeToValue(value)); }); connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceVolume,this,[=](int value){ bool inputStatus = m_pVolumeControl->getSourceMute(); qDebug() << "UpdateSourceVolume:" << value << paVolumeToValue(value) << inputStatus; initInputListWidgetItem(); themeChangeIcons(); sendUpdateVolumeSignal(SoundType::SOURCE, paVolumeToValue(value)); }); connect(QApplication::desktop(),&QDesktopWidget::resized,this,[=](){ if(this->isHidden()) return; else this->hide(); }); connect(QApplication::desktop(),&QDesktopWidget::screenCountChanged,this,[=](){ if(this->isHidden()) return; else this->hide(); }); connect(m_pVolumeControl,SIGNAL(addSinkInputSignal(const gchar *,const gchar*,int,int,int)),this,SLOT(addAppToAppwidget(const gchar*,const gchar *,int,int,int))); connect(m_pVolumeControl,SIGNAL(sinkInputVolumeChangedSignal(const gchar *,const gchar*,int)),this,SLOT(sinkInputVolumeChangedSlot(const gchar*,const gchar *,int))); connect(m_pVolumeControl,SIGNAL(removeSinkInputSignal(const gchar *)),this,SLOT(removeSubAppWidget(const gchar*))); connect(m_pVolumeControl,SIGNAL(deviceChangedSignal()),this,SLOT(updateListWidgetItemSlot())); QDBusConnection::sessionBus().connect( QString(), "/", "org.kylin.music", "sinkInputVolumeChanged", this, SLOT(updateAppVolume(QString,int,bool))); QDBusConnection::sessionBus().connect( QString(), "/", "org.kylin.video", "sinkInputVolumeChanged", this, SLOT(updateAppVolume(QString,int,bool))); connect(systemWidget->m_pOutputListWidget,&QListWidget::itemClicked,this,[=](){ if(outputListWidgetRow != systemWidget->m_pOutputListWidget->currentRow()){ outputListWidgetCurrentRowChangedSlot(systemWidget->m_pOutputListWidget->currentRow()); outputListWidgetRow = systemWidget->m_pOutputListWidget->currentRow(); } }); connect(systemWidget->m_pInputListWidget,SIGNAL(currentRowChanged(int )),this,SLOT(inputListWidgetCurrentRowChangedSlot(int))); connect(systemWidget->m_pSystemVolumeSlider,&UkmediaVolumeSlider::silderPressSignal,this,[=](){ mousePress = true; mouseReleaseState = false; }); connect(systemWidget->m_pSystemVolumeSlider,&UkmediaVolumeSlider::silderReleaseSignal,this,[=](){ mouseReleaseState = true; }); connect(appWidget->systemVolumeSlider,&UkmediaVolumeSlider::silderPressSignal,this,[=](){ mousePress = true; mouseReleaseState = false; }); connect(appWidget->systemVolumeSlider,&UkmediaVolumeSlider::silderReleaseSignal,this,[=](){ mouseReleaseState = true; }); m_pTimer = new QTimer(this); connect(m_pTimer, SIGNAL(timeout()), this, SLOT(handleTimeout())); m_pTimer2 = new QTimer(this); connect(m_pTimer2, &QTimer::timeout, this, [=](){ if(mouseReleaseState){ gint retval; const gchar *desc = "Volume Changed"; QString filenameStr; QList existsPath = this->listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "volume-change") { break; } else filenameStr = ""; } } const QByteArray text = filenameStr.toLocal8Bit(); const gchar *id = text.data(); const gchar *eventId =id; if(desc){ if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("eventSounds")) { bool status = m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); if (status) retval = ca_context_play (this->caContext, 0, CA_PROP_EVENT_ID, eventId, CA_PROP_EVENT_DESCRIPTION, desc, NULL); } } qDebug() << "ca_context_play" << eventId << retval; } m_pTimer->stop(); mousePress = false; mouseReleaseState = false; } else{ m_pTimer2->start(100); } }); /* * 完整模式下,应用音量界面,当滑动条值改变时更改系统音量 */ connect(appWidget->systemVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT( advancedSystemSliderChangedSlot(int))); connect(systemWidget->m_pSystemVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(systemVolumeSliderChangedSlot(int))); connect(systemWidget->m_pSystemVolumeSlider, &UkmediaVolumeSlider::blueValueChanged, this, &UkmediaMainWidget::systemVolumeSliderChangedSlotInBlue); connect(appWidget->systemVolumeSlider, &UkmediaVolumeSlider::blueValueChanged, this, &UkmediaMainWidget::systemVolumeSliderChangedSlotInBlue); connect(systemWidget->m_pSystemVolumeBtn,SIGNAL(clicked()),this,SLOT(systemVolumeButtonClickedSlot())); connect(appWidget->systemVolumeBtn,SIGNAL(clicked()),this,SLOT(appWidgetMuteButtonCLickedSlot())); /* * 当无任何控制音量的界面显示时,鼠标滚轮向上滚动音量托盘图标增加音量 * 向下滚动减少音量值 */ connect(soundSystemTrayIcon,SIGNAL(wheelRollEventSignal(bool)),this,SLOT(trayWheelRollEventSlot(bool))); connect(soundSystemTrayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),\ this,SLOT(activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason))); connect(m_pSoundPreferenceAction,SIGNAL(triggered()),this,SLOT(jumpControlPanelSlot())); connect(m_pVolumeControl,SIGNAL(updatePortSignal()),this,SLOT(updateDevicePort())); connect(m_pVolumeControl,SIGNAL(checkDeviceSelectionSianal(const pa_card_info *)),this,SLOT(checkAudioDeviceSelectionNeeded(const pa_card_info *))); connect(m_pVolumeControl,&UkmediaVolumeControl::removeSinkSignal,[=](){ qDebug() << "removre sink signal"; systemWidget->m_pOutputListWidget->blockSignals(true); }); connect(appWidget->volumeSettingButton,SIGNAL(clicked()),this,SLOT(jumpControlPanelSlot())); connect(systemWidget->volumeSettingButton,SIGNAL(clicked()),this,SLOT(jumpControlPanelSlot())); monitorSessionStatus(); connect(m_pVolumeControl, &UkmediaVolumeControl::bluetoothBatteryChanged, this, &UkmediaMainWidget::batteryLevelChanged); connect(m_pVolumeControl, &UkmediaVolumeControl::initBlueDeviceVolumeSig, this, &UkmediaMainWidget::initBlueDeviceVolume); } void UkmediaMainWidget::initGsettings() { m_pInitSystemVolumeSetting = new QGSettings(UKUI_AUDIO_SCHEMA); //检测系统主题 if (QGSettings::isSchemaInstalled(UKUI_THEME_SETTING)){ m_pThemeSetting = new QGSettings(UKUI_THEME_SETTING); m_pFontSetting = new QGSettings(UKUI_THEME_SETTING); QString fontType; if (m_pThemeSetting->keys().contains("styleName")) { mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); } if (m_pFontSetting->keys().contains("systemFont")) { fontType = m_pFontSetting->get("systemFont").toString(); } if (m_pFontSetting->keys().contains("systemFontSize")) { int font = m_pFontSetting->get("system-font-size").toInt(); QFont fontSize(fontType,font); // appWidget->systemVolumeLabel->setFont(fontSize); } connect(m_pFontSetting,SIGNAL(changed(const QString &)),this,SLOT(fontSizeChangedSlot(const QString &))); connect(m_pThemeSetting, SIGNAL(changed(const QString &)),this,SLOT(ukuiThemeChangedSlot(const QString &))); } //获取声音gsettings值 if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ m_pSoundSettings = new QGSettings(KEY_SOUNDS_SCHEMA); if (m_pSoundSettings->keys().contains("dnsNoiseReduction")) { QTimer *timer = new QTimer(); timer->start(1000); connect(timer,&QTimer::timeout,[=](){ switchModuleEchoCancel(); delete timer; }); } // if (m_pSoundSettings->keys().contains("loopback")){ // QTimer *timer = new QTimer(); // timer->start(1000); // connect(timer,&QTimer::timeout,[=](){ // switchModuleLoopBack(); // delete timer; // }); // } // if (m_pSoundSettings->keys().contains("monoAudio")){ // QTimer *timer = new QTimer(); // timer->start(1000); // connect(timer,&QTimer::timeout,[=](){ // switchMonoAudio(); // delete timer; // }); // } connect(m_pSoundSettings, SIGNAL(changed(const QString &)),this,SLOT(soundSettingChanged(const QString &))); //初始化gsetting时就需要创建一个 ~/.config/startupMusic.json 文件 // if (m_pSoundSettings->keys().contains("startupMusic")) { // QString switchStartupState = m_pSoundSettings->get(STARTUP_MUSIC).toString(); // m_pVolumeControl->insertJson("startupPlayMusic",switchStartupState,"/.config/startupMusic.json"); // } // connect(m_pSoundSettings, SIGNAL(changed(const QString &)),this,SLOT(soundSettingChanged(const QString &))); } //监听开机音乐的开关键值 if (QGSettings::isSchemaInstalled(UKUI_SWITCH_SETTING)) { m_pStartUpSetting = new QGSettings(UKUI_SWITCH_SETTING); if (m_pStartUpSetting->keys().contains("startupMusic")) { QString switchStartupState = m_pStartUpSetting->get(UKUI_STARTUP_MUSIC_KEY).toString();//开机音乐 m_pVolumeControl->insertJson("startupPlayMusic",switchStartupState,"/.config/startupMusic.json"); } connect(m_pStartUpSetting, SIGNAL(changed(const QString &)),this,SLOT(soundSettingChanged(const QString &))); } //获取透明度 if(QGSettings::isSchemaInstalled(TRANSPARENCY_GSETTINGS)) { m_pTransGsettings = new QGSettings(TRANSPARENCY_GSETTINGS); if(m_pTransGsettings->keys().contains(QString("transparency"))) { m_pTransparency=m_pTransGsettings->get("transparency").toDouble() + 0.15; m_pTransparency = (m_pTransparency > 1) ? 1 : m_pTransparency; connect(m_pTransGsettings, SIGNAL(changed(const QString &)), this, SLOT(onTransChanged())); } } if(QGSettings::isSchemaInstalled(UKUI_GLOBALTHEME_SETTINGS)){ m_pSoundThemeSetting = new QGSettings(UKUI_GLOBALTHEME_SETTINGS); if(m_pSoundThemeSetting->keys().contains("globalThemeName")){ QString soundThemestr = m_pSoundThemeSetting->get(GLOBAL_THEME_NAME).toString(); if(m_pSoundSettings->keys().contains("themeName") && soundThemestr != "custom"){ m_pSoundSettings->set(SOUND_THEME_KEY,soundThemestr); } } connect(m_pSoundThemeSetting, SIGNAL(changed(const QString &)),this,SLOT(soundThemeChangedSlot(const QString &))); } //给侧边栏提供音量之设置 //2303侧边栏使用usd声音接口,不再需要此dbus // if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { // m_pVolumeSetting = new QGSettings(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID); // connect(m_pVolumeSetting,SIGNAL(changed(const QString &)),this,SLOT(volumeSettingChangedSlot(const QString &))); // } //如果为第一次运行需要关闭dp对应的配置文件 if (QGSettings::isSchemaInstalled(UKUI_AUDIO_SCHEMA)){ m_pInitSystemVolumeSetting = new QGSettings(UKUI_AUDIO_SCHEMA); if (m_pInitSystemVolumeSetting->keys().contains("firstRun")) { bool isFirstRun = m_pInitSystemVolumeSetting->get(FIRST_RUN).toBool(); if (isFirstRun) { //亿道厂商预留设计 初始化关闭降噪功能 QProcess process; process.start("/bin/bash",QStringList() << "-c" << "dmesg |grep DMI:"); process.waitForFinished(); QString str = process.readAllStandardOutput(); process.close(); if(str.contains("UNIS L3891 G2") && m_pSoundSettings->keys().contains("dnsNoiseReduction")) m_pSoundSettings->set(DNS_NOISE_REDUCTION,false); qDebug() << "初始化默认关闭降噪"; m_pInitSystemVolumeSetting->set(FIRST_RUN,false); } } } } void UkmediaMainWidget::initStrings() { const static QString s_login1Name = QStringLiteral("logind"); const static QString s_login1Service = QStringLiteral("org.freedesktop.login1"); const static QString s_login1Path = QStringLiteral("/org/freedesktop/login1"); const static QString s_login1ManagerInterface = QStringLiteral("org.freedesktop.login1.Manager"); const static QString s_login1SeatInterface = QStringLiteral("org.freedesktop.login1.Seat"); const static QString s_login1SessionInterface = QStringLiteral("org.freedesktop.login1.Session"); const static QString s_login1ActiveProperty = QStringLiteral("Active"); const static QString s_dbusPropertiesInterface = QStringLiteral("org.freedesktop.DBus.Properties"); m_sessionControllerName = s_login1Name; m_sessionControllerService = s_login1Service; m_sessionControllerPath = s_login1Path; m_sessionControllerManagerInterface = s_login1ManagerInterface; m_sessionControllerSeatInterface = s_login1SeatInterface; m_sessionControllerSessionInterface = s_login1SessionInterface; m_sessionControllerActiveProperty = s_login1ActiveProperty; m_sessionControllerPropertiesInterface = s_dbusPropertiesInterface; } void UkmediaMainWidget::initAlertSound() { eventList = new QStringList; eventIdNameList = new QStringList; // eventList->append("window-close"); // eventList->append("system-setting"); // eventList->append("volume-changed"); // eventList->append("alert-sound"); // eventIdNameList->append("gudou"); // eventIdNameList->append("gudou"); // eventIdNameList->append("gudou"); // eventIdNameList->append("gudou"); // for (int i=0;icount();i++) { // // getValue(); // addValue(eventList->at(i),eventIdNameList->at(i)); // } QDomDocument doc("xunguang"); QString audioPath = "/usr/share/sounds/xunguang.xml"; QFile file(audioPath); if (!file.open(QIODevice::ReadOnly)){ qDebug()<<"open xunguang.xml failed!!!"; return; } QString errorStr = ""; int errorLine = -1; int errorCol = -1; if (!doc.setContent(&file,true,&errorStr,&errorLine,&errorCol)){ file.close(); qDebug()<<"open xunguang.xml failed111!!!" << errorStr << errorLine << errorCol; return; } file.close(); QDomElement docElem = doc.documentElement(); QDomNode n = docElem.firstChild(); while (!n.isNull()){ QDomElement e = n.toElement(); QString rootName = n.toElement().tagName(); QDomNodeList sonList = e.childNodes(); QDomElement sonElement = sonList.at(0).toElement(); if (!e.isNull()){ qDebug() << "add xunguang.xml" << "name" << e.tagName() << "filename" << sonElement.text() << endl; eventList->append(e.tagName()); eventIdNameList->append(sonElement.text()); } n = n.nextSibling(); } for (int i=0;icount();i++) addValue(eventList->at(i),eventIdNameList->at(i)); } QList UkmediaMainWidget::listExistsPath() { char ** childs; int len; DConfClient * client = dconf_client_new(); childs = dconf_client_list (client, KEYBINDINGS_CUSTOM_DIR, &len); g_object_unref (client); QList vals; for (int i = 0; childs[i] != NULL; i++){ if (dconf_is_rel_dir (childs[i], NULL)){ char * val = g_strdup (childs[i]); vals.append(val); } } g_strfreev (childs); return vals; } QString UkmediaMainWidget::findFreePath(){ int i = 0; char * dir; bool found; QList existsdirs; existsdirs = listExistsPath(); for (; i < MAX_CUSTOM_SHORTCUTS; i++){ found = true; dir = QString("custom%1/").arg(i).toLatin1().data(); for (int j = 0; j < existsdirs.count(); j++) if (!g_strcmp0(dir, existsdirs.at(j))){ found = false; break; } if (found) break; } if (i == MAX_CUSTOM_SHORTCUTS){ qDebug() << "Keyboard Shortcuts" << "Too many custom shortcuts"; return ""; } return QString("%1%2").arg(KEYBINDINGS_CUSTOM_DIR).arg(QString(dir)); } void UkmediaMainWidget::addValue(QString name,QString filename) { //在创建setting表时,先判断是否存在该设置,存在时不创建 QList existsPath = listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); QString filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == name) { return; } delete settings; } else { continue; } } QString availablepath = findFreePath(); const QByteArray id(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray idd(availablepath.toUtf8().data()); if(QGSettings::isSchemaInstalled(id)) { QGSettings * settings = new QGSettings(id, idd); settings->set(FILENAME_KEY, filename); settings->set(NAME_KEY, name); delete settings; } } /* * 当检测到4段式3.5mm耳机插入时(声卡包含headsetmic端口) */ void UkmediaMainWidget::setHeadsetPort(QString str) { qDebug() << "setHeadsetPort " << str << m_pVolumeControl->sinkIndex; /* *output: headphone *input: intel mic */ if (strcmp(str.toLatin1().data(),"headphone") == 0) { m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pHeadphonesName); m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pInternalmicName); /* *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 */ } /*output: headphone input: headset mic*/ else if (strcmp(str.toLatin1().data(),"headset") == 0) { m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pHeadphonesName); m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pHeadsetmicName); /* *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 */ }/*output: speaker input: headphone mic*/ else if (strcmp(str.toLatin1().data(),"headphone mic") == 0) { m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pInternalspkName); m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pHeadphonemicName); /* *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 */ } } /* * 音量改变提示:策略是停止滑动时,播放提示声 */ void UkmediaMainWidget::handleTimeout() { if(mousePress){ if(mouseReleaseState){ gint retval; const gchar *desc = "Volume Changed"; QString filenameStr; QList existsPath = this->listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "volume-change") { break; } else filenameStr = ""; } } const QByteArray text = filenameStr.toLocal8Bit(); const gchar *id = text.data(); const gchar *eventId =id; if(desc){ if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("eventSounds")) { bool status = m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); if (status) retval = ca_context_play (this->caContext, 0, CA_PROP_EVENT_ID, eventId, CA_PROP_EVENT_DESCRIPTION, desc, NULL); } } } m_pTimer->stop(); mousePress = false; mouseReleaseState = false; } else { m_pTimer2->start(50); } m_pTimer->stop(); } else { gint retval; const gchar *desc = "Volume Changed"; QString filenameStr; QList existsPath = this->listExistsPath(); for (char * path : existsPath) { char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); char * allpath = strcat(prepath, path); const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); const QByteArray bba(allpath); if(QGSettings::isSchemaInstalled(ba)) { QGSettings * settings = new QGSettings(ba, bba); filenameStr = settings->get(FILENAME_KEY).toString(); QString nameStr = settings->get(NAME_KEY).toString(); if (nameStr == "volume-change") { break; } else filenameStr = ""; } } const QByteArray text = filenameStr.toLocal8Bit(); const gchar *id = text.data(); const gchar *eventId =id; if(desc){ bool status = false; if (QGSettings::isSchemaInstalled(KEY_SOUNDS_SCHEMA)){ if (m_pSoundSettings->keys().contains("eventSounds")) { status = m_pSoundSettings->get(EVENT_SOUNDS_KEY).toBool(); } } if (status && isPlay) { retval = ca_context_play (this->caContext, 0, CA_PROP_EVENT_ID, eventId, CA_PROP_EVENT_DESCRIPTION, desc, NULL); } else { isPlay = true; } } m_pTimer->stop(); } } //2303侧边栏使用usd声音接口,不再需要此dbus void UkmediaMainWidget::setVolumeSettingValue(int value) { if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { if (m_pVolumeSetting->keys().contains("volumesize")) { if(value == 0) m_pVolumeControl->setSinkMute(true); if (m_pSoundSettings->keys().contains("volumeIncrease")) { if(m_pSoundSettings->get("volume-increase").toBool()){ int value_increase = (value / 1.25) +0.5; m_pVolumeSetting->set(UKUI_VOLUME_KEY,value_increase); } else m_pVolumeSetting->set(UKUI_VOLUME_KEY,value); } } } } void UkmediaMainWidget::setVolumeSettingMute(bool state) { if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { if (m_pVolumeSetting->keys().contains("soundstate")) { m_pVolumeSetting->blockSignals(true); m_pVolumeSetting->set(UKUI_VOLUME_STATE,state); m_pVolumeSetting->blockSignals(false); } } } void UkmediaMainWidget::themeChangeIcons() { int nInputValue = paVolumeToValue(m_pVolumeControl->getSourceVolume()); int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); bool inputStatus = m_pVolumeControl->getSourceMute(); bool outputStatus = m_pVolumeControl->getSinkMute(); inputVolumeDarkThemeImage(nInputValue,inputStatus); outputVolumeDarkThemeImage(nOutputValue,outputStatus); systemWidget->m_pSystemVolumeBtn->repaint(); appWidget->systemVolumeBtn->repaint(); soundSystemTrayIcon->setToolTip(tr("Current volume:")+QString::number(nOutputValue)+"%"); } /* * 隐藏窗口 */ void UkmediaMainWidget::hideWindow() { this->hide(); } /* * 字体改变需更新字体大小 */ void UkmediaMainWidget::fontSizeChangedSlot(const QString &themeStr) { QString fontType; if (m_pFontSetting->keys().contains("systemFont")) { fontType = m_pFontSetting->get("systemFont").toString(); } if (m_pFontSetting->keys().contains("systemFontSize")) { int font = m_pFontSetting->get("system-font-size").toInt(); QFont fontSize(fontType,font); } } void UkmediaMainWidget::volumeSettingChangedSlot(const QString &key) { if(key != "volumesize") return; if (m_pVolumeSetting->keys().contains("volumesize")) { int valueSetting = m_pVolumeSetting->get(UKUI_VOLUME_KEY).toInt(); if (valueSetting == 0) m_pVolumeControl->setSinkMute(true); if (m_pSoundSettings->keys().contains("volumeIncrease")) { if(m_pSoundSettings->get("volume-increase").toBool()) { int value_increase = (valueSetting * 1.25) +0.5; systemWidget->m_pSystemVolumeSlider->setValue(value_increase); } else systemWidget->m_pSystemVolumeSlider->setValue(valueSetting); } } if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { if (m_pVolumeSetting->keys().contains("soundstate")) { bool status = m_pVolumeSetting->get(UKUI_VOLUME_STATE).toBool(); } } } /* * 系统主题改变 */ void UkmediaMainWidget::ukuiThemeChangedSlot(const QString &themeStr) { qDebug() << "ukuiThemeChangedSlot" << mThemeName; if (m_pThemeSetting->keys().contains("styleName")) { mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); } themeChangeIcons(); onTransChanged(); Q_EMIT qApp->paletteChanged(qApp->palette()); this->repaint(); } /* * 系统音效主题改变 */ void UkmediaMainWidget::soundThemeChangedSlot(const QString &soundThemeStr) { if(m_pSoundThemeSetting->keys().contains("globalThemeName")){ QString soundstr = m_pSoundThemeSetting->get(GLOBAL_THEME_NAME).toString(); if(m_pSoundSettings->keys().contains("themeName") && soundstr != "custom") m_pSoundSettings->set(SOUND_THEME_KEY,soundstr); } } /* * 滑动条控制输出音量 */ void UkmediaMainWidget::systemVolumeSliderChangedSlot(int value) { QString percent; percent = QString::number(value); appWidget->systemVolumeSlider->blockSignals(true); appWidget->systemVolumeSlider->setValue(value); appWidget->systemVolumeSlider->blockSignals(false); appWidget->systemVolumeDisplayLabel->setText(percent+"%"); systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); //蓝牙a2dp模式下滑动条跳动问题,以间隔为10设置音量 if (m_pVolumeControl->defaultSinkName.contains("a2dp_sink")) return; int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); firstEnterSystem = false; } /* * 完整模式下,应用音量选项中系统音量控制输出音量值 */ void UkmediaMainWidget::advancedSystemSliderChangedSlot(int value) { QString percent; percent = QString::number(value); systemWidget->m_pSystemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->setValue(value); systemWidget->m_pSystemVolumeSlider->blockSignals(false); appWidget->systemVolumeDisplayLabel->setText(percent+"%"); systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); //蓝牙a2dp模式下滑动条跳动问题,以间隔为10设置音量 if (m_pVolumeControl->defaultSinkName.contains("a2dp_sink")) return; int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); } void UkmediaMainWidget::systemVolumeSliderChangedSlotInBlue(int value) { if (!m_pVolumeControl->defaultSinkName.contains("a2dp_sink")) { systemWidget->m_pSystemVolumeSlider->isMouseWheel = false; appWidget->systemVolumeSlider->isMouseWheel = false; return; } qDebug() << "Special Handling Adjust volume in Bluetooth a2dp mode" << value ; QString percent; percent = QString::number(value); appWidget->systemVolumeSlider->blockSignals(true); appWidget->systemVolumeSlider->setValue(value); appWidget->systemVolumeSlider->blockSignals(false); appWidget->systemVolumeDisplayLabel->setText(percent+"%"); systemWidget->m_pSystemVolumeSlider->blockSignals(true); systemWidget->m_pSystemVolumeSlider->setValue(value); systemWidget->m_pSystemVolumeSlider->blockSignals(false); systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); int volume = valueToPaVolume(value); m_pVolumeControl->getDefaultSinkIndex(); m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); } void UkmediaMainWidget::systemVolumeButtonClickedSlot() { m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); QTimer * time = new QTimer; time->start(100); connect(time,&QTimer::timeout,[=](){ themeChangeIcons(); time->disconnect(); delete time; }); } /* * 完整模式中应用音量的静音控制 */ void UkmediaMainWidget::appWidgetMuteButtonCLickedSlot() { m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); QTimer * time = new QTimer; time->start(100); connect(time,&QTimer::timeout,[=](){ themeChangeIcons(); time->disconnect(); delete time; }); } /* * 声音托盘的触发事件,包括鼠标左键点击,双击,滚轮,右击 */ void UkmediaMainWidget::activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason reason) { QString platform = QGuiApplication::platformName(); if(!platform.startsWith(QLatin1String("wayland"),Qt::CaseInsensitive)){ const KWindowInfo info(this->winId(), NET::WMState); if (!info.hasState(NET::SkipTaskbar) || !info.hasState(NET::SkipPager)) { KWindowSystem::setState(this->winId(), NET::SkipTaskbar | NET::SkipPager); } } switch(reason) { //鼠标中间键点击图标 case QSystemTrayIcon::MiddleClick: { if (this->isHidden()) { mouseMeddleClickedTraySlot(); } else { hideWindow(); } break; } //鼠标左键点击图标 case QSystemTrayIcon::Trigger: { if(this->isVisible()){ hideWindow(); break; } advancedWidgetShow(); kdk::WindowManager::setSkipSwitcher(this->windowHandle(),true); break; } //鼠标左键双击图标 case QSystemTrayIcon::DoubleClick: { hideWindow(); break; } case QSystemTrayIcon::Context:{ if(this ->isHidden()) { menu->popup(QCursor::pos()); } else{ this->hideWindow(); } break; } default: break; } } /* * 鼠标滚轮点击托盘图标,设置输出音量的静音状态 */ void UkmediaMainWidget::mouseMeddleClickedTraySlot() { m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); QTimer * time = new QTimer; time->start(100); connect(time,&QTimer::timeout,[=](){ themeChangeIcons(); time->disconnect(); delete time; }); } /* * 鼠标滚轮在声音托盘上滚动设置输出音量值 */ void UkmediaMainWidget::trayWheelRollEventSlot(bool step) { int volume = systemWidget->m_pSystemVolumeSlider->value(); if (step) { systemWidget->m_pSystemVolumeSlider->setValue(volume+5); } else { systemWidget->m_pSystemVolumeSlider->setValue(volume-5); } } /* * 点击菜单中声音设置跳转到控制面板的声音控制 */ void UkmediaMainWidget::jumpControlPanelSlot() { m_process = new QProcess(0); m_process->start("ukui-control-center -m Audio"); m_process->waitForStarted(); this->hide(); return; } void UkmediaMainWidget::drawImagColorFromTheme(UkuiButtonDrawSvg *button, QString iconStr) { button->themeIcon.image = QIcon::fromTheme(iconStr).pixmap(24,24).toImage(); button->themeIcon.color = QColor(0,0,0,216); if (mThemeName == UKUI_THEME_WHITE) { button->themeIcon.color = QColor(255,255,255,216); } else if (mThemeName == UKUI_THEME_BLACK) { button->themeIcon.color = QColor(255,255,255,216); } } /* 深色主题时输出音量图标 */ void UkmediaMainWidget::outputVolumeDarkThemeImage(int value,bool status) { QString iconStr = outputVolumeToIconStr(status,value); systemWidget->m_pSystemVolumeBtn->setIcon(QIcon::fromTheme(iconStr)); appWidget->systemVolumeBtn->setIcon(QIcon::fromTheme(iconStr)); bool isActive = m_pVolumeControl->getSinkMute(); if(iconStr == "audio-volume-muted-symbolic" && isActive) { systemWidget->m_pSystemVolumeBtn->setChecked(false); appWidget->systemVolumeBtn->setChecked(false); } else { systemWidget->m_pSystemVolumeBtn->setChecked(true); appWidget->systemVolumeBtn->setChecked(true); } soundSystemTrayIcon->setIcon(QIcon::fromTheme(iconStr)); } /* 输入音量图标 */ void UkmediaMainWidget::inputVolumeDarkThemeImage(int value,bool status) { QString inputIconStr; if (status) { inputIconStr = iconNameInputs[0]; } else if (value <= 0) { inputIconStr = iconNameInputs[0]; } else if (value > 0 && value <= 33) { inputIconStr = iconNameInputs[1]; } else if (value >33 && value <= 66) { inputIconStr = iconNameInputs[2]; } else { inputIconStr = iconNameInputs[3]; } if (mThemeName == "ukui-white" || mThemeName == "ukui-light") { // devWidget->inputMuteButton->themeIcon.color = QColor(0,0,0,216); // devWidget->inputMuteButton->themeIcon.image = QIcon::fromTheme(inputIconStr).pixmap(24,24).toImage(); } else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-black" || mThemeName == "ukui-default") { // devWidget->inputMuteButton->themeIcon.color = QColor(255,255,255,216); // devWidget->inputMuteButton->themeIcon.image = QIcon::fromTheme(inputIconStr).pixmap(24,24).toImage(); } } /* * 绘制高亮颜色图标 */ QPixmap UkmediaMainWidget::drawLightColoredPixmap(const QPixmap &source) { QColor gray(255,255,255); QColor standard (0,0,0); QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); } else { color.setRed(255); color.setGreen(255); color.setBlue(255); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } /* * 绘制深色颜色图标 */ QPixmap UkmediaMainWidget::drawDarkColoredPixmap(const QPixmap &source) { QColor gray(255,255,255); QImage img = source.toImage(); for (int x = 0; x < img.width(); x++) { for (int y = 0; y < img.height(); y++) { auto color = img.pixelColor(x, y); if (color.alpha() > 0) { if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); } else { color.setRed(0); color.setGreen(0); color.setBlue(0); img.setPixelColor(x, y, color); } } } } return QPixmap::fromImage(img); } /* * 完整模式界面的显示 */ void UkmediaMainWidget::advancedWidgetShow() { #define MARGIN 8 QDBusInterface iface("org.ukui.panel", "/panel/position", "org.ukui.panel", QDBusConnection::sessionBus()); QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); QVariantList position_list=reply.value(); /* * 通过这个dbus接口获取到的6个参数分别为 :可用屏幕大小的x坐标、y坐标、宽度、高度,任务栏位置 */ QRect rect; switch(reply.value().at(4).toInt()){ case 1: rect = QRect(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, position_list.at(1).toInt()+MARGIN, this->width(),this->height()); break; case 2: rect = QRect(position_list.at(0).toInt()+MARGIN, position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, this->width(),this->height()); break; case 3: rect = QRect(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, this->width(),this->height()); break; default: rect = QRect(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, this->width(),this->height()); break; } QString platform = QGuiApplication::platformName(); if(!platform.startsWith(QLatin1String("wayland"),Qt::CaseInsensitive)){ this->setGeometry(rect); this->showNormal(); } else { kdk::UkuiStyleHelper::self()->removeHeader(this); this->show(); kdk::WindowManager::setGeometry(this->windowHandle(), rect); } this->raise(); this->activateWindow(); } QString UkmediaMainWidget::appNameToIconName(const gchar *appName,const gchar *appIconName) { QString iconName = "/usr/share/applications/"; qDebug()<< "appNameToIconName" << appName << appIconName; /*! * \brief * \details * 由于获取到的麒麟影音软件获取的app icon不正确 * 可能是软件没有发出正确的信号告知正确的icon, * 因此添加判断当匹配应用名为Kylinvideo时设置 * 正确的icon名来保证找到正确的desktop,从而设置 * 应用音量正确的应用名和图标 */ if (strcmp(appName,"KylinVideo") == 0) { appIconName = "kylin-video"; } if (strcmp(appName,"wine-preloader") == 0) { QString weChatStr = findFile(iconName,"微信"); if (weChatStr == "") weChatStr = "kylin-kwre-wechat.desktop"; iconName.append(weChatStr);//wine版 } else{ iconName.append(appIconName); iconName.append(".desktop"); } /* fixed bug#136619【无线投屏】投屏后,应用音量中没有投屏的应用音量 需要更改 /etc/xdg/autostart/miracle-agent.desktop 文件 + 改成 Icon=kylin-miracast */ if(strcmp(appName,"kylin-miracast") == 0 || strcmp(appName,"miraclecast") == 0) { iconName = "/etc/xdg/autostart/miracle-agent.desktop"; } return iconName; } void UkmediaMainWidget::addAppToAppwidget(const gchar *appName,const gchar *appIconName,int index,int value,int channel) { //设置应用的图标 QString iconName = appNameToIconName(appName,appIconName); QString description = appName; QString pAppName = getAppName(iconName); QString pAppIcon = getAppIcon(iconName); initSubApplicationWidget(pAppIcon); qDebug() << "add application to widget" << appName<< appIconName << pAppIcon << iconName; appWidget->app_volume_list->append(appIconName); QString appSliderStr = appName; QString appMuteBtnlStr = appName; QString appVolumeLabelStr = appName; QStringList strList; strList<appSlider->setObjectName(appSliderStr); appWidget->appMuteBtn->setObjectName(appIconName); appWidget->appVolumeLabel->setObjectName(appVolumeLabelStr); //初始化应用音量滑动条 int sliderValue = paVolumeToValue(value); appWidget->appIconBtn->setCheckable(false); appWidget->appIconBtn->setChecked(false); appWidget->appSlider->blockSignals(true); appWidget->appSlider->setValue(sliderValue); appWidget->appVolumeLabel->setText(QString::number(sliderValue)+"%"); appWidget->appSlider->blockSignals(false); qDebug() << "初始化应用音量滑动条:" << appWidget->appSlider->value() << appSliderStr; /*滑动条控制应用音量*/ connect(appWidget->appSlider,&QSlider::valueChanged,[=](int value) { bool isMute = false; int volume = valueToPaVolume(value); QString appName = appSliderStr.split("Slider").at(0); qDebug() << "调节应用音量滑动条的index和appName" << index << appName; //因为一个应用可能产生多个sinkinput,所以要对相同description的所有index设置音量,遍历indexmap设置 QMap::iterator it; for(it = m_pVolumeControl->sinkInputIndexMap.begin(); it != m_pVolumeControl->sinkInputIndexMap.end();){ if(it.value() == appName){ m_pVolumeControl->setSinkInputVolume(it.key(),volume,channel); } it++; } for(it = m_pVolumeControl->sourceOutputIndexMap.begin(); it != m_pVolumeControl->sourceOutputIndexMap.end();){ if(it.value() == appName){ m_pVolumeControl->setSourceOutputVolume(it.key(),volume,channel); } it++; } if(kylinVideoVolumeSignal) kylinVideoVolumeSignal = false; else { QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); message<findChild (appVolumeLabelStr); if (label == nullptr) return; label->setText(QString::number(value)+"%"); QSlider *slider = appWidget->findChild(appSliderStr); if (slider == nullptr) return; QPushButton *btn = appWidget->findChild(appMuteBtnlStr); if (btn == nullptr) return; QString audioIconStr = outputVolumeToIconStr(isMute,value); QSize iconSize(24,24); if ( mThemeName == "ukui-white" || mThemeName == "ukui-light") { btn->setIcon(QIcon(drawDarkColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); } else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-black" || mThemeName == "ukui-default") { btn->setIcon(QIcon(drawLightColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); } }); connect(appWidget->appMuteBtn,&QPushButton::clicked,[=]() { bool isMute = false; int volume = -1; isMute = m_pVolumeControl->getSinkInputMuted(description); qDebug() << "appMuteBtn clicked" << "muted" << isMute << description <setSinkInputMuted(index,!isMute); if (isAppMuteBtnPress) { isAppMuteBtnPress = false; } } else { if(kylinVideoMuteSignal) kylinVideoMuteSignal = false; else{ QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); message<displayAppVolumeWidget->findChild(appName); QSlider *s = appWidget->displayAppVolumeWidget->findChild(appName); if (s == nullptr || appIconName == nullptr) return; s->blockSignals(true); label->setText(QString::number(paVolumeToValue(value))+"%"); s->setValue(paVolumeToValue(value)); s->blockSignals(false); qDebug() << "sinkInputVolumeChangedSlot" << appName << appIconName << value << appSliderStr; } void UkmediaMainWidget::switchStartupPlayMusic() { //向 /home/username/.config/startupMusic.json 文件中插入属性 QString switchStartupState; // if (m_pSoundSettings->keys().contains("startupMusic")) { // switchStartupState = m_pSoundSettings->get(STARTUP_MUSIC).toString(); // m_pVolumeControl->insertJson("startupPlayMusic",switchStartupState,"/.config/startupMusic.json"); // qDebug() << " switchStartupState" << switchStartupState; // } if (m_pStartUpSetting->keys().contains("startupMusic")) { switchStartupState = m_pStartUpSetting->get(STARTUP_MUSIC).toString(); m_pVolumeControl->insertJson("startupPlayMusic",switchStartupState,"/.config/startupMusic.json"); qDebug() << " switchStartupState" << switchStartupState; } } void UkmediaMainWidget::soundSettingChanged(const QString &key) { qDebug() << "soundSettingChanged" << key; if (key == "dnsNoiseReduction") switchModuleEchoCancel(); else if(key == "loopback") switchModuleLoopBack(); else if (key == "volumeIncrease") resetVolumeSliderRange(); else if (key == "monoAudio") switchMonoAudio(); else if (key == "startupMusic") switchStartupPlayMusic(); } /* * 获取应用名称,从desktop全路径名下解析出应用名称 */ QString UkmediaMainWidget::getAppName(QString desktopfp) { GError** error=nullptr; GKeyFileFlags flags=G_KEY_FILE_NONE; GKeyFile* keyfile=g_key_file_new (); QByteArray fpbyte=desktopfp.toLocal8Bit(); char* filepath=fpbyte.data(); g_key_file_load_from_file(keyfile,filepath,flags,error); char* name=g_key_file_get_locale_string(keyfile,"Desktop Entry","Name", nullptr, nullptr); QString namestr=QString::fromLocal8Bit(name); g_key_file_free(keyfile); return namestr; } /* * 获取应用图标,从desktop全路径名下解析出应用图标 */ QString UkmediaMainWidget::getAppIcon(QString desktopfp) { GError** error=nullptr; GKeyFileFlags flags=G_KEY_FILE_NONE; GKeyFile* keyfile=g_key_file_new (); QByteArray fpbyte=desktopfp.toLocal8Bit(); char* filepath=fpbyte.data(); g_key_file_load_from_file(keyfile,filepath,flags,error); char* name=g_key_file_get_locale_string(keyfile,"Desktop Entry","Icon", nullptr, nullptr); QString namestr=QString::fromLocal8Bit(name); g_key_file_free(keyfile); return namestr; } void UkmediaMainWidget::initSubApplicationWidget(QString pAppIcon) { //widget显示应用音量 QWidget *subAppwidget = new QWidget(appWidget->displayAppVolumeWidget); appWidget->appVolumeLabel = new QLabel(subAppwidget); appWidget->appVolumeLabel->setParent(subAppwidget); appWidget->appIconBtn = new QPushButton(subAppwidget); appWidget->appMuteBtn = new QPushButton(subAppwidget); appWidget->appMuteBtn->setVisible(false); appWidget->appSlider = new UkmediaVolumeSlider(subAppwidget); appWidget->appSlider->setOrientation(Qt::Horizontal); appWidget->appSlider->setProperty("needTranslucent", true); // Increase translucent effect appWidget->appIconBtn->setFixedSize(32,32); appWidget->appIconBtn->setFlat(true); appWidget->appIconBtn->setFocusPolicy(Qt::NoFocus); QSize icon_size(32,32); appWidget->appIconBtn->setIconSize(icon_size); appWidget->appIconBtn->setIcon(QIcon::fromTheme(pAppIcon)); appWidget->appIconBtn->setAttribute(Qt::WA_TranslucentBackground); QPalette palete = appWidget->appIconBtn->palette(); palete.setColor(QPalette::Highlight,Qt::transparent); palete.setBrush(QPalette::Button,QBrush(QColor(1,1,1,0))); appWidget->appIconBtn->setPalette(palete); QPalette paleteAppIcon = appWidget->appIconBtn->palette(); paleteAppIcon.setColor(QPalette::Highlight,Qt::transparent); paleteAppIcon.setBrush(QPalette::Button,QBrush(QColor(0,0,0,0))); appWidget->appIconBtn->setPalette(paleteAppIcon); appWidget->appSlider->setMaximum(100); appWidget->appSlider->setFixedSize(284,48); appWidget->appIconBtn->adjustSize(); appWidget->appIconBtn->setProperty("useIconHighlightEffect",true); appWidget->appIconBtn->setProperty("iconHighlightEffectMode",true); appWidget->appIconBtn->setStyleSheet("QPushButton{background:transparent;border:0px;" "padding-left:0px;}" "QPushButton:hover {" "background-color: #00000000;" "color: white;}"); //音量滑动条 QHBoxLayout *appSliderLayout = new QHBoxLayout(subAppwidget); subAppwidget->setFixedSize(404,48); appWidget->appVolumeLabel->setFixedSize(55,48); appWidget->appVolumeLabel->setAlignment(Qt::AlignCenter); appSliderLayout->addWidget(appWidget->appIconBtn); appSliderLayout->addSpacing(12); appSliderLayout->addWidget(appWidget->appSlider); appSliderLayout->addSpacing(3); appSliderLayout->addWidget(appWidget->appVolumeLabel); appSliderLayout->setSpacing(0); subAppwidget->setLayout(appSliderLayout); appSliderLayout->setContentsMargins(16,0,2,0); appWidget->m_pVlayout->addWidget(subAppwidget); // //设置布局的垂直间距以及设置vlayout四周的间距 appWidget->displayAppVolumeWidget->resize(404,m_pVolumeControl->sinkInputList.count()*50); appWidget->m_pVlayout->setSpacing(2); appWidget->m_pVlayout->setContentsMargins(0,0,0,0); appWidget->displayAppVolumeWidget->setLayout(appWidget->m_pVlayout); appWidget->m_pVlayout->update(); } /* * 当播放或录制应用退出时删除在应用音量界面上该应用的显示 */ void UkmediaMainWidget::removeSubAppWidget(const gchar *m_pAppName) { g_debug ("Removing application stream %s", m_pAppName); /* We could call bar_set_stream_control here, but that would pointlessly * invalidate the channel bar, so just remove it ourselves */ int index = -1; for (int i=0;isinkInputList.count();i++) { if (m_pVolumeControl->sinkInputList.at(i) == m_pAppName) { index = i; m_pVolumeControl->sinkInputList.removeAt(i); break; } } if (index == -1) return; QLayoutItem *item; if ((item = appWidget->m_pVlayout->takeAt(index)) != 0) { QWidget *wid = item->widget(); appWidget->m_pVlayout->removeWidget(wid); wid->setParent(nullptr); delete wid; delete item; } qDebug() << "removeSubAppWidget" << m_pAppName << m_pVolumeControl->sinkInputList.count(); //设置布局的间距以及设置vlayout四周的间距 appWidget->displayAppVolumeWidget->resize(404,m_pVolumeControl->sinkInputList.count()*50); appWidget->m_pVlayout->setSpacing(2); appWidget->m_pVlayout->setContentsMargins(0,0,0,0); appWidget->m_pVlayout->update(); } /* In PulseAudio without ucm, ports will show up with the following names: Headphones - analog-output-headphones Headset mic - analog-input-headset-mic (was: analog-input-microphone-headset) Jack in mic-in mode - analog-input-headphone-mic (was: analog-input-microphone) However, since regular mics also show up as analog-input-microphone, we need to check for certain controls on alsa mixer level too, to know if we deal with a separate mic jack, or a multi-function jack with a mic-in mode (also called "headphone mic"). We check for the following names: Headphone Mic Jack - indicates headphone and mic-in mode share the same jack, i e, not two separate jacks. Hardware cannot distinguish between a headphone and a mic. Headset Mic Phantom Jack - indicates headset jack where hardware can not distinguish between headphones and headsets Headset Mic Jack - indicates headset jack where hardware can distinguish between headphones and headsets. There is no use popping up a dialog in this case, unless we already need to do this for the mic-in mode. From the PA_PROCOTOL_VERSION=34, The device_port structure adds 2 members availability_group and type, with the help of these 2 members, we could consolidate the port checking and port setting for non-ucm and with-ucm cases. */ #define HEADSET_PORT_SET(dst, src) \ do { \ if (!(dst) || (dst)->priority < (src)->priority) \ dst = src; \ } while (0) #define GET_PORT_NAME(x) (x ? g_strdup (x->name) : NULL) headsetPorts * UkmediaMainWidget::getHeadsetPorts (const pa_card_info *c) { headsetPorts *h; guint i; h = g_new0 (headsetPorts, 1); for (i = 0; i < c->n_ports; i++) { pa_card_port_info *p = c->ports[i]; // if (control->priv->server_protocol_version < 34) { if (g_str_equal (p->name, "analog-output-headphones") || g_str_equal (p->name, "[Out] Headphones1")) h->headphones = p; else if (g_str_equal (p->name, "analog-input-headset-mic") || g_str_equal (p->name, "[In] Headset")) h->headsetmic = p; else if (g_str_equal (p->name, "analog-input-headphone-mic") || g_str_equal (p->name, "[In] Headphones2")) h->headphonemic = p; else if (g_str_equal (p->name, "analog-input-internal-mic") || g_str_equal (p->name, "[In] Mic")) h->internalmic = p; else if (g_str_equal (p->name, "analog-output-speaker") || g_str_equal (p->name, "[Out] Speaker")) h->internalspk = p; // } else { #if (PA_PROTOCOL_VERSION >= 34) /* in the first loop, set only headphones */ /* the microphone ports are assigned in the second loop */ if (p->type == PA_DEVICE_PORT_TYPE_HEADPHONES) { if (p->availability_group) HEADSET_PORT_SET (h->headphones, p); } else if (p->type == PA_DEVICE_PORT_TYPE_SPEAKER) { HEADSET_PORT_SET (h->internalspk, p); } else if (p->type == PA_DEVICE_PORT_TYPE_MIC) { if (!p->availability_group) HEADSET_PORT_SET (h->internalmic, p); } #else // g_warning_once ("libgnome-volume-control running against PulseAudio %u, " // "but compiled against older %d, report a bug to your distribution", // control->priv->server_protocol_version, // PA_PROTOCOL_VERSION); #endif // } } return h; } gboolean UkmediaMainWidget::verifyAlsaCard (int cardindex, gboolean *headsetmic, gboolean *headphonemic) { char *ctlstr; snd_hctl_t *hctl; snd_ctl_elem_id_t *id; int err; *headsetmic = FALSE; *headphonemic = FALSE; ctlstr = g_strdup_printf ("hw:%i", cardindex); if ((err = snd_hctl_open (&hctl, ctlstr, 0)) < 0) { g_warning ("snd_hctl_open failed: %s", snd_strerror(err)); g_free (ctlstr); return FALSE; } g_free (ctlstr); if ((err = snd_hctl_load (hctl)) < 0) { // if (hasNo && !hasOther) g_warning ("snd_hctl_load failed: %s", snd_strerror(err)); snd_hctl_close (hctl); return FALSE; } snd_ctl_elem_id_alloca (&id); snd_ctl_elem_id_clear (id); snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); snd_ctl_elem_id_set_name (id, "Headphone Mic Jack"); if (snd_hctl_find_elem (hctl, id)) *headphonemic = TRUE; snd_ctl_elem_id_clear (id); snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); snd_ctl_elem_id_set_name (id, "Headset Mic Phantom Jack"); if (snd_hctl_find_elem (hctl, id)) *headsetmic = TRUE; if (*headphonemic) { snd_ctl_elem_id_clear (id); snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); snd_ctl_elem_id_set_name (id, "Headset Mic Jack"); if (snd_hctl_find_elem (hctl, id)) *headsetmic = TRUE; } snd_hctl_close (hctl); return *headsetmic || *headphonemic; } void UkmediaMainWidget::checkAudioDeviceSelectionNeeded (const pa_card_info *info) { headsetPorts *h; gboolean start_dialog, stop_dialog; qDebug() << "check_audio_device_selection_needed" <name; start_dialog = FALSE; stop_dialog = FALSE; h = getHeadsetPorts (info); if (!h->headphones || (!h->headsetmic && !h->headphonemic)) { qDebug() << "no headset jack" ; isPlay = false; /* Not a headset jack */ goto out; } else { qDebug() << "headset jack" << h->headphonemic << h->headphones; } if (headsetCard != (int) info->index) { int cardindex; gboolean hsmic = TRUE; gboolean hpmic = TRUE; const char *s; s = pa_proplist_gets (info->proplist, "alsa.card"); if (!s) goto out; cardindex = strtol (s, NULL, 10); if (cardindex == 0 && strcmp(s, "0") != 0) goto out; if (!verifyAlsaCard(cardindex, &hsmic, &hpmic)) goto out; headsetCard = info->index; hasHeadsetmic = hsmic && h->headsetmic; hasHeadphonemic = hpmic && h->headphonemic; } else { start_dialog = (h->headphones->available != PA_PORT_AVAILABLE_NO) && !headsetPluggedIn; stop_dialog = (h->headphones->available == PA_PORT_AVAILABLE_NO) && headsetPluggedIn; } headsetPluggedIn = h->headphones->available != PA_PORT_AVAILABLE_NO; m_pHeadphonesName = GET_PORT_NAME(h->headphones); m_pHeadsetmicName = GET_PORT_NAME(h->headsetmic); m_pHeadphonemicName = GET_PORT_NAME(h->headphonemic); m_pInternalspkName = GET_PORT_NAME(h->internalspk); m_pInternalmicName = GET_PORT_NAME(h->internalmic); if (firstLoad) firstLoad = false; else { if (headsetPluggedIn) { headsetWidget->showWindow(); } else { if (headsetWidget->isShow) { headsetWidget->hide(); headsetWidget->isShow = false; } } } qDebug() << "check_audio_device_selection_needed" <defaultSinkName); qDebug() << "ctf ----- onPrepareForSleep" << sleep << m_pVolumeControl->defaultSinkName; if(sleep) { cmd.append(" 1"); system(cmd.toLatin1().data()); // pa_context_suspend_sink_by_name(m_pVolumeControl->getContext(),m_pVolumeControl->defaultSinkName,1,nullptr,nullptr); uninhibit(); } else { cmd.append(" 0"); system(cmd.toLatin1().data()); // pa_context_suspend_sink_by_name(m_pVolumeControl->getContext(),m_pVolumeControl->defaultSinkName,0,nullptr,nullptr); inhibit(); } } /* 输出设备提示弹窗 */ void UkmediaMainWidget::deviceChangedShowSlot(QString dev_name) { osdWidget->setIcon(dev_name); osdWidget->dialogShow(); } /* * 更新设备端口 */ void UkmediaMainWidget::updateDevicePort() { QMap>::iterator it; QMap::iterator at; QMap temp; currentInputPortLabelMap.clear(); currentOutputPortLabelMap.clear(); if (firstEntry == true) { for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) { temp = it.value(); for (at=temp.begin();at!=temp.end();) { qDebug() << "updateDevicePort" << firstEntry << it.key() << at.value() <cardMap); addOutputListWidgetItem(at.key(),at.value(),cardName); ++at; } ++it; } for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) { temp = it.value(); for (at=temp.begin();at!=temp.end();) { qDebug() << "updateDevicePort" << firstEntry << it.key() << at.value(); QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); addInputListWidgetItem(at.value(),cardName); ++at; } ++it; } } else { //记录上一次output label for (int i=0;im_pOutputListWidget->count();i++) { QMap::iterator at; QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(i); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); int index; for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { if (wid->deviceLabel->text() == at.value()) { index = at.key(); break; } ++at; } currentOutputPortLabelMap.insertMulti(index,wid->portLabel->fullText); // qDebug() << index << "current output item ************" << wid->deviceLabel->text() <portLabel->text() ;//<< w->m_pOutputPortLabelList->at(i); } for (int i=0;im_pInputListWidget->count();i++) { QListWidgetItem *item = systemWidget->m_pInputListWidget->item(i); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); int index; int count; QMap::iterator at; for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { if (wid->deviceLabel->text() == at.value()) { index = at.key(); break; } ++at; ++count; } currentInputPortLabelMap.insertMulti(index,wid->portLabel->fullText); } systemWidget->m_pInputListWidget->blockSignals(true); deleteNotAvailableOutputPort(); addAvailableOutputPort(); deleteNotAvailableInputPort(); addAvailableInputPort(); systemWidget->m_pInputListWidget->blockSignals(false); } if (systemWidget->m_pOutputListWidget->count() > 0 /*|| m_pInputWidget->m_pInputListWidget->count()*/) { firstEntry = false; } } void UkmediaMainWidget::updateListWidgetItemSlot() { qDebug() << "updateListWidgetItemSlot---------"; initOutputListWidgetItem(); initInputListWidgetItem(); themeChangeIcons(); switchModuleEchoCancel(); // switchModuleLoopBack(); } /* * output list widget选项改变,设置对应的输出设备 */ void UkmediaMainWidget::outputListWidgetCurrentRowChangedSlot(int row) { //当所有可用的输出设备全部移除,台式机才会出现该情况 if (row == -1) return; QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); if (item == nullptr) { qDebug() <<"output current item is null"; } UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); QListWidgetItem *inputCurrrentItem = systemWidget->m_pInputListWidget->currentItem(); UkuiListWidgetItem *inputWid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(inputCurrrentItem); bool isContainBlue = inputDeviceContainBluetooth(); setDeviceButtonState(row); //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink if (isContainBlue && (strstr(m_pVolumeControl->defaultSourceName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_sink"))) { QString cardName = blueCardName(); setCardProfile(cardName,"a2dp_sink"); } QStringList comboboxPortNameList = wid->portLabel->text().split("("); QStringList inputComboboxPortNameList; if(inputWid) inputComboboxPortNameList = inputWid->portLabel->text().split("("); QMap>::iterator outputProfileMap; QMap>::iterator inputProfileMap; QMap tempMap; QMap::iterator at; QString endOutputProfile = ""; QString endInputProfile = ""; int currentCardIndex = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); int count,i; for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { if(currentCardIndex == outputProfileMap.key()){ tempMap = outputProfileMap.value(); for(at=tempMap.begin(),i=0;at!= tempMap.end();++i){ if (at.key() == comboboxPortNameList.at(0)) { count = i; endOutputProfile = at.value(); } ++at; } } ++outputProfileMap; } if (inputCurrrentItem != nullptr) { QMap ::iterator it; QMap temp; int index = findCardIndex(inputWid->deviceLabel->text(),m_pVolumeControl->cardMap); for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin(),count=0;inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();count++) { if (inputProfileMap.key() == index) { temp = inputProfileMap.value(); for(it=temp.begin();it!=temp.end();){ if(it.key() == inputComboboxPortNameList.at(0)){ endInputProfile = it.value(); } ++it; } } ++inputProfileMap; } } qDebug() << "outputListWidgetCurrentRowChangedSlot" << row << wid->deviceLabel->text() << endOutputProfile <deviceLabel->text() == inputWid->deviceLabel->text()) || \ wid->deviceLabel->text() == "alsa_card.platform-sound_DA_combine_v5" && inputWid->deviceLabel->text() == "3a.algo") { QString setProfile = endOutputProfile; if (!endOutputProfile.contains("input:analog-stereo") || !endOutputProfile.contains("HiFi")) { setProfile += "+"; setProfile +=endInputProfile; } setCardProfile(wid->deviceLabel->text(),setProfile); setDefaultOutputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); } //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 else { int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); QMap >::iterator it; QString profileName; for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { if (it.key() == index) { if (strstr(endOutputProfile.toLatin1().data(),"headset_head_unit")) endOutputProfile = "a2dp_sink"; profileName = findHighPriorityProfile(index,endOutputProfile); } ++it; } QString setProfile = profileName; setCardProfile(wid->deviceLabel->text(),setProfile); setDefaultOutputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); } qDebug() << "active output port:" << wid->portLabel->fullText << wid->deviceLabel->text(); } /* * input list widget选项改变,设置对应的输入设备 */ void UkmediaMainWidget::inputListWidgetCurrentRowChangedSlot(int row) { //当所有可用的输入设备全部移除,台式机才会出现该情况 if (row == -1) return; QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); QListWidgetItem *outputCurrrentItem = systemWidget->m_pOutputListWidget->currentItem(); UkuiListWidgetItem *outputWid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(outputCurrrentItem); bool isContainBlue = inputDeviceContainBluetooth(); qDebug() << "inputListWidgetCurrentRowChangedSlot" << row << isContainBlue << m_pVolumeControl->defaultSourceName; //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink if (isContainBlue && (strstr(m_pVolumeControl->defaultSinkName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_source"))) { QString cardName = blueCardName(); setCardProfile(cardName,"a2dp_sink"); } if(wid->deviceLabel->text().contains("bluez_card")) { isCheckBluetoothInput = true; } else { isCheckBluetoothInput = false; } QMap>::iterator inputProfileMap; QMap>::iterator outputProfileMap; QMap temp; QMap::iterator at; QString endOutputProfile = ""; QString endInputProfile = ""; int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); QStringList inputcomboboxPortNameList = wid->portLabel->text().split("(");//新增设计combobox需要显示 端口名+(description) QStringList comboboxPortNameList = outputWid->portLabel->text().split("(");//新增设计combobox需要显示 端口名+(description) for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin();inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();) { if (inputProfileMap.key() == index) { temp = inputProfileMap.value(); for(at = temp.begin();at != temp.end();){ if(at.value() == inputcomboboxPortNameList.at(0)){ endInputProfile = at.value(); } ++at; } } ++inputProfileMap; } if (outputCurrrentItem != nullptr) { QMap ::iterator it; QMap temp; int index = findCardIndex(outputWid->deviceLabel->text(),m_pVolumeControl->cardMap); for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { if (outputProfileMap.key() == index) { temp = outputProfileMap.value(); for(it=temp.begin();it!=temp.end();){ if(it.key() == comboboxPortNameList.at(0)){ endOutputProfile = it.value(); } ++it; } } ++outputProfileMap; } } //如果选择的输入输出设备为同一个声卡,则追加指定输入输出端口属于的配置文件 if (outputCurrrentItem != nullptr && wid->deviceLabel->text() == outputWid->deviceLabel->text()) { QString setProfile; //有些声卡的配置文件默认只有输入/输出设备或者配置文件包含了输出输入设备,因此只需要取其中一个配置文件即可 if (endOutputProfile == "a2dp-sink" || endInputProfile == "headset_head_unit" || endOutputProfile == "HiFi" ) { setProfile += endInputProfile; } else { setProfile += endOutputProfile; setProfile += "+"; setProfile +=endInputProfile; } setCardProfile(wid->deviceLabel->text(),setProfile); setDefaultInputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); } //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 else { int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); QMap >::iterator it; QString profileName; for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { if (it.key() == index) { QStringList list= it.value(); profileName = findHighPriorityProfile(index,endInputProfile); if (list.contains(endOutputProfile)) { } } ++it; } QString setProfile = profileName; setCardProfile(wid->deviceLabel->text(),setProfile); setDefaultInputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); } qDebug() << "active input port:" << wid->portLabel->fullText << isCheckBluetoothInput; } void UkmediaMainWidget::updateAppVolume(QString str, int value, bool state) { qDebug() << "update app volume" << isFirstRecive << str << value <findChild(str); if (slider == nullptr) { found = false; } if (found) { kylinVideoVolumeSignal = true; if(slider->value() == value) kylinVideoVolumeSignal = false; slider->setValue(value); } else value = -1; qDebug() << "found app slider, set value ----" << value; QPushButton *btn = appWidget->findChild(str); if (btn == nullptr) { found = false; } else { qDebug() << "founded app mute button ------------" << str << state; isAppMuteBtnPress = true; sinkInputMute = state; kylinVideoMuteSignal = true; btn->setChecked(true); btn->click(); } QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); message<m_pOutputListWidget->count(); QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pOutputListWidget); item->setSizeHint(QSize(200,48)); itemW->setButtonIcon(portName); itemW->setLabelText(portLabel,cardName); systemWidget->m_pOutputListWidget->blockSignals(true); systemWidget->m_pOutputListWidget->setItemWidget(item, itemW); systemWidget->m_pOutputListWidget->insertItem(i,item); systemWidget->m_pOutputListWidget->blockSignals(false); connect(itemW->deviceButton, &QPushButton::clicked, this, [=](){ if(!itemW->deviceButton->isChecked()){ itemW->deviceButton->setChecked(true); } else{ systemWidget->m_pOutputListWidget->setCurrentRow(i); outputListWidgetCurrentRowChangedSlot(systemWidget->m_pOutputListWidget->currentRow()); outputListWidgetRow = systemWidget->m_pOutputListWidget->currentRow(); } }); } void UkmediaMainWidget::setDeviceButtonState(int row) { for (int i=0;im_pOutputListWidget->count();i++) { QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(i); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); if (i == row){ if(!wid->deviceButton->isChecked()) wid->deviceButton->setChecked(true); continue; } wid->deviceButton->setChecked(false); } } /* * 添加input port到input list widget */ void UkmediaMainWidget::addInputListWidgetItem(QString portName, QString cardName) { UkuiListWidgetItem *itemW = new UkuiListWidgetItem(this); int i = systemWidget->m_pInputListWidget->count(); QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pInputListWidget); item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; systemWidget->m_pInputListWidget->blockSignals(true); systemWidget->m_pInputListWidget->setItemWidget(item, itemW); systemWidget->m_pInputListWidget->blockSignals(false); itemW->setLabelText(portName,cardName); itemW->setButtonIcon(portName); systemWidget->m_pInputListWidget->blockSignals(true); systemWidget->m_pInputListWidget->insertItem(i,item); systemWidget->m_pInputListWidget->blockSignals(false); } int UkmediaMainWidget::indexOfOutputPortInOutputListWidget(QString portName) { for (int row=0;rowm_pOutputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); if (wid->portLabel->fullText == portName) { return row; } } return -1; } int UkmediaMainWidget::indexOfInputPortInInputListWidget(QString portName) { for (int row=0;rowm_pInputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); if (wid->portLabel->fullText == portName) { return row; } } return -1; } /* * 当前的输出端口是否应该在output list widget上删除 */ bool UkmediaMainWidget::outputPortIsNeedDelete(int index, QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; // qDebug() << "outputPortIsNeedDelete" << index << name; for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (name == at.value()) { return false; } ++at; } } ++it; } return true; } /* * 当前的输出端口是否应该添加到output list widget上 */ bool UkmediaMainWidget::outputPortIsNeedAdd(int index, QString name) { QMap::iterator it; for(it=currentOutputPortLabelMap.begin();it!=currentOutputPortLabelMap.end();) { if ( index == it.key() && name == it.value()) { return false; } ++it; } return true; } /* * 当前的输出端口是否应该在input list widget上删除 */ bool UkmediaMainWidget::inputPortIsNeedDelete(int index, QString name) { QMap>::iterator it; QMap::iterator at; QMap portMap; for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (at=portMap.begin();at!=portMap.end();) { if (name == at.value()) { return false; } ++at; } } ++it; } return true; } /* * 当前的输出端口是否应该添加到input list widget上 */ bool UkmediaMainWidget::inputPortIsNeedAdd(int index, QString name) { QMap::iterator it; for(it=currentInputPortLabelMap.begin();it!=currentInputPortLabelMap.end();) { if ( index == it.key() && name == it.value()) { return false; } ++it; } return true; } /* * 移除output list widget上不可用的输出端口 */ void UkmediaMainWidget::deleteNotAvailableOutputPort() { qDebug() << "deleteNotAvailableOutputPort"; QMap::iterator it; for(it=currentOutputPortLabelMap.begin();it!=currentOutputPortLabelMap.end();) { if (outputPortIsNeedDelete(it.key(),it.value())) { qDebug() << "outputPortIsNeedDelete" << it.key() << it.value(); int index = indexOfOutputPortInOutputListWidget(it.value()); if (index == -1) return; systemWidget->m_pOutputListWidget->blockSignals(true); QListWidgetItem *item = systemWidget->m_pOutputListWidget->takeItem(index); systemWidget->m_pOutputListWidget->removeItemWidget(item); systemWidget->m_pOutputListWidget->blockSignals(false); it = currentOutputPortLabelMap.erase(it); continue; } ++it; } // m_pVolumeControl->removeProfileMap(); } /* * 添加可用的输出端口到output list widget */ void UkmediaMainWidget::addAvailableOutputPort() { QMap>::iterator at; QMap::iterator it; QMap tempMap; //增加端口 for(at=m_pVolumeControl->outputPortMap.begin();at!=m_pVolumeControl->outputPortMap.end();) { tempMap = at.value(); for (it=tempMap.begin();it!=tempMap.end();) { if (outputPortIsNeedAdd(at.key(),it.value())) { qDebug() << "add output list widget" << at.key()<< it.value() << it.key(); addOutputListWidgetItem(it.key(),it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); currentOutputPortLabelMap.insertMulti(at.key(),it.value()); } ++it; } ++at; } } /* * 在input list widget删除不可用的端口 */ void UkmediaMainWidget::deleteNotAvailableInputPort() { //删除不可用的输入端口 QMap::iterator it; for(it=currentInputPortLabelMap.begin();it!=currentInputPortLabelMap.end();) { //没找到,需要删除 if (inputPortIsNeedDelete(it.key(),it.value())) { int index = indexOfInputPortInInputListWidget(it.value()); if (index == -1) return; systemWidget->m_pInputListWidget->blockSignals(true); QListWidgetItem *item = systemWidget->m_pInputListWidget->takeItem(index); systemWidget->m_pInputListWidget->removeItemWidget(item); systemWidget->m_pInputListWidget->blockSignals(false); it = currentInputPortLabelMap.erase(it); continue; } ++it; } // m_pVolumeControl->removeInputProfile(); } /* * 添加可用的输入端口到input list widget */ void UkmediaMainWidget::addAvailableInputPort() { QMap>::iterator at; QMap::iterator it; QMap tempMap; int i = systemWidget->m_pInputListWidget->count(); //增加端口 for(at=m_pVolumeControl->inputPortMap.begin();at!=m_pVolumeControl->inputPortMap.end();) { tempMap = at.value(); for (it=tempMap.begin();it!=tempMap.end();) { //需添加到list widget if (inputPortIsNeedAdd(at.key(),it.value())) { UkuiListWidgetItem *itemW = new UkuiListWidgetItem(this); QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pInputListWidget); item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; systemWidget->m_pInputListWidget->blockSignals(true); systemWidget->m_pInputListWidget->setItemWidget(item, itemW); systemWidget->m_pInputListWidget->blockSignals(false); itemW->setLabelText(it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); currentInputPortLabelMap.insertMulti(at.key(),it.value()); systemWidget->m_pInputListWidget->blockSignals(true); systemWidget->m_pInputListWidget->insertItem(i,item); systemWidget->m_pInputListWidget->blockSignals(false); } ++it; } ++at; } } //查找指定声卡名的索引 int UkmediaMainWidget::findCardIndex(QString cardName, QMap cardMap) { QMap::iterator it; for(it=cardMap.begin();it!=cardMap.end();) { if (it.value() == cardName) { return it.key(); } ++it; } return -1; } /* * 根据声卡索引查找声卡名 */ QString UkmediaMainWidget::findCardName(int index,QMap cardMap) { QMap::iterator it; for(it=cardMap.begin();it!=cardMap.end();) { if (it.key() == index) { return it.value(); } ++it; } return ""; } QString UkmediaMainWidget::findHighPriorityProfile(int index,QString profile) { QMap>::iterator it; int priority = 0; QString profileName = ""; QMap profileNameMap; QMap::iterator tempMap; QString cardStr = findCardName(index,m_pVolumeControl->cardMap); QString profileStr = findCardActiveProfile(index) ; QStringList list = profileStr.split("+"); QString includeProfile = ""; if (list.count() >1) { if (profile.contains("output")) { includeProfile = list.at(1); } else if (profile.contains("input")){ includeProfile = list.at(0); } qDebug() << "profile str" <cardProfilePriorityMap.begin();it!=m_pVolumeControl->cardProfilePriorityMap.end();) { if (it.key() == index) { profileNameMap = it.value(); for (tempMap=profileNameMap.begin();tempMap!=profileNameMap.end();) { // qDebug() << "findHighPriorityProfile" << includeProfile < priority) { priority = tempMap.value(); profileName = tempMap.key(); } ++tempMap; } } ++it; } qDebug() << "profile str----------" <>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString sinkStr = ""; for (it=m_pVolumeControl->sinkPortMap.begin();it!=m_pVolumeControl->sinkPortMap.end();) { if(it.key() == index) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.value() == portName) { sinkStr = tempMap.key(); // qDebug() <<"find port sink" << tempMap.value() << portName << tempMap.key() <>::iterator it; QMap portNameMap; QMap::iterator tempMap; QString sourceStr = ""; for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { if(it.key() == index) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { qDebug() << "findportsource ===" <>::iterator it; QMapportMap; QMap::iterator tempMap; QString portName = ""; for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.value() == portLabel) { portName = tempMap.key(); break; } ++tempMap; } } ++it; } return portName; } /* 查找名称为PortName 的portLabel */ QString UkmediaMainWidget::findOutputPortLabel(int index,QString portName) { QMap>::iterator it; QMapportMap; QMap::iterator tempMap; QString portLabel = ""; for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { // qDebug() <<"findOutputPortLabel" <>::iterator it; QMapportMap; QMap::iterator tempMap; QString portName = ""; for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.value() == portLabel) { portName = tempMap.key(); break; } ++tempMap; } } ++it; } return portName; } /* 查找名称为PortName 的portLabel */ QString UkmediaMainWidget::findInputPortLabel(int index,QString portName) { QMap>::iterator it; QMapportMap; QMap::iterator tempMap; QString portLabel = ""; for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { if (it.key() == index) { portMap = it.value(); for (tempMap = portMap.begin();tempMap!=portMap.end();) { if (tempMap.key() == portName) { portLabel = tempMap.value(); break; } ++tempMap; } } ++it; } return portLabel; } /* * 设置声卡的配置文件 */ void UkmediaMainWidget::setCardProfile(QString name, QString profile) { int index = findCardIndex(name,m_pVolumeControl->cardMap); m_pVolumeControl->setCardProfile(index,profile.toLatin1().data()); } /* * 设置默认的输出设备端口 */ void UkmediaMainWidget::setDefaultOutputPortDevice(QString devName, QString portName) { int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); QString portStr = findOutputPortName(cardIndex,portName); QTimer *timer = new QTimer; timer->start(100); connect(timer,&QTimer::timeout,[=](){ QString sinkStr = findPortSink(cardIndex,portStr); /*默认的stream 和设置的stream相同 需要更新端口*/ if (strcmp(sinkStr.toLatin1().data(),m_pVolumeControl->defaultSinkName) == 0) { m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); } else { m_pVolumeControl->setDefaultSink(sinkStr.toLatin1().data()); m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); } qDebug() << "setDefaultOutputPortDevice" << "cardIndex:" << cardIndex << "portStr:" << portStr << "sinkStr:" << sinkStr; delete timer; }); } /* * 设置默认的输入设备端口 */ void UkmediaMainWidget::setDefaultInputPortDevice(QString devName, QString portName) { int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); QString portStr = findInputPortName(cardIndex,portName); QString sourceStr = findPortSource(cardIndex,portStr); /*默认的stream 和设置的stream相同 需要更新端口*/ if (strcmp(sourceStr.toLatin1().data(),m_pVolumeControl->defaultSourceName) == 0) { m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); } else { m_pVolumeControl->setDefaultSource(sourceStr.toLatin1().data()); m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); } qDebug() << "set default input" << portName <::iterator it; for (it=m_pVolumeControl->cardActiveProfileMap.begin();it!=m_pVolumeControl->cardActiveProfileMap.end();) { if (it.key() == index) { activeProfileName = it.value(); break; } ++it; } return activeProfileName; } void UkmediaMainWidget::findOutputListWidgetItem(QString cardName,QString portLabel) { for (int row=0;rowm_pOutputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); qDebug() << "findOutputListWidgetItem" << "cardName:" << cardName << wid->deviceLabel->text() << "portName:" << portLabel << wid->portLabel->fullText; if (wid->deviceLabel->text() == cardName && portLabel == wid->portLabel->fullText) { systemWidget->m_pOutputListWidget->blockSignals(true); systemWidget->m_pOutputListWidget->setCurrentRow(row); setDeviceButtonState(row); systemWidget->m_pOutputListWidget->blockSignals(false); wid->deviceButton->repaint(); break; } else if (wid->deviceLabel->text() == cardName && wid->portLabel->fullText.contains("HUAWEI Histen")) { systemWidget->m_pOutputListWidget->blockSignals(true); systemWidget->m_pOutputListWidget->setCurrentRow(row); setDeviceButtonState(row); systemWidget->m_pOutputListWidget->blockSignals(false); wid->deviceButton->repaint(); break; } } // if(!m_pVolumeControl->customSoundFile->isExist(m_pVolumeControl->sinkPortName) && m_pVolumeControl->sinkPortName != "") // QTimer::singleShot(50, this, SLOT(initDefaultSinkVolume())); } void UkmediaMainWidget::findInputListWidgetItem(QString cardName,QString portLabel) { for (int row=0;rowm_pInputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); qDebug() << "findInputListWidgetItem" << "card name:" << cardName << "deviceLabel:" << wid->deviceLabel->text() << "portname" << portLabel << "portLabel:" << wid->portLabel->fullText ; if (wid->deviceLabel->text() == cardName && wid->portLabel->fullText == portLabel) { systemWidget->m_pInputListWidget->blockSignals(true); systemWidget->m_pInputListWidget->setCurrentRow(row); systemWidget->m_pInputListWidget->blockSignals(false); if (wid->deviceLabel->text().contains("bluez_card")) isCheckBluetoothInput = true; qDebug() << "set input list widget" << row; break; } } if(!m_pVolumeControl->customSoundFile->isExist(m_pVolumeControl->sourcePortName) && m_pVolumeControl->sourcePortName != "") QTimer::singleShot(50, this, SLOT(initDefaultSourceVolume())); } /* * 输入设备中是否包含蓝牙设备 */ bool UkmediaMainWidget::inputDeviceContainBluetooth() { for (int row=0;rowm_pInputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); if (wid->deviceLabel->text().contains("bluez")) { return true; } } return false; } /* * 移除xml文件中不能识别的字符 */ QString UkmediaMainWidget::stringRemoveUnrecignizedChar(QString str) { str.remove(" "); str.remove("/"); str.remove("("); str.remove(")"); str.remove("["); str.remove("]"); return str; } QString UkmediaMainWidget::blueCardName() { for (int row=0;rowm_pInputListWidget->count();row++) { QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); if (wid->deviceLabel->text().contains("bluez")) { return wid->deviceLabel->text(); } } return ""; } /** * @brief MainWindow::keyPressEvent 按esc键关闭主界面 * @param event */ void UkmediaMainWidget::keyPressEvent(QKeyEvent *event) { if (event->key() == Qt::Key_Escape) { hideWindow(); } return QWidget::keyPressEvent(event); } /* *在path路径下找包含str字段的文件名(暂时用来寻找wine微信) */ QString UkmediaMainWidget::findFile(const QString path,QString str) { QDir dir(path); QString filename = ""; if(!dir.exists()) { return ""; } //获取filePath下所有文件夹和文件 dir.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);//文件夹|文件|不包含./和../ //排序文件夹优先 dir.setSorting(QDir::DirsFirst); QStringList filer; QStringList list= dir.entryList(filer, QDir::Files | QDir::NoDotAndDotDot); if(list.size() == 0) { return ""; } for(int i = 0; i < list.size(); i++) { QFileInfo fileInfo = list.at(i); if(fileInfo.isDir())//判断是否为文件夹 { findFile(fileInfo.filePath(),str);//递归开始 } else { if(fileInfo.fileName().contains(str) && !fileInfo.fileName().contains("企业微信") && !fileInfo.fileName().contains("卸载微信"))//设定后缀 { filename = fileInfo.fileName(); qDebug() << "在/usr/share/applications/找到文件" << filename; break; } } } return filename; } void UkmediaMainWidget::inhibit() { if (m_inhibitFileDescriptor.isValid()) { return; } QDBusMessage message = QDBusMessage::createMethodCall("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QStringLiteral("Inhibit")); message.setArguments(QVariantList({QStringLiteral("sleep"), "Screen Locker", "Ensuring that the screen gets locked before going to sleep", QStringLiteral("delay")})); QDBusPendingReply reply = QDBusConnection::systemBus().call(message); if (!reply.isValid()) { return; } reply.value().swap(m_inhibitFileDescriptor); } void UkmediaMainWidget::uninhibit() { if (!m_inhibitFileDescriptor.isValid()) { return; } m_inhibitFileDescriptor = QDBusUnixFileDescriptor(); } void UkmediaMainWidget::switchModuleEchoCancel() { bool sourceState = false; bool switchState = false; if (m_pSoundSettings->keys().contains("dnsNoiseReduction")) switchState = m_pSoundSettings->get(DNS_NOISE_REDUCTION).toBool(); if ( strstr(m_pVolumeControl->defaultSourceName,"alsa_input") && !strstr(m_pVolumeControl->defaultSourceName,"input.usb")) sourceState = true; //bug#164728 【声音】【蓝牙】当输入设备设置为蓝牙(此时为headset_unit协议),此时切换输出设备应将输入设备同样设置为非蓝牙 //华为机器,降噪会把主设备映射到蓝牙sink上(bluez_sink.***.a2dp_sink、bt_sco_sink),所以华为机器不加载降噪模块 bool huawei_3a = false; QMap>::iterator it; QMap portNameMap; QMap::iterator tempMap; for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { portNameMap = it.value(); for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { if (tempMap.key() == "3a_source") { huawei_3a = true; break; } ++tempMap; } ++it; } qDebug() << "switchModuleEchoCancel" << "loadechocancel"<< isLoadEchoCancel << m_pVolumeControl->defaultSourceName << switchState << sourceState; if ((switchState && sourceState) && !huawei_3a) { pa_operation *o; qDebug() << "load module echo cancel"; isLoadEchoCancel = true; if (!(o=pa_context_load_module(m_pVolumeControl->getContext(),"module-echo-cancel","use_master_format=1 aec_method=webrtc aec_args=analog_gain_control=0 source_name=noiseReduceSource",nullptr,nullptr))) { m_pVolumeControl->showError(QObject::tr("pa_context_load_module() failed").toUtf8().constData()); } m_pVolumeControl->setDefaultSource("noiseReduceSource"); } else if ((strstr(m_pVolumeControl->defaultSourceName,"noiseReduceSource") && !switchState) || huawei_3a) { isLoadEchoCancel = false; m_pVolumeControl->getModuleIndexByName("module-echo-cancel"); QTimer::singleShot(300,this,[=](){ qDebug() << "unload module echo cancel" << m_pVolumeControl->findModuleIndex; pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr); }); } else { isLoadEchoCancel = false; } } void UkmediaMainWidget::switchModuleLoopBack() { bool loopbackState = false; if (m_pSoundSettings->keys().contains(LOOP_BACK)) { loopbackState = m_pSoundSettings->get(LOOP_BACK).toBool(); } if (loopbackState && !m_pVolumeControl->sourceOutputIndexMap.values().contains("Loopback")) { pa_operation *o; qDebug() << "load module loopback"; if (!(o=pa_context_load_module(m_pVolumeControl->getContext(),"module-loopback",nullptr,nullptr,nullptr))) { m_pVolumeControl->showError(QObject::tr("pa_context_load_module() failed").toUtf8().constData()); } m_pVolumeControl->isLoadLoopback = true; } else if (!loopbackState){ m_pVolumeControl->getModuleIndexByName("module-loopback"); QTimer::singleShot(300,this,[=](){ qDebug() << "unload module loopback" << m_pVolumeControl->findModuleIndex; pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr); }); m_pVolumeControl->isLoadLoopback = false; } } /** * @brief UkmediaMainWidget::resetVolumeSliderRange * 重置系统音量滑动条范围(音量增强) * gsetting keys: volume-increase, volume-increase-value * volume-increase: 音量增强开关 * volume-increase: 音量增强最大值 **/ void UkmediaMainWidget::resetVolumeSliderRange() { if (m_pSoundSettings->keys().contains("volumeIncrease")) { if(m_pSoundSettings->get(VOLUME_INCREASE).toBool()) { int max_value = m_pSoundSettings->get(VOLUME_INCREASE_VALUE).toInt(); appWidget->systemVolumeSlider->setRange(0,max_value); systemWidget->m_pSystemVolumeSlider->setRange(0,max_value); } else { appWidget->systemVolumeSlider->setRange(0,100); systemWidget->m_pSystemVolumeSlider->setRange(0,100); } } } void UkmediaMainWidget::switchMonoAudio() { bool monoAudioState = false; if (m_pSoundSettings->keys().contains("monoAudio")) monoAudioState = m_pSoundSettings->get(MONO_AUDIO).toBool(); // pactl load-module module-remap-sink sink_name=mono channels=2 channel_map=mono,monomonoAudioState = false; m_pVolumeControl->getModuleIndexByName("module-remap-sink"); if(monoAudioState) { pa_operation *o; if (!(o=pa_context_load_module(m_pVolumeControl->getContext(),"module-remap-sink",\ "sink_name=mono channels=1 channel_map=mono",nullptr,nullptr))) { m_pVolumeControl->showError(QObject::tr("pa_context_load_module() failed").toUtf8().constData()); qDebug() << "load module-remap-sink module error" << monoAudioState << m_pVolumeControl->findModuleIndex; } m_pVolumeControl->setDefaultSink("mono"); qDebug() << "1 monoAudioState " << monoAudioState; } else { if(m_pVolumeControl->masterSinkDev!="") m_pVolumeControl->setDefaultSink(m_pVolumeControl->masterSinkDev.toLatin1().data()); QTimer::singleShot(300,this,[=](){ qDebug() << "unload module-remap-sink" << m_pVolumeControl->findModuleIndex; pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr); }); qDebug() << "0 monoAudioState " << monoAudioState<< "unload module-remap-sink" << m_pVolumeControl->findModuleIndex; } } void UkmediaMainWidget::monitorSessionStatus() { //get session path // m_sessionActiveBus = QDBusConnection::systemBus(); QString methodName; QVariantList args; methodName = QStringLiteral("GetSessionByPID"); args << (quint32) QCoreApplication::applicationPid(); QDBusMessage message = QDBusMessage::createMethodCall(m_sessionControllerService, m_sessionControllerPath, m_sessionControllerManagerInterface, methodName); message.setArguments(args); QDBusPendingReply session = QDBusConnection::systemBus().asyncCall(message); QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(session, this); connect(watcher, &QDBusPendingCallWatcher::finished, this, [this](QDBusPendingCallWatcher *self) { QDBusPendingReply reply = *self; self->deleteLater(); if (!reply.isValid()) { qDebug()<< "The session is not registered with " << m_sessionControllerName << " " << reply.error().message(); return; } m_sessionPath = reply.value().path(); qDebug() << "Session path:" << m_sessionPath; //get sessionactive QDBusConnection::systemBus().connect(m_sessionControllerService, m_sessionPath, m_sessionControllerPropertiesInterface, QStringLiteral("PropertiesChanged"), this, SLOT(getSessionActive())); }); } void UkmediaMainWidget::getSessionActive() { const static QString s_dbusPropertiesInterface = QStringLiteral("org.freedesktop.DBus.Properties"); QDBusMessage message = QDBusMessage::createMethodCall(m_sessionControllerService, m_sessionPath, s_dbusPropertiesInterface, QStringLiteral("Get")); message.setArguments(QVariantList({m_sessionControllerSessionInterface, m_sessionControllerActiveProperty})); QDBusPendingReply reply = QDBusConnection::systemBus().asyncCall(message); QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(reply, this); connect(watcher, &QDBusPendingCallWatcher::finished, this, [this](QDBusPendingCallWatcher *self) { QDBusPendingReply reply = *self; self->deleteLater(); if (!reply.isValid()) { qDebug() << "Failed to get Active Property of " << m_sessionControllerName << " session:" << reply.error().message(); return; } const bool active = reply.value().toBool(); onPrepareForSleep(!active); qDebug() << "active -----" <defaultSinkName == ""){ return "NULL"; } return m_pVolumeControl->defaultSinkName; } QString UkmediaMainWidget::getDefaultInputDevice() { if(m_pVolumeControl->defaultSourceName == ""){ return "NULL"; } return m_pVolumeControl->defaultSourceName; } QStringList UkmediaMainWidget::getAllOutputDevices() { QMap::iterator it; QStringList devicesList; for (it=m_pVolumeControl->sinkMap.begin();it!=m_pVolumeControl->sinkMap.end();) { devicesList.append(it.value()); ++it; } return devicesList; } QStringList UkmediaMainWidget::getAllInputDevices() { QMap::iterator it; QStringList devicesList; for (it=m_pVolumeControl->sourceMap.begin();it!=m_pVolumeControl->sourceMap.end();) { devicesList.append(it.value()); ++it; } return devicesList; } int UkmediaMainWidget::getDefaultOutputVolume() { int value = m_pVolumeControl->sinkVolume; if (m_pSoundSettings->keys().contains("volumeIncrease")) { if(m_pSoundSettings->get("volume-increase").toBool()) value = (m_pVolumeControl->sinkVolume / 1.25) +0.5; } return paVolumeToValue(value); } int UkmediaMainWidget::getDefaultInputVolume() { return paVolumeToValue(m_pVolumeControl->sourceVolume); } bool UkmediaMainWidget::getDefaultOutputMuteState() { return m_pVolumeControl->sinkMuted; } bool UkmediaMainWidget::getDefaultInputMuteState() { return m_pVolumeControl->sourceMuted; } bool UkmediaMainWidget::setDefaultOutputVolume(int value) { if(value < 0 || value > 100){ qDebug() << "setDefaultOutputVolume value is invalid!"; return false; } if (m_pSoundSettings->keys().contains("volumeIncrease")) { if(m_pSoundSettings->get("volume-increase").toBool()) value = (value * 1.25) +0.5; } m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,valueToPaVolume(value)); return true; } bool UkmediaMainWidget::setDefaultInputVolume(int value) { if(value < 0 || value > 100){ qDebug() << "setDefaultOutputVolume value is invalid!"; return false; } m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,valueToPaVolume(value)); return true; } bool UkmediaMainWidget::setDefaultOutputMuteState(bool mute) { if(mute == m_pVolumeControl->sinkMuted) return false; m_pVolumeControl->setSinkMute(mute); return true; } bool UkmediaMainWidget::setDefaultInputMuteState(bool mute) { if(mute == m_pVolumeControl->sourceMuted) return false; m_pVolumeControl->setSourceMute(mute); return true; } bool UkmediaMainWidget::setDefaultOutputDevice(QString deviceName) { QMap>::iterator it; QMap portNameMap; bool isSucceed = false; for (it=m_pVolumeControl->sinkPortMap.begin();it!=m_pVolumeControl->sinkPortMap.end();) { portNameMap = it.value(); if(portNameMap.keys().contains(deviceName)){ isSucceed = m_pVolumeControl->setDefaultSink(deviceName.toLatin1().data()); return isSucceed; } ++it; } return isSucceed; } bool UkmediaMainWidget::setDefaultInputDevice(QString deviceName) { QMap>::iterator it; QMap portNameMap; bool isSucceed = false; for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { portNameMap = it.value(); if(portNameMap.keys().contains(deviceName)){ isSucceed = m_pVolumeControl->setDefaultSource(deviceName.toLatin1().data()); return isSucceed; } ++it; } return isSucceed; } void UkmediaMainWidget::sendUpdateVolumeSignal(int soundType, int value) { switch (soundType) { case SoundType::SINK: Q_EMIT updateVolume(value); break; case SoundType::SOURCE: Q_EMIT updateSourceVolume(value); break; default: return; } } void UkmediaMainWidget::sendUpdateMuteSignal(int soundType, bool isMute) { switch (soundType) { case SoundType::SINK: Q_EMIT updateMute(isMute); break; case SoundType::SOURCE: Q_EMIT updateSourceMute(isMute); break; default: return; } } void UkmediaMainWidget::batteryLevelChanged(QString macAddr, int battery) { qDebug() << "batteryLevelChanged" << macAddr << battery; m_pBluetoothDbus->batteryLevel = battery; m_pBluetoothDbus->macAddress = macAddr; m_pBluetoothDbus->sendBatteryChangedSignal(macAddr, battery); } /** * @brief UkmediaMainWidget::initBlueDeviceVolume * 蓝牙耳机初始化音量(针对硬件音量反馈延迟处理) * signal: initBlueDeviceVolumeSig **/ void UkmediaMainWidget::initBlueDeviceVolume(int index, QString name) { QTimer *m_timer = new QTimer(); m_timer->start(200); connect(m_timer, &QTimer::timeout, this, [=]() { m_pVolumeControl->setSinkVolume(index, OUTPUT_VOLUME); m_pVolumeControl->customSoundFile->addXmlNode(name,false); m_timer->stop(); }); qDebug() << "Initialize the volume of the Bluetooth device " << index << name; } UkmediaMainWidget::~UkmediaMainWidget() { } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_custom_class.h0000644000175000017500000001626214565521701024557 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include #include #define MIDDLE_COLOR 178 #define BACKGROUND_COLOR QColor(0,0,0,0) class UkmediaTrayIcon : public QSystemTrayIcon { Q_OBJECT public: UkmediaTrayIcon(QWidget *parent = nullptr); ~UkmediaTrayIcon(); Q_SIGNALS: void wheelRollEventSignal(bool); protected: bool event(QEvent *e) ; }; class MyTimer : public QObject { Q_OBJECT public: MyTimer(QObject* parent = NULL); ~MyTimer(); void handleTimeout(); //超时处理函数 virtual void timerEvent( QTimerEvent *event); private: int m_nTimerID; Q_SIGNALS: void timeOut(); }; typedef struct UkuiThemeIcon { QImage image; QColor color; }UkuiThemeIcon; enum DisplayerMode{ MINI_MODE, ADVANCED_MODE }; enum PushButtonState{ PUSH_BUTTON_NORMAL, PUSH_BUTTON_CLICK, PUSH_BUTTON_PRESS }; static QColor symbolic_color = Qt::gray; class UkuiMediaSliderTipLabel:public QLabel { public: UkuiMediaSliderTipLabel(); ~UkuiMediaSliderTipLabel(); protected: void paintEvent(QPaintEvent*); }; class UkuiButtonDrawSvg:public QPushButton { Q_OBJECT public: UkuiButtonDrawSvg(QWidget *parent = nullptr); ~UkuiButtonDrawSvg(); QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); QRect IconGeometry(); void draw(QPaintEvent* e); void init(QImage image ,QColor color); friend class DeviceSwitchWidget; friend class UkmediaMainWidget; friend class UkmediaOsdDisplayWidget; friend class UkmediaSystemVolumeWidget; protected: void paintEvent(QPaintEvent *event); bool event(QEvent *e); private: int buttonState = PUSH_BUTTON_NORMAL; UkuiThemeIcon themeIcon; }; class UkuiApplicationWidget:public QWidget { Q_OBJECT public: UkuiApplicationWidget(QWidget *parent = nullptr); ~UkuiApplicationWidget(); protected: void paintEvent(QPaintEvent*); }; class UkuiMediaMuteButton:public QPushButton { Q_OBJECT public: UkuiMediaMuteButton(QWidget *parent = nullptr); ~UkuiMediaMuteButton(); friend class UkmediaMiniMasterVolumeWidget; friend class UkmediaMainWidget; friend class UkmediaSystemVolumeWidget; friend class ApplicationVolumeWidget; void setButtonIcon(const QIcon &icon); void setActive(const bool &isActive); void setDefaultPixmap(); enum PixmapColor { WHITE = 0, BLACK, GRAY, BLUE, }; const QPixmap loadSvg(const QPixmap &source, const PixmapColor &color); protected: void mousePressEvent(QMouseEvent *e)override; void mouseReleaseEvent(QMouseEvent *e)override; void paintEvent(QPaintEvent *event); void enterEvent(QEvent *e); void leaveEvent(QEvent *e); private: bool m_isActivated = false; QColor m_backgroundColor; QLabel * m_iconLabel = nullptr; QPixmap m_pixmap; void refreshButtonIcon(); int buttonState = PUSH_BUTTON_NORMAL; private Q_SLOTS: void onPaletteChanged(); }; class UkuiMediaButton:public QPushButton { Q_OBJECT public: UkuiMediaButton(QWidget *parent = nullptr); ~UkuiMediaButton(); friend class UkmediaMiniMasterVolumeWidget; friend class UkmediaMainWidget; friend class UkmediaSystemVolumeWidget; friend class ApplicationVolumeWidget; void setButtonIcon(const QIcon &icon); void setDefaultPixmap(); void setActive(const bool &isActive); enum PixmapColor { WHITE = 0, BLACK, GRAY, BLUE, }; const QPixmap loadSvg(const QPixmap &source, const PixmapColor &color); protected: void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *event)override; void mouseReleaseEvent(QMouseEvent *event)override; void enterEvent(QEvent *event); void leaveEvent(QEvent *event); private: int buttonState = PUSH_BUTTON_NORMAL; bool m_isActivated = false; QLabel * m_iconLabel = nullptr; QColor m_backgroundColor; QPixmap m_pixmap; void refreshButtonIcon(); private Q_SLOTS: void onPaletteChanged(); }; class UkuiSettingButton:public QLabel { Q_OBJECT public: UkuiSettingButton(QWidget *parent = nullptr); ~UkuiSettingButton(); friend class UkmediaMiniMasterVolumeWidget; friend class UkmediaMainWidget; friend class UkmediaSystemVolumeWidget; friend class ApplicationVolumeWidget; protected: void paintEvent(QPaintEvent *event); void enterEvent(QEvent *event); void leaveEvent(QEvent *event); void mousePressEvent(QMouseEvent *event); void mouseReleaseEvent(QMouseEvent *event); private: QColor m_foregroundColor; void setPressColor(); void setHoverColor(); void setNormalColor(); Q_SIGNALS: void clicked(void); private Q_SLOTS: void onPaletteChanged(); }; class UkmediaVolumeSlider : public QSlider { Q_OBJECT public: // UkmediaVolumeSlider(QWidget *parent = nullptr); UkmediaVolumeSlider(QWidget *parent = nullptr,bool needTip = false); void initStyleOption(QStyleOptionSlider *option); ~UkmediaVolumeSlider(); bool isMouseWheel = false; Q_SIGNALS: void silderPressSignal(); void silderReleaseSignal(); void blueValueChanged(int value); //针对蓝牙a2dp模式下滑动条跳动,以10为间隔设置音量 private: UkuiMediaSliderTipLabel *m_pTiplabel; bool state = false; bool mousePress = false; int blueValue = 0; void updateValue(QMouseEvent *e); protected: void mousePressEvent(QMouseEvent *e); void mouseReleaseEvent(QMouseEvent *e); void mouseMoveEvent(QMouseEvent *e); void wheelEvent(QWheelEvent *e); void keyReleaseEvent(QKeyEvent *e); void enterEvent(QEvent *e); void leaveEvent(QEvent *e); void paintEvent(QPaintEvent *e); }; //文本长自动省略并添加悬浮 class FixLabel : public QLabel { Q_OBJECT public: explicit FixLabel(QWidget *parent = nullptr); explicit FixLabel(QString text , QWidget *parent = nullptr); ~FixLabel(); void setText(const QString &text, bool saveTextFlag = true); QString fullText; private: void paintEvent(QPaintEvent *event); private: }; class Divider : public QFrame { public: Divider(QWidget * parent = nullptr); ~Divider() = default; protected: void paintEvent(QPaintEvent *event); }; #endif ukui-media-3.1.1.2/ukui-volume-control-applet-qt/main.cpp0000644000175000017500000000702614565521701021636 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include "ukmedia_main_widget.h" #include #include #include #include #include #include #include #include #include #include #include #include #include "xatom/xatom-helper.h" #include "windowmanager/windowmanager.h" int main(int argc, char *argv[]) { initUkuiLog4qt("ukui-media"); Display *display = XOpenDisplay(NULL); Screen *scrn = DefaultScreenOfDisplay(display); if(scrn == nullptr) { return 0; } #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); #endif #if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)) QApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::PassThrough); #endif QtSingleApplication app("ukui-volume-control-applet",argc,argv); if (app.isRunning()) { QDBusInterface interface("org.ukui.media", "/org/ukui/media", "org.ukui.media", QDBusConnection::sessionBus()); if (interface.isValid()) interface.call("advancedWidgetShow"); return EXIT_SUCCESS; } #ifndef QT_NO_TRANSLATION QString translatorFileName = QLatin1String("qt_"); translatorFileName += QLocale::system().name(); QTranslator *pTranslator = new QTranslator(); if (pTranslator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) app.installTranslator(pTranslator); #endif //加载qm文件 QTranslator translator; translator.load("/usr/share/ukui-media/translations/" + QLocale::system().name()); app.installTranslator(&translator); //加载qss文件 QFile qss(":/data/qss/ukuimedia.qss"); qss.open(QFile::ReadOnly); qss.close(); UkmediaMainWidget w; app.setActivationWindow(&w); w.setProperty("useStyleWindowManager", false); //禁用拖动 QString platform = QGuiApplication::platformName(); if(!platform.startsWith(QLatin1String("wayland"),Qt::CaseInsensitive)){ MotifWmHints window_hints; window_hints.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; window_hints.functions = MWM_FUNC_ALL; window_hints.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(w.winId(), window_hints); } else { w.setWindowFlags(Qt::CustomizeWindowHint | Qt::FramelessWindowHint); } XCloseDisplay(display); return app.exec(); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_volume_slider.cpp0000644000175000017500000003033314565521701025257 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include //DisplayerMode displayMode = MINI_MODE; //SwitchButtonState buttonState = SWITCH_BUTTON_NORMAL; //extern double transparency; //UkuiApplicationWidget::UkuiApplicationWidget(QWidget *parent) //{ //// this->setAttribute(Qt::WA_TranslucentBackground); //// this->setStyleSheet("QWiget{background:rgba(0,0,0,0);}"); // Q_UNUSED(parent); //} //UkuiMediaSliderTipLabel::UkuiMediaSliderTipLabel(){ // setAttribute(Qt::WA_TranslucentBackground); //} //UkuiMediaSliderTipLabel::~UkuiMediaSliderTipLabel(){ //} //void UkuiApplicationWidget::paintEvent(QPaintEvent *e) //{ // QStyleOption opt; // opt.init(this); // QPainter p(this); //// double transparence = transparency * 255; //// QColor color = palette().color(QPalette::Base); //// color.setAlpha(transparence); // QBrush brush = QBrush(QColor(0,0,0,0)); // p.setBrush(brush); //// p.setBrush(this->palette().base()); //// p.setBrush(QBrush(QColor(19, 19, 20, 0))); // p.setPen(Qt::NoPen); // QPainterPath path; // opt.rect.adjust(0,0,0,0); // path.addRoundedRect(opt.rect,0,0); // p.setRenderHint(QPainter::Antialiasing); // 反锯齿; // p.drawRoundedRect(opt.rect,0,0); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); //} //UkuiApplicationWidget::~UkuiApplicationWidget() //{ //} //void UkuiMediaSliderTipLabel::paintEvent(QPaintEvent *e) //{ // QStyleOptionFrame opt; // initStyleOption(&opt); // QStylePainter p(this); //// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); // p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x00))); // p.setPen(Qt::NoPen); // p.drawRoundedRect(this->rect(), 1, 1); // QPainterPath path; // path.addRoundedRect(opt.rect,6,6); // p.setRenderHint(QPainter::Antialiasing); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); // this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); // QLabel::paintEvent(e); //} //UkuiMediaButton::UkuiMediaButton(QWidget *parent) //{ // Q_UNUSED(parent); // this->setFixedSize(36,36); //} //UkuiMediaButton::~UkuiMediaButton() //{ //} ///*! // * \brief // * \details // * 绘制窗体的颜色及圆角 // */ ////void UkuiMediaButton::paintEvent(QPaintEvent *event) ////{ //// QStyleOptionComplex opt; //// opt.init(this); //// QPainter p(this); ////// double transparence = transparency * 255; //// p.setBrush(this->palette().base()); //// p.setPen(Qt::NoPen); //// QPainterPath path; //// opt.rect.adjust(0,0,0,0); //// path.addRoundedRect(opt.rect,6,6); //// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; //// p.drawRoundedRect(opt.rect,6,6); //// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); ////// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); //// style()->drawComplexControl(QStyle::CC_ToolButton,&opt,&p,this); ////} //void UkuiMediaButton::enterEvent(QEvent *event) //{ // buttonState = SWITCH_BUTTON_HOVER; //} //void UkuiMediaButton::leaveEvent(QEvent *event) //{ // buttonState = SWITCH_BUTTON_NORMAL; //} //void UkuiMediaButton::mouseMoveEvent(QMouseEvent *e) //{ // buttonState = SWITCH_BUTTON_HOVER; // QPushButton::mouseMoveEvent(e); //} //void UkuiMediaButton::mousePressEvent(QMouseEvent *e) //{ // buttonState = SWITCH_BUTTON_PRESS; // if (displayMode == MINI_MODE) { // Q_EMIT moveMiniSwitchBtnSignale(); // this->setFixedSize(34,34); // QSize iconSize(14,14); // this->setIconSize(iconSize); // this->setIcon(QIcon("/usr/share/ukui-media/img/complete-module.svg")); // } // else { // this->setFixedSize(34,34); // QSize iconSize(14,14); // this->setIconSize(iconSize); // this->setIcon(QIcon("/usr/share/ukui-media/img/mini-module.svg")); // Q_EMIT moveAdvanceSwitchBtnSignal(); // } // QPushButton::mousePressEvent(e); //} //void UkuiMediaButton::mouseReleaseEvent(QMouseEvent *e) //{ // buttonState = SWITCH_BUTTON_NORMAL; // if (displayMode == MINI_MODE) { // Q_EMIT miniToAdvanceSignal(); // this->setFixedSize(36,36); // QSize iconSize(16,16); // this->setIconSize(iconSize); // this->setIcon(QIcon("/usr/share/ukui-media/img/complete-module.svg")); // } // else { // Q_EMIT advanceToMiniSignal(); // this->setFixedSize(36,36); // QSize iconSize(16,16); // this->setIconSize(iconSize); // qDebug() << "设置图标2"; // this->setIcon(QIcon("/usr/share/ukui-media/img/mini-module.svg")); // } // QPushButton::mouseReleaseEvent(e); //} //UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent,bool needTip) //{ // Q_UNUSED(parent); // if (needTip) { // state = needTip; // m_pTiplabel = new UkuiMediaSliderTipLabel(); // m_pTiplabel->setWindowFlags(Qt::ToolTip); // // qApp->installEventFilter(new AppEventFilter(this)); // m_pTiplabel->setFixedSize(52,30); // m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); // } //} //void UkmediaVolumeSlider::mousePressEvent(QMouseEvent *ev) //{ // mousePress = true; // Q_EMIT silderPressSignal(); // if (state) { // m_pTiplabel->show(); // } // //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 // QSlider::mousePressEvent(ev); // //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) // double pos = ev->pos().x() / (double)width(); // setValue(pos *(maximum() - minimum()) + minimum()); // //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 // QEvent evEvent(static_cast(QEvent::User + 1)); // QCoreApplication::sendEvent(parentWidget(), &evEvent); // QSlider::mousePressEvent(ev); //} //void UkmediaVolumeSlider::mouseReleaseEvent(QMouseEvent *e) //{ // if(mousePress){ // Q_EMIT silderReleaseSignal(); // } // mousePress = false; // QSlider::mouseReleaseEvent(e); //} //void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) //{ // QSlider::initStyleOption(option); //} //void UkmediaVolumeSlider::leaveEvent(QEvent *e) //{ // if (state) { // m_pTiplabel->hide(); // } //} //void UkmediaVolumeSlider::enterEvent(QEvent *e) //{ // if (state) { // m_pTiplabel->show(); // } //} //void UkmediaVolumeSlider::paintEvent(QPaintEvent *e) //{ // QRect rect; // QStyleOptionSlider m_option; // QSlider::paintEvent(e); // if (state) { // this->initStyleOption(&m_option); // rect = this->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,this); // QPoint gPos = this->mapToGlobal(rect.topLeft()); // QString percent; // percent = QString::number(this->value()); // percent.append("%"); // m_pTiplabel->setText(percent); // m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); // } //} //UkmediaVolumeSlider::~UkmediaVolumeSlider() //{ // delete m_pTiplabel; //} //void UkuiButtonDrawSvg::init(QImage img, QColor color) //{ // themeIcon.image = img; // themeIcon.color = color; //} //void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) //{ // QStyleOption opt; // opt.init(this); // QPainter p(this); // p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); // p.setPen(Qt::NoPen); // QPainterPath path; // opt.rect.adjust(0,0,0,0); // path.addRoundedRect(opt.rect,6,6); // p.setRenderHint(QPainter::Antialiasing); // 反锯齿; // p.drawRoundedRect(opt.rect,6,6); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); //} //QRect UkuiButtonDrawSvg::IconGeometry() //{ // QRect res = QRect(QPoint(0,0),QSize(24,24)); // res.moveCenter(QRect(0,0,width(),height()).center()); // return res; //} //void UkuiButtonDrawSvg::draw(QPaintEvent* e) //{ // Q_UNUSED(e); // QPainter painter(this); // QRect iconRect = IconGeometry(); // if (themeIcon.image.size() != iconRect.size()) // { // themeIcon.image = themeIcon.image.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); // QRect r = themeIcon.image.rect(); // r.moveCenter(iconRect.center()); // iconRect = r; // } // this->setProperty("fillIconSymbolicColor", true); // filledSymbolicColoredPixmap(themeIcon.image,themeIcon.color); // painter.drawImage(iconRect, themeIcon.image); //} //bool UkuiButtonDrawSvg::event(QEvent *event) //{ // switch (event->type()) // { // case QEvent::Paint: // draw(static_cast(event)); // break; // case QEvent::Move: // case QEvent::Resize: // { // QRect rect = IconGeometry(); // } // break; // case QEvent::MouseButtonPress: // case QEvent::MouseButtonRelease: // case QEvent::MouseButtonDblClick: // event->accept(); // break; // default: // break; // } // return QPushButton::event(event); //} //UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) //{ // Q_UNUSED(parent); //} //UkuiButtonDrawSvg::~UkuiButtonDrawSvg() //{ //} //QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) //{ // for (int x = 0; x < img.width(); x++) { // for (int y = 0; y < img.height(); y++) { // auto color = img.pixelColor(x, y); // if (color.alpha() > 0) { // int hue = color.hue(); // if (!qAbs(hue - symbolic_color.hue()) < 10) { // color.setRed(baseColor.red()); // color.setGreen(baseColor.green()); // color.setBlue(baseColor.blue()); // img.setPixelColor(x, y, color); // } // } // } // } // return QPixmap::fromImage(img); //} //UkuiScrollArea::UkuiScrollArea(QWidget *parent){ //} //UkuiScrollArea::~UkuiScrollArea(){ //} //void UkuiScrollArea::paintEvent(QPaintEvent *event) //{ // QStyleOption opt; // opt.init(this); // QPainter p(this); // p.setBrush(this->palette().base()); // p.setPen(Qt::NoPen); // QPainterPath path; // opt.rect.adjust(0,0,0,0); // path.addRoundedRect(opt.rect,6,6); // p.setRenderHint(QPainter::Antialiasing); // 反锯齿; // p.drawRoundedRect(opt.rect,6,6); // setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); // style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); //// QWidget::paintEvent(event); //} //UkuiQMenu::UkuiQMenu(){ //} //bool UkuiQMenu::event(QEvent *e) //{ // qDebug() << "事件类型" << e->type() << "show"; // if (e->type() == QEvent::ContextMenu) { // this->show(); // } // else if (e->type() == QEvent::WinIdChange) { // qDebug() << "winid changed"; // } // else if(e->type() == QEvent::MouseButtonRelease) { //// this->hide(); // qDebug() << "事件类型" << e->type(); // } // return QMenu::event(e); //} //void UkuiQMenu::hideEvent(QHideEvent *e) //{ // this->activateWindow(); // this->setAttribute(Qt::WA_NoMouseReplay); // qDebug() << "菜单隐藏" << e->type(); //} //UkuiQMenu::~UkuiQMenu(){ //} ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/0000755000175000017500000000000014565521701024113 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.h0000644000175000017500000000520514565521701026601 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QTLOCALPEER_H #define QTLOCALPEER_H #include #include #include #include "qtlockedfile.h" class QtLocalPeer : public QObject { Q_OBJECT public: QtLocalPeer(QObject *parent = 0, const QString &appId = QString()); bool isClient(); bool sendMessage(const QString &message, int timeout); QString applicationId() const { return id; } Q_SIGNALS: void messageReceived(const QString &message); protected Q_SLOTS: void receiveConnection(); protected: QString id; QString socketName; QLocalServer* server; QtLP_Private::QtLockedFile lockFile; private: static const char* ack; }; #endif // QTLOCALPEER_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.pri0000644000175000017500000000106114565521701030677 0ustar fengfengINCLUDEPATH += $$PWD DEPENDPATH += $$PWD QT *= network greaterThan(QT_MAJOR_VERSION, 4): QT *= widgets qtsingleapplication-uselib:!qtsingleapplication-buildlib { LIBS += -L$$QTSINGLEAPPLICATION_LIBDIR -l$$QTSINGLEAPPLICATION_LIBNAME } else { SOURCES += $$PWD/qtsingleapplication.cpp $$PWD/qtlocalpeer.cpp HEADERS += $$PWD/qtsingleapplication.h $$PWD/qtlocalpeer.h } win32 { contains(TEMPLATE, lib):contains(CONFIG, shared):DEFINES += QT_QTSINGLEAPPLICATION_EXPORT else:qtsingleapplication-uselib:DEFINES += QT_QTSINGLEAPPLICATION_IMPORT } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_win.cpp0000644000175000017500000001466114565521701030152 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qtlockedfile.h" #include #include #define MUTEX_PREFIX "QtLockedFile mutex " // Maximum number of concurrent read locks. Must not be greater than MAXIMUM_WAIT_OBJECTS #define MAX_READERS MAXIMUM_WAIT_OBJECTS #if QT_VERSION >= 0x050000 #define QT_WA(unicode, ansi) unicode #endif Qt::HANDLE QtLockedFile::getMutexHandle(int idx, bool doCreate) { if (mutexname.isEmpty()) { QFileInfo fi(*this); mutexname = QString::fromLatin1(MUTEX_PREFIX) + fi.absoluteFilePath().toLower(); } QString mname(mutexname); if (idx >= 0) mname += QString::number(idx); Qt::HANDLE mutex; if (doCreate) { QT_WA( { mutex = CreateMutexW(NULL, FALSE, (TCHAR*)mname.utf16()); }, { mutex = CreateMutexA(NULL, FALSE, mname.toLocal8Bit().constData()); } ); if (!mutex) { qErrnoWarning("QtLockedFile::lock(): CreateMutex failed"); return 0; } } else { QT_WA( { mutex = OpenMutexW(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, (TCHAR*)mname.utf16()); }, { mutex = OpenMutexA(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, mname.toLocal8Bit().constData()); } ); if (!mutex) { if (GetLastError() != ERROR_FILE_NOT_FOUND) qErrnoWarning("QtLockedFile::lock(): OpenMutex failed"); return 0; } } return mutex; } bool QtLockedFile::waitMutex(Qt::HANDLE mutex, bool doBlock) { Q_ASSERT(mutex); DWORD res = WaitForSingleObject(mutex, doBlock ? INFINITE : 0); switch (res) { case WAIT_OBJECT_0: case WAIT_ABANDONED: return true; break; case WAIT_TIMEOUT: break; default: qErrnoWarning("QtLockedFile::lock(): WaitForSingleObject failed"); } return false; } bool QtLockedFile::lock(LockMode mode, bool block) { if (!isOpen()) { qWarning("QtLockedFile::lock(): file is not opened"); return false; } if (mode == NoLock) return unlock(); if (mode == m_lock_mode) return true; if (m_lock_mode != NoLock) unlock(); if (!wmutex && !(wmutex = getMutexHandle(-1, true))) return false; if (!waitMutex(wmutex, block)) return false; if (mode == ReadLock) { int idx = 0; for (; idx < MAX_READERS; idx++) { rmutex = getMutexHandle(idx, false); if (!rmutex || waitMutex(rmutex, false)) break; CloseHandle(rmutex); } bool ok = true; if (idx >= MAX_READERS) { qWarning("QtLockedFile::lock(): too many readers"); rmutex = 0; ok = false; } else if (!rmutex) { rmutex = getMutexHandle(idx, true); if (!rmutex || !waitMutex(rmutex, false)) ok = false; } if (!ok && rmutex) { CloseHandle(rmutex); rmutex = 0; } ReleaseMutex(wmutex); if (!ok) return false; } else { Q_ASSERT(rmutexes.isEmpty()); for (int i = 0; i < MAX_READERS; i++) { Qt::HANDLE mutex = getMutexHandle(i, false); if (mutex) rmutexes.append(mutex); } if (rmutexes.size()) { DWORD res = WaitForMultipleObjects(rmutexes.size(), rmutexes.constData(), TRUE, block ? INFINITE : 0); if (res != WAIT_OBJECT_0 && res != WAIT_ABANDONED) { if (res != WAIT_TIMEOUT) qErrnoWarning("QtLockedFile::lock(): WaitForMultipleObjects failed"); m_lock_mode = WriteLock; // trick unlock() to clean up - semiyucky unlock(); return false; } } } m_lock_mode = mode; return true; } bool QtLockedFile::unlock() { if (!isOpen()) { qWarning("QtLockedFile::unlock(): file is not opened"); return false; } if (!isLocked()) return true; if (m_lock_mode == ReadLock) { ReleaseMutex(rmutex); CloseHandle(rmutex); rmutex = 0; } else { foreach(Qt::HANDLE mutex, rmutexes) { ReleaseMutex(mutex); CloseHandle(mutex); } rmutexes.clear(); ReleaseMutex(wmutex); } m_lock_mode = QtLockedFile::NoLock; return true; } QtLockedFile::~QtLockedFile() { if (isOpen()) unlock(); if (wmutex) CloseHandle(wmutex); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_unix.cpp0000644000175000017500000000661414565521701030337 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include #include #include #include #include "qtlockedfile.h" bool QtLockedFile::lock(LockMode mode, bool block) { if (!isOpen()) { qWarning("QtLockedFile::lock(): file is not opened"); return false; } if (mode == NoLock) return unlock(); if (mode == m_lock_mode) return true; if (m_lock_mode != NoLock) unlock(); struct flock fl; fl.l_whence = SEEK_SET; fl.l_start = 0; fl.l_len = 0; fl.l_type = (mode == ReadLock) ? F_RDLCK : F_WRLCK; int cmd = block ? F_SETLKW : F_SETLK; int ret = fcntl(handle(), cmd, &fl); if (ret == -1) { if (errno != EINTR && errno != EAGAIN) qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); return false; } m_lock_mode = mode; return true; } bool QtLockedFile::unlock() { if (!isOpen()) { qWarning("QtLockedFile::unlock(): file is not opened"); return false; } if (!isLocked()) return true; struct flock fl; fl.l_whence = SEEK_SET; fl.l_start = 0; fl.l_len = 0; fl.l_type = F_UNLCK; int ret = fcntl(handle(), F_SETLKW, &fl); if (ret == -1) { qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); return false; } m_lock_mode = NoLock; return true; } QtLockedFile::~QtLockedFile() { if (isOpen()) unlock(); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.h0000644000175000017500000000630714565521701026740 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QTLOCKEDFILE_H #define QTLOCKEDFILE_H #include #ifdef Q_OS_WIN #include #endif #if defined(Q_OS_WIN) # if !defined(QT_QTLOCKEDFILE_EXPORT) && !defined(QT_QTLOCKEDFILE_IMPORT) # define QT_QTLOCKEDFILE_EXPORT # elif defined(QT_QTLOCKEDFILE_IMPORT) # if defined(QT_QTLOCKEDFILE_EXPORT) # undef QT_QTLOCKEDFILE_EXPORT # endif # define QT_QTLOCKEDFILE_EXPORT __declspec(dllimport) # elif defined(QT_QTLOCKEDFILE_EXPORT) # undef QT_QTLOCKEDFILE_EXPORT # define QT_QTLOCKEDFILE_EXPORT __declspec(dllexport) # endif #else # define QT_QTLOCKEDFILE_EXPORT #endif namespace QtLP_Private { class QT_QTLOCKEDFILE_EXPORT QtLockedFile : public QFile { public: enum LockMode { NoLock = 0, ReadLock, WriteLock }; QtLockedFile(); QtLockedFile(const QString &name); ~QtLockedFile(); bool open(OpenMode mode); bool lock(LockMode mode, bool block = true); bool unlock(); bool isLocked() const; LockMode lockMode() const; private: #ifdef Q_OS_WIN Qt::HANDLE wmutex; Qt::HANDLE rmutex; QVector rmutexes; QString mutexname; Qt::HANDLE getMutexHandle(int idx, bool doCreate); bool waitMutex(Qt::HANDLE mutex, bool doBlock); #endif LockMode m_lock_mode; }; } #endif ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.pri0000644000175000017500000000050414565521701031551 0ustar fengfengINCLUDEPATH += $$PWD DEPENDPATH += $$PWD HEADERS += $$PWD/qtsinglecoreapplication.h $$PWD/qtlocalpeer.h SOURCES += $$PWD/qtsinglecoreapplication.cpp $$PWD/qtlocalpeer.cpp QT *= network win32:contains(TEMPLATE, lib):contains(CONFIG, shared) { DEFINES += QT_QTSINGLECOREAPPLICATION_EXPORT=__declspec(dllexport) } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.cpp0000644000175000017500000002704614565521701030702 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qtsingleapplication.h" #include "qtlocalpeer.h" #include /*! \class QtSingleApplication qtsingleapplication.h \brief The QtSingleApplication class provides an API to detect and communicate with running instances of an application. This class allows you to create applications where only one instance should be running at a time. I.e., if the user tries to launch another instance, the already running instance will be activated instead. Another usecase is a client-server system, where the first started instance will assume the role of server, and the later instances will act as clients of that server. By default, the full path of the executable file is used to determine whether two processes are instances of the same application. You can also provide an explicit identifier string that will be compared instead. The application should create the QtSingleApplication object early in the startup phase, and call isRunning() to find out if another instance of this application is already running. If isRunning() returns false, it means that no other instance is running, and this instance has assumed the role as the running instance. In this case, the application should continue with the initialization of the application user interface before entering the event loop with exec(), as normal. The messageReceived() signal will be emitted when the running application receives messages from another instance of the same application. When a message is received it might be helpful to the user to raise the application so that it becomes visible. To facilitate this, QtSingleApplication provides the setActivationWindow() function and the activateWindow() slot. If isRunning() returns true, another instance is already running. It may be alerted to the fact that another instance has started by using the sendMessage() function. Also data such as startup parameters (e.g. the name of the file the user wanted this new instance to open) can be passed to the running instance with this function. Then, the application should terminate (or enter client mode). If isRunning() returns true, but sendMessage() fails, that is an indication that the running instance is frozen. Here's an example that shows how to convert an existing application to use QtSingleApplication. It is very simple and does not make use of all QtSingleApplication's functionality (see the examples for that). \code // Original int main(int argc, char **argv) { QApplication app(argc, argv); MyMainWidget mmw; mmw.show(); return app.exec(); } // Single instance int main(int argc, char **argv) { QtSingleApplication app(argc, argv); if (app.isRunning()) return !app.sendMessage(someDataString); MyMainWidget mmw; app.setActivationWindow(&mmw); mmw.show(); return app.exec(); } \endcode Once this QtSingleApplication instance is destroyed (normally when the process exits or crashes), when the user next attempts to run the application this instance will not, of course, be encountered. The next instance to call isRunning() or sendMessage() will assume the role as the new running instance. For console (non-GUI) applications, QtSingleCoreApplication may be used instead of this class, to avoid the dependency on the QtGui library. \sa QtSingleCoreApplication */ void QtSingleApplication::sysInit(const QString &appId) { actWin = 0; peer = new QtLocalPeer(this, appId); connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); } /*! Creates a QtSingleApplication object. The application identifier will be QCoreApplication::applicationFilePath(). \a argc, \a argv, and \a GUIenabled are passed on to the QAppliation constructor. If you are creating a console application (i.e. setting \a GUIenabled to false), you may consider using QtSingleCoreApplication instead. */ QtSingleApplication::QtSingleApplication(int &argc, char **argv, bool GUIenabled) : QApplication(argc, argv, GUIenabled) { sysInit(); } /*! Creates a QtSingleApplication object with the application identifier \a appId. \a argc and \a argv are passed on to the QAppliation constructor. */ QtSingleApplication::QtSingleApplication(const QString &appId, int &argc, char **argv) : QApplication(argc, argv) { sysInit(appId); } #if QT_VERSION < 0x050000 /*! Creates a QtSingleApplication object. The application identifier will be QCoreApplication::applicationFilePath(). \a argc, \a argv, and \a type are passed on to the QAppliation constructor. */ QtSingleApplication::QtSingleApplication(int &argc, char **argv, Type type) : QApplication(argc, argv, type) { sysInit(); } # if defined(Q_WS_X11) /*! Special constructor for X11, ref. the documentation of QApplication's corresponding constructor. The application identifier will be QCoreApplication::applicationFilePath(). \a dpy, \a visual, and \a cmap are passed on to the QApplication constructor. */ QtSingleApplication::QtSingleApplication(Display* dpy, Qt::HANDLE visual, Qt::HANDLE cmap) : QApplication(dpy, visual, cmap) { sysInit(); } /*! Special constructor for X11, ref. the documentation of QApplication's corresponding constructor. The application identifier will be QCoreApplication::applicationFilePath(). \a dpy, \a argc, \a argv, \a visual, and \a cmap are passed on to the QApplication constructor. */ QtSingleApplication::QtSingleApplication(Display *dpy, int &argc, char **argv, Qt::HANDLE visual, Qt::HANDLE cmap) : QApplication(dpy, argc, argv, visual, cmap) { sysInit(); } /*! Special constructor for X11, ref. the documentation of QApplication's corresponding constructor. The application identifier will be \a appId. \a dpy, \a argc, \a argv, \a visual, and \a cmap are passed on to the QApplication constructor. */ QtSingleApplication::QtSingleApplication(Display* dpy, const QString &appId, int argc, char **argv, Qt::HANDLE visual, Qt::HANDLE cmap) : QApplication(dpy, argc, argv, visual, cmap) { sysInit(appId); } # endif // Q_WS_X11 #endif // QT_VERSION < 0x050000 /*! Returns true if another instance of this application is running; otherwise false. This function does not find instances of this application that are being run by a different user (on Windows: that are running in another session). \sa sendMessage() */ bool QtSingleApplication::isRunning() { return peer->isClient(); } /*! Tries to send the text \a message to the currently running instance. The QtSingleApplication object in the running instance will emit the messageReceived() signal when it receives the message. This function returns true if the message has been sent to, and processed by, the current instance. If there is no instance currently running, or if the running instance fails to process the message within \a timeout milliseconds, this function return false. \sa isRunning(), messageReceived() */ bool QtSingleApplication::sendMessage(const QString &message, int timeout) { return peer->sendMessage(message, timeout); } /*! Returns the application identifier. Two processes with the same identifier will be regarded as instances of the same application. */ QString QtSingleApplication::id() const { return peer->applicationId(); } /*! Sets the activation window of this application to \a aw. The activation window is the widget that will be activated by activateWindow(). This is typically the application's main window. If \a activateOnMessage is true (the default), the window will be activated automatically every time a message is received, just prior to the messageReceived() signal being emitted. \sa activateWindow(), messageReceived() */ void QtSingleApplication::setActivationWindow(QWidget* aw, bool activateOnMessage) { actWin = aw; if (activateOnMessage) connect(peer, SIGNAL(messageReceived(const QString&)), this, SLOT(activateWindow())); else disconnect(peer, SIGNAL(messageReceived(const QString&)), this, SLOT(activateWindow())); } /*! Returns the applications activation window if one has been set by calling setActivationWindow(), otherwise returns 0. \sa setActivationWindow() */ QWidget* QtSingleApplication::activationWindow() const { return actWin; } /*! De-minimizes, raises, and activates this application's activation window. This function does nothing if no activation window has been set. This is a convenience function to show the user that this application instance has been activated when he has tried to start another instance. This function should typically be called in response to the messageReceived() signal. By default, that will happen automatically, if an activation window has been set. \sa setActivationWindow(), messageReceived(), initialize() */ void QtSingleApplication::activateWindow() { if (actWin) { actWin->setWindowState(actWin->windowState() & ~Qt::WindowMinimized); actWin->raise(); actWin->showNormal(); actWin->activateWindow(); } } /*! \fn void QtSingleApplication::messageReceived(const QString& message) This signal is emitted when the current instance receives a \a message from another instance of this application. \sa sendMessage(), setActivationWindow(), activateWindow() */ /*! \fn void QtSingleApplication::initialize(bool dummy = true) \obsolete */ ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.cpp0000644000175000017500000001374214565521701027274 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qtlockedfile.h" /*! \class QtLockedFile \brief The QtLockedFile class extends QFile with advisory locking functions. A file may be locked in read or write mode. Multiple instances of \e QtLockedFile, created in multiple processes running on the same machine, may have a file locked in read mode. Exactly one instance may have it locked in write mode. A read and a write lock cannot exist simultaneously on the same file. The file locks are advisory. This means that nothing prevents another process from manipulating a locked file using QFile or file system functions offered by the OS. Serialization is only guaranteed if all processes that access the file use QLockedFile. Also, while holding a lock on a file, a process must not open the same file again (through any API), or locks can be unexpectedly lost. The lock provided by an instance of \e QtLockedFile is released whenever the program terminates. This is true even when the program crashes and no destructors are called. */ /*! \enum QtLockedFile::LockMode This enum describes the available lock modes. \value ReadLock A read lock. \value WriteLock A write lock. \value NoLock Neither a read lock nor a write lock. */ /*! Constructs an unlocked \e QtLockedFile object. This constructor behaves in the same way as \e QFile::QFile(). \sa QFile::QFile() */ QtLockedFile::QtLockedFile() : QFile() { #ifdef Q_OS_WIN wmutex = 0; rmutex = 0; #endif m_lock_mode = NoLock; } /*! Constructs an unlocked QtLockedFile object with file \a name. This constructor behaves in the same way as \e QFile::QFile(const QString&). \sa QFile::QFile() */ QtLockedFile::QtLockedFile(const QString &name) : QFile(name) { #ifdef Q_OS_WIN wmutex = 0; rmutex = 0; #endif m_lock_mode = NoLock; } /*! Opens the file in OpenMode \a mode. This is identical to QFile::open(), with the one exception that the Truncate mode flag is disallowed. Truncation would conflict with the advisory file locking, since the file would be modified before the write lock is obtained. If truncation is required, use resize(0) after obtaining the write lock. Returns true if successful; otherwise false. \sa QFile::open(), QFile::resize() */ bool QtLockedFile::open(OpenMode mode) { if (mode & QIODevice::Truncate) { qWarning("QtLockedFile::open(): Truncate mode not allowed."); return false; } return QFile::open(mode); } /*! Returns \e true if this object has a in read or write lock; otherwise returns \e false. \sa lockMode() */ bool QtLockedFile::isLocked() const { return m_lock_mode != NoLock; } /*! Returns the type of lock currently held by this object, or \e QtLockedFile::NoLock. \sa isLocked() */ QtLockedFile::LockMode QtLockedFile::lockMode() const { return m_lock_mode; } /*! \fn bool QtLockedFile::lock(LockMode mode, bool block = true) Obtains a lock of type \a mode. The file must be opened before it can be locked. If \a block is true, this function will block until the lock is aquired. If \a block is false, this function returns \e false immediately if the lock cannot be aquired. If this object already has a lock of type \a mode, this function returns \e true immediately. If this object has a lock of a different type than \a mode, the lock is first released and then a new lock is obtained. This function returns \e true if, after it executes, the file is locked by this object, and \e false otherwise. \sa unlock(), isLocked(), lockMode() */ /*! \fn bool QtLockedFile::unlock() Releases a lock. If the object has no lock, this function returns immediately. This function returns \e true if, after it executes, the file is not locked by this object, and \e false otherwise. \sa lock(), isLocked(), lockMode() */ /*! \fn QtLockedFile::~QtLockedFile() Destroys the \e QtLockedFile object. If any locks were held, they are released. */ ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.h0000644000175000017500000000761714565521701030351 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QTSINGLEAPPLICATION_H #define QTSINGLEAPPLICATION_H #include class QtLocalPeer; #if defined(Q_OS_WIN) # if !defined(QT_QTSINGLEAPPLICATION_EXPORT) && !defined(QT_QTSINGLEAPPLICATION_IMPORT) # define QT_QTSINGLEAPPLICATION_EXPORT # elif defined(QT_QTSINGLEAPPLICATION_IMPORT) # if defined(QT_QTSINGLEAPPLICATION_EXPORT) # undef QT_QTSINGLEAPPLICATION_EXPORT # endif # define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllimport) # elif defined(QT_QTSINGLEAPPLICATION_EXPORT) # undef QT_QTSINGLEAPPLICATION_EXPORT # define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllexport) # endif #else # define QT_QTSINGLEAPPLICATION_EXPORT #endif class QT_QTSINGLEAPPLICATION_EXPORT QtSingleApplication : public QApplication { Q_OBJECT public: QtSingleApplication(int &argc, char **argv, bool GUIenabled = true); QtSingleApplication(const QString &id, int &argc, char **argv); #if QT_VERSION < 0x050000 QtSingleApplication(int &argc, char **argv, Type type); # if defined(Q_WS_X11) QtSingleApplication(Display* dpy, Qt::HANDLE visual = 0, Qt::HANDLE colormap = 0); QtSingleApplication(Display *dpy, int &argc, char **argv, Qt::HANDLE visual = 0, Qt::HANDLE cmap= 0); QtSingleApplication(Display* dpy, const QString &appId, int argc, char **argv, Qt::HANDLE visual = 0, Qt::HANDLE colormap = 0); # endif // Q_WS_X11 #endif // QT_VERSION < 0x050000 bool isRunning(); QString id() const; void setActivationWindow(QWidget* aw, bool activateOnMessage = true); QWidget* activationWindow() const; // Obsolete: void initialize(bool dummy = true) { isRunning(); Q_UNUSED(dummy) } public Q_SLOTS: bool sendMessage(const QString &message, int timeout = 5000); void activateWindow(); Q_SIGNALS: void messageReceived(const QString &message); private: void sysInit(const QString &appId = QString()); QtLocalPeer *peer; QWidget *actWin; }; #endif // QTSINGLEAPPLICATION_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/QtLockedFile0000644000175000017500000000003214565521701026337 0ustar fengfeng#include "qtlockedfile.h" ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.cpp0000644000175000017500000001543614565521701027143 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qtlocalpeer.h" #include #include #include #if defined(Q_OS_WIN) #include #include typedef BOOL(WINAPI*PProcessIdToSessionId)(DWORD,DWORD*); static PProcessIdToSessionId pProcessIdToSessionId = 0; #endif #if defined(Q_OS_UNIX) #include #include #include #endif namespace QtLP_Private { #include "qtlockedfile.cpp" #if defined(Q_OS_WIN) #include "qtlockedfile_win.cpp" #else #include "qtlockedfile_unix.cpp" #endif } const char* QtLocalPeer::ack = "ack"; QtLocalPeer::QtLocalPeer(QObject* parent, const QString &appId) : QObject(parent), id(appId) { QString prefix = id; if (id.isEmpty()) { id = QCoreApplication::applicationFilePath(); #if defined(Q_OS_WIN) id = id.toLower(); #endif prefix = id.section(QLatin1Char('/'), -1); } prefix.remove(QRegExp("[^a-zA-Z]")); prefix.truncate(6); QByteArray idc = id.toUtf8(); quint16 idNum = qChecksum(idc.constData(), idc.size()); socketName = QLatin1String("qtsingleapp-") + prefix + QLatin1Char('-') + QString::number(idNum, 16); #if defined(Q_OS_WIN) if (!pProcessIdToSessionId) { QLibrary lib("kernel32"); pProcessIdToSessionId = (PProcessIdToSessionId)lib.resolve("ProcessIdToSessionId"); } if (pProcessIdToSessionId) { DWORD sessionId = 0; pProcessIdToSessionId(GetCurrentProcessId(), &sessionId); socketName += QLatin1Char('-') + QString::number(sessionId, 16); } #else socketName += QLatin1Char('-') + QString::number(::getuid(), 16); #endif server = new QLocalServer(this); QString lockName = QDir(QDir::tempPath()).absolutePath() + QLatin1Char('/') + socketName + QLatin1String("-lockfile"); lockFile.setFileName(lockName); lockFile.open(QIODevice::ReadWrite); } bool QtLocalPeer::isClient() { if (lockFile.isLocked()) return false; if (!lockFile.lock(QtLP_Private::QtLockedFile::WriteLock, false)) return true; bool res = server->listen(socketName); #if defined(Q_OS_UNIX) && (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) // ### Workaround if (!res && server->serverError() == QAbstractSocket::AddressInUseError) { QFile::remove(QDir::cleanPath(QDir::tempPath())+QLatin1Char('/')+socketName); res = server->listen(socketName); } #endif if (!res) qWarning("QtSingleCoreApplication: listen on local socket failed, %s", qPrintable(server->errorString())); QObject::connect(server, SIGNAL(newConnection()), SLOT(receiveConnection())); return false; } bool QtLocalPeer::sendMessage(const QString &message, int timeout) { if (!isClient()) return false; QLocalSocket socket; bool connOk = false; for(int i = 0; i < 2; i++) { // Try twice, in case the other instance is just starting up socket.connectToServer(socketName); connOk = socket.waitForConnected(timeout/2); if (connOk || i) break; int ms = 250; #if defined(Q_OS_WIN) Sleep(DWORD(ms)); #else struct timespec ts = { ms / 1000, (ms % 1000) * 1000 * 1000 }; nanosleep(&ts, NULL); #endif } if (!connOk) return false; QByteArray uMsg(message.toUtf8()); QDataStream ds(&socket); ds.writeBytes(uMsg.constData(), uMsg.size()); bool res = socket.waitForBytesWritten(timeout); if (res) { res &= socket.waitForReadyRead(timeout); // wait for ack if (res) res &= (socket.read(qstrlen(ack)) == ack); } return res; } void QtLocalPeer::receiveConnection() { QLocalSocket* socket = server->nextPendingConnection(); if (!socket) return; while (true) { if (socket->state() == QLocalSocket::UnconnectedState) { qWarning("QtLocalPeer: Peer disconnected"); delete socket; return; } if (socket->bytesAvailable() >= qint64(sizeof(quint32))) break; socket->waitForReadyRead(); } QDataStream ds(socket); QByteArray uMsg; quint32 remaining; ds >> remaining; uMsg.resize(remaining); int got = 0; char* uMsgBuf = uMsg.data(); do { got = ds.readRawData(uMsgBuf, remaining); remaining -= got; uMsgBuf += got; } while (remaining && got >= 0 && socket->waitForReadyRead(2000)); if (got < 0) { qWarning("QtLocalPeer: Message reception failed %s", socket->errorString().toLatin1().constData()); delete socket; return; } QString message(QString::fromUtf8(uMsg)); socket->write(ack, qstrlen(ack)); socket->waitForBytesWritten(1000); socket->waitForDisconnected(1000); // make sure client reads ack delete socket; Q_EMIT messageReceived(message); //### (might take a long time to return) } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.h0000644000175000017500000000502514565521701031211 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QTSINGLECOREAPPLICATION_H #define QTSINGLECOREAPPLICATION_H #include class QtLocalPeer; class QtSingleCoreApplication : public QCoreApplication { Q_OBJECT public: QtSingleCoreApplication(int &argc, char **argv); QtSingleCoreApplication(const QString &id, int &argc, char **argv); bool isRunning(); QString id() const; public Q_SLOTS: bool sendMessage(const QString &message, int timeout = 5000); Q_SIGNALS: void messageReceived(const QString &message); private: QtLocalPeer* peer; }; #endif // QTSINGLECOREAPPLICATION_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.cpp0000644000175000017500000001235514565521701031550 0ustar fengfeng/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Solutions component. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names ** of its contributors may be used to endorse or promote products derived ** from this software without specific prior written permission. ** ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qtsinglecoreapplication.h" #include "qtlocalpeer.h" /*! \class QtSingleCoreApplication qtsinglecoreapplication.h \brief A variant of the QtSingleApplication class for non-GUI applications. This class is a variant of QtSingleApplication suited for use in console (non-GUI) applications. It is an extension of QCoreApplication (instead of QApplication). It does not require the QtGui library. The API and usage is identical to QtSingleApplication, except that functions relating to the "activation window" are not present, for obvious reasons. Please refer to the QtSingleApplication documentation for explanation of the usage. A QtSingleCoreApplication instance can communicate to a QtSingleApplication instance if they share the same application id. Hence, this class can be used to create a light-weight command-line tool that sends commands to a GUI application. \sa QtSingleApplication */ /*! Creates a QtSingleCoreApplication object. The application identifier will be QCoreApplication::applicationFilePath(). \a argc and \a argv are passed on to the QCoreAppliation constructor. */ QtSingleCoreApplication::QtSingleCoreApplication(int &argc, char **argv) : QCoreApplication(argc, argv) { peer = new QtLocalPeer(this); connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); } /*! Creates a QtSingleCoreApplication object with the application identifier \a appId. \a argc and \a argv are passed on to the QCoreAppliation constructor. */ QtSingleCoreApplication::QtSingleCoreApplication(const QString &appId, int &argc, char **argv) : QCoreApplication(argc, argv) { peer = new QtLocalPeer(this, appId); connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); } /*! Returns true if another instance of this application is running; otherwise false. This function does not find instances of this application that are being run by a different user (on Windows: that are running in another session). \sa sendMessage() */ bool QtSingleCoreApplication::isRunning() { return peer->isClient(); } /*! Tries to send the text \a message to the currently running instance. The QtSingleCoreApplication object in the running instance will emit the messageReceived() signal when it receives the message. This function returns true if the message has been sent to, and processed by, the current instance. If there is no instance currently running, or if the running instance fails to process the message within \a timeout milliseconds, this function return false. \sa isRunning(), messageReceived() */ bool QtSingleCoreApplication::sendMessage(const QString &message, int timeout) { return peer->sendMessage(message, timeout); } /*! Returns the application identifier. Two processes with the same identifier will be regarded as instances of the same application. */ QString QtSingleCoreApplication::id() const { return peer->applicationId(); } /*! \fn void QtSingleCoreApplication::messageReceived(const QString& message) This signal is emitted when the current instance receives a \a message from another instance of this application. \sa sendMessage() */ ukui-media-3.1.1.2/ukui-volume-control-applet-qt/QtSingleApplication/QtSingleApplication0000644000175000017500000000004114565521701027743 0ustar fengfeng#include "qtsingleapplication.h" ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukui_list_widget_item.cpp0000644000175000017500000000546414565521701025307 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see setFixedSize(404,48); hLayout = new QHBoxLayout(this); portLabel = new FixLabel(this); deviceLabel = new QLabel(this); deviceButton = new QPushButton(this); portLabel->setFixedSize(326,24); deviceLabel->setFixedSize(326,24); deviceLabel->hide(); // 记录cardname deviceButton->setFixedSize(36,36); deviceButton->setCheckable(true); deviceButton->setProperty("isRoundButton", true); deviceButton->setProperty("useButtonPalette", true); deviceButton->setProperty("needTranslucent", true); hLayout->addWidget(deviceButton); hLayout->addSpacing(12); hLayout->addWidget(portLabel); hLayout->setSpacing(0); this->setLayout(hLayout); hLayout->setContentsMargins(14,6,24,6); this->show(); } void UkuiListWidgetItem::setButtonIcon(QString iconName) { QString iconStr; if (iconName.contains("headphone", Qt::CaseInsensitive)) iconStr = "audio-headphones-symbolic"; else if (iconName.contains("headset", Qt::CaseInsensitive)) iconStr = "audio-headset-symbolic"; else iconStr = "audio-volume-high-symbolic"; deviceButton->setIcon(QIcon::fromTheme(iconStr)); } void UkuiListWidgetItem::setLabelText(QString portLabel, QString deviceLabel) { this->portLabel->setText(portLabel,true); this->deviceLabel->setText(deviceLabel); } void UkuiListWidgetItem::mousePressEvent(QMouseEvent *event) { QWidget::mousePressEvent(event); qDebug() << "Mouse Press Event" << this->portLabel->fullText << this->deviceLabel->text(); //蓝牙输入去除勾选 if (this->deviceLabel->text().contains("bluez_card")) { if (isCheckBluetoothInput == false) isCheckBluetoothInput = true; else { isCheckBluetoothInput = false; QString cmd = "pactl set-card-profile "+this->deviceLabel->text()+" a2dp_sink"; system(cmd.toLocal8Bit().data()); } } } UkuiListWidgetItem::~UkuiListWidgetItem() { } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/0000755000175000017500000000000014565521701021112 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/org.ukui.sound.gschema.xml0000644000175000017500000000464114565521701026141 0ustar fengfeng '' Default mixer device The default mixer device used by the multimedia key bindings. [] Default mixer tracks The default mixer tracks used by the multimedia key bindings. false Enable ESD Enable sound server startup. true Sounds for events Whether to play sounds on user events. 'Light-Seeking' Sound theme name The XDG sound theme to use for event sounds. true Input feedback sounds Whether to play sounds on input events. false Mono Audio merge left and right channels true Noise Reduction Mic noise reduction option false LoopBack Monitor your own voice false Volume Increase Output volume Increase 125 Volume Increase's value Output volume Increase's Value true startup music Whether to play startup music ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/0000755000175000017500000000000014565521701021666 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/tick.png0000644000175000017500000000024114565521701023323 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<CIDATxb`@@@<i m3Hlgc3d?#Bv!B^h#2 ⎞QZ IENDB`ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-medium.svg0000644000175000017500000000216514565521701026277 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/mini-module-s.svg0000644000175000017500000000147214565521701025072 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-low-s.svg0000644000175000017500000000177614565521701026067 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/device.svg0000644000175000017500000000162514565521701023652 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-headphones.svg0000644000175000017500000000144114565521701025624 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-high-s.svg0000644000175000017500000000162714565521701026200 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/microphone-medium.svg0000644000175000017500000000174314565521701026035 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/mini-module.svg0000644000175000017500000000146714565521701024636 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-muted-s.svg0000644000175000017500000000171114565521701026371 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audiocard.svg0000644000175000017500000000144514565521701024346 0ustar fengfengaudiocard32ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-medium-s.svg0000644000175000017500000000220314565521701026530 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-high.svg0000644000175000017500000000215114565521701025731 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/complete-module-s.svg0000644000175000017500000000150114565521701025737 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-input-microphone.svg0000644000175000017500000000115614565521701027011 0ustar fengfengaudio-input-microphone32ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/microphone-high.svg0000644000175000017500000000170114565521701025466 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/microphone-low.svg0000644000175000017500000000174314565521701025356 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/setting.svg0000644000175000017500000000177214565521701024073 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/microphone-mute.svg0000644000175000017500000000203414565521701025521 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-muted.svg0000644000175000017500000000176214565521701026137 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/audio-volume-low.svg0000644000175000017500000000220114565521701025607 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/tick.svg0000644000175000017500000000102614565521701023340 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/complete-module.svg0000644000175000017500000000147714565521701025513 0ustar fengfeng ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/img/application.svg0000644000175000017500000000150714565521701024715 0ustar fengfeng 画板 1 ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/org.ukui.audio.gschema.xml0000644000175000017500000000627014565521701026112 0ustar fengfeng true Init system volume If true init system volume, otherwise do nothing 17 Default headphone volume percentage Default headphone volume percentage 0-100 67 Default output volume perccentage Default output volume percentage 0-100 100 Default hdmi volume perccentage Default hdmi volume percentage 0-100 100 Default Mic volume percentage Default Mic volume percentage 0-100 true Plugin init volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init intel mic volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init speaker volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init volume Whether to initialize the volume when plugging or unplugging the headset true Plugin init volume Whether to initialize the volume when plugging or unplugging the rear headphone true Plugin init volume Whether to initialize the volume when plugging or unplugging the hdmi ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/qss/0000755000175000017500000000000014565521701021720 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/qss/ukuimedia.qss0000644000175000017500000000000014565521701024413 0ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/sounds/0000755000175000017500000000000014565521701022425 5ustar fengfengukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/sounds/xunguang.xml0000644000175000017500000000245214565521701025006 0ustar fengfeng genericnotification specialnotification dialogcomplete dialogwarning dialogerror devconnectionsucceeded devconnectionfailed devconnectionbreak powerconnected lowpower volumechange copyormovesucceed recyclebinclear operationnotsupported photo screen ukui-media-3.1.1.2/ukui-volume-control-applet-qt/data/sounds/ukui-sound.xml0000644000175000017500000000570714565521701025263 0ustar fengfeng flop 电波回音 /usr/share/ukui-media/sounds/flop.ogg clank 叮铃 /usr/share/ukui-media/sounds/clank.ogg gudou 咕咚 /usr/share/ukui-media/sounds/gudou.ogg thud 回音 /usr/share/ukui-media/sounds/thud.ogg plump 机器人 /usr/share/ukui-media/sounds/plump.ogg quack 机械 /usr/share/ukui-media/sounds/quack.ogg ding 金属 /usr/share/ukui-media/sounds/ding.ogg clang 水波 /usr/share/ukui-media/sounds/clang.ogg gurgle 水声 /usr/share/ukui-media/sounds/gurgle.ogg fizz 吐泡泡 /usr/share/ukui-media/sounds/fizz.ogg ttlou 完成 /usr/share/ukui-media/sounds/ttlou.ogg rat-rat 煮茶 /usr/share/ukui-media/sounds/rat-rat.ogg splash 电磁 /usr/share/ukui-media/sounds/splash.ogg bark 犬吠 /usr/share/ukui-media/sounds/bark.ogg drip 雨滴 /usr/share/ukui-media/sounds/drip.ogg glass 玻璃 /usr/share/ukui-media/sounds/glass.ogg sonar 声纳 /usr/share/ukui-media/sounds/sonar.ogg None ukui-media-3.1.1.2/ukui-volume-control-applet-qt/customstyle.cpp0000644000175000017500000002246014565521701023304 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include CustomStyle::CustomStyle(const QString &proxyStyleName, QObject *parent) : QProxyStyle (proxyStyleName) { Q_UNUSED(parent); m_helpTip = new SliderTipLabelHelper(this); } CustomStyle::~CustomStyle() { } void CustomStyle::drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const { if(control == CC_ToolButton) { /// 我们需要获取ToolButton的详细信息,通过qstyleoption_cast可以得到 /// 对应的option,通过拷贝构造函数得到一份备份用于绘制子控件 /// 我们一般不用在意option是怎么得到的,大部分的Qt控件都能够提供了option的init方法 } return QProxyStyle::drawComplexControl(control, option, painter, widget); } void CustomStyle::drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { return QProxyStyle::drawControl(element, option, painter, widget); } void CustomStyle::drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const { return QProxyStyle::drawItemPixmap(painter, rectangle, alignment, pixmap); } void CustomStyle::drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole) const { return QProxyStyle::drawItemText(painter, rectangle, alignment, palette, enabled, text, textRole); } //绘制简单的颜色圆角等 void CustomStyle::drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { switch (element) { //绘制 ToolButton case PE_PanelButtonTool:{ painter->save(); painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x00)); painter->drawRoundedRect(option->rect,4,4); if (option->state & State_MouseOver) { if (option->state & State_Sunken) { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x14)); painter->drawRoundedRect(option->rect,4,4); qDebug() << " 点击按钮"; } else { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); painter->drawRoundedRect(option->rect,4,4); qDebug() << "悬停按钮"; } } painter->restore(); return; } case PE_PanelTipLabel:{ painter->save(); painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0x00,0xff)); painter->drawRoundedRect(option->rect,4,4); painter->restore(); return; }break; case PE_PanelButtonCommand:{ painter->save(); painter->setRenderHint(QPainter::TextAntialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x00)); if (option->state & State_MouseOver) { if (option->state & State_Sunken) { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0x3d,0x6b,0xe5,0xff)); painter->drawRoundedRect(option->rect,4,4); } else { painter->setRenderHint(QPainter::Antialiasing,true); painter->setPen(Qt::NoPen); painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); painter->drawRoundedRect(option->rect.adjusted(2,2,-2,-2),4,4); } } painter->restore(); return; }break; } return QProxyStyle::drawPrimitive(element, option, painter, widget); } QPixmap CustomStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const { return QProxyStyle::generatedIconPixmap(iconMode, pixmap, option); } QStyle::SubControl CustomStyle::hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget) const { return QProxyStyle::hitTestComplexControl(control, option, position, widget); } QRect CustomStyle::itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const { return QProxyStyle::itemPixmapRect(rectangle, alignment, pixmap); } QRect CustomStyle::itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const { return QProxyStyle::itemTextRect(metrics, rectangle, alignment, enabled, text); } // int CustomStyle::pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option, const QWidget *widget) const { switch (metric){ case PM_ToolBarIconSize:{ return (int)48*qApp->devicePixelRatio(); } default: break; } return QProxyStyle::pixelMetric(metric, option, widget); } // void CustomStyle::polish(QWidget *widget) { if (widget) { if (widget->inherits("QTipLabel")) { widget->setAttribute(Qt::WA_TranslucentBackground); QPainterPath path; auto rect = widget->rect(); rect.adjust(0,0,0,0); path.addRoundedRect(rect,6,6); widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); } } if (widget) { if (widget->inherits("QLable")) { const_cast (widget)->setAttribute(Qt::WA_TranslucentBackground); widget->setAttribute(Qt::WA_TranslucentBackground); QPainterPath path; auto rect = widget->rect(); rect.adjust(0,0,0,0); path.addRoundedRect(rect,6,6); widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); } } if (widget){ widget->setAttribute(Qt::WA_Hover); widget->inherits("QSlider"); m_helpTip->registerWidget(widget); widget->installEventFilter(this); } return QProxyStyle::polish(widget); } void CustomStyle::polish(QApplication *application) { return QProxyStyle::polish(application); } // void CustomStyle::polish(QPalette &palette) { // return QProxyStyle::polish(palette); // QProxyStyle::polish(palette); // palette.setBrush(QPalette::Foreground, Qt::black); QColor lightBlue(200, 0, 0); palette.setBrush(QPalette::Highlight, lightBlue); } void CustomStyle::unpolish(QWidget *widget) { return QProxyStyle::unpolish(widget); } void CustomStyle::unpolish(QApplication *application) { return QProxyStyle::unpolish(application); } QSize CustomStyle::sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget) const { return QProxyStyle::sizeFromContents(type, option, contentsSize, widget); } QIcon CustomStyle::standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const { return QProxyStyle::standardIcon(standardIcon, option, widget); } QPalette CustomStyle::standardPalette() const { return QProxyStyle::standardPalette(); } //如果需要背景透明也许需要用到这个函数 int CustomStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option, const QWidget *widget, QStyleHintReturn *returnData) const { switch (hint) { /// 让ScrollView viewport的绘制区域包含scrollbar和corner widget /// 这个例子中没有什么作用,如果我们需要绘制一个背景透明的滚动条 /// 这个style hint对我们的意义应该很大,因为我们希望视图能够帮助 /// 我们填充滚动条的背景区域,否则当背景透明时底下会出现明显的分割 case SH_ScrollView_FrameOnlyAroundContents: { return false; } default: break; } return QProxyStyle::styleHint(hint, option, widget, returnData); } QRect CustomStyle::subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget) const { return QProxyStyle::subControlRect(control, option, subControl, widget); } QRect CustomStyle::subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget) const { return QProxyStyle::subElementRect(element, option, widget); } ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.h0000644000175000017500000000415314565521701025731 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #include #include #include #include #include #define OSDWIDGET_SIZE 92,92 #define ICON_SIZE 48,48 #define TRANSPARENCY "org.ukui.control-center.personalise" #define THEME "org.ukui.style" #define PANEL_SCHEMA "org.ukui.panel.settings" #define PANEL_SIZE_KEY "panelsize" class UkmediaOsdDisplayWidget : public QWidget { Q_OBJECT public: UkmediaOsdDisplayWidget(QWidget *parent = nullptr); ~UkmediaOsdDisplayWidget(); friend class DeviceSwitchWidget; void initAttribute(); void initGsettings(); void geometryChangedHandle(); void setIcon(QString iconStr); void dialogShow(); QTimer *mTimer; QLabel *iconLabel; QString mIconName; QGSettings *m_pThemeSetting; QPixmap drawLightColoredPixmap(const QPixmap &source, const QString &style); public Q_SLOTS: void repaintWidget(); void timeoutHandle(); void ukuiThemeChangedSlot(const QString &themeStr); double getGlobalOpacity(); private: QFrame *m_frame; protected: void paintEvent(QPaintEvent *event); void resizeEvent(QResizeEvent* event); }; #endif // UKMEDIAOSDDISPLAYWIDGET_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_volume_control.h0000644000175000017500000003273014565521701025125 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #if HAVE_EXT_DEVICE_RESTORE_API # include #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "config.h" #include "ukmedia_custom_sound.h" #include #define PANGUW_SINK "alsa_output.platform-raoliang-sndcard.analog-stereo" #define NOISE_REDUCE_SOURCE "noiseReduceSource" #define HISTEN_SINK "histen_sink" #define SPEAKER "analog-output-speaker" #define HUAWEI_SPEAKER "analog-output-speaker-huawei" #define HEADPHONE_VOLUME 17 #define HDMI_VOLUME 100 #define OUTPUT_VOLUME 67 #define MIC_VOLUME 100 #define PA_VOLUME_NORMAL 65536.0 #define UKMEDIA_VOLUME_NORMAL 100.0 class PortInfo { public: QByteArray name; QByteArray description; uint32_t priority; int available; int direction; int64_t latency_offset; std::vector profiles; }; class UkmediaVolumeControl : public QObject{ Q_OBJECT public: UkmediaVolumeControl(); virtual ~UkmediaVolumeControl(); enum SoundType { SINK, SOURCE, }; void insertCardInfoJson(QString cardKey, QString cardstr, QString volumeKey, int volume, QString muteKey, bool mute, QString jsonfile); void insertJson(QString key, QString value, QString jsonfile); int boolToInt(bool b); void refreshVolume(int soundType, int info_Vol, bool info_Mute); void updateCard(UkmediaVolumeControl *c,const pa_card_info &info); QString findCardName(int index,QMap cardMap); int valueToPaVolume(int value); int paVolumeToValue(int volume); void initDefaultSinkVolume(const pa_sink_info &info); void initDefaultSourceVolume(const pa_source_info &info); bool updateSink(UkmediaVolumeControl *c,const pa_sink_info &info); void updateSource(const pa_source_info &info); void updateSinkInput(const pa_sink_input_info &info); void updateSourceOutput(const pa_source_output_info &info); void updateClient(const pa_client_info &info); void updateServer(const pa_server_info &info); void updateRole(const pa_ext_stream_restore_info &info); void updateDeviceInfo(const pa_ext_device_restore_info &info) ; void setSinkMute(bool status); //设置输出设备静音状态 void setSinkVolumeByInfo(const pa_sink_info &info,int value); void setSourceVolumeByInfo(const pa_source_info &info,int value); void setSinkVolume(int index,int value); //设置输出设备音量值 void setSourceMute(bool status); //设置输入设备静音状态 void setSourceVolume(int index,int value); //设置输入设备音量值 bool getSinkMute(); //获取输出设备静音状态 int getSinkVolume(); //获取输出设备音量值 bool getSourceMute(); //获取输入设备静音状态 int getSourceVolume(); //获取输入设备音量值 bool getSinkInputMuted(QString description); int getModuleIndexByName(QString name); int getDefaultSinkIndex(); int getSinkInputVolume(const gchar *name); //根据name获取sink input的音量值 void setSinkInputVolume(int index,int value,int channel); //设置sink input 音量值 void setSinkInputMuted(int index,bool status); //设置sink input 静音状态 void setSourceOutputVolume(int index, int value, int channel); void setSourceOutputMuted(int index, bool status); int getSourceOutputVolume(const gchar *name); //根据name获取source output的音量值 bool setCardProfile(int index,const gchar *name); //设置声卡的配置文件 bool setDefaultSink(const gchar *name); //设置默认的输出设备 bool setDefaultSource(const gchar *name); //设置默认的输入设备 bool setSinkPort(const gchar *sinkName,const gchar *name); //设置输出设备的端口 QString stringRemoveUnrecignizedChar(QString str);//移除xml中不能识别的字符 bool setSourcePort(const gchar *portName, const gchar *name); //设置输入设备的端口 bool killSinkInput(int index); //kill 索引为index的sink input //#if HAVE_EXT_DEVICE_RESTORE_API //// void updateDeviceInfo(const pa_ext_device_restore_info &info); //#endif void removeCard(uint32_t index); void removeSink(uint32_t index); void removeSource(uint32_t index); void removeSinkInput(uint32_t index); void removeSourceOutput(uint32_t index); void removeClient(uint32_t index); void setConnectingMessage(const char *string = NULL); void showError(const char *txt); static void decOutstanding(UkmediaVolumeControl *w); static void cardCb(pa_context *, const pa_card_info *i, int eol, void *userdata); static void bluetoothCardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata); static void batteryLevelCb(pa_context *c, const pa_card_info *i, int eol, void *userdata); static void sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); static void sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata); static void sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); static void sourceCb(pa_context *, const pa_source_info *i, int eol, void *userdata); static void sinkInputCb(pa_context *, const pa_sink_input_info *i, int eol, void *userdata); static void sinkInputCallback(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata); //不更新sink input static void sourceOutputCb(pa_context *, const pa_source_output_info *i, int eol, void *userdata); static void clientCb(pa_context *, const pa_client_info *i, int eol, void *userdata); static void serverInfoCb(pa_context *, const pa_server_info *i, void *userdata); static void serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata); static void extStreamRestoreReadCb(pa_context *,const pa_ext_stream_restore_info *i,int eol,void *userdata); static void extStreamRestoreSubscribeCb(pa_context *c, void *userdata); // void ext_device_restore_read_cb(pa_context *,const pa_ext_device_restore_info *i,int eol,void *userdata); // static void ext_device_restore_subscribe_cb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); static void extDeviceManagerReadCb(pa_context *,const pa_ext_device_manager_info *,int eol,void *userdata); static void extDeviceManagerSubscribeCb(pa_context *c, void *userdata); static void subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata); static void contextStateCallback(pa_context *c, void *userdata); static void moduleInfoCb(pa_context *c, const pa_module_info *i, int eol, void *userdata); pa_context* getContext(void); gboolean connectToPulse(gpointer userdata); void removeOutputPortMap(int index); //移除指定索引的output port void removeInputPortMap(int index); //移除指定索引的input port void removeCardMap(int index); //移除指定索引的 card void removeCardProfileMap(int index); //移除声卡profile map void removeSinkPortMap(int index); void removeProfileMap(int index); void removeInputProfile(int index); bool isExitOutputPort(QString name); int findOutputPort(QString name); QString findSinkActivePortName(QString name); bool isExitInputPort(QString name); void sendPortChangedSignal(); void sendSourcePortChangedSignal(); int findPortSourceIndex(QString name); int findPortSinkIndex(QString name); QString findSourcePortName(int cardIndex); QString findSinkPortName(int cardIndex); QString findMasterDeviceInfo(pa_proplist *proplist, const char *info_name); //开启降噪时,设置对应的sourcePortName与defaultinputcard QString findSinkMasterDeviceInfo(pa_proplist *proplist, const char *info_name); bool isNeedSendPortChangedSignal(QString newPort, QString prePort, QString cardName); void sendOsdWidgetSignal(QString portName, QString description); std::vector< std::pair > profiles; std::map ports; std::vector< std::pair > dPorts; QByteArray activePort; QByteArray activeProfile; QByteArray noInOutProfile; QByteArray lastActiveProfile; bool hasSinks; bool hasSources; bool firstRun = true; pa_cvolume m_defaultSinkVolume; const pa_sink_info *m_pDefaultSink = nullptr; pa_context* m_pPaContext; std::map clientNames; SinkInputType showSinkInputType; SinkType showSinkType; SourceOutputType showSourceOutputType; SourceType showSourceType; int sinkVolume = 0; //输出音量 int sourceVolume = 0; //输入音量 bool sinkMuted; //输出静音状态 bool sourceMuted; //输入静音状态 int sinkInputVolume; //sink input 音量 bool sinkInputMuted; //sink input 静音状态 int signalCount = 0; //为了防止多次发送信号的情况,当signalCount>=2时,置1 float balance; //平衡音量值 int channel = 0; //通道数 int inputChannel = 0; int sinkInputChannel = 0; int sourceOutputChannel = 0; QString sourcePortName = ""; //输入设备端口名 QString sinkPortName = ""; //输出设备端口名 const gchar *sinkPortLabel; //输出设备端口名 int defaultOutputCard; int defaultInputCard; QString findModuleStr = ""; //需要查找的module name int findModuleIndex = -1; //查找到模块的index QString masterDevice = ""; QString masterSinkDev = ""; pa_channel_map channelMap; friend class UkmediaMainWidget; QMap sinkMap; //输出设备 QMap sinkActivePortMap; //输出设备活跃端口 QMap sourceMap; //输入设备 QMap> outputPortMap; //输出端口 QMap> inputPortMap; //输入端口 QMap> profileNameMap; //声卡输出配置文件 QMap>inputPortProfileNameMap; //声卡输入配置文件 QMap> cardProfilePriorityMap; //记录声卡优先级配置文件 QMap> cardProfileMap; QMap cardMap; QMap> sinkPortMap; QMap> sourcePortMap; QMap cardActiveProfileMap; Q_SIGNALS: void paContextReady(); void updateVolume(int value); void updateSourceVolume(int value); void updateMute(bool state); void updateSourceMute(bool state); void addSinkInputSignal(const gchar* name,const gchar *id,int index,int value,int channel); //添加应用信号 void sinkInputVolumeChangedSignal(const gchar* name,const gchar *id,int value); //sink input音量改变信号 void removeSinkInputSignal(const gchar* name); void addSourceOutputSignal(const gchar* name,const gchar *id,int index); void removeSourceOutputSignal(const gchar* name); void checkDeviceSelectionSianal(const pa_card_info *info); void updatePortSignal(); void deviceChangedSignal(); void removeSinkSignal(); void device_changed_signal(QString str); void bluetoothBatteryChanged(QString dev, int battery); void initBlueDeviceVolumeSig(int index, QString name); protected Q_SLOTS: void timeoutSlot(); void getBatteryLevel(QString dev); public: void setConnectionState(gboolean connected); pa_stream* createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx, bool suspend); void setIconFromProplist(QLabel *icon, pa_proplist *l, const char *name); pa_context *context; QByteArray defaultSinkName, defaultSourceName; int n_outstanding = 0; int reconnectTimeout = 0; bool canRenameDevices; int sinkIndex; //输出设备索引 int sourceIndex; //输入设备索引 // int sinkInputVolume; pa_mainloop_api* api; bool isLoadLoopback = false; int batteryLevel; //针对一个应用产生多个sinkinput,indexMap记录应用产生sinkinput的每个index, valueMap刷新应用的最新音量 QMap sinkInputIndexMap; QMap sinkInputValueMap; QMap sourceOutputIndexMap; QMap sourceOutputValueMap; QMap sinkInputMuteMap; QStringList sinkInputList; private: CustomSound *customSoundFile; gboolean m_connected; gchar* m_config_filename; int firstgo = true; int firstGoWithNoSink = true; QString m_description; // sink_description bool osdFirstFlag = true; }; #endif // UKMEDIAVOLUMECONTROL_H ukui-media-3.1.1.2/ukui-volume-control-applet-qt/ukmedia_custom_sound.h0000644000175000017500000000222414565521701024573 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include class CustomSound { public: CustomSound(); ~CustomSound(); bool createAudioFile(); bool isExist(QString nodeName); int addXmlNode(QString nodeNane, bool initState); bool isFirstRun(); public: QFile *file; private: QDomDocument *doc; QString audioPath; }; #endif // CUSTOMSOUND_H ukui-media-3.1.1.2/README0000644000175000017500000000045414565521701013217 0ustar fengfengThese are the media tools for UKUI: ukui-volume-control - UKUI volume control application and applet Refer to the following files for license information for each sub-component of ukui-media: ukui-volume-control - COPYING documentation - COPYING-DOCS UKUI-Media is a fork of MATE-Media. ukui-media-3.1.1.2/build-aux/0000755000175000017500000000000014565521701014226 5ustar fengfengukui-media-3.1.1.2/build-aux/git-version-gen0000755000175000017500000001272614565521701017201 0ustar fengfeng#!/bin/sh # Print a version string. scriptversion=2009-05-04.22 # Copyright (C) 2007-2008 Free Software Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # This script is derived from GIT-VERSION-GEN from GIT: http://git.or.cz/. # It may be run two ways: # - from a git repository in which the "git describe" command below # produces useful output (thus requiring at least one signed tag) # - from a non-git-repo directory containing a .tarball-version file, which # presumes this script is invoked like "./git-version-gen .tarball-version". # In order to use intra-version strings in your project, you will need two # separate generated version string files: # # .tarball-version - present only in a distribution tarball, and not in # a checked-out repository. Created with contents that were learned at # the last time autoconf was run, and used by git-version-gen. Must not # be present in either $(srcdir) or $(builddir) for git-version-gen to # give accurate answers during normal development with a checked out tree, # but must be present in a tarball when there is no version control system. # Therefore, it cannot be used in any dependencies. GNUmakefile has # hooks to force a reconfigure at distribution time to get the value # correct, without penalizing normal development with extra reconfigures. # # .version - present in a checked-out repository and in a distribution # tarball. Usable in dependencies, particularly for files that don't # want to depend on config.h but do want to track version changes. # Delete this file prior to any autoconf run where you want to rebuild # files to pick up a version string change; and leave it stale to # minimize rebuild time after unrelated changes to configure sources. # # It is probably wise to add these two files to .gitignore, so that you # don't accidentally commit either generated file. # # Use the following line in your configure.ac, so that $(VERSION) will # automatically be up-to-date each time configure is run (and note that # since configure.ac no longer includes a version string, Makefile rules # should not depend on configure.ac for version updates). # # AC_INIT([GNU project], # m4_esyscmd([build-aux/git-version-gen .tarball-version]), # [bug-project@example]) # # Then use the following lines in your Makefile.am, so that .version # will be present for dependencies, and so that .tarball-version will # exist in distribution tarballs. # # BUILT_SOURCES = $(top_srcdir)/.version # $(top_srcdir)/.version: # echo $(VERSION) > $@-t && mv $@-t $@ # dist-hook: # echo $(VERSION) > $(distdir)/.tarball-version case $# in 1) ;; *) echo 1>&2 "Usage: $0 \$srcdir/.tarball-version"; exit 1;; esac tarball_version_file=$1 nl=' ' # First see if there is a tarball-only version file. # then try "git describe", then default. if test -f $tarball_version_file then v=`cat $tarball_version_file` || exit 1 case $v in *$nl*) v= ;; # reject multi-line output [0-9]*) ;; *) v= ;; esac test -z "$v" \ && echo "$0: WARNING: $tarball_version_file seems to be damaged" 1>&2 fi if test -n "$v" then : # use $v elif test -d .git \ && v=`git describe --abbrev=4 --match='${UKUI_TAG_PATTERN}_*' HEAD 2>/dev/null \ || git describe --abbrev=4 HEAD 2>/dev/null` \ && case $v in ${UKUI_TAG_PATTERN}_[0-9]*) ;; *) (exit 1) ;; esac then # Is this a new git that lists number of commits since the last # tag or the previous older version that did not? # Newer: v6.10-77-g0f8faeb # Older: v6.10-g0f8faeb case $v in *-*-*) : git describe is okay three part flavor ;; *-*) : git describe is older two part flavor # Recreate the number of commits and rewrite such that the # result is the same as if we were using the newer version # of git describe. vtag=`echo "$v" | sed 's/-.*//'` numcommits=`git rev-list "$vtag"..HEAD | wc -l` v=`echo "$v" | sed "s/\(.*\)-\(.*\)/\1-$numcommits-\2/"`; ;; esac # Change the first '-' to a '.', so version-comparing tools work properly. # Remove the "g" in git describe's output string, to save a byte. v=`echo "$v" | sed 's/-/./;s/\(.*\)-g/\1-/'`; else v=UNKNOWN fi #v=`echo "$v" |sed 's/^v//'` v=`echo "$v" | sed "s/${UKUI_TAG_PATTERN}_//" | tr _ .` # Don't declare a version "dirty" merely because a time stamp has changed. git status > /dev/null 2>&1 dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty= case "$dirty" in '') ;; *) # Append the suffix only if there isn't one already. case $v in *-dirty) ;; *) v="$v-dirty" ;; esac ;; esac # Omit the trailing newline, so that m4_esyscmd can use the result directly. echo "$v" | tr -d '\012' # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: ukui-media-3.1.1.2/man/0000755000175000017500000000000014567025031013104 5ustar fengfengukui-media-3.1.1.2/man/Makefile.am0000644000175000017500000000017014565521701015141 0ustar fengfengman_MANS = ukui-volume-control.1 ukui-volume-control-applet.1 ukui-volume-control-applet-qt.1 EXTRA_DIST = $(man_MANS) ukui-media-3.1.1.2/man/ukui-login-sound.10000644000175000017500000000206114567025031016376 0ustar fengfeng.\" Man Page for ukui-volume-control-applet-qt .TH UKUI-MEDIA-CONTROL-LED 1 "20 February 2019" "UKUI Desktop Environment" .\" Please adjust this date when revising the manpage. .\" .SH "NAME" \fBukui-media-control-led\fR \- The UKUI Volume Control Applet(Qt) .SH "SYNOPSIS" .B ukui-media-control-led [OPTIONS] .SH "DESCRIPTION" The UKUI Volume Control Applet is used for adjusting audio levels from the notification area. .SH "OPTIONS" .TP \fB\-v, \-\-version\fR Output version information and exit. .TP \fB\-d, \-\-debug\fR Enable debugging code. .TP \fB\-\-display=DISPLAY\fR X display to use. .TP \fB\-?, \-h, \-\-help\fR Print standard command line options. .TP \fB\-\-help\-all\fR Print all command line options. .SH "BUGS" .SS Should you encounter any bugs, they may be reported at: http://github.com/ukui/ukui-media/issues .SH "AUTHORS" .SS This Manual Page has been written for the UKUI Desktop Environment by: Adam Erdman (2014) .SH "SEE ALSO" .SS Further information may also be available at: http://ukui.org .BR ukui-media-control-led (1) ukui-media-3.1.1.2/man/ukui-volume-control-applet-qt.10000644000175000017500000000207414565521701021041 0ustar fengfeng.\" Man Page for ukui-volume-control-applet-qt .TH UKUI-VOLUME-CONTROL-APPLET-QT 1 "20 February 2019" "UKUI Desktop Environment" .\" Please adjust this date when revising the manpage. .\" .SH "NAME" \fBukui-volume-control-applet-qt\fR \- The UKUI Volume Control Applet(Qt) .SH "SYNOPSIS" .B ukui-volume-control-qt [OPTIONS] .SH "DESCRIPTION" The UKUI Volume Control Applet is used for adjusting audio levels from the notification area. .SH "OPTIONS" .TP \fB\-v, \-\-version\fR Output version information and exit. .TP \fB\-d, \-\-debug\fR Enable debugging code. .TP \fB\-\-display=DISPLAY\fR X display to use. .TP \fB\-?, \-h, \-\-help\fR Print standard command line options. .TP \fB\-\-help\-all\fR Print all command line options. .SH "BUGS" .SS Should you encounter any bugs, they may be reported at: http://github.com/ukui/ukui-media/issues .SH "AUTHORS" .SS This Manual Page has been written for the UKUI Desktop Environment by: Adam Erdman (2014) .SH "SEE ALSO" .SS Further information may also be available at: http://ukui.org .BR ukui-volume-control (1) ukui-media-3.1.1.2/man/ukui-media-control-led.10000644000175000017500000000206114565521701017442 0ustar fengfeng.\" Man Page for ukui-volume-control-applet-qt .TH UKUI-MEDIA-CONTROL-LED 1 "20 February 2019" "UKUI Desktop Environment" .\" Please adjust this date when revising the manpage. .\" .SH "NAME" \fBukui-media-control-led\fR \- The UKUI Volume Control Applet(Qt) .SH "SYNOPSIS" .B ukui-media-control-led [OPTIONS] .SH "DESCRIPTION" The UKUI Volume Control Applet is used for adjusting audio levels from the notification area. .SH "OPTIONS" .TP \fB\-v, \-\-version\fR Output version information and exit. .TP \fB\-d, \-\-debug\fR Enable debugging code. .TP \fB\-\-display=DISPLAY\fR X display to use. .TP \fB\-?, \-h, \-\-help\fR Print standard command line options. .TP \fB\-\-help\-all\fR Print all command line options. .SH "BUGS" .SS Should you encounter any bugs, they may be reported at: http://github.com/ukui/ukui-media/issues .SH "AUTHORS" .SS This Manual Page has been written for the UKUI Desktop Environment by: Adam Erdman (2014) .SH "SEE ALSO" .SS Further information may also be available at: http://ukui.org .BR ukui-media-control-led (1) ukui-media-3.1.1.2/ChangeLog0000644000175000017500000000016614565521701014111 0ustar fengfengThe ChangeLog is auto-generated when releasing. If you are seeing this, use 'git log' for a detailed list of changes. ukui-media-3.1.1.2/COPYING0000644000175000017500000004325414565521701013377 0ustar fengfeng GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ukui-media-3.1.1.2/ukui-login-sound/0000755000175000017500000000000014567025031015542 5ustar fengfengukui-media-3.1.1.2/ukui-login-sound/ukui_login_sound.h0000644000175000017500000001571614567025031021302 0ustar fengfeng/* * aplay.c - plays and records * * CREATIVE LABS CHANNEL-files * Microsoft WAVE-files * SPARC AUDIO .AU-files * Raw Data * * Copyright (c) by Jaroslav Kysela * Based on vplay program by Michael Beck * * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifndef APLAYPLAY_H #define APLAYPLAY_H #define _GNU_SOURCE //#include "aconfig.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "formats.h" #include #include #include #include #include #define BUFFER_LEN 1024 //开机音乐播放路径 #define PLAY_STARTUP_WAV "/usr/share/ukui/ukui-session-manager/startup.wav" #define TMP_STARTUP_WAV_PATH "/tmp/startup.wav" #define NORMAL_VOLUME 100.0 #define MIN_VOLUME 0.0 #define ABS(a) (a) < 0 ? -(a) : (a) #ifdef SND_CHMAP_API_VERSION #define CONFIG_SUPPORT_CHMAP 1 #endif #ifndef LLONG_MAX #define LLONG_MAX 9223372036854775807LL #endif #ifndef le16toh #include #define le16toh(x) __le16_to_cpu(x) #define be16toh(x) __be16_to_cpu(x) #define le32toh(x) __le32_to_cpu(x) #define be32toh(x) __be32_to_cpu(x) #endif #define DEFAULT_FORMAT SND_PCM_FORMAT_U8 #define DEFAULT_SPEED 8000 #define FORMAT_DEFAULT -1 #define FORMAT_RAW 0 #define FORMAT_VOC 1 #define FORMAT_WAVE 2 #define FORMAT_AU 3 /* global data */ static snd_pcm_sframes_t (*readi_func)(snd_pcm_t *handle, void *buffer, snd_pcm_uframes_t size); static snd_pcm_sframes_t (*writei_func)(snd_pcm_t *handle, const void *buffer, snd_pcm_uframes_t size); static snd_pcm_sframes_t (*readn_func)(snd_pcm_t *handle, void **bufs, snd_pcm_uframes_t size); static snd_pcm_sframes_t (*writen_func)(snd_pcm_t *handle, void **bufs, snd_pcm_uframes_t size); enum { VUMETER_NONE, VUMETER_MONO, VUMETER_STEREO }; static char *command; static snd_pcm_t *handle; static struct { snd_pcm_format_t format; unsigned int channels; unsigned int rate; } hwparams, rhwparams; static int timelimit = 0; static int sampleslimit = 0; static int quiet_mode = 0; static int file_type = FORMAT_DEFAULT; static int open_mode = 0; static snd_pcm_stream_t stream = SND_PCM_STREAM_PLAYBACK; static int mmap_flag = 0; static int interleaved = 1; static int nonblock = 0; static volatile sig_atomic_t in_aborting = 0; static u_char *audiobuf = NULL; static snd_pcm_uframes_t chunk_size = 0; static unsigned period_time = 0; static unsigned buffer_time = 0; static snd_pcm_uframes_t period_frames = 0; static snd_pcm_uframes_t buffer_frames = 0; static int avail_min = -1; static int start_delay = 0; static int stop_delay = 0; static int monotonic = 0; static int interactive = 0; static int can_pause = 0; static int fatal_errors = 0; static int verbose = 0; static int vumeter = VUMETER_NONE; static int buffer_pos = 0; static size_t significant_bits_per_sample, bits_per_sample, bits_per_frame; static size_t chunk_bytes; static int test_position = 0; static int test_coef = 8; static int test_nowait = 0; static snd_output_t *log; static long long max_file_size = 0; static int max_file_time = 0; static int use_strftime = 0; volatile static int recycle_capture_file = 0; static long term_c_lflag = -1; static int dump_hw_params = 0; static int fd = -1; static off64_t pbrec_count = LLONG_MAX, fdcount; static int vocmajor, vocminor; static char *pidfile_name = NULL; //FILE *pidf = NULL; static int pidfile_written = 0; #ifdef CONFIG_SUPPORT_CHMAP static snd_pcm_chmap_t *channel_map = NULL; /* chmap to override */ static unsigned int *hw_map = NULL; /* chmap to follow */ #endif //extern "C"{ /* needed prototypes */ class UkuiLoginSound : public QObject { Q_OBJECT public: UkuiLoginSound(QObject *parent = nullptr); ~UkuiLoginSound(); static void check_wavefile_space(u_char *buffer,u_int len, size_t blimit); static void device_list(); static void pcm_list(void); static void prg_exit(int code); static void signal_handler(int sig); static void signal_handler_recycle (int sig); int aplayMain(int argc, char *filename,char *playdev); static ssize_t safe_read(int fd, void *buf, size_t count); static size_t test_wavefile_read(int fd, u_char *buffer, size_t *size, size_t reqsize, int line); static ssize_t test_wavefile(int fd, u_char *_buffer, size_t size); static void show_available_sample_formats(snd_pcm_hw_params_t* params); static int setup_chmap(void); static void set_params(void); static void init_stdin(void); static void done_stdin(void); static void do_pause(void); static void check_stdin(void); static void xrun(void); static void suspend(void); static void print_vu_meter_mono(int perc, int maxperc); static void print_vu_meter_stereo(int *perc, int *maxperc); static void print_vu_meter(signed int *perc, signed int *maxperc); static void compute_max_peak(u_char *data, size_t count); static void do_test_position(void); static u_char *remap_data(u_char *data, size_t count); static u_char **remap_datav(u_char **data, size_t count); static ssize_t pcm_write(u_char *data, size_t count); static ssize_t pcm_writev(u_char **data, unsigned int channels, size_t count); static ssize_t pcm_read(u_char *data, size_t rcount); static ssize_t pcm_readv(u_char **data, unsigned int channels, size_t rcount); static ssize_t voc_pcm_write(u_char *data, size_t count); static void init_raw_data(void); static off64_t calc_count(void); static void header(int rtype, char *name); static void playback_go(int fd, size_t loaded, off64_t count, int rtype, char *name); static int read_header(int *loaded, int header_size); static int playback_wave(char *name, int *loaded); static int playback_raw(char *name, int *loaded); static void playback(char *name); static char* checkPcm(char *name); void power_on_smartpa(); //开启华为扬声器开关 int wav_convert(int volume, bool mute); }; #endif // APLAYPLAY_H ukui-media-3.1.1.2/ukui-login-sound/ukui-login-sound.pro0000644000175000017500000000230514567025031021475 0ustar fengfengQT += core gui #greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TEMPLATE = app TARGET = ukui-login-sound target.path = /usr/bin CONFIG += \ c++11 \ no_keywords link_pkgconfig # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS # You can also make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 SOURCES += \ main.cpp \ ukui_login_sound.cpp \ user_conf.cpp HEADERS += \ formats.h \ ukui_login_sound.h \ user_conf.h PKGCONFIG += alsa \ sndfile LIBS += -lukui-log4qt # Default rules for deployment. #qnx: target.path = /tmp/$${TARGET}/bin #else: unix:!android: target.path = /opt/$${TARGET}/bin #!isEmpty(target.path): INSTALLS += target INSTALLS += target \ ukui-media-3.1.1.2/ukui-login-sound/ukui_login_sound.cpp0000644000175000017500000015532614565521701021642 0ustar fengfeng/* * aplay.c - plays and records * * CREATIVE LABS CHANNEL-files * Microsoft WAVE-files * SPARC AUDIO .AU-files * Raw Data * * Copyright (c) by Jaroslav Kysela * Based on vplay program by Michael Beck * * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #include "ukui_login_sound.h" FILE *pidf = NULL; void UkuiLoginSound::device_list() { snd_ctl_t *handle; int card, err, dev, idx; snd_ctl_card_info_t *info; snd_pcm_info_t *pcminfo; snd_ctl_card_info_alloca(&info); snd_pcm_info_alloca(&pcminfo); card = -1; if (snd_card_next(&card) < 0 || card < 0) { printf(("no soundcards found...")); return; } printf(("**** List of %s Hardware Devices ****\n"), snd_pcm_stream_name(stream)); while (card >= 0) { char name[32]; sprintf(name, "hw:%d", card); if ((err = snd_ctl_open(&handle, name, 0)) < 0) { printf("control open (%i): %s", card, snd_strerror(err)); goto next_card; } if ((err = snd_ctl_card_info(handle, info)) < 0) { printf("control hardware info (%i): %s", card, snd_strerror(err)); snd_ctl_close(handle); goto next_card; } dev = -1; while (1) { unsigned int count; if (snd_ctl_pcm_next_device(handle, &dev)<0) printf("snd_ctl_pcm_next_device"); if (dev < 0) break; snd_pcm_info_set_device(pcminfo, dev); snd_pcm_info_set_subdevice(pcminfo, 0); snd_pcm_info_set_stream(pcminfo, stream); if ((err = snd_ctl_pcm_info(handle, pcminfo)) < 0) { if (err != -ENOENT) printf("control digital audio info (%i): %s", card, snd_strerror(err)); continue; } printf(("card %i: %s [%s], device %i: %s [%s]\n"), card, snd_ctl_card_info_get_id(info), snd_ctl_card_info_get_name(info), dev, snd_pcm_info_get_id(pcminfo), snd_pcm_info_get_name(pcminfo)); count = snd_pcm_info_get_subdevices_count(pcminfo); printf((" Subdevices: %i/%i\n"), snd_pcm_info_get_subdevices_avail(pcminfo), count); for (idx = 0; idx < (int)count; idx++) { snd_pcm_info_set_subdevice(pcminfo, idx); if ((err = snd_ctl_pcm_info(handle, pcminfo)) < 0) { printf("control digital audio playback info (%i): %s", card, snd_strerror(err)); } else { printf((" Subdevice #%i: %s\n"), idx, snd_pcm_info_get_subdevice_name(pcminfo)); } } } snd_ctl_close(handle); next_card: if (snd_card_next(&card) < 0) { printf("snd_card_next"); break; } } } void UkuiLoginSound::pcm_list(void) { void **hints, **n; char *name, *descr, *descr1, *io; const char *filter; if (snd_device_name_hint(-1, "pcm", &hints) < 0) return; n = hints; filter = stream == SND_PCM_STREAM_CAPTURE ? "Input" : "Output"; while (*n != NULL) { name = snd_device_name_get_hint(*n, "NAME"); descr = snd_device_name_get_hint(*n, "DESC"); io = snd_device_name_get_hint(*n, "IOID"); if (io != NULL && strcmp(io, filter) != 0) goto __end; printf("%s\n", name); if ((descr1 = descr) != NULL) { printf(" "); while (*descr1) { if (*descr1 == '\n') printf("\n "); else putchar(*descr1); descr1++; } putchar('\n'); } __end: if (name != NULL) free(name); if (descr != NULL) free(descr); if (io != NULL) free(io); n++; } snd_device_name_free_hint(hints); } /* * Subroutine to clean up before exit. */ void UkuiLoginSound::prg_exit(int code) { done_stdin(); if (handle) snd_pcm_close(handle); if (pidfile_written) remove (pidfile_name); exit(code); } void UkuiLoginSound::signal_handler(int sig) { if (in_aborting) return; in_aborting = 1; if (verbose==2) putchar('\n'); if (!quiet_mode) { syslog (LOG_INFO,"signal_handler %d %d",sig,quiet_mode); fprintf(stderr, ("Aborted by signal %s...\n"), strsignal(sig)); } if (handle) snd_pcm_abort(handle); if (sig == SIGABRT) { /* do not call snd_pcm_close() and abort immediately */ handle = NULL; prg_exit(EXIT_FAILURE); } signal(sig, SIG_DFL); } /* call on SIGUSR1 signal. */ void UkuiLoginSound::signal_handler_recycle (int sig) { /* flag the capture loop to start a new output file */ recycle_capture_file = 1; } int UkuiLoginSound::aplayMain(int argc, char *filename,char *playdev) { int duration_or_sample = 0; int option_index; static const char short_options[] = "hnlLD:qt:c:f:r:d:s:MNF:A:R:T:B:vV:IPCi" #ifdef CONFIG_SUPPORT_CHMAP "m:" #endif ; char *pcm_name = playdev; int tmp, err, c; int do_device_list = 0, do_pcm_list = 0; snd_pcm_info_t *info; FILE *direction; #ifdef ENABLE_NLS setlocale(LC_ALL, ""); textdomain(PACKAGE); #endif snd_pcm_info_alloca(&info); err = snd_output_stdio_attach(&log, stderr, 0); assert(err >= 0); file_type = FORMAT_DEFAULT; stream = SND_PCM_STREAM_PLAYBACK; direction = stdin; chunk_size = -1; rhwparams.format = DEFAULT_FORMAT; rhwparams.rate = DEFAULT_SPEED; rhwparams.channels = 1; if (do_device_list) { if (do_pcm_list) pcm_list(); device_list(); goto __end; } else if (do_pcm_list) { pcm_list(); goto __end; } err = snd_pcm_open(&handle, playdev, stream, open_mode); syslog (LOG_INFO,"snd_pcm_open(&handle,pcm_name, stream, open_mode) %s",pcm_name); if (err < 0) { printf(("audio open error: %s"), snd_strerror(err)); return 1; } if ((err = snd_pcm_info(handle, info)) < 0) { printf(("info error: %s"), snd_strerror(err)); return 1; } if (nonblock) { err = snd_pcm_nonblock(handle, 1); if (err < 0) { printf(("nonblock setting error: %s"), snd_strerror(err)); return 1; } } chunk_size = 1024; hwparams = rhwparams; audiobuf = (u_char *)malloc(1024); if (audiobuf == NULL) { printf(("not enough memory")); return 1; } if (mmap_flag) { writei_func = snd_pcm_mmap_writei; readi_func = snd_pcm_mmap_readi; writen_func = snd_pcm_mmap_writen; readn_func = snd_pcm_mmap_readn; } else { writei_func = snd_pcm_writei; readi_func = snd_pcm_readi; writen_func = snd_pcm_writen; readn_func = snd_pcm_readn; } if (pidfile_name) { errno = 0; pidf = fopen (pidfile_name, "w"); if (pidf) { (void)fprintf (pidf, "%d\n", getpid()); fclose(pidf); pidfile_written = 1; } else { printf(("Cannot create process ID file %s: %s"), pidfile_name, strerror (errno)); return 1; } } signal(SIGINT, signal_handler); signal(SIGTERM, signal_handler); signal(SIGABRT, signal_handler); signal(SIGUSR1, signal_handler_recycle); if (interleaved) { if (stream == SND_PCM_STREAM_PLAYBACK) { syslog (LOG_INFO,"stream == SND_PCM_STREAM_PLAYBACK stream:%s SND_PCM_STREAM_PLAYBACK:%d ",stream,SND_PCM_STREAM_PLAYBACK); playback(filename); } } if (verbose==2) putchar('\n'); snd_pcm_close(handle); handle = NULL; free(audiobuf); __end: snd_output_close(log); snd_config_update_free_global(); prg_exit(EXIT_SUCCESS); /* avoid warning */ return EXIT_SUCCESS; } /* * Safe read (for pipes) */ ssize_t UkuiLoginSound::safe_read(int fd, void *buf, size_t count) { ssize_t result = 0, res; while (count > 0 && !in_aborting) { if ((res = read(fd, buf, count)) == 0) break; if (res < 0) return result > 0 ? result : res; count -= res; result += res; buf = (char *)buf + res; } return result; } /* * helper for test_wavefile */ size_t UkuiLoginSound::test_wavefile_read(int fd, u_char *buffer, size_t *size, size_t reqsize, int line) { if (*size >= reqsize) return *size; if ((size_t)safe_read(fd, buffer + *size, reqsize - *size) != reqsize - *size) { printf(("read error (called from line %i)"), line); prg_exit(EXIT_FAILURE); } return *size = reqsize; } #define check_wavefile_space(buffer, len, blimit) \ if (len > blimit) { \ blimit = len; \ if ((buffer = (u_char *)realloc(buffer, blimit)) == NULL) { \ printf(("not enough memory")); \ prg_exit(EXIT_FAILURE); \ } \ } /* * test, if it's a .WAV file, > 0 if ok (and set the speed, stereo etc.) * == 0 if not * Value returned is bytes to be discarded. */ ssize_t UkuiLoginSound::test_wavefile(int fd, u_char *_buffer, size_t size) { WaveHeader *h = (WaveHeader *)_buffer; u_char *buffer = NULL; size_t blimit = 0; WaveFmtBody *f; WaveChunkHeader *c; u_int type, len; unsigned short format, channels; int big_endian, native_format; if (size < sizeof(WaveHeader)) return -1; if (h->magic == WAV_RIFF) big_endian = 0; else if (h->magic == WAV_RIFX) big_endian = 1; else return -1; if (h->type != WAV_WAVE) return -1; if (size > sizeof(WaveHeader)) { check_wavefile_space(buffer, size - sizeof(WaveHeader), blimit); memcpy(buffer, (_buffer + (sizeof(WaveHeader))), size - sizeof(WaveHeader)); } size -= sizeof(WaveHeader); while (1) { check_wavefile_space(buffer, sizeof(WaveChunkHeader), blimit); test_wavefile_read(fd, buffer, &size, sizeof(WaveChunkHeader), __LINE__); c = (WaveChunkHeader*)buffer; type = c->type; len = TO_CPU_INT(c->length, big_endian); len += len % 2; if (size > sizeof(WaveChunkHeader)) memmove(buffer, buffer + sizeof(WaveChunkHeader), size - sizeof(WaveChunkHeader)); size -= sizeof(WaveChunkHeader); if (type == WAV_FMT) break; check_wavefile_space(buffer, len, blimit); test_wavefile_read(fd, buffer, &size, len, __LINE__); if (size > len) memmove(buffer, buffer + len, size - len); size -= len; } if (len < sizeof(WaveFmtBody)) { printf(("unknown length of 'fmt ' chunk (read %u, should be %u at least)"), len, (u_int)sizeof(WaveFmtBody)); prg_exit(EXIT_FAILURE); } check_wavefile_space(buffer, len, blimit); test_wavefile_read(fd, buffer, &size, len, __LINE__); f = (WaveFmtBody*) buffer; format = TO_CPU_SHORT(f->format, big_endian); if (format == WAV_FMT_EXTENSIBLE) { WaveFmtExtensibleBody *fe = (WaveFmtExtensibleBody*)buffer; if (len < sizeof(WaveFmtExtensibleBody)) { printf(("unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"), len, (u_int)sizeof(WaveFmtExtensibleBody)); prg_exit(EXIT_FAILURE); } if (memcmp(fe->guid_tag, WAV_GUID_TAG, 14) != 0) { printf(("wrong format tag in extensible 'fmt ' chunk")); prg_exit(EXIT_FAILURE); } format = TO_CPU_SHORT(fe->guid_format, big_endian); } if (format != WAV_FMT_PCM && format != WAV_FMT_IEEE_FLOAT) { printf(("can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"), format); prg_exit(EXIT_FAILURE); } channels = TO_CPU_SHORT(f->channels, big_endian); if (channels < 1) { printf(("can't play WAVE-files with %d tracks"), channels); prg_exit(EXIT_FAILURE); } hwparams.channels = channels; switch (TO_CPU_SHORT(f->bit_p_spl, big_endian)) { case 8: if (hwparams.format != DEFAULT_FORMAT && hwparams.format != SND_PCM_FORMAT_U8) fprintf(stderr, ("Warning: format is changed to U8\n")); hwparams.format = SND_PCM_FORMAT_U8; break; case 16: if (big_endian) native_format = SND_PCM_FORMAT_S16_BE; else native_format = SND_PCM_FORMAT_S16_LE; if (hwparams.format != DEFAULT_FORMAT && hwparams.format != native_format) fprintf(stderr, ("Warning: format is changed to %s\n"), snd_pcm_format_name((snd_pcm_format_t)native_format)); hwparams.format = (snd_pcm_format_t)native_format; break; case 24: switch (TO_CPU_SHORT(f->byte_p_spl, big_endian) / hwparams.channels) { case 3: if (big_endian) native_format = SND_PCM_FORMAT_S24_3BE; else native_format = SND_PCM_FORMAT_S24_3LE; if (hwparams.format != DEFAULT_FORMAT && hwparams.format != native_format) fprintf(stderr, ("Warning: format is changed to %s\n"), snd_pcm_format_name((snd_pcm_format_t)native_format)); hwparams.format = (snd_pcm_format_t)native_format; break; case 4: if (big_endian) native_format = SND_PCM_FORMAT_S24_BE; else native_format = SND_PCM_FORMAT_S24_LE; if (hwparams.format != DEFAULT_FORMAT && hwparams.format != native_format) fprintf(stderr, ("Warning: format is changed to %s\n"), snd_pcm_format_name((snd_pcm_format_t)native_format)); hwparams.format = (snd_pcm_format_t)native_format; break; default: printf((" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"), TO_CPU_SHORT(f->bit_p_spl, big_endian), TO_CPU_SHORT(f->byte_p_spl, big_endian), hwparams.channels); prg_exit(EXIT_FAILURE); } break; case 32: if (format == WAV_FMT_PCM) { if (big_endian) native_format = SND_PCM_FORMAT_S32_BE; else native_format = SND_PCM_FORMAT_S32_LE; hwparams.format = (snd_pcm_format_t)native_format; } else if (format == WAV_FMT_IEEE_FLOAT) { if (big_endian) native_format = SND_PCM_FORMAT_FLOAT_BE; else native_format = SND_PCM_FORMAT_FLOAT_LE; hwparams.format = (snd_pcm_format_t)native_format; } break; default: printf((" can't play WAVE-files with sample %d bits wide"), TO_CPU_SHORT(f->bit_p_spl, big_endian)); prg_exit(EXIT_FAILURE); } hwparams.rate = TO_CPU_INT(f->sample_fq, big_endian); if (size > len) memmove(buffer, buffer + len, size - len); size -= len; while (1) { u_int type, len; check_wavefile_space(buffer, sizeof(WaveChunkHeader), blimit); test_wavefile_read(fd, buffer, &size, sizeof(WaveChunkHeader), __LINE__); c = (WaveChunkHeader*)buffer; type = c->type; len = TO_CPU_INT(c->length, big_endian); if (size > sizeof(WaveChunkHeader)) memmove(buffer, buffer + sizeof(WaveChunkHeader), size - sizeof(WaveChunkHeader)); size -= sizeof(WaveChunkHeader); if (type == WAV_DATA) { if (len < pbrec_count && len < 0x7ffffffe) pbrec_count = len; if (size > 0) memcpy(_buffer, buffer, size); free(buffer); return size; } len += len % 2; check_wavefile_space(buffer, len, blimit); test_wavefile_read(fd, buffer, &size, len, __LINE__); if (size > len) memmove(buffer, buffer + len, size - len); size -= len; } /* shouldn't be reached */ return -1; } void UkuiLoginSound::show_available_sample_formats(snd_pcm_hw_params_t* params) { // snd_pcm_format_t format; int format; fprintf(stderr, "Available formats:\n"); for (format = 0; format <= SND_PCM_FORMAT_LAST; format++) { if (snd_pcm_hw_params_test_format(handle, params, (snd_pcm_format_t)format) == 0) fprintf(stderr, "- %s\n", snd_pcm_format_name((snd_pcm_format_t)format)); } } #ifdef CONFIG_SUPPORT_CHMAP int UkuiLoginSound::setup_chmap(void) { snd_pcm_chmap_t *chmap = channel_map; char mapped[hwparams.channels]; snd_pcm_chmap_t *hw_chmap; unsigned int ch, i; int err; if (!chmap) return 0; if (chmap->channels != hwparams.channels) { printf(("Channel numbers don't match between hw_params and channel map")); return -1; } err = snd_pcm_set_chmap(handle, chmap); if (!err) return 0; hw_chmap = snd_pcm_get_chmap(handle); if (!hw_chmap) { fprintf(stderr, ("Warning: unable to get channel map\n")); return 0; } if (hw_chmap->channels == chmap->channels && !memcmp(hw_chmap, chmap, 4 * (chmap->channels + 1))) { /* maps are identical, so no need to convert */ free(hw_chmap); return 0; } hw_map = (unsigned int *)calloc(hwparams.channels, sizeof(int)); if (!hw_map) { printf(("not enough memory")); free(hw_chmap); return -1; } memset(mapped, 0, sizeof(mapped)); for (ch = 0; ch < hw_chmap->channels; ch++) { if (chmap->pos[ch] == hw_chmap->pos[ch]) { mapped[ch] = 1; hw_map[ch] = ch; continue; } for (i = 0; i < hw_chmap->channels; i++) { if (!mapped[i] && chmap->pos[ch] == hw_chmap->pos[i]) { mapped[i] = 1; hw_map[ch] = i; break; } } if (i >= hw_chmap->channels) { char buf[256]; printf(("Channel %d doesn't match with hw_parmas"), ch); snd_pcm_chmap_print(hw_chmap, sizeof(buf), buf); fprintf(stderr, "hardware chmap = %s\n", buf); free(hw_chmap); return -1; } } free(hw_chmap); return 0; } #else #define setup_chmap() 0 #endif void UkuiLoginSound::set_params(void) { snd_pcm_hw_params_t *params; snd_pcm_sw_params_t *swparams; snd_pcm_uframes_t buffer_size; int err; size_t n; unsigned int rate; snd_pcm_uframes_t start_threshold, stop_threshold; snd_pcm_hw_params_alloca(¶ms); snd_pcm_sw_params_alloca(&swparams); err = snd_pcm_hw_params_any(handle, params); if (err < 0) { printf(("Broken configuration for this PCM: no configurations available")); prg_exit(EXIT_FAILURE); } if (dump_hw_params) { fprintf(stderr, ("HW Params of device \"%s\":\n"), snd_pcm_name(handle)); fprintf(stderr, "--------------------\n"); snd_pcm_hw_params_dump(params, log); fprintf(stderr, "--------------------\n"); } if (mmap_flag) { snd_pcm_access_mask_t *mask = (snd_pcm_access_mask_t *)alloca(snd_pcm_access_mask_sizeof()); snd_pcm_access_mask_none(mask); snd_pcm_access_mask_set(mask, SND_PCM_ACCESS_MMAP_INTERLEAVED); snd_pcm_access_mask_set(mask, SND_PCM_ACCESS_MMAP_NONINTERLEAVED); snd_pcm_access_mask_set(mask, SND_PCM_ACCESS_MMAP_COMPLEX); err = snd_pcm_hw_params_set_access_mask(handle, params, mask); } else if (interleaved) err = snd_pcm_hw_params_set_access(handle, params, SND_PCM_ACCESS_RW_INTERLEAVED); else err = snd_pcm_hw_params_set_access(handle, params, SND_PCM_ACCESS_RW_NONINTERLEAVED); if (err < 0) { printf(("Access type not available")); prg_exit(EXIT_FAILURE); } err = snd_pcm_hw_params_set_format(handle, params, hwparams.format); if (err < 0) { printf(("Sample format non available")); show_available_sample_formats(params); prg_exit(EXIT_FAILURE); } err = snd_pcm_hw_params_set_channels(handle, params, hwparams.channels); if (err < 0) { printf(("Channels count non available")); prg_exit(EXIT_FAILURE); } #if 0 err = snd_pcm_hw_params_set_periods_min(handle, params, 2); assert(err >= 0); #endif rate = hwparams.rate; err = snd_pcm_hw_params_set_rate_near(handle, params, &hwparams.rate, 0); assert(err >= 0); if ((float)rate * 1.05 < hwparams.rate || (float)rate * 0.95 > hwparams.rate) { if (!quiet_mode) { char plugex[64]; const char *pcmname = snd_pcm_name(handle); fprintf(stderr, ("Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"), rate, hwparams.rate); if (! pcmname || strchr(snd_pcm_name(handle), ':')) *plugex = 0; else snprintf(plugex, sizeof(plugex), "(-Dplug:%s)", snd_pcm_name(handle)); fprintf(stderr, (" please, try the plug plugin %s\n"), plugex); } } rate = hwparams.rate; if (buffer_time == 0 && buffer_frames == 0) { err = snd_pcm_hw_params_get_buffer_time_max(params, &buffer_time, 0); assert(err >= 0); if (buffer_time > 500000) buffer_time = 500000; } if (period_time == 0 && period_frames == 0) { if (buffer_time > 0) period_time = buffer_time / 4; else period_frames = buffer_frames / 4; } if (period_time > 0) err = snd_pcm_hw_params_set_period_time_near(handle, params, &period_time, 0); else err = snd_pcm_hw_params_set_period_size_near(handle, params, &period_frames, 0); assert(err >= 0); if (buffer_time > 0) { err = snd_pcm_hw_params_set_buffer_time_near(handle, params, &buffer_time, 0); } else { err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &buffer_frames); } assert(err >= 0); monotonic = snd_pcm_hw_params_is_monotonic(params); can_pause = snd_pcm_hw_params_can_pause(params); err = snd_pcm_hw_params(handle, params); if (err < 0) { printf(("Unable to install hw params:")); snd_pcm_hw_params_dump(params, log); prg_exit(EXIT_FAILURE); } snd_pcm_hw_params_get_period_size(params, &chunk_size, 0); snd_pcm_hw_params_get_buffer_size(params, &buffer_size); if (chunk_size == buffer_size) { printf(("Can't use period equal to buffer size (%lu == %lu)"), chunk_size, buffer_size); prg_exit(EXIT_FAILURE); } err = snd_pcm_sw_params_current(handle, swparams); if (err < 0) { printf(("Unable to get current sw params.")); prg_exit(EXIT_FAILURE); } if (avail_min < 0) n = chunk_size; else n = (double) rate * avail_min / 1000000; err = snd_pcm_sw_params_set_avail_min(handle, swparams, n); /* round up to closest transfer boundary */ n = buffer_size; if (start_delay <= 0) { start_threshold = n + (double) rate * start_delay / 1000000; } else start_threshold = (double) rate * start_delay / 1000000; if (start_threshold < 1) start_threshold = 1; if (start_threshold > n) start_threshold = n; err = snd_pcm_sw_params_set_start_threshold(handle, swparams, start_threshold); assert(err >= 0); if (stop_delay <= 0) stop_threshold = buffer_size + (double) rate * stop_delay / 1000000; else stop_threshold = (double) rate * stop_delay / 1000000; err = snd_pcm_sw_params_set_stop_threshold(handle, swparams, stop_threshold); assert(err >= 0); if (snd_pcm_sw_params(handle, swparams) < 0) { printf(("unable to install sw params:")); snd_pcm_sw_params_dump(swparams, log); prg_exit(EXIT_FAILURE); } if (setup_chmap()) prg_exit(EXIT_FAILURE); if (verbose) snd_pcm_dump(handle, log); bits_per_sample = snd_pcm_format_physical_width(hwparams.format); significant_bits_per_sample = snd_pcm_format_width(hwparams.format); bits_per_frame = bits_per_sample * hwparams.channels; chunk_bytes = chunk_size * bits_per_frame / 8; audiobuf = (u_char *)realloc(audiobuf, chunk_bytes); if (audiobuf == NULL) { printf(("not enough memory")); prg_exit(EXIT_FAILURE); } // fprintf(stderr, "real chunk_size = %i, frags = %i, total = %i\n", chunk_size, setup.buf.block.frags, setup.buf.block.frags * chunk_size); /* stereo VU-meter isn't always available... */ if (vumeter == VUMETER_STEREO) { if (hwparams.channels != 2 || !interleaved || verbose > 2) vumeter = VUMETER_MONO; } /* show mmap buffer arragment */ if (mmap_flag && verbose) { const snd_pcm_channel_area_t *areas; snd_pcm_uframes_t offset, size = chunk_size; int i; err = snd_pcm_mmap_begin(handle, &areas, &offset, &size); if (err < 0) { printf(("snd_pcm_mmap_begin problem: %s"), snd_strerror(err)); prg_exit(EXIT_FAILURE); } for (i = 0; i < hwparams.channels; i++) fprintf(stderr, "mmap_area[%i] = %p,%u,%u (%u)\n", i, areas[i].addr, areas[i].first, areas[i].step, snd_pcm_format_physical_width(hwparams.format)); /* not required, but for sure */ snd_pcm_mmap_commit(handle, offset, 0); } buffer_frames = buffer_size; /* for position test */ } void UkuiLoginSound::init_stdin(void) { struct termios term; long flags; if (!interactive) return; if (!isatty(fileno(stdin))) { interactive = 0; return; } tcgetattr(fileno(stdin), &term); term_c_lflag = term.c_lflag; if (fd == fileno(stdin)) return; flags = fcntl(fileno(stdin), F_GETFL); if (flags < 0 || fcntl(fileno(stdin), F_SETFL, flags|O_NONBLOCK) < 0) fprintf(stderr, ("stdin O_NONBLOCK flag setup failed\n")); term.c_lflag &= ~ICANON; tcsetattr(fileno(stdin), TCSANOW, &term); } void UkuiLoginSound::done_stdin(void) { struct termios term; if (!interactive) return; if (fd == fileno(stdin) || term_c_lflag == -1) return; tcgetattr(fileno(stdin), &term); term.c_lflag = term_c_lflag; tcsetattr(fileno(stdin), TCSANOW, &term); } void UkuiLoginSound::do_pause(void) { int err; unsigned char b; if (!can_pause) { fprintf(stderr, ("\rPAUSE command ignored (no hw support)\n")); return; } if (snd_pcm_state(handle) == SND_PCM_STATE_SUSPENDED) suspend(); err = snd_pcm_pause(handle, 1); if (err < 0) { printf(("pause push error: %s"), snd_strerror(err)); return; } while (1) { while (read(fileno(stdin), &b, 1) != 1); if (b == ' ' || b == '\r') { while (read(fileno(stdin), &b, 1) == 1); if (snd_pcm_state(handle) == SND_PCM_STATE_SUSPENDED) suspend(); err = snd_pcm_pause(handle, 0); if (err < 0) printf(("pause release error: %s"), snd_strerror(err)); return; } } } void UkuiLoginSound::check_stdin(void) { unsigned char b; if (!interactive) return; if (fd != fileno(stdin)) { while (read(fileno(stdin), &b, 1) == 1) { if (b == ' ' || b == '\r') { while (read(fileno(stdin), &b, 1) == 1); fprintf(stderr, ("\r=== PAUSE === ")); fflush(stderr); do_pause(); fprintf(stderr, " \r"); fflush(stderr); } } } } #ifndef timersub #define timersub(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; \ (result)->tv_usec = (a)->tv_usec - (b)->tv_usec; \ if ((result)->tv_usec < 0) { \ --(result)->tv_sec; \ (result)->tv_usec += 1000000; \ } \ } while (0) #endif #ifndef timermsub #define timermsub(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; \ (result)->tv_nsec = (a)->tv_nsec - (b)->tv_nsec; \ if ((result)->tv_nsec < 0) { \ --(result)->tv_sec; \ (result)->tv_nsec += 1000000000L; \ } \ } while (0) #endif /* I/O error handler */ void UkuiLoginSound::xrun(void) { snd_pcm_status_t *status; int res; snd_pcm_status_alloca(&status); if ((res = snd_pcm_status(handle, status))<0) { printf(("status error: %s"), snd_strerror(res)); prg_exit(EXIT_FAILURE); } if (snd_pcm_status_get_state(status) == SND_PCM_STATE_XRUN) { if (fatal_errors) { printf(("fatal %s: %s"), stream == SND_PCM_STREAM_PLAYBACK ? ("underrun") : ("overrun"), snd_strerror(res)); prg_exit(EXIT_FAILURE); } if (monotonic) { #ifdef HAVE_CLOCK_GETTIME struct timespec now, diff, tstamp; clock_gettime(CLOCK_MONOTONIC, &now); snd_pcm_status_get_trigger_htstamp(status, &tstamp); timermsub(&now, &tstamp, &diff); fprintf(stderr, _("%s!!! (at least %.3f ms long)\n"), stream == SND_PCM_STREAM_PLAYBACK ? _("underrun") : _("overrun"), diff.tv_sec * 1000 + diff.tv_nsec / 1000000.0); #else fprintf(stderr, "%s !!!\n", ("underrun")); #endif } else { struct timeval now, diff, tstamp; gettimeofday(&now, 0); snd_pcm_status_get_trigger_tstamp(status, &tstamp); timersub(&now, &tstamp, &diff); fprintf(stderr, ("%s!!! (at least %.3f ms long)\n"), stream == SND_PCM_STREAM_PLAYBACK ? ("underrun") : ("overrun"), diff.tv_sec * 1000 + diff.tv_usec / 1000.0); } if (verbose) { fprintf(stderr, ("Status:\n")); snd_pcm_status_dump(status, log); } if ((res = snd_pcm_prepare(handle))<0) { printf(("xrun: prepare error: %s"), snd_strerror(res)); prg_exit(EXIT_FAILURE); } return; /* ok, data should be accepted again */ } if (snd_pcm_status_get_state(status) == SND_PCM_STATE_DRAINING) { if (verbose) { fprintf(stderr, ("Status(DRAINING):\n")); snd_pcm_status_dump(status, log); } if (stream == SND_PCM_STREAM_CAPTURE) { fprintf(stderr, ("capture stream format change? attempting recover...\n")); if ((res = snd_pcm_prepare(handle))<0) { printf(("xrun(DRAINING): prepare error: %s"), snd_strerror(res)); prg_exit(EXIT_FAILURE); } return; } } if (verbose) { fprintf(stderr, ("Status(R/W):\n")); snd_pcm_status_dump(status, log); } printf(("read/write error, state = %s"), snd_pcm_state_name(snd_pcm_status_get_state(status))); prg_exit(EXIT_FAILURE); } /* I/O suspend handler */ void UkuiLoginSound::suspend(void) { int res; if (!quiet_mode) { fprintf(stderr, ("Suspended. Trying resume. ")); fflush(stderr); } while ((res = snd_pcm_resume(handle)) == -EAGAIN) sleep(1); /* wait until suspend flag is released */ if (res < 0) { if (!quiet_mode) { fprintf(stderr, ("Failed. Restarting stream. ")); fflush(stderr); } if ((res = snd_pcm_prepare(handle)) < 0) { printf(("suspend: prepare error: %s"), snd_strerror(res)); prg_exit(EXIT_FAILURE); } } if (!quiet_mode) fprintf(stderr, ("Done.\n")); } void UkuiLoginSound::print_vu_meter_mono(int perc, int maxperc) { const int bar_length = 50; char line[80]; int val; for (val = 0; val <= perc * bar_length / 100 && val < bar_length; val++) line[val] = '#'; for (; val <= maxperc * bar_length / 100 && val < bar_length; val++) line[val] = ' '; line[val] = '+'; for (++val; val <= bar_length; val++) line[val] = ' '; if (maxperc > 99) sprintf(line + val, "| MAX"); else sprintf(line + val, "| %02i%%", maxperc); fputs(line, stderr); if (perc > 100) fprintf(stderr, (" !clip ")); } void UkuiLoginSound::print_vu_meter_stereo(int *perc, int *maxperc) { const int bar_length = 35; char line[80]; int c; memset(line, ' ', sizeof(line) - 1); line[bar_length + 3] = '|'; for (c = 0; c < 2; c++) { int p = perc[c] * bar_length / 100; char tmp[4]; if (p > bar_length) p = bar_length; if (c) memset(line + bar_length + 6 + 1, '#', p); else memset(line + bar_length - p - 1, '#', p); p = maxperc[c] * bar_length / 100; if (p > bar_length) p = bar_length; if (c) line[bar_length + 6 + 1 + p] = '+'; else line[bar_length - p - 1] = '+'; if (ABS(maxperc[c]) > 99) sprintf(tmp, "MAX"); else sprintf(tmp, "%02d%%", maxperc[c]); if (c) memcpy(line + bar_length + 3 + 1, tmp, 3); else memcpy(line + bar_length, tmp, 3); } line[bar_length * 2 + 6 + 2] = 0; fputs(line, stderr); } void UkuiLoginSound::print_vu_meter(signed int *perc, signed int *maxperc) { if (vumeter == VUMETER_STEREO) print_vu_meter_stereo(perc, maxperc); else print_vu_meter_mono(*perc, *maxperc); } /* peak handler */ void UkuiLoginSound::compute_max_peak(u_char *data, size_t count) { signed int val, max, perc[2], max_peak[2]; static int run = 0; size_t ocount = count; int format_little_endian = snd_pcm_format_little_endian(hwparams.format); int ichans, c; if (vumeter == VUMETER_STEREO) ichans = 2; else ichans = 1; memset(max_peak, 0, sizeof(max_peak)); switch (bits_per_sample) { case 8: { signed char *valp = (signed char *)data; signed char mask = snd_pcm_format_silence(hwparams.format); c = 0; while (count-- > 0) { val = *valp++ ^ mask; val = abs(val); if (max_peak[c] < val) max_peak[c] = val; if (vumeter == VUMETER_STEREO) c = !c; } break; } case 16: { signed short *valp = (signed short *)data; signed short mask = snd_pcm_format_silence_16(hwparams.format); signed short sval; count /= 2; c = 0; while (count-- > 0) { if (format_little_endian) sval = le16toh(*valp); else sval = be16toh(*valp); sval = abs(sval) ^ mask; if (max_peak[c] < sval) max_peak[c] = sval; valp++; if (vumeter == VUMETER_STEREO) c = !c; } break; } case 24: { unsigned char *valp = data; signed int mask = snd_pcm_format_silence_32(hwparams.format); count /= 3; c = 0; while (count-- > 0) { if (format_little_endian) { val = valp[0] | (valp[1]<<8) | (valp[2]<<16); } else { val = (valp[0]<<16) | (valp[1]<<8) | valp[2]; } /* Correct signed bit in 32-bit value */ if (val & (1<<(bits_per_sample-1))) { val |= 0xff<<24; /* Negate upper bits too */ } val = abs(val) ^ mask; if (max_peak[c] < val) max_peak[c] = val; valp += 3; if (vumeter == VUMETER_STEREO) c = !c; } break; } case 32: { signed int *valp = (signed int *)data; signed int mask = snd_pcm_format_silence_32(hwparams.format); count /= 4; c = 0; while (count-- > 0) { if (format_little_endian) val = le32toh(*valp); else val = be32toh(*valp); val = abs(val) ^ mask; if (max_peak[c] < val) max_peak[c] = val; valp++; if (vumeter == VUMETER_STEREO) c = !c; } break; } default: if (run == 0) { fprintf(stderr, ("Unsupported bit size %d.\n"), (int)bits_per_sample); run = 1; } return; } max = 1 << (significant_bits_per_sample-1); if (max <= 0) max = 0x7fffffff; for (c = 0; c < ichans; c++) { if (bits_per_sample > 16) perc[c] = max_peak[c] / (max / 100); else perc[c] = max_peak[c] * 100 / max; } if (interleaved && verbose <= 2) { static int maxperc[2]; static time_t t=0; const time_t tt=time(NULL); if(tt>t) { t=tt; maxperc[0] = 0; maxperc[1] = 0; } for (c = 0; c < ichans; c++) if (perc[c] > maxperc[c]) maxperc[c] = perc[c]; putc('\r', stderr); print_vu_meter(perc, maxperc); fflush(stderr); } else if(verbose==3) { fprintf(stderr, ("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]); for (val = 0; val < 20; val++) if (val <= perc[0] / 5) putc('#', stderr); else putc(' ', stderr); fprintf(stderr, " %i%%\n", perc[0]); fflush(stderr); } } void UkuiLoginSound::do_test_position(void) { static long counter = 0; static time_t tmr = -1; time_t now; static float availsum, delaysum, samples; static snd_pcm_sframes_t maxavail, maxdelay; static snd_pcm_sframes_t minavail, mindelay; static snd_pcm_sframes_t badavail = 0, baddelay = 0; snd_pcm_sframes_t outofrange; snd_pcm_sframes_t avail, delay; int err; err = snd_pcm_avail_delay(handle, &avail, &delay); if (err < 0) return; outofrange = (test_coef * (snd_pcm_sframes_t)buffer_frames) / 2; if (avail > outofrange || avail < -outofrange || delay > outofrange || delay < -outofrange) { badavail = avail; baddelay = delay; availsum = delaysum = samples = 0; maxavail = maxdelay = 0; minavail = mindelay = buffer_frames * 16; fprintf(stderr, ("Suspicious buffer position (%li total): " "avail = %li, delay = %li, buffer = %li\n"), ++counter, (long)avail, (long)delay, (long)buffer_frames); } else if (verbose) { time(&now); if (tmr == (time_t) -1) { tmr = now; availsum = delaysum = samples = 0; maxavail = maxdelay = 0; minavail = mindelay = buffer_frames * 16; } if (avail > maxavail) maxavail = avail; if (delay > maxdelay) maxdelay = delay; if (avail < minavail) minavail = avail; if (delay < mindelay) mindelay = delay; availsum += avail; delaysum += delay; samples++; if (avail != 0 && now != tmr) { fprintf(stderr, "BUFPOS: avg%li/%li " "min%li/%li max%li/%li (%li) (%li:%li/%li)\n", (long)(availsum / samples), (long)(delaysum / samples), (long)minavail, (long)mindelay, (long)maxavail, (long)maxdelay, (long)buffer_frames, counter, badavail, baddelay); tmr = now; } } } /* */ #ifdef CONFIG_SUPPORT_CHMAP u_char * UkuiLoginSound::remap_data(u_char *data, size_t count) { static u_char *tmp, *src, *dst; static size_t tmp_size; size_t sample_bytes = bits_per_sample / 8; size_t step = bits_per_frame / 8; size_t chunk_bytes; unsigned int ch, i; if (!hw_map) return data; chunk_bytes = count * bits_per_frame / 8; if (tmp_size < chunk_bytes) { free(tmp); tmp = (u_char *)malloc(chunk_bytes); if (!tmp) { printf(("not enough memory")); exit(1); } tmp_size = count; } src = data; dst = tmp; for (i = 0; i < count; i++) { for (ch = 0; ch < hwparams.channels; ch++) { memcpy(dst, src + sample_bytes * hw_map[ch], sample_bytes); dst += sample_bytes; } src += step; } return tmp; } u_char ** UkuiLoginSound::remap_datav(u_char **data, size_t count) { static u_char **tmp; unsigned int ch; if (!hw_map) return data; if (!tmp) { tmp = (u_char **)malloc(sizeof(*tmp) * hwparams.channels); if (!tmp) { printf(("not enough memory")); exit(1); } for (ch = 0; ch < hwparams.channels; ch++) tmp[ch] = data[hw_map[ch]]; } return tmp; } #else #define remap_data(data, count) (data) #define remap_datav(data, count) (data) #endif /* * write function */ ssize_t UkuiLoginSound::pcm_write(u_char *data, size_t count) { ssize_t r; ssize_t result = 0; if (count < chunk_size) { snd_pcm_format_set_silence(hwparams.format, data + count * bits_per_frame / 8, (chunk_size - count) * hwparams.channels); count = chunk_size; } data = remap_data(data, count); while (count > 0 && !in_aborting) { if (test_position) do_test_position(); check_stdin(); r = writei_func(handle, data, count); if (test_position) do_test_position(); if (r == -EAGAIN || (r >= 0 && (size_t)r < count)) { if (!test_nowait) snd_pcm_wait(handle, 100); } else if (r == -EPIPE) { xrun(); } else if (r == -ESTRPIPE) { suspend(); } else if (r < 0) { printf(("write error: %s"), snd_strerror(r)); prg_exit(EXIT_FAILURE); } if (r > 0) { if (vumeter) compute_max_peak(data, r * hwparams.channels); result += r; count -= r; data += r * bits_per_frame / 8; } } return result; } ssize_t UkuiLoginSound::pcm_writev(u_char **data, unsigned int channels, size_t count) { ssize_t r; size_t result = 0; if (count != chunk_size) { unsigned int channel; size_t offset = count; size_t remaining = chunk_size - count; for (channel = 0; channel < channels; channel++) snd_pcm_format_set_silence(hwparams.format, data[channel] + offset * bits_per_sample / 8, remaining); count = chunk_size; } data = remap_datav(data, count); while (count > 0 && !in_aborting) { unsigned int channel; void *bufs[channels]; size_t offset = result; for (channel = 0; channel < channels; channel++) bufs[channel] = data[channel] + offset * bits_per_sample / 8; if (test_position) do_test_position(); check_stdin(); r = writen_func(handle, bufs, count); if (test_position) do_test_position(); if (r == -EAGAIN || (r >= 0 && (size_t)r < count)) { if (!test_nowait) snd_pcm_wait(handle, 100); } else if (r == -EPIPE) { xrun(); } else if (r == -ESTRPIPE) { suspend(); } else if (r < 0) { printf(("writev error: %s"), snd_strerror(r)); prg_exit(EXIT_FAILURE); } if (r > 0) { if (vumeter) { for (channel = 0; channel < channels; channel++) compute_max_peak(data[channel], r); } result += r; count -= r; } } return result; } /* * read function */ ssize_t UkuiLoginSound::pcm_read(u_char *data, size_t rcount) { ssize_t r; size_t result = 0; size_t count = rcount; if (count != chunk_size) { count = chunk_size; } while (count > 0 && !in_aborting) { if (test_position) do_test_position(); check_stdin(); r = readi_func(handle, data, count); if (test_position) do_test_position(); if (r == -EAGAIN || (r >= 0 && (size_t)r < count)) { if (!test_nowait) snd_pcm_wait(handle, 100); } else if (r == -EPIPE) { xrun(); } else if (r == -ESTRPIPE) { suspend(); } else if (r < 0) { printf(("read error: %s"), snd_strerror(r)); prg_exit(EXIT_FAILURE); } if (r > 0) { if (vumeter) compute_max_peak(data, r * hwparams.channels); result += r; count -= r; data += r * bits_per_frame / 8; } } return rcount; } ssize_t UkuiLoginSound::pcm_readv(u_char **data, unsigned int channels, size_t rcount) { ssize_t r; size_t result = 0; size_t count = rcount; if (count != chunk_size) { count = chunk_size; } while (count > 0 && !in_aborting) { unsigned int channel; void *bufs[channels]; size_t offset = result; for (channel = 0; channel < channels; channel++) bufs[channel] = data[channel] + offset * bits_per_sample / 8; if (test_position) do_test_position(); check_stdin(); r = readn_func(handle, bufs, count); if (test_position) do_test_position(); if (r == -EAGAIN || (r >= 0 && (size_t)r < count)) { if (!test_nowait) snd_pcm_wait(handle, 100); } else if (r == -EPIPE) { xrun(); } else if (r == -ESTRPIPE) { suspend(); } else if (r < 0) { printf(("readv error: %s"), snd_strerror(r)); prg_exit(EXIT_FAILURE); } if (r > 0) { if (vumeter) { for (channel = 0; channel < channels; channel++) compute_max_peak(data[channel], r); } result += r; count -= r; } } return rcount; } /* setting the globals for playing raw data */ void UkuiLoginSound::init_raw_data(void) { hwparams = rhwparams; } /* calculate the data count to read from/to dsp */ off64_t UkuiLoginSound::calc_count(void) { off64_t count; if (timelimit == 0) if (sampleslimit == 0) count = pbrec_count; else count = snd_pcm_format_size(hwparams.format, sampleslimit * hwparams.channels); else { count = snd_pcm_format_size(hwparams.format, hwparams.rate * hwparams.channels); count *= (off64_t)timelimit; } return count < pbrec_count ? count : pbrec_count; } void UkuiLoginSound::header(int rtype, char *name) { if (!quiet_mode) { if (! name) name = (char *)((stream == SND_PCM_STREAM_PLAYBACK) ? "stdout" : "stdin"); fprintf(stderr, "%s, ", snd_pcm_format_description(hwparams.format)); fprintf(stderr, ("Rate %d Hz, "), hwparams.rate); if (hwparams.channels == 1) fprintf(stderr, ("Mono")); else if (hwparams.channels == 2) fprintf(stderr, ("Stereo")); else fprintf(stderr, ("Channels %i"), hwparams.channels); fprintf(stderr, "\n"); } } /* playing raw data */ void UkuiLoginSound::playback_go(int fd, size_t loaded, off64_t count, int rtype, char *name) { int l, r; off64_t written = 0; off64_t c; header(rtype, name); set_params(); while (loaded > chunk_bytes && written < count && !in_aborting) { if (pcm_write(audiobuf + written, chunk_size) <= 0) return; written += chunk_bytes; loaded -= chunk_bytes; } if (written > 0 && loaded > 0) memmove(audiobuf, audiobuf + written, loaded); l = loaded; while (written < count && !in_aborting) { do { c = count - written; if (c > chunk_bytes) c = chunk_bytes; /* c < l, there is more data loaded * then we actually need to write */ if (c < l) l = c; c -= l; if (c == 0) break; r = safe_read(fd, audiobuf + l, c); if (r < 0) { perror(name); prg_exit(EXIT_FAILURE); } fdcount += r; if (r == 0) break; l += r; } while ((size_t)l < chunk_bytes); l = l * 8 / bits_per_frame; r = pcm_write(audiobuf, l); if (r != l) break; r = r * bits_per_frame / 8; written += r; l = 0; } snd_pcm_nonblock(handle, 0); snd_pcm_drain(handle); snd_pcm_nonblock(handle, nonblock); } int UkuiLoginSound::read_header(int *loaded, int header_size) { int ret; struct stat buf; ret = fstat(fd, &buf); if (ret < 0) { perror("fstat"); prg_exit(EXIT_FAILURE); } /* don't be adventurous, get out if file size is smaller than * requested header size */ if ((buf.st_mode & S_IFMT) == S_IFREG && buf.st_size < header_size) return -1; if (*loaded < header_size) { header_size -= *loaded; ret = safe_read(fd, audiobuf + *loaded, header_size); if (ret != header_size) { printf(("read error")); prg_exit(EXIT_FAILURE); } *loaded += header_size; } return 0; } int UkuiLoginSound::playback_wave(char *name, int *loaded) { syslog (LOG_INFO,"playback_wave %s %s",name,loaded); ssize_t dtawave; if (read_header(loaded, sizeof(WaveHeader)) < 0) return -1; if ((dtawave = test_wavefile(fd, audiobuf, *loaded)) < 0) return -1; pbrec_count = calc_count(); playback_go(fd, dtawave, pbrec_count, FORMAT_WAVE, name); return 0; } int UkuiLoginSound::playback_raw(char *name, int *loaded) { syslog (LOG_INFO,"playback_raw %s %s",name,loaded); init_raw_data(); pbrec_count = calc_count(); playback_go(fd, *loaded, pbrec_count, FORMAT_RAW, name); return 0; } /* * let's play or capture it (capture_type says VOC/WAVE/raw) */ void UkuiLoginSound::playback(char *name) { int loaded = 0; pbrec_count = LLONG_MAX; fdcount = 0; if (!name || !strcmp(name, "-")) { fd = fileno(stdin); name = "stdin"; } else { init_stdin(); if ((fd = open(name, O_RDONLY, 0)) == -1) { perror(name); prg_exit(EXIT_FAILURE); } } /* parse the file header */ if (playback_wave(name, &loaded) < 0) playback_raw(name, &loaded); /* should be raw data */ if (fd != fileno(stdin)) close(fd); } UkuiLoginSound::UkuiLoginSound(QObject *parent) : QObject(parent) { } void UkuiLoginSound::power_on_smartpa() { QProcess *process; QStringList args; args.append("-o"); QString command = "/usr/share/hw-audio/hwaudioservice"; process = new QProcess(); process->setProcessChannelMode(QProcess::MergedChannels); process->start(command, args); syslog(LOG_DEBUG, "start power on smartpa "); if (!process->waitForStarted()) { syslog(LOG_ERR, "power on smartpa failed, err: %s", process->errorString()); } else { syslog(LOG_DEBUG, "power on smartpa success"); } } int UkuiLoginSound::wav_convert(int volume, bool mute) { float volume_factor; // SNDFILE* input_file = NULL; // SF_INFO input_info; // input_file = sf_open(PLAY_STARTUP_WAV, SFM_READ, &input_info); // if (input_file == NULL) { // syslog(LOG_ERR, "Error: failed to open input file %s", strerror(errno)); // return -errno; // } // SNDFILE* output_file = NULL; // SF_INFO output_info = input_info; // output_info.format = SF_FORMAT_WAV | SF_FORMAT_PCM_16; // output_file = sf_open(TMP_STARTUP_WAV_PATH, SFM_WRITE, &output_info); // if (output_file == NULL) { // syslog(LOG_ERR, "Error: failed to open output file %s ", strerror(errno)); // return -errno; // } if (mute) volume_factor = MIN_VOLUME; else volume_factor = volume/NORMAL_VOLUME; QString cmd = "ffmpeg -i "; cmd += PLAY_STARTUP_WAV; cmd += " "; cmd += QString("-filter:a volume=%1 ").arg(volume_factor); cmd += TMP_STARTUP_WAV_PATH; system(cmd.toLatin1().data()); // int read_count; // int write_count; // short buffer[BUFFER_LEN]; // while ((read_count = sf_read_short(input_file, buffer, BUFFER_LEN)) > 0) { // for (int i = 0; i < read_count; i++) { // buffer[i] = buffer[i] * volume_factor; // } // write_count = sf_write_short(output_file, buffer, read_count); // if (write_count != read_count) { // syslog(LOG_ERR, "Error: failed to write audio data", strerror(errno)); // return -errno; // } // } // return 0; // sf_close(input_file); // sf_close(output_file); } char* UkuiLoginSound::checkPcm(char *pcmName) { void **hints, **n; char *name, *defaultPcmName; const char *filter; defaultPcmName = "default"; if (snd_device_name_hint(-1, "pcm", &hints) < 0) return "default"; n = hints; filter = stream == SND_PCM_STREAM_CAPTURE ? "Input" : "Output"; while (*n != NULL) { name = snd_device_name_get_hint(*n, "NAME"); if (strcmp(pcmName, name) == 0) return pcmName; else if (strstr(name, "sysdefault")) defaultPcmName = name; n++; } snd_device_name_free_hint(hints); if (name != NULL) free(name); return defaultPcmName; } UkuiLoginSound::~UkuiLoginSound() { } ukui-media-3.1.1.2/ukui-login-sound/user_conf.cpp0000644000175000017500000001010714567025031020230 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see value(""节名/键名""); settings->value("SeatDefaults/autologin-user"); return settings->value("SeatDefaults/autologin-user").toString(); } QString UserConf::readLastUser() { //Qt中使用QSettings类读写conf文件 //QSettings构造函数的第一个参数是conf文件的路径,第二个参数表示针对conf文件,第三个参数可以省略 settings = new QSettings(UKUI_GREETER_CONF_FILE,QSettings::IniFormat); // 通过value获取值 格式: settings->value(""节名/键名""); settings->value("Greeter/lastLoginUser"); qDebug() << "lastLoginUser" << settings->value("Greeter/lastLoginUser").toString(); syslog(LOG_DEBUG,"lastLoginUser :%s", settings->value("Greeter/lastLoginUser").toString().toLatin1().data()); return settings->value("Greeter/lastLoginUser").toString(); } UserConf::~UserConf() { } ukui-media-3.1.1.2/ukui-login-sound/user_conf.h0000644000175000017500000000247114567025031017702 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include #include #include #define DEFAULT_AUDIO_DEV "default" class UserConf : public QObject { Q_OBJECT public: UserConf(QObject *parent = nullptr); ~UserConf(); QJsonValue readJson(QString username, QString jsonFile, QString key); void insertJson(); QString readLightdmConf(); QString readLastUser(); // 配置文件对象 QSettings *settings; }; #endif // AUDIOJSON_H ukui-media-3.1.1.2/ukui-login-sound/formats.h0000644000175000017500000001116614567025031017373 0ustar fengfeng/* * aplay.c - plays and records * * CREATIVE LABS CHANNEL-files * Microsoft WAVE-files * SPARC AUDIO .AU-files * Raw Data * * Copyright (c) by Jaroslav Kysela * Based on vplay program by Michael Beck * * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifndef FORMATS_H #define FORMATS_H 1 #include #include /* Definitions for .VOC files */ #define VOC_MAGIC_STRING "Creative Voice File\x1A" #define VOC_ACTUAL_VERSION 0x010A #define VOC_SAMPLESIZE 8 #define VOC_MODE_MONO 0 #define VOC_MODE_STEREO 1 #define VOC_DATALEN(bp) ((u_long)(bp->datalen) | \ ((u_long)(bp->datalen_m) << 8) | \ ((u_long)(bp->datalen_h) << 16) ) typedef struct voc_header { u_char magic[20]; /* must be MAGIC_STRING */ u_short headerlen; /* Headerlength, should be 0x1A */ u_short version; /* VOC-file version */ u_short coded_ver; /* 0x1233-version */ } VocHeader; typedef struct voc_blocktype { u_char type; u_char datalen; /* low-byte */ u_char datalen_m; /* medium-byte */ u_char datalen_h; /* high-byte */ } VocBlockType; typedef struct voc_voice_data { u_char tc; u_char pack; } VocVoiceData; typedef struct voc_ext_block { u_short tc; u_char pack; u_char mode; } VocExtBlock; /* Definitions for Microsoft WAVE format */ #if __BYTE_ORDER == __LITTLE_ENDIAN #define COMPOSE_ID(a,b,c,d) ((a) | ((b)<<8) | ((c)<<16) | ((d)<<24)) #define LE_SHORT(v) (v) #define LE_INT(v) (v) #define BE_SHORT(v) bswap_16(v) #define BE_INT(v) bswap_32(v) #elif __BYTE_ORDER == __BIG_ENDIAN #define COMPOSE_ID(a,b,c,d) ((d) | ((c)<<8) | ((b)<<16) | ((a)<<24)) #define LE_SHORT(v) bswap_16(v) #define LE_INT(v) bswap_32(v) #define BE_SHORT(v) (v) #define BE_INT(v) (v) #else #error "Wrong endian" #endif /* Note: the following macros evaluate the parameter v twice */ #define TO_CPU_SHORT(v, be) \ ((be) ? BE_SHORT(v) : LE_SHORT(v)) #define TO_CPU_INT(v, be) \ ((be) ? BE_INT(v) : LE_INT(v)) #define WAV_RIFF COMPOSE_ID('R','I','F','F') #define WAV_RIFX COMPOSE_ID('R','I','F','X') #define WAV_WAVE COMPOSE_ID('W','A','V','E') #define WAV_FMT COMPOSE_ID('f','m','t',' ') #define WAV_DATA COMPOSE_ID('d','a','t','a') /* WAVE fmt block constants from Microsoft mmreg.h header */ #define WAV_FMT_PCM 0x0001 #define WAV_FMT_IEEE_FLOAT 0x0003 #define WAV_FMT_DOLBY_AC3_SPDIF 0x0092 #define WAV_FMT_EXTENSIBLE 0xfffe /* Used with WAV_FMT_EXTENSIBLE format */ #define WAV_GUID_TAG "\x00\x00\x00\x00\x10\x00\x80\x00\x00\xAA\x00\x38\x9B\x71" /* it's in chunks like .voc and AMIGA iff, but my source say there are in only in this combination, so I combined them in one header; it works on all WAVE-file I have */ typedef struct { u_int magic; /* 'RIFF' */ u_int length; /* filelen */ u_int type; /* 'WAVE' */ } WaveHeader; typedef struct { u_short format; /* see WAV_FMT_* */ u_short channels; u_int sample_fq; /* frequence of sample */ u_int byte_p_sec; u_short byte_p_spl; /* samplesize; 1 or 2 bytes */ u_short bit_p_spl; /* 8, 12 or 16 bit */ } WaveFmtBody; typedef struct { WaveFmtBody format; u_short ext_size; u_short bit_p_spl; u_int channel_mask; u_short guid_format; /* WAV_FMT_* */ u_char guid_tag[14]; /* WAV_GUID_TAG */ } WaveFmtExtensibleBody; typedef struct { u_int type; /* 'data' */ u_int length; /* samplecount */ } WaveChunkHeader; /* Definitions for Sparc .au header */ #define AU_MAGIC COMPOSE_ID('.','s','n','d') #define AU_FMT_ULAW 1 #define AU_FMT_LIN8 2 #define AU_FMT_LIN16 3 typedef struct au_header { u_int magic; /* '.snd' */ u_int hdr_size; /* size of header (min 24) */ u_int data_size; /* size of data */ u_int encoding; /* see to AU_FMT_XXXX */ u_int sample_rate; /* sample rate */ u_int channels; /* number of channels (voices) */ } AuHeader; #endif /* FORMATS */ ukui-media-3.1.1.2/ukui-login-sound/main.cpp0000644000175000017500000001115214567025031017172 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see #include #include #include #include #include #include //默认音频设备 #define DEFAULT_AUDIO_DEV "default" //声卡存放文件 #define AUDIO_JSON "/.config/audio.json" //开机按钮选项 #define IS_STARTUP_PLAY_JSON "/.config/startupMusic.json" /* define hw sound card dirvers */ #define HI3XXX_HI6405 "hi3xxx_hi6405" #define HI3XXX_DA_COMBINE_V5 "hi3xxx_DA_combine_v5" #define DA_COMBINE_V5_MACHINE "da_combine_v5_machine" int main(int argc, char *argv[]) { // initUkuiLog4qt("ukui-login-sound"); QCoreApplication a(argc, argv); //配置信息:设备、用户 UserConf info; //播放开机音乐 UkuiLoginSound playback; // playback.power_on_smartpa(); QFile file("/tmp/PlayStartupWav.json"); if(!file.exists()) { syslog (LOG_INFO, "start up"); syslog (LOG_INFO, "create /tmp/PlayStartupWav.json"); info.insertJson(); if((info.readLightdmConf()=="")&&(info.readLastUser()=="")) { //1、装机第一次登录的情况,使用默认设备进行播放 syslog (LOG_INFO, "1 First enter"); system("/usr/share/hw-audio/hwaudioservice -o"); playback.aplayMain(2,PLAY_STARTUP_WAV,DEFAULT_AUDIO_DEV); }else { QString userFilePath = "/home/"; QString audioDEV = "default"; //判断用户是否开启开机音乐 if(info.readLightdmConf()!="") { //2、存在自动登录用户的情况下,使用自动登录用户的设备进行播放 userFilePath += info.readLightdmConf(); audioDEV = info.readJson(userFilePath,AUDIO_JSON, "card").toString(); syslog (LOG_DEBUG, "2 user.readLightdmConf()!=null audioDEV:%s userFilePath:%s", audioDEV.toLatin1().data(), userFilePath.toLatin1().data()); } else if(info.readLastUser()!="") { //3、没有自动登录用户的时候,使用上一次用户的播放设备 userFilePath += info.readLastUser(); audioDEV =info.readJson(userFilePath, AUDIO_JSON, "card").toString(); syslog (LOG_DEBUG, "3 user.readLastUser()!="" audioDEV: %s readLastUserFile:%s", audioDEV.toLatin1().data(), userFilePath.toLatin1().data()); } //检测pcm是否正确 audioDEV = UkuiLoginSound::checkPcm(audioDEV.toLatin1().data()); QString StartupState = info.readJson(userFilePath, IS_STARTUP_PLAY_JSON, "startupPlayMusic").toString(); syslog (LOG_INFO," StartupState %s %s %s", StartupState.toLatin1().data(), userFilePath.toLatin1().data(), audioDEV.toLatin1().data()); if(StartupState == "true") { /* read mute and volume */ bool mute = info.readJson(userFilePath, AUDIO_JSON, "mute").toBool(); int volume = info.readJson(userFilePath, AUDIO_JSON, "volume").toInt(); syslog(LOG_DEBUG, "get card info, card :%s, mute :%d, volume :%d", audioDEV.toLatin1().data(), mute, volume); /* if */ // if (!mute && (audioDEV.contains(HI3XXX_HI6405) || // audioDEV.contains(HI3XXX_DA_COMBINE_V5) || // audioDEV.contains(DA_COMBINE_V5_MACHINE))) if (!mute) system("/usr/share/hw-audio/hwaudioservice -o"); if (!playback.wav_convert(volume, mute)) playback.aplayMain(2, TMP_STARTUP_WAV_PATH, audioDEV.toLatin1().data()); else playback.aplayMain(2, PLAY_STARTUP_WAV, audioDEV.toLatin1().data()); } } } else{ syslog (LOG_INFO, "not first enter,so will not play startup.wav"); } file.close(); return 0; } ukui-media-3.1.1.2/data/0000755000175000017500000000000014565521701013245 5ustar fengfengukui-media-3.1.1.2/data/Makefile.am0000644000175000017500000000161214565521701015301 0ustar fengfengNULL = SUBDIRS = \ icons \ $(NULL) @INTLTOOL_DESKTOP_RULE@ autostartdir = $(sysconfdir)/xdg/autostart autostart_in_files = ukui-volume-control-applet.desktop.in autostart_DATA = $(autostart_in_files:.desktop.in=.desktop) appsdir = $(datadir)/applications apps_in_files = ukui-volume-control.desktop.in apps_DATA = $(apps_in_files:.desktop.in=.desktop) gsettingsschema_in_files = org.ukui.media.gschema.xml.in gsettings_SCHEMAS = $(gsettingsschema_in_files:.xml.in=.xml) @GSETTINGS_RULES@ @INTLTOOL_XML_RULE@ EXTRA_DIST = \ $(autostart_in_files) \ ukui-volume-control.desktop.in.in \ $(gsettingsschema_in_files) \ $(NULL) CLEANFILES = \ ukui-volume-control.desktop \ $(gsettings_SCHEMAS) \ $(NULL) DISTCLEANFILES = \ ukui-volume-control-applet.desktop \ $(NULL) MAINTAINERCLEANFILES = \ Makefile.in \ $(gsettings_SCHEMAS:.xml=.valid) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/0000755000175000017500000000000014565521701014360 5ustar fengfengukui-media-3.1.1.2/data/icons/Makefile.am0000644000175000017500000000100014565521701016403 0ustar fengfengNULL = SUBDIRS = \ scalable \ 16x16 \ 22x22 \ 24x24 \ 32x32 \ $(NULL) gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/ukui install-data-hook: update-icon-cache uninstall-hook: update-icon-cache update-icon-cache: @-if test -z "$(DESTDIR)"; then \ echo "Updating Gtk icon cache."; \ $(gtk_update_icon_cache); \ else \ echo "*** Icon cache not updated. After (un)install, run this:"; \ echo "*** $(gtk_update_icon_cache)"; \ fi -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/16x16/0000755000175000017500000000000014565521701015145 5ustar fengfengukui-media-3.1.1.2/data/icons/16x16/Makefile.am0000644000175000017500000000006114565521701017176 0ustar fengfengSUBDIRS = status -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/16x16/status/0000755000175000017500000000000014565521701016470 5ustar fengfengukui-media-3.1.1.2/data/icons/16x16/status/Makefile.am0000644000175000017500000000057014565521701020526 0ustar fengfengNULL = themedir = $(pkgdatadir)/icons/hicolor size = 16x16 context = status iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ audio-input-microphone-high.png \ audio-input-microphone-low.png \ audio-input-microphone-medium.png \ audio-input-microphone-muted.png \ $(NULL) EXTRA_DIST = \ $(icons_DATA) \ $(NULL) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/16x16/status/audio-input-microphone-medium.png0000644000175000017500000000125714565521701025060 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<QIDATxb?!n# .?###|8&!߼}ϟ?߾{?Į }:;<8pMUÞG6 LPVg8s<î$%rLw7l?U [ ;Šc8ȋL }AHop 68_ ּei)80Yxw AsÁ',L=bR\uGHXP9,"hB e)[v 0U+ot4<`mmSD ><{k ^`g8z($€ϟ>GG :,]JkT4T]fΚ  6 v^.wo?D}zm.5$H6t0L2a6pd4 EٯSmxfm``c$c(H]fTރ۰h@Jb$'@<hp#1jPv*x *|00 RLIENDB`ukui-media-3.1.1.2/data/icons/16x16/status/audio-input-microphone-low.png0000644000175000017500000000104414565521701024373 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?!n# .?###|8&!߼}ϟ?߾{?Į 5Ue R {a'CXXH|0(+39AQAaC p9 jp)= A^dR%v6󗮂5oپAFZ , DV&>>%4\p  S#g_䣘$ih8kZ`gt1={DaÀV'߾3h1?yښ㧈@|vy `3:{AZRѣ Ғ> <]JkT4T]fΚ  v= @ IjҀ@ 4hH1"P>H(3 hR@V\ FAm@ہ`DZb<IENDB`ukui-media-3.1.1.2/data/icons/16x16/status/audio-input-microphone-muted.png0000644000175000017500000000101014565521701024701 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?!n# .?###|8&!߼}ϟ?߾{?Į 5Ue R {a'CXXH|0(+39AQAaC p9dC Yl2d0cXn Gr /Y5ѣ /]k޲}X835>`aj Xhxp/]`in̰{^q1Q&B6:j Oefx)\]riIq𐕖 t ݐkB ʊ 323̜5$<S%專իV &e w7% fq- 4thHА XcK5ˌ2Ѐ 2HOx.Fbr#Ԡ6 U @Ucf r-IENDB`ukui-media-3.1.1.2/data/icons/16x16/status/audio-input-microphone-high.png0000644000175000017500000000152514565521701024515 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?wG*ʁ\ &HB<2@!A@Рn$wdO/v n>7._)h8\SU %)?~2w `adfy\]ƈl<Ùv= )!c6?/?俿أx [ ;Šc8ȋL }AHop 77 n^d8_ ּei)80Yxw 8e RsÁ',L=bR\uGHXP_/XXDƅ  `47fؽg/(q N\U+ot4<`mmSD ><{k|9 piIqG2JK" s+>|o߭/_/ w))aPUVdPU`pwg9k.H|6؀[+ y߽շ_~25$H6t0L2a6pd4 EٯSŴJ)p5D@>̨)_=f^\L\YY / S4H% \ Ԥ}WnfJ nj"^4=.<Aj-d_JIENDB`ukui-media-3.1.1.2/data/icons/32x32/0000755000175000017500000000000014565521701015141 5ustar fengfengukui-media-3.1.1.2/data/icons/32x32/Makefile.am0000644000175000017500000000006114565521701017172 0ustar fengfengSUBDIRS = status -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/32x32/status/0000755000175000017500000000000014565521701016464 5ustar fengfengukui-media-3.1.1.2/data/icons/32x32/status/Makefile.am0000644000175000017500000000057014565521701020522 0ustar fengfengNULL = themedir = $(pkgdatadir)/icons/hicolor size = 32x32 context = status iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ audio-input-microphone-high.png \ audio-input-microphone-low.png \ audio-input-microphone-medium.png \ audio-input-microphone-muted.png \ $(NULL) EXTRA_DIST = \ $(icons_DATA) \ $(NULL) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/32x32/status/audio-input-microphone-medium.png0000644000175000017500000000367514565521701025062 0ustar fengfengPNG  IHDR szztEXtSoftwareAdobe ImageReadyqe<_IDATxWkl~v.& qmFJ2Z~D$Y&&[Y?6kU4MZ`I~LTH 0mҪNcũ퐆v Ihb; ]o$Nu>;syǔ( (*ދ=Y-sOMQ@ lKi%ҏ?{.+H4"/r<'g"zϾ ן)ךLrB3LwQ*p9]h6իdLӋ̇d|[|weZhhhxݿyp8)E 1ٳo'"ńb|I"ڵEjѾ+QUQ"TpCbP)022\5j/ 9./ P5Ȝ ,Yz]?o=;oO ]Ծa}qAuu53Kґ$p٪?{aC}#]#8Ec{7NJhiC_(1xsw*+W/Jd")I@z4ؼEz`vvfV+xRxnJ9.RiTݲ03D zX,2 yk w#5'}Sb˱k!9|* XV$ t!Z@0cpkl+|igg_;9Ԍ2|?tg%GE+v|#]кlAroO3"u-rC;el歃] \s>!+36rsr >//r>PB0mmm1<|c#bҤ^+~4/X EJZ[ C%rL+'vnMVV,L!OF3>iZ@|"TӱHrǙ3g>OkJWvvO`!LLLɗ{{.DA\攸 =r  #19qK:j;UO(T*) {0i?xxs}Xglݶ-;+gwNvVJFpz,Gc|(-,,v~]Q96!ǘ{UYYY!ʎ)1|/<ֱQ1pT 7>|('7;]]Nh4EIQC!؉#C޺z) HIVTTXTTBXH[3<@81DURj߂t  n02 rWZA% /P`tS[C.CsP~c >Om iۿvSs m,|"' z6j~LMMN"Zw1$=ZdJpS!87pR+%ɤj%: ˯:\wYa*6rmRt!`(##p~x+d[[o ׎;heロ-{hR{pa؝O_ye{7tE:"#-[;w|s#ܾW~o͍b2؈Lf|&|Q0jjZsfNŤ&-e[K#ϪcڪjSklhT^5H԰j5wF}_6[*bV*ZQȁOLnIFƣxG ?s˦tc;xmojl`-MMa +I"Jn "? t"Cҗ{M[dW^nyфƤ8%<Ս  FG:`JJK 9w za͵b@PY@3HDĠdefT8/5dZ>>X=U j5H>% A< a4Q+@(RagffA;HI.6\g8a4f,Ɋ!ќ:!bE2FSg΍tpK@v/X/}hw8L";Mx؋%L'3s/b;Z6[ۜ9+3s-qKt:v$QD\vL ӡO;O'z9^T/^\III'ДFg|TKsٳIENDB`ukui-media-3.1.1.2/data/icons/32x32/status/audio-input-microphone-muted.png0000644000175000017500000000372514565521701024714 0ustar fengfengPNG  IHDR szztEXtSoftwareAdobe ImageReadyqe<wIDATxW{lS?qmqb6ImE6^ E$I'& V jjmZutǤc-cRNP@C^$!4v8/il'߾BH!I{9sϴ$I Qp팂 ?"S@ P/!V6| C /o'}{lL5g[g~Rհs@0Ur-~I~8SA^***tA$Aќup8P^Q._KKK94~}H3&Z >KV3NR/;pHPVV}}}P\\ ]PPPi@$$J5ʇa%~r{g  08eytED@\ 6 @=Jw:-?` 0yN6;!`QQtvvBNNܺ}B<'!$9wJWڷOj^:Ef!%+8}e2l6 qbx'c`h(؃};LaIN?~dX %Ǹ uAqI `Xd0Iz$`DPSW3U\L6}Z={@mok55zeaJ#'^kP~|_ l6\rdyK7&n7 ^Y͛7+1wp3[Oe({|řE(~I&$+d$r{~/_9GGǾlݜmp1NssXԛkude lU`vvfVN=&G67J͖ݺ ff}p}Gҽ{wEZJi`pІ;}{MHkiy( )ZlH0̰n~011cH^<+MMMZvaZa^s6l{qcȝ %w9d_n֨H2Sc׽wK>{y r h4͕U_6j/ӟ3~Mɨ~R+Mj:RښZk Ű *Rag{~;w7!99\EzQI+h9C&(sD'Lݞ u:v:uҗvסƍO))AH0!>M&Ш5 4Q! -:=SPDiSzE)LZX GT@렻3Mi(PT(p^.2MXz!7: ;wH;.Bvv89`(Ҙy0/x:<\aWIx eF0>,-N L& ?l怾:2}+o-`-JdZ "B's~'LTW ٔ7y|HLE&41Ջ̄4۽Η:K22>ٮ!u@~Akj >F JVS0 vnfv*~$1=>ʊ*E(4 Nx.|r`XCZZx<Izf5CA퇭Si?M~j @?qAtqpq֯ ==:;;,C#^$buc9g;0XQ{8]3 쁓ŋVO48Mt ҖZ߬^NIIA:YE&!Q&Bm(Ƣ1]у'ZZZz=nݮjkʶliZr^^7闆#Ly,xù+~E%t, :۾es(@ǶoGgpּOu횲p\)=Cɵ=Ф'lnj][Vt0CSՕv5OCSceuuu g(L{7X25eаBwOw@FG3r Y>"]oڢnR޶Ά؞3ɾ}od|sgdc2끾^{ +E׾T[[{kZw+LdpMU{~?~2wA1 PU$eEyW01\yAQAaC P-`f?5Z=7 @VXH r2 Gb`x1JXp{[k!~~_~Az薄4q1<~A^V`÷l #-> n0hJ5r\r_HO"Y) 1[w0h*18|Ԉ0A^^@L\䪜L7'ĿN@7䰈W\ 99=yƠ(/pUKsc{22 [%נN<|\-j@߾3HI0ܺsAWGa ?6؂y~X7Tp#?`njȰsNIqQ9Ƶ;@>|V| >'I Wodfx-v{9Up|9+Y_ 1(2{؀aa-YgΤ6Km'^-cKIy 802g fl #zFs 2X7M-HʧaRVj.l n#(k\~FBjg.O Ž<`ҞLVq 7Pв.]woO>?.,d1p{%NLԆϞ=3>~Ƞ5ޘ ( #&ӗn700s1u2(~5f 2޾^(@ e̞7o0445~VHU6D0muIENDB`ukui-media-3.1.1.2/data/icons/24x24/status/audio-input-microphone-low.png0000644000175000017500000000152114565521701024371 0ustar fengfengPNG  IHDRw=tEXtSoftwareAdobe ImageReadyqe<IDATxb?- !b1 i6@0K:"al>w+LdpMU{~?~2wA1 R<ëoDݼà ϰk!I qde[T 2ܽAANȱS z: =F>| syYiW ߲}(رRb >`PUb8pó/`nU91n\&E]zZ03EyY2X3޳A\LYu- M\5Dod$nݹǠɰQkkkb[3?\ < 榆 ;wdŞo\ ̲s/$ 2\W[a V ߼w=gMep"ν̌ vnߊRuLo"w))F @Cb|4Y@MRa^Pyұl|F.%l n#2S6q.H?#V\53'aG0iO&(hYXݻ7N~2 PZxb& jCgϞ?~dpx`iioLDI [7oc`dl乀:L? 3 o_/qfϛ7o?`}M|Q !S~:fhIENDB`ukui-media-3.1.1.2/data/icons/24x24/status/audio-input-microphone-muted.png0000644000175000017500000000152314565521701024710 0ustar fengfengPNG  IHDRw=tEXtSoftwareAdobe ImageReadyqe<IDATxڴU_HQ}փfsS[DPj.!%챇D"$2%jD! -ik_~lM?'8{=we8v +NF=B3J'ʍONss:7ډads㤘@woN\󝾱aFG0>eOJ6Z&,4os`գd/$òTr$Z,~ n(d僿l{ MI?ҋҘT}jbbzIЫDNV&);J݁WMP*0+rUAϵ~xg[LM 9K115zV1g\dy>!dge@"N3PP<4cG0[~˲&7~ c$QB:6е_3l2 `G"@~aT5afCqQ쨼zORm.s-dRbGdzBDzAWUU !Z-\H=j#NnlU=Ġ[]pr֋(n)n+!]%cZ|.h'&߭`YoVxv?!SQIȟLy:}rB>űX,|~~D 7$,HIENDB`ukui-media-3.1.1.2/data/icons/24x24/status/audio-input-microphone-high.png0000644000175000017500000000227614565521701024517 0ustar fengfengPNG  IHDRw=tEXtSoftwareAdobe ImageReadyqe<`IDATxڴmL[U~HQ1(E6`24ll&!L )dF s35SpLt JH:3mP ݨҖzﳭ&ƓwϽ|{>x]uU:ɚULϖ?~y9_47x?' NyGGD3r8H=Ed\@c퇻X(M+9-eHaPDA==}`;h9>vֽ}YqY$|N CAeܛ5@D h@z(y?J\@xOu@q sl *bZF:~ɠ'V(PwV$i[YeΆ<%~r^X9/ p[]=Iȉ?*EL*96\\FEba;-xxZ0B#㐼!£[`zFN\n) y2aak0i VXcy ,Ӡ[o  Χ iSlMrJ"PV*( iE,M ``]AB#1Hݜ} ɩU(XvqNwbq8;yA$akf:T*\Ǟɷ53_7oq#̩eq/&$ԇ૶vX6dh4PCt&%f]dZ^^_oÆD%z!+Puu? ^vܙU֔97}^+նj]GA# &`( :NtU: image/svg+xml audio device speaker output center audio-speaker-center Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right.svg0000644000175000017500000004654114565521701024147 0ustar fengfeng image/svg+xml audio device speaker output right audio-speaker-right Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/Makefile.am0000644000175000017500000000150614565521701021606 0ustar fengfengNULL = themedir = $(pkgdatadir)/icons/hicolor size = 48x48 context = devices iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ audio-speaker-center.svg \ audio-speaker-center-testing.svg \ audio-speaker-left-back.svg \ audio-speaker-left-back-testing.svg \ audio-speaker-left.svg \ audio-speaker-left-side.svg \ audio-speaker-left-side-testing.svg \ audio-speaker-left-testing.svg \ audio-speaker-right-back.svg \ audio-speaker-right-back-testing.svg \ audio-speaker-right.svg \ audio-speaker-right-side.svg \ audio-speaker-right-side-testing.svg \ audio-speaker-right-testing.svg \ audio-speaker-center-back-testing.svg \ audio-speaker-center-back.svg \ audio-subwoofer.svg \ audio-subwoofer-testing.svg \ $(NULL) EXTRA_DIST = \ $(icons_DATA) \ $(NULL) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/scalable/devices/audio-subwoofer.svg0000644000175000017500000003353014565521701023407 0ustar fengfeng image/svg+xml audio device subwoofer output audio-subwoofer Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left-side-testing.svg0000644000175000017500000005046414565521701026360 0ustar fengfeng image/svg+xml audio device speaker output left-side testing highlighted audio-speaker-left-side-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left.svg0000644000175000017500000004654414565521701023767 0ustar fengfeng image/svg+xml audio device speaker output left audio-speaker-left Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right-testing.svg0000644000175000017500000007767114565521701025632 0ustar fengfeng image/svg+xml audio device speaker output right testing highlighted audio-speaker-right-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right-back-testing.svg0000644000175000017500000005052614565521701026516 0ustar fengfeng image/svg+xml audio device speaker output right-back testing highlighted audio-speaker-right-back-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-center-testing.svg0000644000175000017500000005044514565521701025763 0ustar fengfeng image/svg+xml audio device speaker output center testing highlighted audio-speaker-center-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right-back.svg0000644000175000017500000004657314565521701025052 0ustar fengfeng image/svg+xml audio device speaker output right-back audio-speaker-right-back Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-center-back.svg0000644000175000017500000004513614565521701025207 0ustar fengfeng image/svg+xml audio device speaker output center audio-speaker-center Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left-back-testing.svg0000644000175000017500000005051214565521701026326 0ustar fengfeng image/svg+xml audio device speaker output left-back testing highlighted audio-speaker-left-b-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right-side-testing.svg0000644000175000017500000005046514565521701026544 0ustar fengfeng image/svg+xml audio device speaker output right-side testing highlighted audio-speaker-right-side-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left-side.svg0000644000175000017500000004653114565521701024705 0ustar fengfeng image/svg+xml audio device speaker output left-side audio-speaker-left-side Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-right-side.svg0000644000175000017500000004653314565521701025072 0ustar fengfeng image/svg+xml audio device speaker output right-side audio-speaker-right-side Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-subwoofer-testing.svg0000644000175000017500000002625314565521701025066 0ustar fengfeng image/svg+xml audio device subwoofer output testing highlighted audio-subwoofer-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left-back.svg0000644000175000017500000004656314565521701024666 0ustar fengfeng image/svg+xml audio device speaker output left-back audio-speaker-left-back Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-center-back-testing.svg0000644000175000017500000004706414565521701026664 0ustar fengfeng image/svg+xml audio device speaker output center testing highlighted audio-speaker-center-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/devices/audio-speaker-left-testing.svg0000644000175000017500000005050214565521701025427 0ustar fengfeng image/svg+xml audio device speaker output left testing highlighted audio-speaker-left-testing Evangeline McGlynn ukui-media-3.1.1.2/data/icons/scalable/Makefile.am0000644000175000017500000000007114565521701020160 0ustar fengfengSUBDIRS = status devices -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/scalable/status/0000755000175000017500000000000014565521701017451 5ustar fengfengukui-media-3.1.1.2/data/icons/scalable/status/Makefile.am0000644000175000017500000000057314565521701021512 0ustar fengfengNULL = themedir = $(pkgdatadir)/icons/hicolor size = scalable context = status iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ audio-input-microphone-high.svg \ audio-input-microphone-low.svg \ audio-input-microphone-medium.svg \ audio-input-microphone-muted.svg \ $(NULL) EXTRA_DIST = \ $(icons_DATA) \ $(NULL) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/scalable/status/audio-input-microphone-medium.svg0000644000175000017500000016007414565521701026057 0ustar fengfeng image/svg+xml ukui-media-3.1.1.2/data/icons/scalable/status/audio-input-microphone-muted.svg0000644000175000017500000015623114565521701025715 0ustar fengfeng image/svg+xml ukui-media-3.1.1.2/data/icons/scalable/status/audio-input-microphone-low.svg0000644000175000017500000015615714565521701025407 0ustar fengfeng image/svg+xml ukui-media-3.1.1.2/data/icons/scalable/status/audio-input-microphone-high.svg0000644000175000017500000016126114565521701025515 0ustar fengfeng image/svg+xml ukui-media-3.1.1.2/data/icons/22x22/0000755000175000017500000000000014565521701015137 5ustar fengfengukui-media-3.1.1.2/data/icons/22x22/Makefile.am0000644000175000017500000000006114565521701017170 0ustar fengfengSUBDIRS = status -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/22x22/status/0000755000175000017500000000000014565521701016462 5ustar fengfengukui-media-3.1.1.2/data/icons/22x22/status/Makefile.am0000644000175000017500000000057014565521701020520 0ustar fengfengNULL = themedir = $(pkgdatadir)/icons/hicolor size = 22x22 context = status iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ audio-input-microphone-high.png \ audio-input-microphone-low.png \ audio-input-microphone-medium.png \ audio-input-microphone-muted.png \ $(NULL) EXTRA_DIST = \ $(icons_DATA) \ $(NULL) -include $(top_srcdir)/git.mk ukui-media-3.1.1.2/data/icons/22x22/status/audio-input-microphone-medium.png0000644000175000017500000000171014565521701025044 0ustar fengfengPNG  IHDRĴl;tEXtSoftwareAdobe ImageReadyqe<jIDATxڜkHQ6̜[6.jYTfַ.dtEEч(#!(ˈĒȈ,:PQZ^.ֲs^l:ܞyeXTaI{R֒ҁ7W<̬Uff_VL&WTadFrnz^jr3-鮐C[uTR?[Q0u-%|g^DDIw"4iZW<*mZ ӻBVl"_:gAjLm@HP>AK #vmaX$3K@bL*A}S " VǬ WI|k%覷XX3w-1ynӇqlwAkr5$ak _{R/oOH,ۂȃCIQ،eQPWT#!!v+F,, s#Iaq=y\=bVBRo{mc!ޢ|~3p_Zli8=|5 `0t054c0w/XP+*y61!Pm4 ,t]t& X$LPJܥRprϹs8Ep8M{gK~IcC Da=p8(e۩aE="8UU^8NQl6:b>owsc\3Dc`pDڵ'zoL ( HL'NW0a<".,>yva!0N! D_•սD`75wbCq(wK`2OaL@ZXtKƆb rY<#7GN-XxqSI+K+EEFz*]=PT0':Wlu:VEDxF'{>|FNv&4 ℱ^~#I=b _XdJfJWݯwG=[oHNCar4mܱz{,^b 'u"ΟTudhypDZwFj JTM[0ݡaq+${AM4XfR9\ kLMM_#J,V+RG6_9vW{4j[stq c'h}KKsddePq?j7Sh(-yǏyz*hpŊ 6>:OPpIENDB`ukui-media-3.1.1.2/data/icons/22x22/status/audio-input-microphone-muted.png0000644000175000017500000000146114565521701024705 0ustar fengfengPNG  IHDRĴl;tEXtSoftwareAdobe ImageReadyqe<IDATxڜ_HSqǿrn\%I#|K"# %"EheDb!ljԜ-m߽쎹?zׁw>;seM( ]k8CSҶgGHPeb]e-YOLn7Bj yx< bEuu%wnqTU`*] #Rd0 AQ{]}>i[vg;k+q9~X~Nfa~ܧ)!-`@? I oX+Q+&BsBQġI-=O ğ_E&67| MtE<C q E*!>Wb(A qUzE'!Z Wu0>a+ְc>&bȥۘt?&O.عfqaqIWݰa}i!&z9X)kSO*Eb_L4o)$:g8 BTжwAvv6 | &p`qpS8Np92)qaph>34 ,{{O`3d37c^m c[U-BƊp{嫗U,K QUe &QSx|rlʕ#ԝEFISS95sx ޡc0 7,N2'd2A[=+(vGGE":vg~ju4e/15 'vertical' ukui-volume-control-applet orientation Used to set the orientation of ukui-volume-control-applet ukui-media-3.1.1.2/data/org.ukui.sound.gschema.xml0000644000175000017500000000254114565521701020271 0ustar fengfeng '' Default mixer device The default mixer device used by the multimedia key bindings. [] Default mixer tracks The default mixer tracks used by the multimedia key bindings. false Enable ESD Enable sound server startup. false Sounds for events Whether to play sounds on user events. 'freedesktop' Sound theme name The XDG sound theme to use for event sounds. false Input feedback sounds Whether to play sounds on input events. ukui-media-3.1.1.2/data/ukui-volume-control-applet.desktop0000644000175000017500000000102614565521701022062 0ustar fengfeng[Desktop Entry] _Name=Volume Control _Comment=Show desktop volume control Icon=multimedia-volume-control Exec=ukui-volume-control-applet-qt Terminal=false Type=Application Categories=AudioVideo;Mixer;Settings;HardwareSettings; Keywords=UKUI;volume;control;mixer;settings;sound; NoDisplay=true OnlyShowIn=UKUI; X-UKUI-Bugzilla-Bugzilla=UKUI X-UKUI-Bugzilla-Product=ukui-media X-UKUI-Bugzilla-Component=ukui-volume-control # See http://bugzilla.ukui.org/show_bug.cgi?id=568320 X-UKUI-AutoRestart=true X-UKUI-Autostart-Phase=Application ukui-media-3.1.1.2/data/org.ukui.media.sound.gschema.xml0000644000175000017500000000077614565521701021357 0ustar fengfeng '' Filename Prompt sound file name. '' Name Description associated with a custom keybinding. ukui-media-3.1.1.2/data/images/0000755000175000017500000000000014565521701014512 5ustar fengfengukui-media-3.1.1.2/data/images/audio-input-microphone-medium.png0000644000175000017500000000125714565521701023102 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<QIDATxb?!n# .?###|8&!߼}ϟ?߾{?Į }:;<8pMUÞG6 LPVg8s<î$%rLw7l?U [ ;Šc8ȋL }AHop 68_ ּei)80Yxw AsÁ',L=bR\uGHXP9,"hB e)[v 0U+ot4<`mmSD ><{k ^`g8z($€ϟ>GG :,]JkT4T]fΚ  6 v^.wo?D}zm.5$H6t0L2a6pd4 EٯSmxfm``c$c(H]fTރ۰h@Jb$'@<hp#1jPv*x *|00 RLIENDB`ukui-media-3.1.1.2/data/images/application-audio.png0000644000175000017500000000061014565521701020617 0ustar fengfengPNG  IHDRa pHYs  ~:IDAT8ˍNAF 411Jeb>?D}C!AFcQԬ dXvvźslvMDۼ 9w^NwXyG;*ێ @l3{gIpJzSGU+fj ydQ4-|dT2 Bc}bi0 Jyy/50mR`>ŇrۓA(Xj鸽@1RVWs,25;{@aVHԛ9o_ö >a?"¬4IENDB`ukui-media-3.1.1.2/data/images/audio-input-microphone-low.png0000644000175000017500000000104414565521701022415 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?!n# .?###|8&!߼}ϟ?߾{?Į 5Ue R {a'CXXH|0(+39AQAaC p9 jp)= A^dR%v6󗮂5oپAFZ , DV&>>%4\p  S#g_䣘$ih8kZ`gt1={DaÀV'߾3h1?yښ㧈@|vy `3:{AZRѣ Ғ> <]JkT4T]fΚ  v= @ IjҀ@ 4hH1"P>H(3 hR@V\ FAm@ہ`DZb<IENDB`ukui-media-3.1.1.2/data/images/audio-input-microphone-muted.png0000644000175000017500000000101014565521701022723 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?!n# .?###|8&!߼}ϟ?߾{?Į 5Ue R {a'CXXH|0(+39AQAaC p9dC Yl2d0cXn Gr /Y5ѣ /]k޲}X835>`aj Xhxp/]`in̰{^q1Q&B6:j Oefx)\]riIq𐕖 t ݐkB ʊ 323̜5$<S%專իV &e w7% fq- 4thHА XcK5ˌ2Ѐ 2HOx.Fbr#Ԡ6 U @Ucf r-IENDB`ukui-media-3.1.1.2/data/images/audio-volume-low.png0000644000175000017500000000046314565521701020430 0ustar fengfengPNG  IHDRa pHYs  ~IDAT8˭A 1 Ea t%xo7QoH +.L1ΠBi ؖؗZKTXR [)@m3H9;38=gATR^$Ƨb_ '0h)o];`+v s`쎥4*q!^` PY/EÝ4Qᤣ{̞i WK#IENDB`ukui-media-3.1.1.2/data/images/blank.png0000644000175000017500000000016314565521701016307 0ustar fengfengPNG  IHDRKm)IDATc?6Ā N V ah~tEXtSoftwaregnome-screenshot>IENDB`ukui-media-3.1.1.2/data/images/audio-input-microphone-high.png0000644000175000017500000000152514565521701022537 0ustar fengfengPNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxb?wG*ʁ\ &HB<2@!A@Рn$wdO/v n>7._)h8\SU %)?~2w `adfy\]ƈl<Ùv= )!c6?/?俿أx [ ;Šc8ȋL }AHop 77 n^d8_ ּei)80Yxw 8e RsÁ',L=bR\uGHXP_/XXDƅ  `47fؽg/(q N\U+ot4<`mmSD ><{k|9 piIqG2JK" s+>|o߭/_/ w))aPUVdPU`pwg9k.H|6؀[+ y߽շ_~25$H6t0L2a6pd4 EٯSŴJ)p5D@>̨)_=f^\L\YY / S4H% \ Ԥ}WnfJ nj"^4=.<Aj-d_JIENDB`ukui-media-3.1.1.2/data/images/images.qrc0000644000175000017500000000107014565521701016464 0ustar fengfeng blank.png emblem-unreadable.png audio-volume-muted.png audio-volume-medium.png audio-volume-low.png audio-volume-high.png application-audio.png audio-input-microphone-muted.png audio-input-microphone-medium.png audio-input-microphone-low.png audio-input-microphone-high.png ukui-media-3.1.1.2/data/images/emblem-unreadable.png0000644000175000017500000000021114565521701020553 0ustar fengfengPNG  IHDR pHYs  ~;IDATc?> &W͈bL׊VDSHțSIENDB`ukui-media-3.1.1.2/data/images/audio-volume-high.png0000644000175000017500000000037714565521701020552 0ustar fengfengPNG  IHDRa pHYs  ~IDAT8˭[ 0 Ea (B1(B08XEj-q|t9'5M|͋, :8D YV@m&IF @PC.lHl${ExHzV(U$)"n{mLl6 i|2^㏩|IENDB`ukui-media-3.1.1.2/data/images/audio-volume-muted.png0000644000175000017500000000036314565521701020744 0ustar fengfengPNG  IHDRa pHYs  ~IDAT8˝ 0EU#xC s6ĪEmK\@<}02E/]~ ms!A)Y+dkAxH~f}soϤz}gB(vFbIENDB`ukui-media-3.1.1.2/data/images/audio-volume-medium.png0000644000175000017500000000042414565521701021104 0ustar fengfengPNG  IHDRa pHYs  ~IDAT8˭ 0 E.CO#t2Jؠ#d6aFCa$_O$2_,;m(Ws${$!AtqdPq#>5 $'d]ULr@Yd0>hk]Mܒt5TU<xY)-mLm_2[ nc9+VIENDB`ukui-media-3.1.1.2/data/ukui-media-control-mute-led.service0000644000175000017500000000027714565521701022057 0ustar fengfeng[Unit] Description=Mate media control leds daemon After=lightdm.service [Service] Restart=always RestartSec=2 ExecStart=/usr/bin/ukui-media-control-led [Install] WantedBy=multi-user.target ukui-media-3.1.1.2/data/ukui-volume-control.desktop.in.in0000644000175000017500000000072714565521701021620 0ustar fengfeng[Desktop Entry] _Name=Sound _Comment=Change sound volume and sound events Exec=ukui-volume-control Icon=multimedia-volume-control Terminal=false Type=Application StartupNotify=true Categories=AudioVideo;Mixer;Settings;HardwareSettings; Keywords=UKUI;volume;control;mixer;settings;sound;events; OnlyShowIn=UKUI; X-UKUI-Bugzilla-Bugzilla=UKUI X-UKUI-Bugzilla-Product=ukui-media X-UKUI-Bugzilla-Component=ukui-volume-control X-UKUI-Bugzilla-Version=@VERSION@ NoDisplay=true ukui-media-3.1.1.2/NEWS0000644000175000017500000000005114565521701013027 0ustar fengfeng### ukui-media 1.1.0 Fork mate-media