หลักการ การบีบอัดข้อมูล (Data Compression) เป็นกระบวนการลดขนาดไฟล์ด้วย การเข้ารหัสไฟล์ (File Encryption) ใหม่อีกครั้ง เพื่อให้จำนวน "บิต" ที่จำเป็นต้องใช้ในการบันทึกข้อมูลมีจำนวนน้อยลงกว่าไฟล์ต้นฉบับ เพื่อทำให้ไฟล์มีขนาดเล็กลงนั้นเอง ซึ่งหลักการเหล่านี้ ก็ถูกนำไปใช้ใน โปรแกรมบีบอัดไฟล์ (File Compression Software) ชื่อดังหลายๆ ตัวอย่าง โปรแกรม WinZip, โปรแกรม WinRAR, โปรแกรม 7-Zip และโปรแกรมอื่นๆ นั่นเอง
นับตั้งแต่ที่อินเทอร์เน็ตเกิดขึ้นในปี ค.ศ. 1969 (พ.ศ. 2512) ความสัมพันธ์ระหว่าง "ขนาดไฟล์" และ "ความเร็วในการถ่ายโอน" ก็ผูกพันกันมาโดยตลอด ต้องนึกภาพตามด้วยว่าความเร็วของอินเทอร์เน็ตในสมัยนั้นช้ากว่าปัจจุบันมาก ความเร็วของอินเทอร์เน็ตในปี ค.ศ. 1994 (พ.ศ. 2537) เร็วแค่ 0.0028 Mbps เท่านั้น ความล่าช้าในการรับส่งไฟล์จึงกลายเป็นปัญหาที่นักคณิตศาสตร์ทั่วทั้งโลกหาทางแก้ปัญหาดังกล่าวอยู่หลายปี
จนกระทั่งวันหนึ่งในปี ค.ศ. 1984 (พ.ศ. 2527) อัลกอริทึม Lempel-Ziv-Welch (LZW) ได้ถูกคิดค้นขึ้นมา โดย Abraham Lempel, Jacob Ziv และ Terry Welch ชื่อว่า LZW ก็มาจากชื่อย่อของพวกเขาทั้งสามคนนั้นเอง อัลกอริทึมตัวนี้มีศักยภาพในการทำงานสูง ง่ายต่อการนำไปใช้งาน แม้แต่ รูปภาพตระกูล GIF ที่เราใช้งานกันทุกวันนี้ ก็มีการใช้เทคนิค LZW ในการบีบอัดข้อมูลนะ
การบีบอัดข้อมูลมีหลักการทำงานอย่างไร ? คำถามนี้ อาจจะเป็นคำถามที่ดูสั้น แต่ว่าคำตอบนั้นจะยาวววววววววววมาก เพราะถ้าจะอธิบายให้ละเอียดเราต้องลงลึกไปถึงการคำนวณทางคณิตศาสตร์อันสุดแสนจะซับซ้อน ดังนั้นเราจะมาอธิบายแค่เพียงแนวคิดหลักการทำงานที่เป็นพื้นฐานสำคัญของมัน
เรามาเริ่มกันที่การบีบอัดข้อมูลที่เป็น "ตัวหนังสือ" กันก่อน อัลกอริทึมที่นิยมใช้ในการบีบอัดข้อมูลตัวหนังสือมากที่สุด จะมีอยู่สองรูปแบบ คือ อัลกอริทึม "LZ77" และ "Huffman coding" โดยจะใช้สองอัลกอริทึมทำงานร่วมกันเพื่อให้ได้อัตราการบีบอัดที่สูงที่สุด
อัลกอริทึม LZ77 คิดค้นโดย Abraham Lempel และ Jacob Ziv ในปี ค.ศ. 1977 (พ.ศ. 2520) บีบอัดข้อมูลโดยใช้หลักการแทนที่ "คำ" ที่ซ้ำกัน ด้วย "คีย์เวิร์ด" ขนาดเล็ก เพื่อใช้แทนคำนั้น
ข้อมูลต้นฉบับ (ก่อนการเข้ารหัส) : AAABBBBBCCCC
จากข้อมูลข้างต้น หากนับจำนวนอักษรที่ซ้ำกัน จะได้รับค่าออกมาดังต่อไปนี้
และเมื่อเข้ารหัสด้วยคีย์เวิร์ดแล้ว ผลลัพธ์ก็จะออกมาเป็น
ข้อมูลที่ถูกบีบอัดแล้ว (หลังการเข้ารหัส) : A3B5C4
โดยหากมีคีย์เวิร์ดที่ซ้ำกัน ก็จะไม่สร้างคีย์เวิร์ดซ้ำนะครับ แต่จะใช้วิธีลิงก์กลับไปที่หน่วยความจำเดิมแทน ดังโครงสร้างด้านล่างนี้
A [1] [2] [3] B [1] [2] [3] [4] [5] C [1] [2] [3] [4]
|__/__/__/ |__/__/__/__/__/ |__/__/__/__/
ซึ่งในการทำงานจริงวิธีนี้ช่วยลดขนาดไฟล์ไปได้เยอะมากนะครับ ลองดูตัวอย่างไฟล์ด้านล่างนี้ เป็นไฟล์ข้อความที่ผมทดลองสร้างขึ้นมาเพื่อทดสอบโดยเฉพาะ
ไฟล์ต้นฉบับเดิมมีขนาด 492 KB. แต่เมื่อผมทำการบีบอัดไฟล์ ขนาดไฟล์เหลือเพียง 2.54 KB. เท่านั้น ขนาดไฟล์เล็กลงประมาณ 194 เท่า (194x) เลยทีเดียว
ทั้งนี้ ตัวอย่างนี้มันค่อนข้างเรียบง่ายนะครับ เพราะมีคำที่ซ้ำกันอยู่ค่อนข้างเยอะ ซึ่งข้อความในไฟล์จริงจะมีรูปแบบคำที่หลากหลายกว่านี้มาก อย่างไรก็ตาม โดยปกติแล้ว การบีบอัดไฟล์ข้อความ เราก็จะสามารถลดขนาดไฟล์ไปได้ประมาณ 30-40% อยู่ดี
เกร็ดความรู้น่าสนใจ
การบีบอัดไฟล์ทั่วๆ ไปจะมีอยู่ 2 ชนิดหลักๆ ด้วยกันคือ
- Lossless Compression : ไฟล์ที่ถูกบีบอัด สามารถถอดรหัสกลับไปเป็นเหมือนไฟล์ต้นฉบับได้เหมือนเดิมทุกประการ 100% ไม่มีการสูญเสียคุณภาพไฟล์
- Lossy Compression : การบีบอัดที่เมื่อถอดรหัสแล้ว คุณภาพไฟล์ลดต่ำลงกว่าไฟล์ต้นฉบับ
การเข้ารหัสแบบฮัฟแมนนั้นถือเป็นการเข้ารหัสที่ช่วยในการบีบอัดข้อมูลซึ่งไม่ทำให้เกิดการสูญเสียข้อมูลและมีประสิทธิภาพสูง โดยเป็นการเข้ารหัสประเภทเอนโทรปี
เอนโทรปี หรือ Entropy ที่หากใช้ในเรื่องของทฤษฎีข้อมูลจะหมายถึงหน่วยวัดที่บอกถึงความแตกต่างและความเหมือนกันของชุดข้อมูลนั้น ๆ ว่ามีความแตกต่างหรือเหมือนกันมากน้อยแค่ไหน
การเข้ารหัสแบบ Huffman นั้นถูกคิดค้นขึ้นโดย David A. Huffman ในปีพ.ศ.2494 (ค.ศ.1951) และเพื่อนร่วมชั้นเรียนวิชาทฤษฎีข้อมูลที่สถานบันเทคโนโลยีแมสซาชูเซตส์ (MIT) โดยอาจารย์ได้ให้ทางเลือกกับนักเรียนว่าสามารถทำรายงานส่งในชั้นเรียนแทนการสอบปลายภาคได้
ซึ่ง Huffman ก็ตัดสินใจเลือกที่จะทำรายงานส่งในหัวข้อการหารหัสไบนารีที่มีประสิทธิภาพมากที่สุด Huffman เกือบจะถอดใจเลิกทำรายงานชิ้นนี้แล้ว และไปเตรียมอ่านหนังสือสอบแทน แต่สุดท้ายเขาก็เกิดไอเดียที่จะใช้แผนภูมิต้นไม้สองทางแบบเรียงความถี่ (Frequency-Sorted Binary Tree) ขึ้นมาได้ จนเกิดเป็นการเข้ารหัสแบบไบนารี่ที่สามารถนำมาประยุกต์ใช้เพื่อบีบอัดข้อมูลได้อย่างมีประสิทธิภาพ
วิธีการของ Huffman นั้นเริ่มจากการหาค่าความเหมือนและต่างกันของข้อมูลในชุดข้อมูล ๆ หนึ่ง (เอนโทรปี) และนำชุดข้อมูลที่เหมือนกันมารวมกันไว้เพื่อนับจำนวนความถี่ที่เกิดขึ้นของชุดข้อมูลที่เหมือนกันนั้น
ตัวอย่างคำ : ESSENTIAL
คำว่า “ESSENTIAL” จะมีตัวอักษร E อยู่ 2 ตัวอักษร, มีตัวอักษร S อยู่ 2 ตัวอักษร และตัวอักษร N T I A L อยู่อย่างละ 1 ตัวอักษร
หลังจากนั้นก็เริ่มต้นนำชุดข้อมูลที่มีการเกิดขึ้นซ้ำน้อยที่สุด (มีเอนโทรปีสูง) มาจับคู่กันเป็นคู่ ๆ และทำซ้ำไปเรื่อยๆ โดยไล่จับคู่จากชุดข้อมูลที่มีการเกิดซ้ำน้อยที่สุดไปหาชุดข้อมูลที่เกิดซ้ำบ่อยที่สุด (มีเอนโทรปีต่ำ) จนสุดท้ายทำให้ได้แผนภูมิต้นไม้สองทางแบบเรียงความถี่ตามภาพประกอบด้านล่าง
หลังจากนั้นก็ทำการกำหนดให้กิ่งของแต่ละคู่มีค่าเท่ากับ 0 และ 1 อย่างละข้าง เท่านี้เราก็สามารถได้ชุดรหัสไบนารี่สำหรับตัวอักษรที่ช่วยประหยัดพื้นที่ในการจัดเก็บได้ดีขึ้น เช่นตัวอักษร E มีความถี่ใช้บ่อยสุด จะถูกแทนด้วยรหัสไบนารี่แค่สองหลักเท่านั้นคือ E = 01 ส่วนตัวอักษรที่ถูกใช้น้อยที่สุดจะใช้รหัสไบนารี่จำนวนสามและสี่หลักเช่นตัว N = 000 หรือ A =101 เป็นต้น
จากตัวอย่างข้างต้นจะเห็นได้ว่าหากเราเข้ารหัสชุดตัวอักษร ESSENTIAL เป็นรหัสไบนารี่แบบ ASCII ที่มีขนาด 8 บิต ที่ถูกใช้เป็นมาตราฐานการเข้ารหัสทั่วไปจะต้องใช้พื้นที่ในการจัดเก็บเท่ากับ 9 * 8 = 72 บิต แต่หากนำมาเข้ารหัสแบบ HUFFMAN แล้วจะเหลือพื้นที่ที่ใช้ในการจัดเก็บเท่ากับ 26 บิต เท่านั้น
มาลองดูอีกสักตัวอย่าง เป็นการใช้ Huffman Coding กับข้อความ
ตัวอย่างคำ : "A_DEAD_DAD_CEDED_A_BAD_BABE_A_BEADED_ABACA_BED"
ในขั้นตอนที่ 2. ถึง 6. ตัวอักษรจะถูกจัดเรียงตามความถี่ที่เพิ่มขึ้น และสองตัวที่มีค่าความถี่น้อยที่สุดในแต่ละขั้นตอนจะถูกนำมารวมกัน แล้วเพิ่มกลับเข้าไปในรายการข้อมูลอีกครั้งหนึ่ง เพื่อสร้างต้นไม้ขึ้นมา โดยต้นไม้ต้นสุดท้ายในขั้นตอนที่ 6. จะถูกข้ามไปเพื่อใช้เป็นพจนานุกรมสำหรับอ้างอิง และในขั้นตอนที่ 7. และ 8. จะเป็นการเข้ารหัสข้อความ
ภาพจาก https://en.wikipedia.org/wiki/Huffman_coding#Example
การบีบอัดไฟล์ภาพ และวิดีโอ มีหลักการที่แตกต่างออกไปจากการบีบอัดข้อความนะครับ ข้อความเราสามารถบีบอัดแบบ Lossless ได้ แต่รูปภาพ และวิดีโอจะเป็นการบีบอัดแบบ Lossy ที่เราจะสูญเสียคุณไฟล์บางส่วนไป และยิ่งเราเลือกบับอัดมากเท่าไหร่ ก็จะยิ่งสูญเสียคุณภาพไปมากยิ่งขึ้นเท่านั้น
ขอตัวอย่างง่าย ๆ กับไฟล์รูปภาพ ไฟล์ RAW เป็นไฟล์แบบ Lossless บันทึกกี่ครั้ง คุณภาพก็ยังเท่าเดิม แต่ JPEG เป็นไฟล์แบบ Lossy ทุกครั้งที่คุณบันทึกซ้ำไฟล์จะคุณภาพแย่ขึ้นเรื่อย ๆ ลองดูตัวอย่างการบันทึกไฟล์ JPEG ซ้ำ ๆ ได้จากวิดีโอด้านล่างนี้ จะเห็นได้ว่าคุณภาพมันแย่ขึ้นได้มากขนาดไหนอย่างชัดเจน
วิดีโอจากช่อง https://www.youtube.com/channel/UC3p46mKA5eA435Lm7XzSlNg
ประเภทไฟล์ภาพ, วิดีโอ และเสียง ที่เรานิยมใช้งานกันประจำ
ในที่นี้เราขอยกตัวอย่างการบีบอัดไฟล์ภาพของ JPEG ละกัน
ไฟล์ JPEG เป็นรูปแบบตระกูลของไฟล์รูปภาพ ที่มีมาอย่างยาวนาน เปิดตัวครั้งแรกในปี ค.ศ. 1992 (พ.ศ. 2535) พัฒนาโดยกลุ่ม Joint Photographic Experts Group (ย่อได้ว่า JPEG นั่นเอง) ด้วยความสามารถในการบีบอัดไฟล์รูปให้มีขนาดเล็กลงจากเดิมหลายเท่า ทำให้มันได้รับความนิยมสูงมากมาจนถึงปัจจุบัน
การบีบอัดไฟล์ของ JPEG อาศัยประโยชน์จากการรับรู้ของมนุษย์ มันสามารถบีบอัดไฟล์ได้ที่อัตรา 1:10 โดยที่ผู้ชมจะแทบไม่รู้สึกถึงความแตกต่างเลย (ความจริงสามารถบีบอัดเพื่อลดขนาดได้มากกว่านั้นอีก แต่คุณภาพก็จะแย่ตามไปด้วย)
โดยหลักการคร่าวๆ ของไฟล์รูปภาพตระกูล JPEG นี้จะใช้การเฉลี่ยค่าสีจากพิกเซลที่อยู่ใกล้เคียงกัน เพื่อลดปริมาณข้อมูลที่ใช้ในการสร้างภาพ โดยภาพจะถูกซอยแบ่งออกเป็นกลุ่มแบบ 8 x 8 แต่ละกลุ่มก็จะประกอบไปด้วยพิกเซลจำนวน 64 พิกเซล แต่ละพิกเซลก็จะมีการบรรจุค่าสีตั้งแต่ 0-255 (อ่านเรื่องระบบสี ว่าทำไมถึงมีค่าเท่ากับ 255 ได้ที่นี่)
ภาพจาก https://www.dspguide.com/ch27/6.htm
จากนั้นข้อมูลจะถูกลดขนาดโดยใช้ฟังก์ชัน Discrete Cosine Transform (DCT) เข้ามาช่วย ซึ่งการทำแบบนี้จะทำให้ค่าสัมประสิทธิ์ในข้อมูลลดลง แถมยังมีแนวโน้มที่อาจจะลดได้ถึงค่า 0 เป็นจำนวนมาก
ซึ่งสมมติว่าข้อมูลกลายเป็น "0 0 0 0 0 0 0 0 0 0" แล้ว เราก็จะจัดเก็บมันอยู่ในรูปแบบ "10x0" แทนได้ ซึ่งนั่นก็จะลดขนาดไฟล์ลงไปได้อีกเยอะ
ข้อมูลที่ถูกแปลงโดย DCT มาแล้ว ค่าสัมประสิทธิ์ที่ได้ก็จะนำไปอ้างอิงกับ Quantization tables (ตารางข้อมูลเลขจำนวนเต็ม (Integer)) อีกครั้งหนึ่ง
ภาพจาก https://www.robertstocker.co.uk/jpeg/jpeg_new_10.htm
ขั้นตอนทั้งหมดที่เกิดขึ้นก็จะเป็นไปตามกระบวนการดังภาพด้านล่างนี้ครับ
ภาพจาก https://www.edn.com/baseline-jpeg-compression-juggles-image-quality-and-size/
ซึ่งคุณภาพสุดท้ายของภาพที่ได้ก็จะขึ้นอยู่กับอัตราการบีบอัดที่เราเลือกใช้งาน แน่นอนว่ายิ่งบีบอัดสูง ยิ่งไฟล์เล็ก แต่คุณภาพก็จะยิ่งแย่ตามไปด้วย
ภาพจาก https://photography.tutsplus.com/tutorials/save-for-web-better-jpeg-compression-with-adobe-photoshop--cms-23080
การบีบอัดไฟล์วิดีโอจะมีความแตกต่างจากภาพนิ่งอยู่เล็กน้อย คุณอาจจะคิดว่าก็แค่บีบอัดภาพทุกเฟรมก็ได้แล้วนี่นา (วิดีโอที่เราชมเป็นการนำภาพนิ่งมาเรียงต่อกันแล้วสลับสับเปลี่ยนด้วยความรวดเร็วจนตามองไม่ทัน) ความจริงมันก็ใช่แหละ มีการทำแบบนั้นด้วย แต่มันมีการนำเทคนิคที่ดีกว่านั้นเข้ามาใช้งานด้วยเช่นกัน
เทคนิคนี้เรียกว่า "Interframe compression" ที่จะอาศัยการคำนวณความเปลี่ยนแปลงของวิดีโอแต่ละเฟรม และเก็บข้อมูลเฉพาะเฟรมที่ต้องการ ตัวอย่างเช่น ถ้ามีฉากที่การแช่มุมกล้องเดิมทิ้งเอาไว้ มันก็ไม่จำเป็นต้องเก็บข้อมูลเฟรมเหล่านั้นไว้
ภาพจาก https://www.bhphotovideo.com/explora/video/tips-and-solutions/compression-a-basic-understanding
อีกสิ่งหนึ่งที่ส่งผลต่อขนาดของวิดีโอ คือ Bitrate ในวิดีโอ Bitrate คือ ขนาดของข้อมูลที่อนุญาตให้ใช้งานได้ในแต่ละวินาที ซึ่งการกำหนดข้อมูลดังกล่าวจะขึ้นอยู่กับระยะเวลา ความละเอียดของวิดีโอ วิธีเข้ารหัส ฯลฯ
การลดขนาด Bitrate ทำให้วิดีโอมีขนาดเล็กลงได้ก็จริง แต่มันก็ทำให้คุณภาพของวิดีโอแย่ตามไปด้วย ลองดูตัวอย่างเปรียบเทียบได้จากวิดีโอด้านล่างนี้
วิดีโอจาก https://www.youtube.com/channel/UCazm62dK5bpugSPHzLgvtew
อย่างไรก็ตามวิดีโอบน YouTube มันถูกบีบอัดมาแล้วก่อนที่จะสตรีม ถ้าอยากเห็นผลความแตกต่างของ Bitrate ที่มีต่อคุณภาพวิดีโออย่างชัดเจน ลองดาวน์โหลดตัวอย่างวิดีโอเปรียบเทียบมาเปิดดูบนคอมพิวเตอร์ได้ที่ลิงก์ https://jell.yfish.us/ ครับ
การบีบอัดข้อมูลเสียงมีแนวคิดคล้ายคลึงกับการบีบอัดภาพ ในขณะที่ไฟล์ JPEG ลบรายละเอียดภาพที่เรามองไม่เห็นออก แต่การบีบอัดไฟล์เสียงนั้นจะเป็นการ ลบย่านความถี่ที่เราไม่ได้ยินออกไปแทน ทั้งนี้ บางคนบอกว่าได้ยิน แยกออกได้ แต่คนส่วนใหญ่ไม่ได้ยิน ไม่สามารถแยกความแตกต่างได้ ยังไม่ได้คำนึงถึงปัจจัยอื่นที่มีผลต่อคุณภาพเสียงด้วย อย่างเช่น คุณภาพการบันทึกเสียง, เครื่องเล่น, ระบบถอดรหัสไฟล์, หูฟัง, ลำโพง ฯลฯ
ไฟล์เสียงแบบ Lossless มีขนาดที่ค่อนข้างใหญ่ เพลงความ 3:44 นาที แบบ Lossless จะใหญ่ได้ถึง 86 MB ในขณะที่ไฟล์แบบ Lossy จะอยู่ที่ 5-9 MB เท่านั้น ขึ้นอยู่กับ Bitrate ที่เลือกใช้งาน
ภาพจาก https://ledgernote.com/blog/q-and-a/how-does-mp3-compression-work/
ถ้าพูดถึงไฟล์เสียงแบบบีบอัดแล้วล่ะก็ ไฟล์นิยมมากที่สุดก็ต้องยกให้ MP3
หลักการทำงานของ MP3 นั้นคิดค้นขึ้นมาโดยวิเคราะห์จากคุณสมบัติในการที่สมองวิเคราะห์การรับรู้เสียงของมนุษย์ ด้วยจิตสวนศาสตร์ (Psychoacoustics) อย่างเช่น
ภาพจาก https://stuff.dewsoftoverseas.com/bmp3.htm
นอกจากนี้ หูของมนุษย์มีพิสัยการได้ยินเสียงสูงสุดที่ประมาณ 24 kHz และเมื่อเรามีอายุมากขึ้นก็จะเริ่มลดลงเหลือที่ประมาณ 16-18 kHz เท่านั้น ดังนั้น แทนที่เราจะเก็บข้อมูลเสียงทั้งหมดที่เกิดขึ้น MP3 เลือกที่จะตัดข้อมูลเสียงส่วนเกินที่มนุษย์ ไม่ได้ยินออกไปซะเลย ซึ่งเทคนิคนี้ลดขนาดไฟล์ลงได้อย่างมหาศาล
ภาพจาก https://freemp3wmaconverter.com/blog/best-way-to-convert-mp3-to-other-audio-formats/
ขออธิบายเพิ่มเติมในส่วนที่ว่า หากมีเสียงสองเสียงที่เป็นชนิดเดียวกัน เกิดขึ้นพร้อมกัน เราจะได้ยินเสียงที่ดังกว่า และไม่ได้ยินเสียงที่เบากว่า คือ ในกรณีที่เราได้ยินเสียงสองเสียงพร้อมกันภายในมิลลิวินาที (เป็นหนึ่งในพัน ของหน่วยวินาที) มนุษย์จะสามารถได้ยินแค่เพียงเสียงเดียวที่ดังกว่า เนื่องจากสมองไม่สามารถแยกการได้ยินได้ทัน เมื่อในไฟล์เสียงมีเหตุการณ์นี้เกิดขึ้น อัลกิริทึมก็จะตัดข้อมูลเสียงที่เราไม่ได้ยิน (Inaudible Tone) ออกไปเลย หรือลดขนาดข้อมูลให้เล็กลง เพราะยังไงเราก็ไม่ได้ยินเสียงนั้นอยู่ดี
ภาพจาก https://ledgernote.com/blog/q-and-a/how-does-mp3-compression-work/
อีกส่วนที่ MP3 ใช้ในการลดขนาด ก็คือการลดขนาด บิตเรตไฟล์เสียงแบบ Lossless นั้นจะมีบิตเรต (Bitrate) อยู่ที่ระดับ 24 บิต ส่วน MP3 เป็น Lossy จะมี บิตเรตอยู่ที่ 16 บิต ซึ่งแม้จะเป็น Lossy แต่มันก็มากพอที่จะไม่ลดคุณภาพเสียงให้ต่ำลง และการลดบิตเรต นี้ก็ช่วยลดขนาดไฟล์ไปได้ถึง 25%
ยังคงมีอีกเทคนิคที่ MP3 ใช้ในการลดขนาดไฟล์ นั่นคือการลดความถี่ Sample Rates ลง จากเดิมที่สูงสุด 96 kHz ใน MP3 จะอยู่ที่ 44.1 kHz เท่านั้น ที่ช่วยให้ลดขนาดไฟล์ได้อีกประมาณ 50%
Sample rates นั้น เปรียบได้กับ Frame per Second (FPS) ในวิดีโอ แต่อันนี้เป็นเสียงเท่านั้นเอง เกมที่เราเล่นส่วนใหญ่ก็จะอยู่ที่ 60 FPS แต่รู้หรือไม่ว่าภาพยนตร์เกือบทุกเรื่องฉายที่ 24fps เท่านั้น (หนังเรื่อง The Hobbit มีฉายที่ 60 FPS นะ) แต่เราก็ไม่รู้สึกว่ามันแย่ใช่ไหมล่ะ MP3 ก็ทำแบบนั้นแหละกับ Sample Rates
แม้ทุกวันนี้อินเทอร์เน็ตจะเร็วขึ้นกว่าในยุคเริ่มต้นหลายเท่าแล้ว แต่การบีบอัดข้อมูลก็ยังมีความสำคัญและใช้งานกันอย่างแพร่หลายนะ เอาง่ายๆ ว่า การฟังเพลงผ่าน Spotify หรือ YouTube เกิดขึ้นได้เพราะบริการเหล่านี้ใช้การบีบอัดไฟล์เข้ามาช่วยในการสตรีมนี่แหละ
|
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ |