ওএস এক্স-এর 'বলুন' কমান্ড কীভাবে কোনও শব্দ উচ্চারণ করে তা আমি কীভাবে পরিবর্তন করতে পারি?


14

ওএস এক্সের sayকমান্ডটি কিছু কাজের জন্য দরকারী (যেমন স্কাইপ এর 'কোনও পরিচিতি অনলাইনে আসার পরে আমাকে অবহিত করে) তবে এটি কিছু নাম ভুল করে উচ্চারণ করছে। sayকোনও শব্দ আলাদাভাবে উচ্চারণ করতে শেখানোর কোনও উপায় আছে কি ?

উদাহরণস্বরূপ, চেষ্টা করুন:

say "Hi, Joel Spolsky"

'ওল' শোনাচ্ছে 'পুরানো' এর চেয়ে 'বল'। আমি একটি ব্যতিক্রম যুক্ত করতে চাই যাতে নতুন ভাষাগত নিয়ম শেখানোর চেষ্টা না করে "স্পোলস্কিকে এই জাতীয় পছন্দ করুন" বলার অপেক্ষা রাখে। আমি বাজি ধরার একটি উপায় আছে যেহেতু এটি অ্যাপল চাইলে "আইফোন" উচ্চারণ করতে পারে।


আপডেট - কিছু গবেষণার পরে, আমি যা শিখেছি তা এখানে:

  1. পাঠ্য-থেকে-স্পিচটি পাঠ্যটিকে ফোনমেসে পরিণত করার মধ্যে বিভক্ত হয় এবং তারপরে ফোনেমেস একটি ভয়েস ব্যবহার করে অডিওতে পরিণত হয়। ভয়েস পরিবর্তন করা ফোনের উপর প্রভাব ফেলবে না।
  2. স্পিচ সংশ্লেষণ ম্যানেজার জন্য কিছু ফাংশন আছে phonemes পাঠ্য বাঁক , এবং একটি পদ্ধতি একটি বক্তৃতা অভিধান নিবন্ধনের যে নতুন টেক্সট নির্দিষ্ট কোনো ভাষার যে ধ্বনিগুচ্ছকে একই ধ্বনির বিভিন্ন রূপ বলিয়া মনে হয় মানচিত্রগুলি যোগ করা হবে। তবে অ্যাপলের স্পিচ ডিকশনারি অবশ্যই বাইনারি ফর্মের মধ্যে থাকতে হবে - আমি কোনও প্লাস্ট এক্সএমএল পাইনি।
  3. dtraceদৌড়ানোর সময় ব্যবহার করে say, আমি / সিস্টেম / লাইব্রেরি / প্রাইভেটফ্রেমওয়ার্কস / স্পিপডিয়েশনারি.ফ্রেমওয়ার্ক / রিসোর্সগুলিতে কিছু আকর্ষণীয় ফাইল খুলেছি। এটি সম্ভবত স্পিচ ডিকশনারি, তবে সেগুলি হ'মোফোনের ব্যতীত সমস্ত বাইনারি, যা এক্সএমএল। হোমোফোনগুলিতে এন্ট্রি যুক্ত করা কোনও কাজ করে না - এটি সম্ভবত স্পিচ টু-টেক্সটে ব্যবহৃত হয়। এগুলি অ্যাপল দ্বারা স্বাক্ষরিত কোডও রয়েছে - এগুলি পরিবর্তন করা কিছু প্রোগ্রামকে কাজ করা থেকে বিরত করতে পারে।
    • PrefixDictionary
    • CartNames
    • CartLite
    • SymbolDictionary
    • Homophones
  4. আছে উপায় আবেদন ইন্টারফেস উপাদানের টেক্সট সংস্করণ, যাতে VoiceOver কাজ করে, একজন বিকাশকারী বিনামূল্যে জন্য পায় যা অনেকটা যোগ করার জন্য, কিন্তু আছে চতুর বিট । এখানে স্ট্যান্ডার্ডটি প্রয়োজন হিসাবে ফোনেটিক বানানটি ব্যবহার করে বলে মনে হচ্ছে।

আমার অনুমানগুলি হ'ল:

  1. sayস্পিচ সিন্থেসিস ম্যানেজারের উপরে কোডের একটি হালকা স্তর। বিকল্প ফোনমে ম্যাপিংয়ের জন্য অ্যাপল ডেভস-এর পক্ষে একটি স্পিচ ডিকশনারি প্লাস্টের পথে যাওয়ার জন্য একটি কমান্ড লাইন বিকল্প যুক্ত করা সহজ হবে, কিন্তু তারা তা করেনি। আরও ভাল লেখার জন্য এটি একটি কার্যকর ওপেন সোর্স প্রকল্প হতে পারে say
  2. স্কাইপ সম্ভবত স্পিচ সিনথেসিস ম্যানেজারটি সরাসরি ব্যবহার করবে, ফোনেটিকভাবে বানান বাদে আমার বন্ধুর নামগুলি যেভাবে উচ্চারণ করা হয় তা পরিবর্তনের জন্য কোনও হুক ছাড়েনি, যা নির্বোধ।
  3. কমান্ড লাইন সংস্করণ তৈরির সহজতম উপায় sayহ'ল জে রবার্ট কীভাবে পরামর্শ দিয়েছেন।

ডগ হ্যারিসের বানান পরামর্শ ব্যবহার করে এখানে আমার দ্রুত বাস্তবায়ন:

#!/bin/sh
echo $@ | tr '[A-Z]' '[a-z]' |
sed "s/spolsky/spowlsky/g" |
/usr/bin/say

অবশেষে, কিছু মজাদার কমান্ড লাইন স্টাফ:

# Apple is weird
sqlite3 /System/Library/PrivateFrameworks/SpeechDictionary.framework/Resources/Tuples .dump
# Get too much information about what files are being opened
sudo dtrace -n 'syscall::open*:entry { printf("%s %s",execname,copyinstr(arg0)); }'
# Just fun
say -v bad "Joel Spolsky Spolsky Spolsky Spolsky Spolsky, Joel Spolsky Spolsky Spolsky Spolsky Spolsky"
echo "scale=1000; 4*a(1)" | bc -l | say

আপনি কি ভয়েসটি sayব্যবহার করে তা পরিবর্তন করার চেষ্টা করেছেন -v?
শিক্ষার্থী

2
উচ্চারণ কোনো প্রভাব: say -v alex 'Spolsky' ; say -v vicki 'Spolsky'; say -v bad 'Spolsky Spolsky Spolsky Spolsky Spolsky Spols'। ভয়েসগুলির তালিকা সিস্টেমের পছন্দ -> স্পিচ -> পাঠ্য থেকে স্পিচে পাওয়া যাবে। সমস্যাটি ফোনম অনুবাদে, ভয়েস সংশ্লেষণে নয়। আপনি সরাসরি গ্রন্থাগার আহ্বান করা হয়, তাহলে আপনি কাস্টম phonemes সেট করতে পারেন: developer.apple.com/mac/library/documentation/Carbon/Reference/... আমার ডিস্ক খুঁজছেন কিনা দেখতে অ্যাপল devs একটি .plist ব্যবহৃত ...
jwhitlock

উত্তর:


8

ভাল আপনি যে ফোনটি বলতে চান ঠিক তেমন ইনপুটও করতে পারেন। বাক্য গঠন এতটা জটিল নয়।

উদা:

[[PHON inpt]] হাইএইচএইচ।

আরও জানতে এই লিঙ্কটি দেখুন: http://developer.apple.com/library/mac/#docamentation/UserExperience/Concepual/SpeechSynthesisPramrammingGuide/Phonemes/Phonemes.html#//apple_ref/doc/uid/TP40004365-CH9-SW1


1
আপনি ফোনেটিক সিনট্যাক্স তৈরি করতে আমার পরে পুনরাবৃত্তি ব্যবহার করতে পারেন। এটি বিকাশকারী.অ্যাপল . com/ ডাউনলোডগুলি থেকে উপলব্ধ ।
ল্রি

আমার পরে পুনরাবৃত্তি এক্সকোডের সহায়তার সরঞ্জামগুলির একটি অংশ ।
ড্যানিয়েল বেক

1
এটি আমার পক্ষে কাজ করেছে: 'হাই, জোয়েল [[ফোন টি ফোন]] স্পাই স্কাই বলুন' ' আমি ভাবছি যদি ঠিকানা বইয়ের এই প্লাস ফোনেটিক ক্ষেত্রগুলি কৌশলটি সম্পাদন
jwitlock

আপনি কোথায় এই ফোনমেস ইনপুট করবেন?
বুরহান আলী

6
  • শব্দের জোড়গুলির একটি তালিকা তৈরি করুন [স্পলস্কি স্পোলস্কি; জোল জোল; ...]।
  • আপনার পছন্দসই স্ক্রিপ্টিং ভাষায় একটি স্ক্রিপ্ট তৈরি করুন যা আপনার শব্দ-জোড়া তালিকার সাথে তার প্যারামিটার তালিকার শব্দের প্রতিস্থাপন করে এবং পরিবর্তিত প্যারামিটার তালিকাটিকে "/ usr / bin / say" তে পাস করে।
  • স্ক্রিপ্টটি সম্পাদনযোগ্য করুন, এটিকে "বলুন" কল করুন এবং এটি একটি ফোল্ডারে রাখুন যা আপনার "us PATH" এর আগে "/ usr / bin" এর চেয়ে আগে দেখা যায়।
  • আপনি আলাদাভাবে উচ্চারণ করতে চাইছেন এমন আরও শব্দগুলি খুঁজে পেতে আপনার শব্দ-জোড় তালিকায় বানান রূপগুলি যুক্ত করুন।

আপনার নতুন উক্তিটি পুরানো কথার মতো কাজ করবে তবে আপনার পছন্দসই উচ্চারণ সহ।


3

@ ব্রুনো-কারভালহোর উত্তর আমার পক্ষে এই প্রশ্নের উত্তর দিয়েছে। তবে, [[inpt TEXT]]পাঠ্যটিতে (স্পিচ সিনথেজাইজিং) পাঠ্যটিতে ফিরে যেতে বলার কমান্ডটি পাওয়ার জন্য আমার ট্যাগটিও অনুসন্ধান করতে হয়েছিল । উদাহরণ স্বরূপ:
say [[inpt PHON]] hAAIH, [[inpt TEXT]] how are you?

আশা করি, উত্তরে এটি যুক্ত করা এই প্রশ্নের পরবর্তী পাঠকদের সহায়তা করবে।


2

আমি মনে করি না আপনি পারবেন। আপনি সিস্টেমের পছন্দগুলিতে ডিফল্ট ভয়েসকে আলাদা আলাদাতে সেট করতে চেষ্টা করতে পারেন, বা আপনি কীভাবে উচ্চারণ করতে চান তা টাইপ করতে পারেন। উদাহরণস্বরূপ, "হাই, জোল স্পোল আকাশ"।


1
কীভাবে "স্পোলস্কি"?
ডগ হ্যারিস

2

এটি একটি দুর্ভাগ্যজনক সীমাবদ্ধতা হিসাবে দেওয়া হয়েছে যে অ্যাপল বেশিরভাগ রাস্তাতে চলেছে বলে মনে হচ্ছে। ভয়েসওভার ব্যবহারকারীরা ভয়েসওভার ইউটিলিটি (স্পিচ-> উচ্চারণ) ব্যবহার করে সহজেই তাদের নিজস্ব উচ্চারণ সন্নিবেশ করতে পারেন। তবে, ভয়েসওভার সেটিংস সাফারি এবং অ্যাপল-সরবরাহিত অন্যান্য অ্যাপ্লিকেশনগুলিতে "বলুন" কমান্ড বা সম্পাদনা-> স্পিচ -> "স্টার্ট স্পিচ" মেনুতে প্রয়োগ হয় বলে মনে হয় না।


0

sayশব্দগুলি আলাদাভাবে উচ্চারণ করার প্রোগ্রামটিকে 'শেখানোর' কোনও উপায় নেই । উপরে প্রস্তাবিত হিসাবে, আপনি চাইছেন উচ্চারণটি পাওয়ার সহজতম উপায় হ'ল আপনার শব্দের বানানটি আপনার পছন্দ মতো না বলা হওয়া পর্যন্ত সামঞ্জস্য করা।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.