دستاوردها همراه با آقایان احسان اسماعیلی و شادیار خدایاری

espeak

با سلام خدمت خوانندگان و شنوندگان محترم مجله گفتگو.

در این شماره در بخش دستاورد ها در خدمت دو دوست عزیز هستیم که روی سیستم اندروید کار کرده و آن را برای استفاده ما مناسب سازی کرده اند تا بتوانیم با استفاده از زبان فارسی این سیستم را مورد بهره برداری قرار دهیم.

حالا از آنان می خواهیم تا خود را برای ما معرفی نمایند تا همانگونه که همیشه در سایت های مختلف درباره شان خوانده و شنیده ایم، درباره خود و نوع فعالیتشان به صورت گویا در این مجله اطلاع رسانی نمایند.

اسماعیلی:  با درود فراوان خدمت شما و خوانندگان و شنوندگان مجله گفتگو. احسان اسماعیلی هستم. به اتفاق دوستم آقای شادیار خدایاری روی زبان فارسی برای موتور صوتی  Espeak کار کرده ایم. البته ما در ابتدا استارت کار خود را با این موتور صوتی روی سیستم عامل لینوکس زدیم.

اجازه بدهید اول درباره  Espeak توضیحی بدهم. در این رابطه که اصلاً  Espeak از کجا شروع شد و به کجا قرار است برود.

 Espeak یک موتور صوتی بین المللی و متن باز است. نرم افزارهای open source  یا متن باز به گونه ای هستند که هر کس در هر کجای دنیا در صورتی که دانش برنامه نویسی داشته باشد می تواند به کد های آن دسترسی پیدا کند و در صورت داشتن توانمندی، آن را ویرایش کرده و تغییرات لازم مد نظر خود را روی آن اعمال نماید. این تغییرات به ملاحظه افراد دست اندرکار در پروژه رسیده و در صورت موافقت آنان می تواند در نرم افزار لحاظ گردد.

TTS یک موتور صوتی است که نامش متشکل از حروف عبارت text to speech  بوده و برای فراهم آوردن امکان استفاده افراد نابینا از وسایلی نظیر رایانه گوشی تلفن و … طراحی گردیده است.

در سال 2011 بود که ما زبان فارسی را به Espeak اضافه کردیم. Espeak  موتور صوتی است که روی سیستم عاملهای مختلف کار می کند. شما می توانید آن را هم روی ویندوز، هم روی لینوکس، هم روی مک و هم روی اندروید داشته باشید.

ما به این دلیل کار خود را روی Espeak  شروع کردیم که تمامی موتور های صوتی فارسی خوان تولید شده در شرکت هایی نظیر: پکتوس، رایورز که پارس آوا را تولید نموده و گاتا که تولید کننده ماهور و نرم افزار های دیگر است، به صورت تجاری به افراد نابینا ارائه می شدند. افراد برای تهیه یک حداقل دچار مظیقه بودند. شما حتماً باید هزینه ای را متقبل می شدید تا بتوانید یک متن را بر روی صفحه رایانه خود بخوانید. این در حالیست که افراد بینا بدون هزینه این کار را انجام می دهند. به نظر من داشتن یک TTS رایگان حق افراد نابینا است.

تلاش ما بر این بود که بتوانیم روی سیستم عامل لینوکس که یک سیستم متن باز به سرعت در حال پیشرفت و به روز شدن است نیز از این نرم افزار به منظور دسترسی به محیط های زبان فارسی استفاده نماییم و مشکلی نداشته باشیم.

به این جهت بود که ما وارد کار با Espeak  شدیم و نتیجه کار نیز البته نتیجه بسیار خوش آیندی بود. آن چه ما توانستیم به دست آوریم بسیار فرا تر از این حرف ها بود. زیرا ما توانستیم کاری بکنیم که افراد نابینا بتوانند در تمامی محیط ها و در هر نوع سیستم عاملی به یک نرم افزار فارسی خوان دسترسی داشته باشند. یعنی شما اگر ویندوز داشته باشید، می توانید از این موتور صوتی استفاده نمایید. اگر لینوکس داشته باشید نیز می توانید از آن بهره گیرید. حتی اگر مکینتاش داشته باشید که متعلق به شرکت Apple است هم می توانید این موتور صوتی را مورد استفاده قرار دهید.

تنها محدودیت ما امروز روی سیستم عامل های IOS  است که به گوشی های Iphone  تعلق دارد. این امر نیز به دلیل محدودیت هایی که شرکت  Apple به جهت انحصار طلبی روی سیستم عامل مذکور اعمال نموده رخ داده.

البته شما می توانید Espeak  را روی این سیستم عامل نصب نمایید. اما تنها امکانی که خواهید داشت این است که بتوانید متنی را با گوشی آیفون خود تایپ نموده و کلید خواندن را بزنید تا متن نوشته شده برای شما خوانده شود. فقط همین و همین.

این تنها محدودیتی است که ما تا به حال با آن مواجه شده ایم و با گزارش هایی که به شرکت Apple  داده و مکاتباتی که در آینده با این شرکت خواهیم داشت، امیدواریم در نسخه های بعدی IOS  این محدودیت نیز برداشته شود.

کاری که ما می توانیم بکنیم این است که به عنوان یک کاربر این محدودیت را که در واقع دغدغه مان هم هست، با شرکت Apple  در میان گذاشته و امید داشته باشیم که این محدودیت نیز مانند سایر محدودیت های پیشین موجود در سیستم عامل IOS  که امروزه شاهد برطرف شدنشان هستیم از میان برداشته شوند. برای مثال: پیشتر شما نمی توانستید در گوشی های آیفون کیبورد های مختلفی داشته و کیبورد مورد نظر خود را انتخاب نمایید. در حالی که امروزه این امکان به وجود آمده است.

نوری: جناب آقای خدایاری، شما در ادامه صحبت های آقای اسماعیلی اگر امکان دارد در رابطه با امکان به روز رسانی Espeak  و هماهنگ شدنش با نرم افزار های دیگر برای ما بفرمایید.

خدایاری: من بهتر است این گونه توضیح بدهم که اغلب کاربران Espeak  را در قالب پکیجی با عنوان NVDA  دریافت و از آن استفاده می کنند که یک screen reader  یا صفحه خوان بوده و مسؤولیت کنترل کامپیوتر و تبادل داده را بر عهده دارد. فقط زمانی کهNVDA  متنی را از ویندوز دریافت می کند، آن را توسط Espeak  به صدا تبدیل می نماید. خوب این قرار بوده تنها کار Espeak  هم باشد. ولی متن ها را NVDA تهیه می کند. کاربران دستوراتشان را از طریق NVDA  به ویندوز ابلاغ می نمایند. در نتیجه آنچه که خیلی حایز اهمیت است screen reader  ها یا صفحه خوان ها هستند.

البته به شکلی دیگر نیز می توان از Espeak  استفاده نمود. مثلاً برخی ها آن را روی jaws  یا window eyes  مورد بهره برداری قرار می دهند. این صفحه خوان ها معمولاً می توانند TTS  هایی را که به صورت کپی روی ویندوز قرار گرفته اند شناخته و به آنان متصل شده و برای تبدیل متن به گفتار از آنها کمک بگیرند.

به همین دلیل هم بسیار مهم است که برای این که TTS  ها بتوانند بهتر عمل کنند، screen reader  ها به روز شوند. در واقع TTS ها فقط می توانند در کیفیت خواندن متون مؤثر واقع شوند و برای مثال اصلاً کاری به این که نرم افزاری مانند ادُبیریدِر یا نرم افزار هایی مانند آن به روز شده اند یا نه ندارد. اما اگر تغییرات عمده ای در ویندوز به وجود آید، نسخه های سَپی Espeak  هم مطابقت داده می شوند.

NVDA  موجود در سایت ما فقط لینکی است به صفحه دانلود پروژه NVDA  بین المللی. این پروژه ای است که مدیران و کاربران خود را دارد که از Espeak  در پکیجشان استفاده می کنند. در واقع ما NVDA  را تولید نمی کنیم. بلکه فقط بخشی را که مربوط به خودمان است تولید می کنیم. آنچه هم که به ما مربوط است کار روی زبان فارسی پروژه Espeak  است. این موتور صوتی بیش از 80 زبان را پشتیبانی می کند. تیمهای دیگری مشابه تیم ما هستند که کارشان تولید بخشهای مربوط به زبان های خودشان است. تمامی این زبانها در کنار هم در یک پکیج با عنوانEspeak  قرار گرفته و خود Espeak  نیز در پکیج بزرگتر دیگری با نام NVDA  در اختیار کاربران قرار داده می شود. به همین دلیل کاربران می توانند 70-80 زبان را با screen reader  خود بخوانند.

در ادامه لازم است من یک مطلب را خدمتتان عرض کنم. این که می گویند برنامه ای open source  یا متن باز یا با کد منبع باز است و هر برنامه نویس توانمندی می تواند در هر جای دنیا که باشد تغییرات مورد نظر خود را روی آن اعمال نماید به این معنا نیست که در پروژه های این چنینی هر کس کار خود را انجام می دهد. بلکه چنین پروژه هایی مدیران و دست اندرکاران خاص خود را دارد که اتفاقاً دارای سلسله مراتبی نظیر: مدیران ارشد و مدیران محلی هستند. این مدیران با برنامه نویسان در ارتباط بوده و در رابطه با افزوده شدنها و تغییر در کدها تصمیم گیری می کنند. حتی بعضی وقتها بحثهای مختلفی بین فروع پروژه یا مدیران شکل می گیرد تا تبادل نظر صورت پذیرد. زیرا جهت توسعه یک برنامه خیلی وقت ها با یک تصمیم گیری تغییر می کند.

در نتیجه خود ما هم کد های زبان فارسی را به مدیران بین المللی پروژه ارسال می کنیم و آنها هستند که این کد ها را داخل برنامه تأیید کرده و برنامه را به عنوان یک نسخه جدید منتشر می نمایند. اصول ایجاد نظم و یک برنامه منسجم این مسأله را ایجاب می نماید.

 اسماعیلی: اگر بخواهم توضیحات تکمیلی را ارائه دهم باید بگویم: ما کدهای آنچه را که به زبان فارسی مربوط است می نویسیم و برای اینکه یک پارچگی برنامه حفظ شود آن را برای پروژه مرکزی بین المللی Espeak  ارسال می کنیم و آنها هستند که کد های ما را به همراه کد های سایر زبانها که توسط نویسنده های دیگر نوشته می شوند و تغییرات خاصی که باز بقیه برنامه نویس ها ایجاد می کنند وارد برنامه اصلی می نمایند.

 خدایاری: اصلاً احترام به پروژه چنین ایجاب می کند. در پروژه ای که روی آن در سر تا سر دنیا تیمهای متعددی در کشور های مختلف روی زبان های گوناگون روی آن کار می کنند به انسجام و نظارت یک مدیر ارشد نیاز است تا کد های هر گروه از برنامه نویسان برایش ارسال شود.

اگر قرار باشد هر کس کار خود را کرده و نسخه خود را منتشر نماید، اولاً یک هرج و مرج و بی نظمی در امر تولید برنامه رخ می دهد و ثانیاً برنامه تولید شده از نظر امنیتی با مشکل مواجه خواهد شد.

ببینید! کاربران هر برنامه ای با اعتماد به سالم بودن آن و این که آن برنامه برای سیستمشان ضرر و زیانی نداشته باشد آن را مورد استفاده قرار می دهند. وقتی کاربران برنامه ای را روی مبایل یا کامپیوتر خود نصب می کنند، یک نفر هم در مجموعه تولید کننده آن پاسخگو است. درست است که گفته می شود هیچ مسؤولیتی در رابطه با تبعات نصب یک نرم افزار متن باز بر روی سیستم های کاربران وجود ندارد اما واقعیت این است که این مسؤولیت از نظر اخلاقی وجود دارد که باید متوجه یک شخص باشد. به همین دلیل هم از نظر امنیتی بسیار مهم است که یک برنامه قابل اعتماد باشد.

در حال حاضر روی نسخه های کامپیوتر و اندرویدی Espeak  صد ها برنامه نویس مشغول به کار بوده و هم مدیران محلی و هم مدیران ارشد بر آن نظارت مداوم دارند. برای مثال در ایران خود ما وقتی قرار باشد کدی مخرب، جاسوس و یا آلوده وارد برنامه شود بر آن نظارت می کنیم. به همین دلیل هم هست که می گویم نباید هر کس نسخه خود را تولید کرده و ساز خود را بزند. زیرا کاربران از این رهگذر دچار سر در گمی خواهند شد و این سؤالها برایشان پیش خواهد آمد که آیا نسخه ای که روی فلان سایت قرار گرفته ایمنتر است یا نسخه ای که فلان سایت در دسترس قرارداده است. آیا این نسخه ها شباهتی هم به هم دارند یا نه؟ به همین دلیل باید یک مدیریت واحد بر تولید یک برنامه نظارت داشته باشد.

این مطلب در مورد خودNVDA  نیز صادق است. زیرا این برنامه نیز یک برنامه متن باز به شمار می رود. مدیران محلی و ارشد روی کد ها نظارت داشته در رابطه با آنها تصمیم گیری کرده و آنها را تأیید می کنند و امکان استفاده کاربران از یک برنامه ایمن را به وجود می آورند.

نوری: در ادامه صحبت هایتان برای ما بفرمایید که آیا Espeak  قابلیت نصب بر روی سخت افزار هایی مانند ویکتور ریدر را نیز که می توانند به صورت گویا در اختیار کاربران قرار گیرند دارا هست یا خیر؟

اسماعیلی :ببینید! این که یک برنامه بر روی یک سخت افزار تجاری قابل نصب باشد یا خیر مسأله ایست که تصمیمش با شرکت های تولید کننده آن سخت افزار خواهد بود. زیرا پای یک سخت افزار در میان بوده و شرکت نیز قرار است آن را بفروشد. آنها کاملاً می توانند تصمیم بگیرند که از چه نرم افزاری بر روی محصول تولیدیشان استفاده نمایند. اما NVDA یک نرم افزار تجاری نیست یک برنامه متن باز است.

خیلی طبیعی است که نرم افزار های open source  از یک دیگر استفاده و از هم حمایت می کنند. اگر قرار بود NVDA از یک TTS  دیگر که open source  هم نباشد برای تبدیل متن به گفتار استفاده نماید، باید به ازای هر نسخه ای که از  NVDA فروخته می شد به شرکت تولید کننده آن TTS پولی پرداخت می کرد. خوب NVDA که قرار نبود پولی باشد! پس پولی که شرکت به ازای دانلود هر نسخه باید پرداخت می کرد از کجا باید تأمین می شد؟

حالا پیرامون سؤال شما در رابطه با امکان نصب espeak  روی سخت افزار ها باید بگویم بله. این نرم افزار به دلیل این که بسیار کم حجم است و تنها چند مگابایت حجم دارد، قابلیت نصب بر روی تقریباً تمامی سخت افزار های امروزی که غالباً چند مگابایت یا حتی چندین گیگابایت حافظه دارند را دارا است. آنچه مهم است این است که شرکت ها باید تمایل استفاده از این نرم افزار را بر روی کالای تولیدی خود داشته باشند که متأسفانه این تمایل حتی با وجود رایگان و کم حجم بودن این برنامه در میان مدیران شرکت ها وجود ندارد.

نوری: ممنون از این که وقت گذاشتید. دوستان! حالا اگر هر کدام سخنی در پایان دارید بفرمایید.

شادیار خدایاری: نه ممنونم. عرض خاصی ندارم. متشکرم از این که به گروه برنامه نویسیEspeak  فارسی توجه داشتید و از ما دعوت به عمل آوردید. تنها نکته ای که باید عرض کنم این است که من و احسان نماینده یک گروه برنامه نویسی بزرگتری در ایران هستیم که برای این که وقت شما را نگرفته باشم اسامی تک تکشان را ذکر نکردم. شما می توانید اسامی دوستان را در سایت ببینید. به هر حال کار هایی که انجام می شود و حتی حضور من و احسان به عنوان نمایندگان یک گروه برنامه نویسی بزرگتر است.

نوری: خب آقای اسماعیلی شما اگر سخنی با دوستان گفتگو دارید، بفرمایید.

احسان اسماعیلی: من هم تشکر می کنم از شما به خاطر حسن توجه تان نسبت به گروه برنامه نویسی Espeak  فارسی.

خواهشی که از دوستان عزیزی که از Espeak  استفاده می کنند دارم این است که اگر مشکل خاصی در رابطه با استفاده از این برنامه یا پیشنهاد یا انتقادی درباره آن دارند مطالب خود را از طریق سایت ما به نشانی:  www.Espeak.ir  با ما در میان بگذارند تا در نسخه های بعدی شاهد پیشرفت بیشتر و بهتر این برنامه باشیم.

برای شما و دوستانتان آرزوی موفقیت می کنیم.

دوستان اگر اشکالی در کیفیت مصاحبه بود بر ما ببخشایید. این مصاحبه در محیط اسکایپ ضبط گردیده است.

فریبا نوری

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *