اگر تا به حال سعی کرده باشید تا با کسی که فقط میتواند به زبان خارجی صحبت کند ارتباط برقرار کنید، حتماً میدانید که این کار دشوار و سختی است(حتی با کمک سایتهای مترجم مدرن). این پست به شما نشان میدهد که چگونه یک مینی کامپیوتر سی و پنج دلاری را تبدیل به یک مترجم حرفهای با قابلیت فهم صدا تبدیل کنید و حرف هیا خود را به هزاران زبان ترجمه کنید. نکته ی مهم کار ما این است که این کار با یک برد ارزانقیمت و API های رایگان ترجمه و نرمافزار های متن باز انجام خواهیم داد.
حتی اگر از ساخت یک ابزار مترجم لذت نمی برید، چیز های دیگری هستند که احتمالاً از آنها حتماً لذت خواهید برد. مثل استفاده از API سیستم شناسایی صدای گوگل (Google Speech) و API ترجمه مایکروسافت و تبدیل متن به گفتار! سورس همه ی کد هایی که در این پروژه از آن استفاده کردهایم در گیتهاب موجود است و میتوانید در صورت نیاز آن هار را تغییر دهید و استفاده کنید. ساخت یک مترجم جهانی میتواند یک آخر هفته خوب را برایتان بسازد چون در آن از تکنولوژی ها و ابزار های مفید زیادی برای ساخت سریع آن استفاده می شود.
مرحله ی اول: نصب و تنظیم رزبری پای
اگر هنوز یک رزبری پای آماده به کار ندارید راهنمایی که توسط بنیاد رزبری پای تهیه شده را ببینید. لینک
مطمئن شوید که رزبری به اینترنت متصل شده، اگر اتصال اترنت در دسترستان نیست میتوانید از دانگل USB وای فای استفاده کنید تا بتوانید به شبکه مورد نظرتان استفاده کنید.
در ترمینال رزبری خود دستورات زیر را اجرا کنید تا نرمافزار هایش آپدیت شوند:
sudo apt-get update sudo apt-get upgrade
این پروسه ممکن است کمی طول بکشد.
با دستور زیر نرمافزار هایی که در این پروژه نیاز داریم را نصب کنید:
sudo apt-get install python-pip mplayer flac python2.7-dev libcurl4-gnutls-dev sudo pip install requests pycurl
این پروژه با آخرین نسخه رزبین که تا ژوئن ۲۰۱۴ منتشر شده تست شده و ممکن است الآن که این پست را میخوانید به خاطر آپدیت هایی که انجام شده جزئیاتی تغییر کرده باشد.برای اینکه ورژن نرمافزار خود را با چیزی که ما از آن استفاده کردیم مقایسه کنید از دستور زیر استفاه کنید:
pi@raspberrypi ~ $ uname -a Linux raspberrypi 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l GNU/Linux
مرحله دوم: نصب و تنظیم هدست
هدستی با پورت USB تهیه کرده و آن را به رزبری خود وصل کنید.
اجرای دستورات زیر لیستی از دیوایس های صدای رزبری را به شما نشان خواهد داد:
cat /proc/asound/cards cat /proc/asound/moudules
باید بتوانید هدستی که وصل کردهاید را در این لیست ببینید. احتمالاً هدست را به عنوان card 1 و دستور دوم درایور پیشفرض برای card 0 (که خروجی پیشفرض است) را snd_bcm2835 نشان می دهد. درایور برای card 1(هدست ما) snd_usb_audio است. اگر هدست را در لیست نمیبینید سیستم را ریبوت کنید:
sudo reboot
برای اینکه هدست به عنوان ورودی و خروجی پیشفرض صدا در نظر گرفته شود، باید تنظیمات ALSA را کمی تغییر دهید. ابتدا فایل زیر را در ویرایشگر نانو باز کنید:
sudo nano /etc/modprobe.d/alsa-base.conf
خط زیر را پیدا کنید:
options snd-usb-audio index=-2
و آن را به خط زیر تعییر دهید:
options snd-usb-audio index=0
با فشردن کلید های Ctrl + X و سپس y فایل را ذخیره کنید و سپس رزبری را ریبوت کنید:
sudo reboot
پس از ریبوت با زدن دوباره این دستورات خواهید دید که هدست به عنوان card 0 شناخته شده است.
cat /proc/asound/cards cat/proc/asound/moudules
برای تست میتوانید دستور زیر را اجرا کنید تا میکروفون برای پنج ثانیه فعال شود و صدا ها را ضبط کند:
arecord -d 5 -r 48000 make.wav
این دستور هم صدای ضبط شده را پخش می کند:
aplay make.wav
اگر به خاطر کیفیت صدا نگرانید باید بگویم که در مرحله بعدی به این مشکل رسیدگی میکنیم پس نگران نباشید 🙂
برای تنظیم صدا های ورودی و خروجی میتوانید از alsanixer استفاده کنید:
sudo alsamixer
ممنون از مطلب مفیدتان. عالی بود!
با سلام
از توجه شما سپاسگزارم.