You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/pa/6-consumer/lessons/1-speech-recognition/pi-microphone.md

14 KiB

ਆਪਣੇ ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰ ਕਨਫਿਗਰ ਕਰੋ - ਰਾਸਪਬੇਰੀ ਪਾਈ

ਇਸ ਪਾਠ ਦੇ ਇਸ ਹਿੱਸੇ ਵਿੱਚ, ਤੁਸੀਂ ਆਪਣੇ ਰਾਸਪਬੇਰੀ ਪਾਈ ਵਿੱਚ ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰ ਜੋੜੋਗੇ।

ਹਾਰਡਵੇਅਰ

ਰਾਸਪਬੇਰੀ ਪਾਈ ਨੂੰ ਇੱਕ ਮਾਈਕ੍ਰੋਫੋਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।

ਪਾਈ ਵਿੱਚ ਮਾਈਕ੍ਰੋਫੋਨ ਬਿਲਟ-ਇਨ ਨਹੀਂ ਹੁੰਦਾ, ਇਸ ਲਈ ਤੁਹਾਨੂੰ ਇੱਕ ਬਾਹਰੀ ਮਾਈਕ੍ਰੋਫੋਨ ਜੋੜਨਾ ਪਵੇਗਾ। ਇਹ ਕਰਨ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ:

  • ਯੂਐਸਬੀ ਮਾਈਕ੍ਰੋਫੋਨ
  • ਯੂਐਸਬੀ ਹੈਡਸੈਟ
  • ਯੂਐਸਬੀ ਆਲ-ਇਨ-ਵਨ ਸਪੀਕਰਫੋਨ
  • ਯੂਐਸਬੀ ਆਡੀਓ ਐਡਾਪਟਰ ਅਤੇ 3.5mm ਜੈਕ ਵਾਲਾ ਮਾਈਕ੍ਰੋਫੋਨ
  • ReSpeaker 2-Mics Pi HAT

💁 ਬਲੂਟੂਥ ਮਾਈਕ੍ਰੋਫੋਨ ਸਾਰੇ ਰਾਸਪਬੇਰੀ ਪਾਈ 'ਤੇ ਸਹੀ ਕੰਮ ਨਹੀਂ ਕਰਦੇ, ਇਸ ਲਈ ਜੇ ਤੁਹਾਡੇ ਕੋਲ ਬਲੂਟੂਥ ਮਾਈਕ੍ਰੋਫੋਨ ਜਾਂ ਹੈਡਸੈਟ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਜੋੜਨ ਜਾਂ ਆਡੀਓ ਕੈਪਚਰ ਕਰਨ ਵਿੱਚ ਸਮੱਸਿਆ ਆ ਸਕਦੀ ਹੈ।

ਰਾਸਪਬੇਰੀ ਪਾਈ ਵਿੱਚ 3.5mm ਹੈਡਫੋਨ ਜੈਕ ਹੁੰਦਾ ਹੈ। ਤੁਸੀਂ ਇਸਨੂੰ ਹੈਡਫੋਨ, ਹੈਡਸੈਟ ਜਾਂ ਸਪੀਕਰ ਨਾਲ ਜੋੜ ਸਕਦੇ ਹੋ। ਤੁਸੀਂ ਸਪੀਕਰ ਇਸ ਤਰੀਕੇ ਨਾਲ ਵੀ ਜੋੜ ਸਕਦੇ ਹੋ:

  • HDMI ਆਡੀਓ ਮਾਨੀਟਰ ਜਾਂ ਟੀਵੀ ਰਾਹੀਂ
  • ਯੂਐਸਬੀ ਸਪੀਕਰ
  • ਯੂਐਸਬੀ ਹੈਡਸੈਟ
  • ਯੂਐਸਬੀ ਆਲ-ਇਨ-ਵਨ ਸਪੀਕਰਫੋਨ
  • ReSpeaker 2-Mics Pi HAT ਨਾਲ ਸਪੀਕਰ ਜੋੜ ਕੇ, ਜਾਂ ਤਾਂ 3.5mm ਜੈਕ ਰਾਹੀਂ ਜਾਂ JST ਪੋਰਟ ਰਾਹੀਂ

ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰ ਜੋੜੋ ਅਤੇ ਕਨਫਿਗਰ ਕਰੋ

ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰ ਨੂੰ ਜੋੜਨਾ ਅਤੇ ਕਨਫਿਗਰ ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ।

ਕੰਮ - ਮਾਈਕ੍ਰੋਫੋਨ ਜੋੜੋ ਅਤੇ ਕਨਫਿਗਰ ਕਰੋ

  1. ਮਾਈਕ੍ਰੋਫੋਨ ਨੂੰ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਜੋੜੋ। ਉਦਾਹਰਣ ਵਜੋਂ, ਇਸਨੂੰ ਯੂਐਸਬੀ ਪੋਰਟਾਂ ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਰਾਹੀਂ ਜੋੜੋ।

  2. ਜੇ ਤੁਸੀਂ ReSpeaker 2-Mics Pi HAT ਵਰਤ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ Grove ਬੇਸ ਹੈਟ ਨੂੰ ਹਟਾ ਸਕਦੇ ਹੋ ਅਤੇ ਇਸ ਦੀ ਜਗ੍ਹਾ ReSpeaker ਹੈਟ ਲਗਾ ਸਕਦੇ ਹੋ।

    ReSpeaker ਹੈਟ ਵਾਲਾ ਰਾਸਪਬੇਰੀ ਪਾਈ

    ਤੁਹਾਨੂੰ ਇਸ ਪਾਠ ਵਿੱਚ ਬਾਅਦ ਵਿੱਚ ਇੱਕ Grove ਬਟਨ ਦੀ ਲੋੜ ਪਵੇਗੀ, ਪਰ ਇਹ ਬਟਨ ਇਸ ਹੈਟ ਵਿੱਚ ਹੀ ਬਣਿਆ ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ Grove ਬੇਸ ਹੈਟ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।

    ਜਦੋਂ ਹੈਟ ਲਗਾ ਦਿੱਤਾ ਜਾਵੇ, ਤਾਂ ਤੁਹਾਨੂੰ ਕੁਝ ਡਰਾਈਵਰ ਇੰਸਟਾਲ ਕਰਨੇ ਪੈਣਗੇ। ਡਰਾਈਵਰ ਇੰਸਟਾਲ ਕਰਨ ਲਈ Seeed ਦੀ ਸ਼ੁਰੂਆਤੀ ਹਦਾਇਤਾਂ ਨੂੰ ਵੇਖੋ।

    ⚠️ ਹਦਾਇਤਾਂ ਵਿੱਚ git ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਰਿਪੋਜ਼ਟਰੀ ਕਲੋਨ ਕਰਨ ਦੀ ਗੱਲ ਕੀਤੀ ਗਈ ਹੈ। ਜੇ ਤੁਹਾਡੇ ਪਾਈ 'ਤੇ git ਇੰਸਟਾਲ ਨਹੀਂ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਕਮਾਂਡ ਰਾਹੀਂ ਇਸਨੂੰ ਇੰਸਟਾਲ ਕਰ ਸਕਦੇ ਹੋ:

    sudo apt install git --yes
    
  3. ਆਪਣੇ ਟਰਮੀਨਲ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤਾ ਕਮਾਂਡ ਚਲਾਓ, ਚਾਹੇ ਪਾਈ 'ਤੇ ਹੋਵੇ ਜਾਂ VS Code ਅਤੇ ਰਿਮੋਟ SSH ਸੈਸ਼ਨ ਰਾਹੀਂ ਕਨੈਕਟ ਹੋ ਕੇ, ਤਾਂ ਜੋ ਜੋੜੇ ਗਏ ਮਾਈਕ੍ਰੋਫੋਨ ਬਾਰੇ ਜਾਣਕਾਰੀ ਮਿਲ ਸਕੇ:

    arecord -l
    

    ਤੁਹਾਨੂੰ ਜੋੜੇ ਗਏ ਮਾਈਕ੍ਰੋਫੋਨ ਦੀ ਸੂਚੀ ਵੇਖਣ ਨੂੰ ਮਿਲੇਗੀ। ਇਹ ਕੁਝ ਇਸ ਤਰ੍ਹਾਂ ਹੋਵੇਗੀ:

    pi@raspberrypi:~ $ arecord -l
    **** List of CAPTURE Hardware Devices ****
    card 1: M0 [eMeet M0], device 0: USB Audio [USB Audio]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    

    ਮੰਨ ਕੇ ਚਲੋ ਕਿ ਤੁਹਾਡੇ ਕੋਲ ਸਿਰਫ ਇੱਕ ਮਾਈਕ੍ਰੋਫੋਨ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਸਿਰਫ ਇੱਕ ਐਂਟਰੀ ਵੇਖਣ ਨੂੰ ਮਿਲੇਗੀ। ਲਿਨਕਸ 'ਤੇ ਮਾਈਕ੍ਰੋਫੋਨ ਕਨਫਿਗਰ ਕਰਨਾ ਥੋੜ੍ਹਾ ਮੁਸ਼ਕਲ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਹੈ ਕਿ ਸਿਰਫ ਇੱਕ ਮਾਈਕ੍ਰੋਫੋਨ ਵਰਤਿਆ ਜਾਵੇ ਅਤੇ ਹੋਰ ਮਾਈਕ੍ਰੋਫੋਨ ਹਟਾ ਦਿੱਤੇ ਜਾਣ।

    ਕਾਰਡ ਨੰਬਰ ਨੋਟ ਕਰੋ, ਕਿਉਂਕਿ ਤੁਹਾਨੂੰ ਇਸਦੀ ਲੋੜ ਬਾਅਦ ਵਿੱਚ ਪਵੇਗੀ। ਉਪਰੋਕਤ ਆਉਟਪੁੱਟ ਵਿੱਚ ਕਾਰਡ ਨੰਬਰ 1 ਹੈ।

ਕੰਮ - ਸਪੀਕਰ ਜੋੜੋ ਅਤੇ ਕਨਫਿਗਰ ਕਰੋ

  1. ਸਪੀਕਰ ਨੂੰ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਜੋੜੋ।

  2. ਆਪਣੇ ਟਰਮੀਨਲ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤਾ ਕਮਾਂਡ ਚਲਾਓ, ਚਾਹੇ ਪਾਈ 'ਤੇ ਹੋਵੇ ਜਾਂ VS Code ਅਤੇ ਰਿਮੋਟ SSH ਸੈਸ਼ਨ ਰਾਹੀਂ ਕਨੈਕਟ ਹੋ ਕੇ, ਤਾਂ ਜੋ ਜੋੜੇ ਗਏ ਸਪੀਕਰ ਬਾਰੇ ਜਾਣਕਾਰੀ ਮਿਲ ਸਕੇ:

    aplay -l
    

    ਤੁਹਾਨੂੰ ਜੋੜੇ ਗਏ ਸਪੀਕਰ ਦੀ ਸੂਚੀ ਵੇਖਣ ਨੂੰ ਮਿਲੇਗੀ। ਇਹ ਕੁਝ ਇਸ ਤਰ੍ਹਾਂ ਹੋਵੇਗੀ:

    pi@raspberrypi:~ $ aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
      Subdevices: 8/8
      Subdevice #0: subdevice #0
      Subdevice #1: subdevice #1
      Subdevice #2: subdevice #2
      Subdevice #3: subdevice #3
      Subdevice #4: subdevice #4
      Subdevice #5: subdevice #5
      Subdevice #6: subdevice #6
      Subdevice #7: subdevice #7
    card 1: M0 [eMeet M0], device 0: USB Audio [USB Audio]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    

    ਤੁਹਾਨੂੰ ਹਮੇਸ਼ਾ card 0: Headphones ਵੇਖਣ ਨੂੰ ਮਿਲੇਗਾ ਕਿਉਂਕਿ ਇਹ ਬਿਲਟ-ਇਨ ਹੈਡਫੋਨ ਜੈਕ ਹੈ। ਜੇ ਤੁਸੀਂ ਹੋਰ ਸਪੀਕਰ ਜੋੜੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਯੂਐਸਬੀ ਸਪੀਕਰ, ਤਾਂ ਇਹ ਵੀ ਸੂਚੀ ਵਿੱਚ ਦਰਸਾਏ ਜਾਣਗੇ।

  3. ਜੇ ਤੁਸੀਂ ਇੱਕ ਵਾਧੂ ਸਪੀਕਰ ਵਰਤ ਰਹੇ ਹੋ, ਅਤੇ ਬਿਲਟ-ਇਨ ਹੈਡਫੋਨ ਜੈਕ ਨਾਲ ਜੁੜੇ ਸਪੀਕਰ ਜਾਂ ਹੈਡਫੋਨ ਨਹੀਂ ਵਰਤ ਰਹੇ, ਤਾਂ ਤੁਹਾਨੂੰ ਇਸਨੂੰ ਡਿਫਾਲਟ ਵਜੋਂ ਸੈਟ ਕਰਨਾ ਪਵੇਗਾ। ਇਸ ਲਈ ਹੇਠਾਂ ਦਿੱਤਾ ਕਮਾਂਡ ਚਲਾਓ:

    sudo nano /usr/share/alsa/alsa.conf
    

    ਇਹ ਕਮਾਂਡ nano ਵਿੱਚ ਇੱਕ ਕਨਫਿਗਰੇਸ਼ਨ ਫਾਈਲ ਖੋਲ੍ਹੇਗੀ, ਜੋ ਕਿ ਇੱਕ ਟਰਮੀਨਲ-ਅਧਾਰਤ ਟੈਕਸਟ ਐਡੀਟਰ ਹੈ। ਆਪਣੇ ਕੀਬੋਰਡ ਦੇ ਤੀਰਾਂ ਦੀ ਮਦਦ ਨਾਲ ਹੇਠਾਂ ਸਕ੍ਰੋਲ ਕਰੋ ਜਦੋਂ ਤੱਕ ਤੁਹਾਨੂੰ ਹੇਠਾਂ ਦਿੱਤੀ ਲਾਈਨ ਨਾ ਮਿਲੇ:

    defaults.pcm.card 0
    

    ਮੁੱਲ ਨੂੰ 0 ਤੋਂ ਬਦਲ ਕੇ ਉਸ ਕਾਰਡ ਨੰਬਰ 'ਤੇ ਸੈਟ ਕਰੋ ਜੋ ਤੁਸੀਂ aplay -l ਕਾਲ ਤੋਂ ਪ੍ਰਾਪਤ ਸੂਚੀ ਵਿੱਚੋਂ ਚੁਣਿਆ ਹੈ। ਉਦਾਹਰਣ ਵਜੋਂ, ਉਪਰੋਕਤ ਆਉਟਪੁੱਟ ਵਿੱਚ ਦੂਜਾ ਸਾਊਂਡ ਕਾਰਡ card 1: M0 [eMeet M0], device 0: USB Audio [USB Audio] ਹੈ, ਜੋ ਕਿ ਕਾਰਡ 1 ਵਰਤ ਰਿਹਾ ਹੈ। ਇਸਨੂੰ ਵਰਤਣ ਲਈ, ਮੈਂ ਲਾਈਨ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਅਪਡੇਟ ਕਰਾਂਗਾ:

    defaults.pcm.card 1
    

    ਇਸ ਮੁੱਲ ਨੂੰ ਸਹੀ ਕਾਰਡ ਨੰਬਰ 'ਤੇ ਸੈਟ ਕਰੋ। ਤੁਸੀਂ ਆਪਣੇ ਕੀਬੋਰਡ ਦੇ ਤੀਰਾਂ ਦੀ ਮਦਦ ਨਾਲ ਨੰਬਰ ਤੱਕ ਜਾ ਸਕਦੇ ਹੋ, ਫਿਰ ਟੈਕਸਟ ਫਾਈਲਾਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਦੇ ਸਮੇਂ ਆਮ ਤੌਰ 'ਤੇ ਨੰਬਰ ਨੂੰ ਮਿਟਾ ਕੇ ਨਵਾਂ ਨੰਬਰ ਲਿਖ ਸਕਦੇ ਹੋ।

  4. ਬਦਲਾਅ ਸੇਵ ਕਰੋ ਅਤੇ ਫਾਈਲ ਬੰਦ ਕਰੋ Ctrl+x ਦਬਾ ਕੇ। ਫਾਈਲ ਸੇਵ ਕਰਨ ਲਈ y ਦਬਾਓ, ਫਿਰ ਫਾਈਲ ਨਾਂ ਚੁਣਨ ਲਈ return ਦਬਾਓ।

ਕੰਮ - ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰ ਦੀ ਜਾਂਚ ਕਰੋ

  1. ਹੇਠਾਂ ਦਿੱਤਾ ਕਮਾਂਡ ਚਲਾਓ ਤਾਂ ਜੋ ਮਾਈਕ੍ਰੋਫੋਨ ਰਾਹੀਂ 5 ਸਕਿੰਟ ਦੀ ਆਵਾਜ਼ ਰਿਕਾਰਡ ਕੀਤੀ ਜਾ ਸਕੇ:

    arecord --format=S16_LE --duration=5 --rate=16000 --file-type=wav out.wav
    

    ਜਦੋਂ ਇਹ ਕਮਾਂਡ ਚੱਲ ਰਹੀ ਹੋਵੇ, ਤਾਂ ਮਾਈਕ੍ਰੋਫੋਨ ਵਿੱਚ ਆਵਾਜ਼ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਬੋਲ ਕੇ, ਗਾ ਕੇ, ਬੀਟ ਬਾਕਸ ਕਰਕੇ, ਸਾਜ ਵਜਾ ਕੇ ਜਾਂ ਜੋ ਵੀ ਤੁਹਾਨੂੰ ਪਸੰਦ ਹੋਵੇ।

  2. 5 ਸਕਿੰਟ ਬਾਅਦ, ਰਿਕਾਰਡਿੰਗ ਰੁਕ ਜਾਵੇਗੀ। ਰਿਕਾਰਡ ਕੀਤੀ ਗਈ ਆਵਾਜ਼ ਨੂੰ ਚਲਾਉਣ ਲਈ ਹੇਠਾਂ ਦਿੱਤਾ ਕਮਾਂਡ ਚਲਾਓ:

    aplay --format=S16_LE --rate=16000 out.wav
    

    ਤੁਸੀਂ ਸਪੀਕਰ ਰਾਹੀਂ ਆਵਾਜ਼ ਨੂੰ ਵਾਪਸ ਚਲਦਾ ਸੁਣੋਗੇ। ਜ਼ਰੂਰਤ ਮੁਤਾਬਕ ਆਪਣੇ ਸਪੀਕਰ ਦੇ ਆਉਟਪੁੱਟ ਵਾਲੀਅਮ ਨੂੰ ਠੀਕ ਕਰੋ।

  3. ਜੇ ਤੁਹਾਨੂੰ ਬਿਲਟ-ਇਨ ਮਾਈਕ੍ਰੋਫੋਨ ਪੋਰਟ ਦੇ ਵਾਲੀਅਮ ਨੂੰ ਠੀਕ ਕਰਨਾ ਹੋਵੇ, ਜਾਂ ਮਾਈਕ੍ਰੋਫੋਨ ਦੇ ਗੇਨ ਨੂੰ ਠੀਕ ਕਰਨਾ ਹੋਵੇ, ਤਾਂ ਤੁਸੀਂ alsamixer ਯੂਟਿਲਿਟੀ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਇਸ ਯੂਟਿਲਿਟੀ ਬਾਰੇ ਹੋਰ ਪੜ੍ਹਨ ਲਈ Linux alsamixer ਮੈਨ ਪੇਜ ਵੇਖੋ।

  4. ਜੇ ਤੁਹਾਨੂੰ ਆਵਾਜ਼ ਚਲਾਉਣ ਵਿੱਚ ਗਲਤੀਆਂ ਆਉਂਦੀਆਂ ਹਨ, ਤਾਂ alsa.conf ਫਾਈਲ ਵਿੱਚ defaults.pcm.card ਵਜੋਂ ਸੈਟ ਕੀਤੇ ਕਾਰਡ ਦੀ ਜਾਂਚ ਕਰੋ।


ਅਸਵੀਕਾਰਨਾ:
ਇਹ ਦਸਤਾਵੇਜ਼ AI ਅਨੁਵਾਦ ਸੇਵਾ Co-op Translator ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਿ ਅਸੀਂ ਸਹੀਤਾ ਲਈ ਯਤਨਸ਼ੀਲ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁਣੀਕਤਾਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਮੂਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਇਸਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ।