البرنامج النصي لإيقاف الصوت عند فصل سماعات الرأس

البطريق 159784_640

حدث لي أنه بينما كان الناس نائمين في الساعات الأولى من الصباح ، استمعت إلى موسيقى ثقيلة بصوت كامل وفصلت عن طريق الخطأ سماعات الرأس التي تسببت في تشغيلها في جميع أنحاء المنزل (أعتقد أنهم كرهوني في ذلك الوقت هههه). لذا قم ببرمجة برنامج نصي صغير بحيث عند فصله ، يكتم الصوت:

أول شيء كان التثبيت السا يوتيلس لتتمكن من إدارة الحجم من الأوامر بسهولة:

sudo pacman -S alsa-utils

كان الشيء التالي هو اكتشاف من خلال بحث Google أنه يحفظ في ملفات نصية عادية (يمكن قراءتها مع أي محرر نصوص ، كل هذا سيكون أكثر تعقيدًا في Windows) حالة بطاقات الصوت وأن الأمر يتطلب فقط انسخ الملف ثم قارن التغييرات.

الملف هو:
/proc/asound/card0/codec#0

قد يختلف هذا في بعض الحالات ، على سبيل المثال إذا كان لدينا أكثر من بطاقة صوت واحدة. إذا كنت تريد معرفة المزيد فاترك رابط توثيق alsa: http://alsa.opensrc.org/Proc_asound_documentation

أقوم بتوصيل سماعات الرأس ونسخ الملف:
mkdir $HOME/.audifonos && cp "/proc/asound/card0/codec#0" "$HOME/.audifonos/con.txt"

ثم أفصل سماعات الرأس واستخدم الأمر diff الذي يعرض الخطوط المختلفة بين الملفين:
diff "/proc/asound/card0/codec#0" ".audifonos/con.txt"

هناك بعض البيانات التي لا نهتم بها ، لذا يتعين علينا التصفية باستخدام grep بحيث يظهر فقط الأسطر التي تحتوي على كلمة "Pin-ctls".

diff "/proc/asound/card0/codec#0" ".audifonos/con" | grep Pin-ctls

إذا لم يظهر الأمر أي شيء على الشاشة ، فهذا يعني أن لدينا سماعات رأس. نظرًا لأنه لا يمكنه إرجاع أي شيء ، فإنه يُرجع خطأ.

لمشاهدة هذا الخطأ نكتب:
echo $?

إذا أظهر لنا واحدًا لكل شاشة ، فإنه يخبرنا عن الخطأ.

راحة

من ناحية أخرى ، إذا قمنا بتنفيذ هذا ، فإنه يعيد شيئًا ما ، ثم يتم فصل سماعات الرأس وفي هذه الحالة لن يُرجع خطأ:
echo $?

مرحبا

مع وضع هذا في الاعتبار ومعرفة باش ، من السهل القيام بذلك:

سماعات الرأس

أقوم بتنزيله ، وأعطي أذونات التنفيذ لفتحه لأول مرة حتى يتم "تثبيته" (يطلب فقط توصيل سماعات الرأس ونسخ الملف الذي يشرح في البداية)
wget http://paste.desdelinux.net/?dl=5178 && chmod +x audifonos.sh && ./audifonos.sh

لإنهاء ، أجعله يبدأ تلقائيًا في كل مرة أقوم فيها بتشغيل الكمبيوتر

من Xfce ، انتقل إلى التطبيقات> التكوين> الجلسة والبدء> بدء تشغيل التطبيقات> إضافة البرنامج النصي ووضعه


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

13 تعليقات ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   بلاط قال

    هل تصادف أنك تستخدم WM؟ إنه على الأقل في Arch مع Gnome-Shell 3.16 ، فإنه يحافظ على التغييرات في عناصر التحكم في الصوت ، على سبيل المثال ، عندما أقوم بتوصيل HDMI ، يُظهر لي الحد الأقصى لمستوى الصوت ، وعندما أقوم بتوصيل سماعات الرأس ، يظهر لي مستوى صوت منخفض جدًا وفي السماعات المدمجة تقريبًا أكثر.

    على الرغم من أنني كنت في الحقيقة أتطلع إلى القيام بذلك لبعض الوقت ، إلا أنه كان من الصعب خفض مستوى الصوت لتتمكن من استخدام السماعات بحيث لا يكون الصوت مرتفعًا أو مزعجًا للآخرين. شكرا جزيلا لك على المساهمة.

    1.    مطر قال

      من أجل لا شيء 🙂 ، يمكنني استخدام xfce 😛

      1.    بلاط قال

        لقد تذكرت للتو أنني كنت أشاهد p0rn مرة واحدة وكان سماعات الرأس و HDP مفصولين وسمعت أنين Shyla: c
        الشيء الجيد أنه لم يكن سوى جزء من ثانية أبدية على الأقل وبدت مثل أفلام الرعب عندما قتلت عاهرة XD
        بالتفكير في الأمر ، سأضيفه إلى المفضلة

  2.   ييو مورينو قال

    هاهاهاهاها نفس الشيء حدث لي عندما فصلته عن غير قصد في حوالي منتصف الليل وظهر قلب صلب جيد بالحجم الكامل XD كانت عائلتي خائفة: v

  3.   برامج noxonsoftwares قال

    المعلومات الجيدة ستكون مفيدة لي في مرحلة ما. شكرا جزيلا

  4.   أندريسر قال

    أنت لا تخدعني ، كنت تشاهد من أجل * أو مثلي الجنس بالإسبانية وتم فصل سماعات الرأس الخاصة بك xD
    شكرًا للمساهمة ، في Linux Mint ، يتم الاحتفاظ بمستوى الصوت ، على سبيل المثال إذا قمت بوضع كتم الصوت ثم قمت بتوصيل سماعات الرأس ، في سماعات الرأس سيكون لدي صوت وبدون ذلك.
    تحية.

    1.    مطر قال

      هاهاها ، لا ولكن في تلك الحالات تعمل أيضًا (؟)

      1.    أندريسر قال

        نعم ، يعمل أيضًا في تلك الحالات (͡ ° ͜ʖ ͡ °)

  5.   دني قال

    معلومات جيدة ، اقتراح ، إذا كان النظام يدعم "devd" كيف يمكنني متابعة نسخ هذا الملف أو إنشائه؟

    [code] $ PREFIX / share /amples / cups / ulpt-cupsd.conf إلى $ PREFIX / etc / devd / [/ code]

    1.    مطر قال

      لم أستطع إخبارك ، أليس أمر cp كافياً؟

      1.    دني قال

        لا ، تقول أن هذا الدليل غير موجود ولا أعرف كيف أنشئ أيضًا.

  6.   فرناندو قال

    هههههه حسنًا إذا أخبرتك أنه حدث لي في أكثر من مناسبة وبنفس الموسيقى لذلك أكتبها لتثبيتها لاحقًا. تحياتي وباسم هيفي ميتال أشكركم.

  7.   ديفيد قال

    …… ~ $ sudo pacman -S alsa-utils
    [sudo] كلمة المرور لديفيد:
    sudo: pacman: الأمر غير موجود