شنبه ۱ دی ۱۴۰۳ |  عضویت / ورود

ساخت دکمه Mute برای پروژه‌های فلش (Mute Button in Adobe Flash)


Tuesday, 2008 September 16   نویسنده: Hamid   تعداد بازدید: 10461 بار  #آموزش Flash‏   امتیاز متوسط: 5

دو قاعده بسیار مهم در قرار دادن صدا بر روی یک پروژه مالتی مدیا وجود دارد:

1- مطمئن شوید که قرار دادن صدا به کیفیت کار شما می‌افزاید نه اینکه باعث آزار مخاطب شود و از کیفیت آن بکاهد! که در بسیاری از مواقع، به خاطر تکراری بودن صدا و یا ناشی بودن طراح در صداگذاری و قطع و وصل صدا در صفحات مختلف، صداگذاری تأثیر منفی بیشتری نسبت به تأثیر مثبتش دارد...

2- اگر قرار شد پروژه شما صدا داشته باشد، سعی کنید صدا، خود به خود شروع نشود. بلکه دکمه‌هایی در صحنه باشد که اگر کاربر خواست، صدا را Play یا Stop کند.

این‌ها را من نمی‌گویم. John Uliman یکی از برترین طراحان پروژه‌های مالتی مدیا که تاتور شرکت Total Training نیز هست می‌گوید.

با این مقدمه، می‌رویم سراغ ساخت دکمه‌ای که صدا را قطع کند.

اما ما سه نوع Mute در فلش داریم.

یک نوع Mute این است که شما بخواهید تمام صداهایی که در حال پخش شدن است Mute شود که البته بهتر است بگوییم Stop شود.

این کار آسان است، کافیست یک دکمه بسازید و به آن این کد را اعمال کنید:

on(release){ 
    
stopAllSounds(); 

اما توجه کنید که این دکمه موقتاً صداهایی که پخش می‌شود را قطع می‌کند. اگر بعد از کلیک روی این دکمه، به فریمی برسید که صدا دارد یا مثلاً دکمه‌ای داشته باشید که صدا داشته باشد، صدایش پخش خواهد شد.

اگر این نوع دکمه کار شما را راه می‌اندازد، می‌توانید یک آموزش ویدئویی کامل از آن، از طریق لینک زیر با حجم 10 مگابایت به صورت مستقیم دانلود کنید:

http://www.totaltraining.com/videos/mov/TMMFP8_Mute.mov

(تاتور این ویدئو، جان اولیمن است.)

2- یک نوع Mute هم داریم که میزان صدای (Volume) مربوط به پروژه فلش شما را صفر می‌کند. این یعنی اینکه با کلیک بر روی این دکمه، همه صداها در هر زمان و در هر فریمی پخش می‌شوند، اما چون ولوم، صفر است،‌ شنیده نمی‌شود. یعنی همان Mute خودمان.

برای استفاده از این نوع Mute، یک دکمه بسازید و این اکشن را به آن بدهید:

on(release){ 
project_sound = new Sound(); 
project_sound.setVolume(0) ;
}

به جای project_sound هر کلمه دیگری می‌توانید بنویسید. (فقط بین حروفش فاصله نباشد)

با دستور setVolume مقدار صدا را به 0 رساندید.

حالا شاید بپرسید چطور صدا را دوباره از حالت Mute در آوریم؟

پارامتر داخل setVolume می‌تواند مقداری بین 0 تا 100 بگیرد. بنابراین می‌توانید یک دکمه هم برای اینکه صدا از حالت Mute در آید بسازید و این کد را به ان تزریق کنید(!)

on(release){ 
project_sound = new Sound(); 
project_sound.setVolume(100) ;
}

(اگر می‌توانید دکمه‌های Toggle (دو حالته) بسازید، می‌شود یک دکمه ساخت که اگر برای بار اول روی آن کلیک شد، صدا قطع شود و شکل دکمه هم عوض شود و آماده برای وصل کردن صدا باشد)

متوجه شدید که می‌توانید با تغییر مقدار 0 تا 100، میزان صدای پروژه در سیستم را تغییر دهید.

http://www.adobe.com/devnet/flash/articles/flv_tutorial_pt2/fig02.jpg

3- یک نوع Mute دیگر هم هست و آن اینکه صدای کل سیستم Mute شود. در Mute قبلی فقط صدای پروژه فلش ما قطع می‌شد.

باید به عرض برسانم بعد از نزدیک دو ساعت جستجو کردن، متوجه شدم که این نوع Mute توسط Flash ساپورت نمی‌شود.

در Help فلش برای اکثر متودهای کلاس Sound آمده است:

Limitations: Supported for use with native Flash sound; not supported for use with device sound.

همانطور که می‌بینید، نمی‌توان صدای قطعه سخت‌افزار پخش صدا (Device) را قطع کرد...

شاید در نسخه 3 از ActionScript این موضوع هم ساپورت شده باشد، نمی‌دانم. اگر چیزی دستگیرم شد، حتماً به این مقاله اضافه می‌کنم.

موفق باشید؛

حمید رضا نیرومند


.

ارسال سؤال یا نظر


1- مطهره هاشمی:
بوسیله: , در: Wednesday, 2009 April 22-کد: 836
آموزش بسیار خوبی بود. خیلی به درد کار من خورد.
از شما متشکرم
در پناه حق شادکام و سرافراز باشید.


2- علي:
بوسیله: , در: Saturday, 2010 July 03-کد: 1813
خوب بود دستت درد نكنه


3- مرتضی محمدی:
بوسیله: , در: Wednesday, 2012 November 14-کد: 5342
خیلی ممنون کار راه انداز بود حداقل برای من
دستت درد کنه


4- lmiracle:
بوسیله: , در: Monday, 2013 November 11-کد: 8485
merci az lotfetoon


5- ستاک:
بوسیله: , در: Saturday, 2013 November 16-کد: 8516
مرسی
خسته نباشید


6- هاشم فغانزاده:
بوسیله: , در: Saturday, 2014 June 21-کد: 10640
بنام خدا
جناب آقای نیرومند
به شما بواسطه نحوه آموزشتان تبریک میگویم
مانند یک معلم حرفه ای تمام جوانب را دیده و برای هر کدام پاسخی مناسب و ساده انتخاب کرده اید.
متشکرم

Tutorials ©