Thursday, August 8, 2013

9:25 PM
เรื่องมีอยู่ว่า ถ้าเราจัดการแข่งขันอะไรสักอย่างที่ต้องมีการขานชื่อนักกีฬาจำนวนเยอะๆ ซึ่งสิ่งพวกนี้เราสามารถที่จะเตรียมก่อนได้ โดยให้ computer มันเป็นตัวอ่านสิ่งที่เราต้องการ ซึ่งการอ่านก็มีอยู่ 2 แบบคือให้ computer ตรวจสิ่งที่เราพิมพ์แล้วอ่านเลย ซึ่งบอกได้เลยว่า ภาษาไทย โปรแกรมอ่าน ไม่สมบูรณ์ 100% คือยังไม่เนียนเหมือนคนจริงๆพูดหน่ะ .. แต่อนาคตไม่แน่ แต่ตอนนี้ผมไม่เอาวิธีแรก ก็เลยทำให้ต้องใช้อีกหนึ่งคือ อัดเสียงแยกต่างหาก ต้ดต่อให้เสร็จและเอาเสียงมาต่อกันเพื่อให้ computer มันเล่น file เสียงนี้ (ไม่ใช่อ่านนะ) เสียงที่ได้จะเป็นเสียงคนจริงๆพูด แต่ว่า ไม่เหนื่อยตอนใช้งานแต่จะเหนื่อยตอนเตรียมหน่ะ เพราะต้องบันทึกเสียงนักกีฬาทุกคน รายการแข่งขันทุกประเภท ก็แค่เหนื่อยตอนนี้เท่านั้น เพราะ file ที่บันทึกแล้ว สามารถเอามาใช้ซ้ำได้ ครั้งต่อไป สบายละ ...

เอ้ามาดูวิธีการกัน ผมใช้วิธีการให้ FileMaker ทำหน้าที่ทั้งบันทึกและเล่นเสียง ซึ่งหากจะทำระบบนี้จริงๆ ให้ไปทำการบันทึกเสียงด้วยโปรแกรมอื่นเช่น Audacity แล้วตัดต่อเสียงให้เสร็จค่อยนำมา import เข้าโปรแกรม จะดีที่สุด เนื่องจากเราสามารถตัดเสียงที่ไม่ต้องการ รวมถึงระยะห่างของเสียงพูดระหว่าง file ได้

สิ่งที่จะต้องทำก็ไม่มีอะไรมาก เพราะ filemaker จัดเตรียมให้ไว้อยู่แล้ว ที่ต้องทำก็แค่เปิด field ที่มี field type เป็น container ไว้สำหรับเก็บ file เสียง (ดูตัวอย่างจาก file ที่อยู่ในบทความนี้) จากนั้นก็ทำการบันทึกเสียง โดยทำการเลือกที่ filed นั้นใน browse mode จากนั้นก็เลือกเมนู Insert แล้วเลือก sound ก็ปรากฏ window เล็กๆ สำหรับการบันทึกเสียงขึ้นมา ก็ให้ทำการกดบันทึกเสียงแล้วก็ save file ลง field นั้นโดยตรงได้เลย

ส่วนวิธีที่ดีกว่า ก็คือ หลังจากทำการบันทึกและตัดต่อเสียงจากแหล่งอื่นแล้ว การที่จะนำเอา file เข้ามาก็แค่เลือกเมนู Insert เหมือนกัน แต่เปลี่ยนจาก sound ให้เป็น file ก็เท่านั้นเอง

ส่วนการเล่นนั้น ผมก็ทำ script เพื่อตั้งเงื่อนไขในการเอา file เสียงหลายๆอันมาต่อกัน แล้วเล่นมันทีเดียว วิธีการก็คือสร้าง table เท่าที่ต้องการ จากนั้นเอา key filed หลักไปเรียกเอา file เสียงแต่ละอันมาเล่นต่อกันใน script ก็เท่านี้เองครับ นักกีฬามาเป็นล้านก็ไม่หวั่น ถ้าเตรียมข้อมูลดี ก็มีชัยไปกว่าครึ่งครับ 55555

Download File ตัวอย่างได้ที่ --> http://goo.gl/Xy1DSC

ลองเอาไปประยุกต์ใช้งานกันเองนะครับ ติดขัดตรงไหนก็ถามมาได้ครับผม

บทความอื่นๆ