PDA

View Full Version : برنامه خواندن اسم های فارسی ( Text To Speech )



joker_pok
پنج شنبه 24 آذر 1390, 20:29 عصر
میشه تو ویژوال بیسیک برنامه ای نوشت که متن رو به صدا تبدیل کنه مثلا تو تکست نوشته " ویژوال بیسیک " این رو بخونه . ؟ راهنمایی کنید مرسی

IamOverlord
جمعه 25 آذر 1390, 10:39 صبح
بله می شه نوشت،
اول باید یه روش برای نوشتن تلفظ دقیق کلمات درست کنید،
بعد یه Database از تلفظ کلمات متداول درست کنید،
بعد هم باید یه روش برای بهترین حدس برای یه کلمه ی ناشناخته که تو Database نیست پیدا کنید،
همچنین باید از دیگر کلمات جمله بفهمید که این کلمه بهتره چه کلمه ای در نظر گرفته بشه و چه طور تلفظ بشه،
در نهایت هم باید اصل کار رو انجام بدید که خوندن کلمات از روی تلفظ دقیقشون هست.

joker_pok
جمعه 25 آذر 1390, 10:59 صبح
تا حالا همچین برنامه ای نوشته نشده ؟ آخه این توضیحات شما متین اما خوب خود روش رو پیدا می کردم سوال نمی پرسیدم در واقع الگوریتم سختی داره این برنامه اگه بتونیم به کمک بچه های سایت برنامه نویس این پروژه رو درست کنیم خیلی عالی میشه .

IamOverlord
جمعه 25 آذر 1390, 11:29 صبح
همه این مدل برنامه ها یه سری روش های خاص دارن که بینشون مشترکه فقط توی زبان های مختلف یه کوچولو فرق می کنه. مثلا توی فارسی یه کلمه رو هزارجور می شه علامت گذاری کرد ولی توی انگلیسی علامت گذاری در کار نیست.
برای نوشتن Speech To Text باید از شبکه ی عصبی استفاده کرد، برای Text To Speech هم فکر می کنم این روش که گفتم جواب می ده. فقط باید یه مقدار پردازش صدا بلد باشیم، بر عکس Speech To Text که کلا باید پردازش صدا کرد.

joker_pok
جمعه 25 آذر 1390, 12:37 عصر
اره باید یه الگوریتم هوشمند استفاده کنیم که خودش بتونه یکی رو به عنوان بهترین صدا انتخاب کنه اما خوب حالا از کجا شروع کنیم ؟

IamOverlord
جمعه 25 آذر 1390, 12:59 عصر
اول باید فرض رو بر این بذاریم که Database رو داریم و تلفظ کلمات رو هم داریم.
مثلا فرض کن تلفظ ها رو این طوری می نویسیم :
برنامه نویس : barnAmenevis
ویژوال بیسیک : viZvAlbeysik
تشخیص : taSKis
معلّق : moEallaq

فعلا هم کاری به این نداریم که تلفظ بعضی از کلمات تو Database نیست (آخر کار به این جا فکر می کنیم)
حالا باید دنبال یه روش برای تلفظ barnAmenevis ، viZvAlbeysik ، moEallaq یا taSKis باشیم.
مثلا الان این راه به ذهنم می رسه که تلفظ تک تک حروف بی صدا و صدا دار رو به صورت فایل wav ذخیره کنیم، بعد با توجه به تلفظ نوشته شده این ها رو پشت سر هم بچسبونیم.
بعد محل چسبیدنشون رو هم باید نرم کنیم، تا پرش توی صدا احساس نشه.
ضمنا باید از قبل Noise صداهای فایل ها رو بگیریم.
به این دلیل هم گفتم فایل wav که راحت تر می تونیم بازش کنیم و اطلاعات صداش رو به صورت عدد در بیاریم و پردازش کنیم.

Mr'Jamshidy
جمعه 25 آذر 1390, 18:07 عصر
ببین دوست من،

من خیلی وقته میخوام این چیزی که شما الان میخوای درست کنی رو درست کنم، تمام الگوریتمشم برای خودم پیاده سازی کردم (البته تو ذهنم)
ولی متاسفانه با Mic سیستمم مشکل دارم

برای فارسی یک مشکلی هست

کسی که متن رو به برنامه میده باید دقت داشته باشه که حتما کاراکتر های َ ُ ِ و ... رو به برنامه بده تا برنامه بتونه درست تلفظ کنه

-----

سرنخ میدم تا تهش خودت برو

مثلا کلمه سلام چند تا کاراکتر داره؟

نه اشتباه کردی 5 تا کاراکتر داره که به ترتیب میشه س َ ل ا م

خوب حالا این ها رو برای خودت دونه به دونه بدون حروف صدا دار ( ِ ُ َ و ...) تلفض کن

اگر درست فهمیده باشی میتونی برای خودت یک برنامه بنویسی

امیدوارم که متوجه شده باشی چون تا باهات صحبت نکنم نمیتونم حرف رو درست بهت تفهیم کنم

موفق باشید

IamOverlord
جمعه 25 آذر 1390, 18:11 عصر
به خاطره همینه که می گم باید تویه یه DataBase تلفظ ها رو داشته باشیم.

joker_pok
شنبه 26 آذر 1390, 01:12 صبح
خوب کار ضبط صداهاش با من من همه حروف الف بارو از اول هر حرفه با تلفظش ضبط می کنیم این طوری خوبه دیگه اره ؟
این برنامه توسط شرکت پارس خوان نوشته شده اما ما هم چیزی از اونا کم نداریم تیم سایت برنامه نویس اینو درست کنیم .

Mr'Jamshidy
شنبه 26 آذر 1390, 03:04 صبح
من مشکلی ندارم
شما صدا ها رو ضبط کن (ترجیحا با پسوند mid)

منم روش کار میکنم

چیز سختی نیست فقط یک چیزی

صدا ها رو آپلود کردی منم دانلود کردم Play کردم نبینم صدای عمو سیبیلو باشه ها :بامزه:
ترجیحا دوست دارم شب رویا ببینم نه کابوس :لبخند:

IamOverlord
شنبه 26 آذر 1390, 15:19 عصر
به نظرتون پسوند wav باشه بهتر نیست؟

Mr'Jamshidy
شنبه 26 آذر 1390, 19:24 عصر
پسوند wav که خیلی بهتره
کد نویسیش هم راحت تره

اما من گفتم mid چون کم حجم تره و تبادلش راحت تر
شما با هر پسوندی بدی آخرش من تبدیلش میکنم به همون wav

joker_pok
شنبه 26 آذر 1390, 19:51 عصر
باشه من شروع می کنم به ضبط صدا ها فقط واسه اینکه مشکلی پیش نیاد یکبار دیگه بگید چه جوری ضبط کنم ؟ هر حرف الفبا رو با سه بار ضبط کنم ؟

اَ- اِ-اُ ؟

IamOverlord
شنبه 26 آذر 1390, 21:43 عصر
یه کار سخت!
حروف صدا دار رو جدا و کشیده ذخیره کن. اوّل و آخر صداشون رو حذف می کنیم که صدا یکنواخت بشه.
حرو بی صدا رو هم خیلی راحت بگو، بعد ما اصل صدای حرف رو cut می کنیم. یعنی آخر صدا رو حذف می کنیم که مثلا بِ تبدیل به ب خالص بشه.
آخرشم باید موقع چسبوندن این ها به هم، یه پیوستگی نرم بین صداهاشون ایجاد کنیم، که یه پردازش صدای خیلی ساده است.

joker_pok
شنبه 26 آذر 1390, 22:36 عصر
باشه من ضبط می کنم بهتون میدم play کن اپه مشکلی داشت بگو دوباره اصلاح می کنم .

joker_pok
شنبه 26 آذر 1390, 22:39 عصر
ما می توانیم ! این موفقیت از آن ماست به زودی زود

Mr'Jamshidy
یک شنبه 27 آذر 1390, 07:42 صبح
نه دوست من شما اگر بخوای هر کاراکتر رو 3 بار برای هر حرف صدا دار Record کنی کاری جز الکی بالا بردن حجم Database نمیکنی

هر حرف بدون حروف صدا دار و حروف صدا دار بصورت جدا

مثلا تو همون مثال سلام شما سلام رو برای خودت بگو به "ل" که رسیدی کشششششششششش بده حرف رو "ا" رو نگی ها تا متوجه منظور من بشی

حالا هدف من همون تلفظیه که شما الان از این مثال کن از حرف "ل" بدست آوردید

vb6_man
یک شنبه 27 آذر 1390, 09:18 صبح
این راهش نیست
البته رو کاغذ حرف و الگوریتمتون ظاهرا کار می کنه
ولی تو عمل اون جوابی رو که انتظار دارین نمی گیرین

اولا اینکه باید تو ساختن فایل هاتون نهایت دقت رو بکنید
چون حتی مکث در حد صدم ثانیه تو فایل ...
دوم زمان Load شدن این فایل هاست
یعنی شما واسه هر حرف یا صدا باید یه فایل wav رو Load کنید:متعجب:
فکر کردین Speech مایکروسافت اینجوری کار می کنه؟:گیج:

joker_pok
یک شنبه 27 آذر 1390, 10:27 صبح
خوب دوست عزیز ما داریم اینجا با هم کار می کنیم تا بتونیم الگوریتم رو بهینه کنیم و درست و حسابی در بیاریم . همگی باید کمک کنیم.
نظر شما چیه ؟

vb6_man
یک شنبه 27 آذر 1390, 11:48 صبح
من می گم باید تولید کنید صدا رو
نه اینکه بیاید Record کنید بعد Load کنید اونم چی؟ برای هر صدا یک فایل ( این فاجعست )
شما باید اطلاعات کاملی از ساختار و تولید صدا به دست بیارید
همین "سلام" که دوست ما مثال زدن ( Google it رو نمی گما یکی دیگه:بامزه:) شما می خواید صدای "س" رو به صورت صامت Record کنید
بعد جدا گانه صدای " اَ " بعد می خواید این 2 تا رو پشت سر هم Load کنید
به نظر شما با این کار صدای "سَ" تولید می شه؟
خیر
بلکه یه صدای صامت "س"
بعد یه صدای "اَ"

اگه خودت دقت بکنی می بینی قشنگ داری خود "س" رو به حرف صدا دار وصل می کنی و ادامش می دی

پس اصلا این روش که من بخوام فایل درست کنم و اینارو Load کنم رو فراموش کن
شما باید خودت در زمان اجرا صدا رو تولید کنی

فکر کردی این Microsoft SAM یا Amanda یا ... همه آدم هستن؟
همشون تولید می شن و اینکه با تغییراتی تو تولید نوع صدا عوض می شه
این Jamshidy داشت گولت می زد که تو صدای دوست دخترتو Record کنی بدی بهش:قهقهه:

joker_pok
یک شنبه 27 آذر 1390, 16:07 عصر
دوست دخترم عمرا بزارم کسی صداشو بشنوه می خواستم بدم خاله سوسکه بخونه :قهقهه:
خوب خلاصه فکرا رو بزارین رو هم ببینیم چه می کنیم . یه الگوریتم باید براش درست کنیم .

Mr'Jamshidy
یک شنبه 27 آذر 1390, 18:02 عصر
من می گم باید تولید کنید صدا رو
نه اینکه بیاید Record کنید بعد Load کنید اونم چی؟ برای هر صدا یک فایل ( این فاجعست )
شما باید اطلاعات کاملی از ساختار و تولید صدا به دست بیارید
همین "سلام" که دوست ما مثال زدن ( Google it رو نمی گما یکی دیگه:بامزه:) شما می خواید صدای "س" رو به صورت صامت Record کنید
بعد جدا گانه صدای " اَ " بعد می خواید این 2 تا رو پشت سر هم Load کنید
به نظر شما با این کار صدای "سَ" تولید می شه؟
خیر
بلکه یه صدای صامت "س"
بعد یه صدای "اَ"

اگه خودت دقت بکنی می بینی قشنگ داری خود "س" رو به حرف صدا دار وصل می کنی و ادامش می دی

پس اصلا این روش که من بخوام فایل درست کنم و اینارو Load کنم رو فراموش کن
شما باید خودت در زمان اجرا صدا رو تولید کنی

فکر کردی این Microsoft SAM یا Amanda یا ... همه آدم هستن؟
همشون تولید می شن و اینکه با تغییراتی تو تولید نوع صدا عوض می شه
این Jamshidy داشت گولت می زد که تو صدای دوست دخترتو Record کنی بدی بهش:قهقهه:

در یک کلام میگم دهنت سرویس با این پستات
هر کدوم از این پستای شما رو میخونم کلی میخندم

و اما جواب: کی کفته یکی یکی میخوایم Load کنیم؟ در یک کلام همه رو بهم میچسبونیم بعد Load میکنیم

من که مینویسم سلام برنامه میاد صدا های مربوط به اینا رو میپسبونه به هم بعد Play میکنه

بعدشم نسخه آزمایشی رو که واسه خنده نزاشتن شما صدا های مربوط به "س َ ل ا م" رو بده ببینیم چه میشه کرد اگر نشد خوب فدا سرت یک فکر دیگه بر میداریم

joker_pok
یک شنبه 27 آذر 1390, 21:46 عصر
من حرفی ندارم یه کاری بکنیم واسه اینکه صداها دوباره کاری نشه شما یه نمونه ثبت کن به من بده من دقیق مثه اون رو بسازم براتون بفرستم . اینطوری خوبه دادا نه ؟

vb6_man
یک شنبه 27 آذر 1390, 21:58 عصر
باش هر کاری می کنین بکنین
از من گفتن بود
این راهش نیست

تو هم خاله سوسکه رو خسته می کنی آخر گردن میوفته می گه من برنامم رو می خوام حالا بیا بهش ثابت کن که این کار عملی نبود:قهقهه:

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

reza erfani
یک شنبه 27 آذر 1390, 22:27 عصر
سلام
شما عجب آدمایی هستید ها زمان ما همه با احترام و یه ژست مهندسی به هم پاسخ میدادند من اصلا خوشم نمی یومد وقتی هم که میخواستیم یه حرف های اینجوری بزنیم آقای ایکس ایکس ایکس ... میومد و یه کار زرد میداد
این رو واستون پیدا کردم البته به دات نت هست
http://msdn.microsoft.com/en-us/library/ms986944.aspx

و یه توضیحاتی هم اینجا هست
http://travelogue.travelvice.com/peru/text-to-speech-foreign-language/

اینجا هم خوندنش خالی از لطف نیست
http://stackoverflow.com/questions/5405696/text-to-speech-for-arabic-language

Mr'Jamshidy
یک شنبه 27 آذر 1390, 22:31 عصر
من حرفی ندارم یه کاری بکنیم واسه اینکه صداها دوباره کاری نشه شما یه نمونه ثبت کن به من بده من دقیق مثه اون رو بسازم براتون بفرستم . اینطوری خوبه دادا نه ؟

دوست عزیز اگر Mic من کار میکرد و مشکلی نداشت تا الان 1000 با این موردو امتحان میکردم


باش هر کاری می کنین بکنین
از من گفتن بود
این راهش نیست

تو هم خاله سوسکه رو خسته می کنی آخر گردن میوفته می گه من برنامم رو می خوام حالا بیا بهش ثابت کن که این کار عملی نبود:قهقهه:

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

کسی با یک تست که نمیمیره تست میکنیم اگر شد که خدارو شکر اگر نشد دنبال اون موضوعی که شما گفتی میریم

Mr'Jamshidy
یک شنبه 27 آذر 1390, 22:34 عصر
سلام
شما عجب آدمایی هستید ها زمان ما همه با احترام و یه ژست مهندسی به هم پاسخ میدادند من اصلا خوشم نمی یومد وقتی هم که میخواستیم یه حرف های اینجوری بزنیم آقای ایکس ایکس ایکس ... میومد و یه کار زرد میداد
این رو واستون پیدا کردم البته به دات نت هست
http://msdn.microsoft.com/en-us/library/ms986944.aspx

و یه توضیحاتی هم اینجا هست
http://travelogue.travelvice.com/peru/text-to-speech-foreign-language/

اینجا هم خوندنش خالی از لطف نیست
http://stackoverflow.com/questions/5405696/text-to-speech-for-arabic-language

این لینک ها رو من دیدم (اما بررسی نکردم) به درد نمیخوره از Speech های نوشته شده استفاده میکنه

----

شما با 36 تا پست، عضویت تیر 90 چطور از اون موقع ها یادته؟
اما باید بگم آره اون موقع ها لحن همه به قول شما مهندسی بود و با کلاس

اما چه میشه کرد زندگی کردم زندگی برگشت منو !!! اِاِاِاِاِ اشتباه شد ببخشید منظورم این بود که زندگی آدمو عوض میکنه دیگه!

افسوس

reza erfani
یک شنبه 27 آذر 1390, 22:36 عصر
جمشیدی جان من rezadg قبلی هستم اون اکانتم رمزش رو یادم نیست اون ایمیلم هم از بین رفته به خاطر وان با این نام کاربری میام

Mr'Jamshidy
یک شنبه 27 آذر 1390, 22:45 عصر
داداش به Admin بگو برات درستش کنه

اگه Admin نتونه که پس تکلیف یوزر اکانت هایی مثل یکی شما چی میشه؟ هو تو تو؟ پر؟

سنگ مفت گنجشک مفت بزن یا میگیره یا نه

reza erfani
یک شنبه 27 آذر 1390, 23:18 عصر
ای بابا دست رو دلم نزار
یه بار دوتا گرفته بودم به خاطر عید یکیش حذف شد ولی بعد ها ....
کم مونده بود اخراج بشم

IamOverlord
دوشنبه 28 آذر 1390, 03:07 صبح
من می گم باید تولید کنید صدا رو
نه اینکه بیاید Record کنید بعد Load کنید اونم چی؟ برای هر صدا یک فایل ( این فاجعست )
شما باید اطلاعات کاملی از ساختار و تولید صدا به دست بیارید
همین "سلام" که دوست ما مثال زدن ( Google it رو نمی گما یکی دیگه:بامزه:) شما می خواید صدای "س" رو به صورت صامت Record کنید
بعد جدا گانه صدای " اَ " بعد می خواید این 2 تا رو پشت سر هم Load کنید
به نظر شما با این کار صدای "سَ" تولید می شه؟
خیر
بلکه یه صدای صامت "س"
بعد یه صدای "اَ"

اگه خودت دقت بکنی می بینی قشنگ داری خود "س" رو به حرف صدا دار وصل می کنی و ادامش می دی

پس اصلا این روش که من بخوام فایل درست کنم و اینارو Load کنم رو فراموش کن
شما باید خودت در زمان اجرا صدا رو تولید کنی

فکر کردی این Microsoft SAM یا Amanda یا ... همه آدم هستن؟
همشون تولید می شن و اینکه با تغییراتی تو تولید نوع صدا عوض می شه
این Jamshidy داشت گولت می زد که تو صدای دوست دخترتو Record کنی بدی بهش:قهقهه:

اصلا پست های قبلی رو شما خوندی درست؟!
قرار نیست همه ی حروف و صدا ها رو ضبط کنیم بچسبونیم تو ... هم.
وقتی یکی می گه 'آ' در واقع دو تا چیزو با هم می گه : 'ع' و 'آ' ما قراره 'آ' رو جدا کنیم، همین طور برای بقیه ی حروف. بعد Noise رو حذف کنیم و صدا ها رو روون و تر و تمیز کنیم.
وقتی هم می خوایم پخش کنیم فقط نمی چسبونیم کنار هم، نمودار موج رو توی نقاط نزیک به اتصال نرمال می کنیم.

بعدشم بقیه ی Text To Speech ها هم حتی واسه Miscrosoft ، صدای Sample گرفتن، ...خل نیستن که دونه دونه ی صدا ها رو از عالم غیب تولید کنند. فقط فرقش اینه که مثلا مثل ما نیومدن Wav بذارن کنار برنامه و ... .

joker_pok
دوشنبه 28 آذر 1390, 10:08 صبح
بچه ها چرا الکی پست های اسپم میزنین ما اومدین اینجا یه پست زدیم بتونیم کنار هم یه برنامه فارسی حرفه ای بسازیم یکی میگه اینطوری شد اونطوری شد حاشیه نرید با هم کار کنیم به قول جمشیدی تست میزنیم نشد میریم سراغ یه راه دیگه همه اول کار که نمیان برنامه رو سه سوت بسازن . به جای اسپم های الکی فکر کنین ببینین چه جوری باید درست حسابی کار کنیم مرسی از دوستان عزیز

Mr'Jamshidy
پنج شنبه 01 دی 1390, 08:29 صبح
آقا من که بیخیال شما هم شدم

دیروز سر کار بودم داشتم به همین موضوع فکر میکردم

دیدم من Mic سیستمم خرابه Mic گوشیم که سالمه

با گوشی ضبط میکنم یک نمونه که بتونه بگه سلام رو امتحان میکنم میزارم اینجا

joker_pok
شنبه 03 دی 1390, 21:41 عصر
دستت طلا رفیق منم تا جایی که بتونم کمکتون می کنم

m.4.r.m
چهارشنبه 03 خرداد 1391, 12:52 عصر
بعد از چند ماه دوباره این پست رو کشیدم بالا بنده همون ( joker_pok ) هستم . چی شد هیچ خبری از تست و این حرفا ؟ مسدر جمشیدی ؟ کجایی برادر ؟
من یه برنامه پیدا کردم که این کار رو می کنه بدک نیست .
http://ouo.ir/farsi-text-to-speech.html

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

ASedJavad
چهارشنبه 03 خرداد 1391, 17:06 عصر
سلام به همه
دوباره دوستان منو مجبور کردن يه انشاي طولاني بنويسم!:
به نام الله پاسدار حرمت خون شهدا، شهدايي که با خون خود درخت اسلام را آبياري کردند ... موضوع انشا: تابستان خود را چگونه ... ببخشيد ... کلمات فارسي را چگونه بخوانيم ...



من یه برنامه پیدا کردم که این کار رو می کنه بدک نیست .
آره برنامه خوبيه.
لينک اصليش هم اينه: http://parskhan.aftab.cc/
خوبيش اينه که هم اپن سورسه (البته اگه حافظم درست ياري کنه، کدش با c# نوشته شده) هم تو هلپ نرم افزار، توضيحات خوبي راجع به الگوريتمش داده هم ديتابيس خوب و کاملي داره هم اينکه سازندش هرگونه دخل و تصرف در نرم افزار و استفاده از ديتابيسشو مجاز اعلام کرده.
حداقل توصيه مي کنم مستندات نرم افزارشو حتما بخونيد. نکات خوبي گيرتون مياد.
در ضمن فايل صوتي تلفظ تمام حروف با چهار حالت با ساکن، با فتحه، با کسره و با ضمه (دقيقا يادم نيست؛ شايد هم هفت حالت: مثلا سا سو سي سَـ سِـ سُـ سْـ) توش گذاشته شده.
فقط دو تا ايراد اساسي داره. يکي اين که هر کار کني صدا يه جورايي بريده بريده به نظر ميرسه. شايد کاري که آقاي IamOverLord گفتن رو انجام ندادن:

اوّل و آخر صداشون رو حذف می کنیم که صدا یکنواخت بشه ... آخرشم باید موقع چسبوندن این ها به هم، یه پیوستگی نرم بین صداهاشون ایجاد کنیم،

شايد هم به اين خاطر باشه که روششون مثل روش ايشون بوده که :

حروف صدا دار رو جدا و کشیده ذخیره کن.
يعني اينکه مثلا وقتي ميخواي بگي "سَـ" همينجوري بگي؛ به نظر من اينجوري خيلي مصنوعي در مياد و راه درست تر اينه که بياريش تو وسط کلمه. مثلا بگي "عسل" بعد "عَـ" و "ل" رو کات کني و "سَـ"ش بمونه.
البته قبول دارم کار سختيه ولي احتمالا با يخورده صرف وقت شدنيه!


ايراد دومش هم اينه که صداي توليد شده، خيلي خسته کننده است و به قول يکي از بازديد کننده ها تو خواب هم راحتمون نميذاره.
که البته خود سازنده نرم افزار (آقاي محمد رضا نيرومند) به نظرش اومده که دليل اين مشکل، يکنواختي صداست و راه حلشو تو بلند و آروم کردن صداي خروجي دونستن. (به نظر خود من؛ شايد بشه يه بررسي کرد که مثلا هر جمله فرضا با بلندي 100 شروع بشه و همين طور کم بشه تا ته جمله بلنديش بشه فرضا 70 يا يه همچين چيزي)



یه جایی هم خوندم تبدیل متن به صدای فارسی با الگوریتم درخت تصمیم گیری
به نظرم اينا بيشتر الگوريتمه تا برنامه پياده شده.
بد نيست اين جا رو يه نگاه بندازيد:
http://aftab.cc/modules.php?name=News&file=print&sid=1010



این رو واستون پیدا کردم البته به دات نت هست
http://msdn.microsoft.com/en-us/library/ms986944.aspx
و یه توضیحاتی هم اینجا هست
http://travelogue.travelvice.com/peru/text-to-speech-foreign-language/
اینجا هم خوندنش خالی از لطف نیست
http://stackoverflow.com/questions/5405696/text-to-speech-for-arabic-language

من که هميشه از متون انگليسي گريزانم و تا مجبور نشم حس انگليسي خوندنم نمياد. (منظورم اين نيست که انگليسي نميفهمم، پروژه فاينال ليسانسم همه منابعش ژاپني بودن! و انگليسي در برابر اون گلابيه، ولي جه کنم که حسش نيست) اگه کسي اونا رو خونده يه لطفي کنه خلاصش رو برام بگه!



شما اگر بخوای هر کاراکتر رو 3 بار برای هر حرف صدا دار Record کنی کاری جز الکي بالا بردن حجم Database نمیکنی. هر حرف بدون حروف صدا دار و حروف صدا دار بصورت جدا
خيلي هم الکي نيست.
وقتي قراره يه کار کاربردي انجام بشه، پس بهتره به نحو احسن انجام بشه.
تو فارسي (و طبيعتا تو ساير زبونها) وقتي يه حرف (به قول زبان شناسا صامت) به يه صدا (به قول زبان شناسا مصوت) برسه، تا حدود زيادي اين دو تا با هم تداخل مي کنن، يعني خود اون صدا تو نحوه تلفظ اون حرف هم تاثير ميذاره.
شما بيا موقع گفتن "سَبد"، "سُکوت"،" سِه"، "سار"، "سوز"، "سيب" (موقع تلفظ حرف "س" ) لب و لوچه و زبون و دهنت رو بررسي کن ببين تو همه موارد، يه حالت دارن؟
مسلمه که نه .مثلا موقع گفتن "س" در "سبد" دهن کشيده ميشه ولي در "سوز" حسابي غنچه ميشه.
تازه از اين قضيه بيشتر، صداي قبل از حرف رو حرف اثر داره: مثلا نحوه اداي "س" در کلمات "داس" "دوست" "دست" "بيست" "پُست" "فهرست" رو نگاه کنيد: تو هر کدوم لب و لوچه به يه شکل در مياد و طبيعتا صداي توليدي يه جوره. (شايد تو چندتا کلمه اين به چشم نياد ولي وقتي تو يه متن طولاني شما همه "س" ها رو به سبک "سَـ" بخوني، اون موقع مشکل کار نمايان ميشه)



من می گم باید تولید کنید صدا رو ... شما باید اطلاعات کاملی از ساختار و تولید صدا به دست بیارید
جطوري؟ ميشه بيشتر توضيح بديد؟



پسوند wav که خیلی بهتره
کد نویسیش هم راحت تره
شرمنده! مي تونيد راجع به اين قضيه توضيح بديد.
من از بچگي دوست داشتم در مورد صوت و فايلاي صوتي اطلاعاتي بدست بيارم ولي هنوز که نتونستم.
حتي وقتي يه فايل صوتي رو با نرم افزاري مثل ساندفورج يا ... باز ميکنم، از اون نوار قلبايي که اونجا مي بينم، هيچ سر در نميارم.
(شايد آخرش مجبور شم برم ارشد فيزيک آکوستيک بخونم!)
فکر کنم ديگه زنگ خورد. بقيه انشا بمونه برا زنگ انشاي بعدي !
يا به قول اي کيو سان "عجله نکن؛ زنگ تفريحه، زنگ تفريح"

GR_mahdi
پنج شنبه 04 خرداد 1391, 19:01 عصر
با عرض سلام خدمت همه دوستان
من قبلا این برنامه رو نوشتم (شاید هم اولین نفری بودم که نوشتم). اگه درخواست کنین نحوه کارکرد برناممو براتون میذارم.
موفق باشید

m.4.r.m
شنبه 06 خرداد 1391, 12:37 عصر
اره چه اشکالی داره بزار تا بتونیم روش کار کنیم و حرفه ای بسازیمش
ممنون میشم

ASedJavad
پنج شنبه 22 آبان 1393, 09:47 صبح
سلام
میدونم تاپیک خیلی قدیمیه، ولی تو نت دنبال کارای خودم بودم که به این پروژه برخوردم. درسته جاواست ولی چون مرتبط با همین بحثه، گفتم یه اشاره ای بهش بکنم:
(البته پروژه رو کلی بررسی کردم لذا احتمال داره اشتباه توضیح بدم!)
تو این پروژه، اومده کلا ناحیه فک و دهن و زبان وسایر قسمت های مرتبط با حرف زدن رو شبیه سازی کرده با مدل های نسبتا دقیق مکانیکی!
بعد میاد میگه خوب! وقتی ما میخوایم فلان حرف رو بزنیم زبون چه حرکتی میکنه، فک چطور میشه، لبا جمع میشن یا باز میشن و ...بعد همین حرکات رو تو اون شبیه ساز، مدل میکنه و نیروهای ناشی از این حرکت و فرکانش ایجاد شده و .. رو محاسب میکنه و نتیجش میشه صدای خروجی!!!!!!!!

http://www.magic.ubc.ca/artisynth/pmwiki.php?n=VisualVoice.HomePage