Technology

ไฟล์เพลง Lossy และ Lossless คืออะไร ทำไมมันต้องแยกกันให้วุ่นวาย

By Arnon Puitrakul - 24 พฤษภาคม 2021

ไฟล์เพลง Lossy และ Lossless คืออะไร ทำไมมันต้องแยกกันให้วุ่นวาย

เมื่อไม่กี่วันก่อน Apple ประกาศว่าใน Apple Music เอง ก็จะรองรับไฟล์เพลงแบบ Lossless แล้ว ที่สำคัญ ไม่เพิ่มราคาด้วย เมื่อเทียบกับ Platform อื่น ๆ อย่าง Tidal ที่ราคาต่อเดือนแพงกว่า แต่ก็ได้ไฟล์ Lossless เหมือนกัน หลาย ๆ คนอาจจะ งง ว่า แล้วไฟล์แบบ Lossy และ Lossless คืออะไร มันต่างกันยังไง วันนี้เรามาหาคำตอบกัน

ทำความเข้าใจกับเสียง

ก่อนที่เราจะไปเข้าใจว่า การทำงานของ Lossy และ Lossless มันคืออะไร เรามาทำความเข้าใจเรื่องของ เสียง กันก่อน ถ้าเราเรียนในฟิสิกส์มา เราจะรู้ว่า เสียง มันก็คือคลื่นนั่นเอง โดยที่มันก็จะเข้าไปสั่นในกระดูกในหูของเรา ทำให้เราได้ยินเสียง เหมือนที่เราได้ยินนั่นเอง เมื่อเราเอา ความถี่ และ เวลามา Plot เราก็จะเห็นเป็น Graph เหมือนที่เราน่าจะเคยเห็นในโปรแกรมสำหรับทำงานกับไฟล์เสียงนั่นเอง

แต่มนุษย์เราก็มีข้อจำกัดในเรื่องของการฟังเสียงอยู่เช่นกันคือ มนุษย์เราจะได้ยินเสียงที่แค่ 20 Hz จนไปถึง 20 kHz เท่านั้น ทำให้ ไม่ว่าเราจะอัดเสียงที่อยู่นอกความถี่ที่เราได้ยินมาเท่าไหร่ เอามาฟัง เราก็จะไม่ได้ยินแน่นอน

ในการอัดเสียงเข้ามา สมัยก่อน เราก็จะใช้ในระบบ Analog เลย ตัวอย่างเช่นแผ่นเสียง ที่เราจะใช้หลักการของการใช้หัวเพชร สร้างร่องในแผ่นไวนิล ขึ้นลงซ้ายขวา เพื่อแทนการเก็บความถี่ของเสียงนั่นเอง ทำให้ การเก็บข้อมูลแบบนี้ มันสามารถเก็บได้ทุกความถี่เลยจริง ๆ แต่ปัญหามันคือการ Copy ที่ทำได้ยากมาก ๆ ไหนจะเรื่องการดูแลรักษาอีก ที่ฝุ่นเข้าไปตามร่องได้ ก็ทำให้เสียงเปลี่ยนไปอีก ไม่ค่อยน่ารักเท่าไหร่

พอมาในยุคที่ระบบ Digital เฟื่องฟูแล้ว เสียง จากเดิมที่เราอัด และ Distribute แบบ Analog ก็เปลี่ยนผ่านมาสู่ระบบ Digital นั่นเอง จนตอนนี้ น้อยมาก ๆ แล้วนะ ที่เราจะฟังเพลงในแบบ Analog ยกเว้น เราไปฟังดนตรีสด ซึ่งพวกนั้นเสียงจากเครื่องดนตรี เข้าหูเราเต็ม ๆ ได้ทุกย่านแน่นอน

Analog vs Digital System

อ่านมาถึงตรงนี้ อาจจะ งง ว่าแล้วคำว่า Analog และ Digtial มันต่างกันยังไง ถ้าทำความเข้าใจง่าย ๆ คือ ระบบ Analog เป็นข้อมูลสัญญาณแบบต่อเนื่อง ถ้าเราลองเอามา Plot เป็นกราฟดู เราจะเห็นว่า มันเป็นเส้นต่อเนื่องกันตลอดทั้งข้อมูล ตัวอย่างของการใช้ระบบ Analog ก็คือ พวกแผ่นเสียง หรือเสียงสัญญาณในโทรศัพท์ ล้วนเป็นระบบ Analog ทั้งนั้น

แต่กลับกันระบบ Digital เราแทนข้อมูลสัญญาณด้วยค่า จำนวนสองค่าด้วยกัน คือ 0 และ 1 แทนค่าไปเรื่อย ๆ เทียบง่าย ๆ ให้เห็นภาพก็คือ การปิด และ เปิด อุปกรณ์สร้างสัญญาณนั่นเอง ถ้าเราต้องการจะส่ง 1 ไป เราก็อาจจะเป็นการเปิดเครื่องสร้างสัญญาณ แล้วพอจะส่ง 0 เราก็ปิดมันในช่วงเวลานิด ทำให้กราฟที่ออกมา เป็นลักษณะเหมือนด้านบนนั่นเอง

ปัญหาของระบบ Analog คือ ด้วยความที่สัญญาณในทุก ๆ ช่วงมีเวลา มีความหมายเหมือนกันหมด ดังนั้น โอกาสที่มันจะโดนรบกวนนั้นเป็นไปได้ง่ายมาก ๆ เหมือนกับเวลาเราดูทีวีสมัยก่อนเลย ตอนสัญญาณดี ๆ มันก็จะภาพชัดโอเคเลย แต่พอเริ่มมีคลื่นรบกวนหน่อย มันก็จะเจออาการซ่า ๆ เห็นภาพบ้าง ไม่เห็นบ้างนั่นเอง

แต่แน่นอนว่า เราสามารถแปลงทั้ง 2 ระบบนี้กลับไปกลับมาได้อยู่เหมือนกัน อุปกรณ์นึงที่นักฟังเพลงน่าจะเคยได้ยินก็คือ DAC (Digital-to-Analog Converter) ตามชื่อเลย ก็คือ เป็นอุปกรณ์ที่แปลงข้อมูลจากระบบ Digital เป็น Analog นั่นเอง กลับกัน ก็จะมี ADC (Analog-to-Digital Converter) เช่นกัน

การแปลงเสียงจาก Analog สู่ Digital

เคยสังเกตมั้ยว่า ทำไมเสียงที่เราฟังจากไฟล์ต่าง ๆ ทำไมมันไม่เหมือนกับเสียงเวลาเราไปฟังดนตรีสด สาเหตุส่วนหนึ่งมันเป็นเพราะ ขั้นตอนการแปลงเสียงจากระบบ Analog เป็น Digital นั่นเอง ซึ่งขั้นตอน เราก็จะเริ่มจาก เรามีสัญญาณที่เป็นแบบ Analog มา ทีนี้ สิ่งที่เราต้องการคือ เราต้องการเก็บข้อมูลที่ต่อเนื่อง ด้วยวิธีที่ไม่ต่อเนื่อง ถ้าเราคิดเร็ว ๆ เราควรจะทำยังไงดี

วิธีคือ เราจะตัดเลือกเป็นช่วง ๆ เวลาไป เช่นใน 1 วินาทีเราอาจจะซอยออกมาสัก 100 ชิ้น แปลว่า ส่วนที่เหลือ ที่ไม่ได้เลือกมา เท่ากับว่า ข้อมูลส่วนนั้น ก็จะหายไปเป็น Loss Data ใน Process นั่นเอง โดยที่เราเรียกว่า Sampling Rate นั่นเอง เราอาจจะเคยได้ยินในยิน เช่นไฟล์เพลง 44.1 kHz จากไฟล์ MP3 หรือก็คือ ใน 1 วินาที จะมีการเลือกมา 44,100 ชิ้นนั่นเอง

เพื่อลด Data Loss จากการซอยช่วงเวลาให้น้อยเราลง เราจำเป็นที่จะต้องใช้ Sampling Rate ที่มากขึ้น เช่นพวกเสียงแบบความละเอียดสูงที่เขานิยามว่า มันจะต้องมากกว่า 44.1 kHz เช่น 192 kHz หรือก็คือ 192,000 ชิ้นใน 1 วินาที ซึ่งมากกว่าไฟล์เสียงที่ใช้ Samping Rate 44.1 kHz ถึง 4 เท่ากว่า ๆ เลย ทำให้เสียงที่เราได้มันสมบูรณ์ขึ้นนั่นเอง แน่นอนว่า การที่เราใช้ Sampling Rate สูงขึ้น หมายถึงขนาดของไฟล์ที่ใหญ่ขึ้นด้วยเช่นกัน

อีกแกนที่ต้องเลือกคือแกน Y หรือก็คือความถี่นั่นเอง จริง ๆ มันก็เหมือนกับ เราเก็บข้อมูลทั่ว ๆ ไปในคอมพิวเตอร์เลย ถ้ามันเป็นตัวเลข เช่น 30 เราก็สามารถแทนมันให้เป็นเลขฐาน 2 ได้ 11110 นั่นเอง หรือก็คือ เราจะต้องใช้ 5 Bits ในการเก็บนั่นเอง ซึ่ง 5 Bits นี้ ถ้าเราใช้เต็มหมด หรือก็คือ 11111 เราจะเก็บได้ทั้งหมด 2 ยกกำลัง 5 แบบ ด้วยกัน ซึ่งจำนวน Bit พวกนี้ เราจะเรียกว่า Bit Depth

กลับไปที่เรื่องของความถี่แปลว่า ถ้าเรายิ่งใช้จำนวน Bit เยอะขึ้นเรื่อย ๆ แปลว่า เราจะซอยแกน Y ได้มากขึ้นเรื่อย ๆ ด้วยเช่นกัน ทำให้ไฟล์เสียงที่ได้มีความละเอียดมากขึ้นนั่นเอง เช่นในไฟล์ MP3 เราก็จะเก็บอยู่ที่ 16 Bits แต่ในไฟล์ที่บอกว่าเป็น Hi-Res หรือความละเอียดสูง อาจจะเก็บอยู่ที่ 24 Bits หรือมากกว่านั้นอีก

ดังนั้นเวลาเราคุยกันว่า ไฟล์เสียงนี้ ความละเอียดเท่าไหร่ เราจะคุยกันด้วยค่า 2 ตัวคือ Sampling Rate และ Bit Depth นั่นเอง หรืออีกค่า คือ Bitrate

Bitrate ความหมายของมันก็ตามชื่อเลยคือ จำนวน Bit ต่อหน่วยเวลา ซึ่งหน่วยเวลาที่เราคุยกันคือ kbps หรือ 1000 Bit ต่อ วินาที (kb/s) การคำนวณง่าย ๆ ก็คือ เราก็เอา Bit Depth คูณด้วย Sampling Rate และคูณด้วยจำนวน Channel

จำนวน Channel ก็จะมาจากว่า เสียงของเราเป็นไฟล์แบบ Mono, Stereo หรือมากกว่านั้น ถ้าเป็น Mono ก็คือช่องเดียว คูณ 1 ไป หรือถ้าเป็น Stereo เราก็จับคูณ 2 เพราะมี 2 ช่องสัญญาณ เราก็จะได้ออกมาเป็น Bitrate นั่นเอง

จาก Bitrate ก็ทำให้เราสามารถคำนวณออกมาเป็นขนาดของไฟล์ได้เช่นกัน เช่น เพลงนี้อาจจะความยาวประมาณ 4 นาที หรือ 240 วินาที และเราเลือกใช้ Sampling Rate 44.1 kHz พร้อมกับ Bit Depth อีก 16 Bits เป็นไฟล์ Stereo

เมื่อคำนวณ Bitrate ออกมา มันก็จะอยู่ที่ 1,411,200 Bit/s และเราบอกว่า 240 วินาที ก็คูณกันออกมาได้ 388,688,000 Bits แล้วก็คำนวณกลับมาเป็น MB เราก็จะอยู่ที่ประมาณ 41.3 MB

แล้วลองนึกถึงสมัยก่อนดูว่า Internet ความเร็วยังไม่ถึง Mbps ถ้าจะ Stream ก็น่าจะเละอยู่เหมือนกัน ดังนั้น เราต้องทำอะไรบางอย่างเพื่อให้ขนาดมันเล็กลง สิ่งที่เราทำได้ ก็น่าจะเป็นเรื่องของการบีบอัดนั่นเอง ซึ่งไฟล์เสียงที่ไม่ได้รับการบีบอัด เราก็เลยเรียกไฟล์พวกนี้ว่า Uncompressed Audio Format ตัวอย่างเช่น WAV และ AIFF

ในโลกของการบีบอัด เราสามารถแบ่งมันออกมาได้เป็น 2 แบบใหญ่ ๆ ด้วยกันคือ Lossless Compression และ Lossy Compression

Lossless Compression

Lossless Compression เป็นการบีบอัดข้อมูลแบบที่เมื่อเราขยายข้อมูลกลับมา เราก็จะได้ข้อมูลเดิมเหมือนก่อนจะบีบอัดนั่นเอง ในกรณีของไฟล์เสียงก็คือ ทำให้เราได้ไฟล์เดิม ๆ มาเลย แต่ แน่นอนว่า นั่นก็มากับขนาดที่ค่อนข้างใหญ่ แต่ก็ยังเล็กกว่าตัวที่ไม่ได้ผ่านการบีบอัด ตัวอย่างของไฟล์ที่ใช้แบบ Lossless คือ FLAC (Free Lossless Audio Codec) หรือจะเป็น ALAC (Apple Lossless Audio Codec) ที่เป็นของ Apple

Lossy Compression

ส่วน Lossy Compression จะตรงกันข้ามกับ Lossless เลยคือ เป็นการบีบอัด แบบมีการสูญเสียข้อมูลบางอย่างออกไป เพื่อให้ได้ขนาดที่เล็กมาก ๆ ซึ่งแต่ละสกุลไฟล์ มันก็จะใช้วิธีที่แตกต่างกันออกไป ตัวอย่างเช่น MP3 เขาใช้วิธีที่เรียกว่า Perception Coding

หลักการก็คือ มนุษย์เราได้ยินเสียงในช่วงย่านความถี่หนึ่งเท่านั้น ทำให้เสียงที่อยู่บนความถี่ที่สูง หรือต่ำเกินไปกว่าที่มนุษย์จะได้ยิน เราก็น่าจะตัดออกได้ เพราะเราไม่ได้ยินอยู่แล้ว ทำให้ขนาดไฟล์มันเล็กลงได้เยอะมาก ๆ เช่นจาก 33 MB อาจจะเหลือแค่ 3.3 MB เลยก็ได้ ซึ่งเป็นขนาดไฟล์ที่ค่อนข้างเล็กมากพอที่จะ Stream หรือส่งกันไปมาได้ง่ายใน Internet

ทำให้มันเป็นรูปแบบที่นิยมในปัจจุบันสูงมาก ๆ โดยเฉพาะ บน Music Streaming Platform ต่าง ๆ อย่าง Apple Music และ Spotify ที่เลือกใช้ Format อย่าง AAC ในการ Stream กันแล้ว

Hi-Res และ Lossless

หลาย ๆ คนอาจจะถามว่า แล้วการที่เราฟังเพลง Hi-Res มันจำเป็นมั้ย จริง ๆ ก็จำเป็นนะ เพราะ Recording Industry Association of America (RIAA) ได้ระบุไว้ว่า การจะเป็น Hi-Res ต้องมีคุณภาพที่สูงกว่า CD Quality คือ 44.1 kHz/16 Bits พร้อมกับเป็น Lossless ที่ทำให้ทุกย่านความถี่ยังคงอยู่เหมือนที่ Sound Engineer ต้องการ

กลับกัน ถามว่า Lossless จำเป็นต้องเป็น Hi-Res มั้ย คำตอบคือ ไม่เสมอไปนะ สมมุตินะว่า เราเอาไฟล์เพลงที่ผ่านการบีบอัดแบบ Lossy มาแล้ว เช่นไฟล์ MP3 มาแปลงสกุลเป็น Lossless Format อย่าง FLAC สุดท้าย เรามานั่งดู เออ มันก็ดูจะเป็น Lossless เราเลยเรียกไฟล์พวกนี้ว่า Lossless ทิพย์ ดังนั้น เวลาเราจะโหลดไฟล์พวก Lossless มาฟัง ควรหาแหล่งที่น่าเชื่อถือได้ ไม่งั้นจะเจอพวกนี้แหละ ไฟล์ทิพย์

สรุป

ดังนั้น สุดท้ายแล้ว คำว่า Lossy และ Lossless เป็นเรื่องของการบีบอัด เพื่อให้ขนาดของไฟล์เล็กลง เพื่อให้ Stream และขนส่งไฟล์ได้ง่ายขึ้นนั่นเอง ส่วน Hi-Res เป็นลักษณะของไฟล์เสียงที่มีความละเอียดสูง มองภาพง่าย ๆ เหมือนกับเราดูหนังความละเอียด 1080p เป็นความละเอียดปกติ กับ 4K ก็คือไฟล์ความละเอียดสูงเลย แน่นอนว่า เราก็ย่อมอยากจะดูหนังที่ชัดกว่าแน่ ๆ เสียงก็เหมือนกัน แต่ การที่จะใช้งานไฟล์เสียงแบบ Hi-Res ได้เต็ม ๆ ก็ต้องอาศัยทั้งไฟล์เพลง (ที่ ณ วันนี้สามารถ Stream ผ่าน Tidal ได้เลย) และ Hardware ของเราด้วย เช่น DAC และหูฟังของเรา

Read Next...

การเบลอรูปภาพ มันทำได้อย่างไร ทำไมภาพถึงเบลอได้

การเบลอรูปภาพ มันทำได้อย่างไร ทำไมภาพถึงเบลอได้

เคยสงสัยกันมั้ยว่า Filter ที่เราใช้เบลอภาพ ไม่ว่าจะเพื่อความสวยงาม หรืออะไรก็ตาม แท้จริงแล้ว มันทำงานอย่างไร วันนี้เราจะพาไปดูคณิตศาสตร์และเทคนิคเบื้องหลังกันว่า กว่าที่รูปภาพจะถูกเบลอได้ มันเกิดจากอะไร...

AI Watermark กับความรับผิดชอบต่อการใช้ AI

AI Watermark กับความรับผิดชอบต่อการใช้ AI

หลังจากดูงาน Google I/O 2024 ที่ผ่านมา เรามาสะดุดเรื่องของการใส่ Watermark ลงไปใน Content ที่ Generate จาก AI วันนี้เราจะมาเล่าให้อ่านกันว่า วิธีการทำ Watermark ใน Content ทำอย่างไร...

เราจำเป็นต้องใช้ NPU จริง ๆ เหรอ

เราจำเป็นต้องใช้ NPU จริง ๆ เหรอ

ก่อนหน้านี้เราทำ Content เล่าความแตกต่างระหว่าง CPU, GPU และ NPU ทำให้เราเกิดคำถามขึ้นมาว่า เอาเข้าจริง เราจำเป็นต้องมี NPU อยู่ในตลาดจริง ๆ รึเปล่า หรือมันอาจจะเป็นแค่ Hardware ตัวนึงที่เข้ามาแล้วก็จากไปเท่านั้น วันนี้เราจะมาเล่าให้อ่านกัน...

Database 101 : Spreadsheet ไม่ใช่ Database โว้ยยยย

Database 101 : Spreadsheet ไม่ใช่ Database โว้ยยยย

บทความนี้ เราเขียนสำหรับมือใหม่ หรือคนที่ไม่ได้เรียนด้านนี้แต่อยากรู้ละกัน สำหรับวันนี้เรามาพูดถึงคำที่ถ้าเราทำงานกับพวก Developer เขาคุยกันบ่อย ๆ ใช้งานกันเยอะ ๆ อย่าง Database กันว่า มันคืออะไร ทำไมเราต้องใช้ และ เราจะมีตัวเลือกอะไรในการใช้งานบ้าง...