Trong phần này chúng ta sẽ tìm hiểu các dạng âm thanh gốc và nén (trong đó nén mất dữ liệu và không mất dữ liệu)
Trước tiên, ta tìm hiểu về âm thanh gốc cái đã :
1 CD Audio ( định dạng WAV ) được sử dụng chuẩn định dạng PCM (Pulse-Code Modulation)
Trong tin hiệu, Dạng sóng của tín hiệu Analog là dạng SIN, tín hiệu Digital là những những bậc cao thấp khác nhau 1 cách liên tục (kiểu như dạng bậc thang)nó diễn tả gần đúng dạng song SIN .
Âm thanh dạng PCM là chưa bị nén .
PCM có các chuẩn :
+ Tần số lấy mẫu là 44.1KHz
+ Số bít mã hoá của mỗi mẫu : 16bit
Đôi khi có người tự hỏi, tại sao lưu MP3 vào 1 cái CD thì được hẳn hơn trăm bài, mà Burn thành đĩa nhạc chỉ được có trên 1 chục bài . Câu hỏi này cũng đâu kém phần thú vị phải không ? Dạ thưa nó là thế này :
Bây giờ ta thử tính dung lượng 1 file nhạc dạng WAV trong 1 giây là bao nhiêu nhé (Theo công thức điển hình : Dung lượng = Tần số lấy mẫu X Số bít mã hoá của mỗi mẫu) .
Ta phải để ý : 1 bài nhạc có 2 kênh trái và phải .Nên dung lượng phải nhân 2 (bởi vì 2 kênh độc lập mà) và 16 bit = 2 bytes
Ta có : 44100 Hz X 2 kênh X 2 bytes X 1 giây = 176400 bytes = 172.27Kb
Chú ý : 1 Kb = 1024 byte ; 1 Mb = 1024 Kb ; 1Gb = 1024 Mb
Suy ra : 1 phút nhạc WAV có dung luợng = 172.27 X 60s = 10336.2 Kb = 10.1Mb
Đến đây chắc các bạn hiểu tại sao 1 đĩa CD chỉ lưu được khoảng 70 -80 phút không ?
Bởi vì : 1 CD có dung lượng khoảng 700-800Mb , mỗi phút nhạc mất khoảng 10Mb, vị chi lấy 10Mb nhân cho 70 phút có phải bằng 700Mb – đúng là dung lượng chứa của cái đĩa CD không . Hehe, hay nhỉ . À thì ra là thế !!
Qua cách tính ở trên ta cũng có thể suy ra được tốc độ chuẩn của WAV (file gốc) sẽ là : 44100Hz X 2kênh X 16bit = 1411Kbps (phải là thế này nha các bác)
Lossy Compression (nén mất dự liệu)
Tiêu biểu : MP3,WMA,...
Trong thời đại Internet hiện nay thì nhu cầu chia sẻ thông tin, Multimedia ngày càng lớn. Nhưng người ta không thể nào gửi cả album nhạc đến 700Mb qua internet với tốc độ con rùa 56kps của Dial-Up được, hay tốc độ của ADSL cũng không khả thi.
Người ta luôn cố gắng sang tạo ra các định dạng âm thanh khác nhau, sử dụng phương pháp khác nhau nhằm mục đích giảm thiểu dung lượng của file nhạc nhưng vẫn phải giữ được đặc trưng vốn có của file nhạc gốc . Các bạn có thể thấy ngày nay có rất nhiều định dạng file âm nhạc khác nhau như :
MP3, WMA, AAC, MPC, AMR ... Mỗi định dạng âm thanh đó lại sử dụng một thuật toán khác nhau để lấy mẫu, mã hoá và có cách riêng để giữ lại đặc trưng của file nhạc gốc .
Như các bạn đã biết, tai con người có khả năng cảm nhậm những âm thành có tần số nằm trong khoảng 16Hz -20KHz, âm thanhnằm ngoài dải đó coi như vô nghĩa đối với tai người . Chính vì thế mà người ta tìm cách loại bỏ thành phần tần số nằm ngoài dải đó đi, chính vì vậy giúp cho các định dạng âm thanh nén kiểu mất dữ liệu như MP3,WMA tiết kiệm được số lần lấy mẫu cũng như tiết kiệm được rất nhiều số bit để mã hoá các mẫu đó , dẫn đến tiết kiệm được dung lượng .
Song song với quá trình “tiết kiệm ” trên, các định dạng này cũng phải làm sao để bì đắp vào những phần mà nó đã lược bỏ đi, nó tạo ra những âm thanh méo so với âm thanh chuẩn gốc, với âm thanh nén với tốc độ cao thì không roc rệt lắm, nhưng nếu nén với âm thanh có tốc độ thấp thì hiện tượng này rất rõ rệt tạo cho ta cảm giác mất fê . Bạn hãy so sánh tiếng đàn ngựa phi từ 1 CD gốc và từ 1 file MP3 mà xem, tiếng từ CD gốc được diễn tả chi tiết, đầy đủ nên ta có thể nghe rõ từng bước từng bước chạy của đàn ngựa, những vơi 1 file MP3 thì 1 số thành phần âm thanh đã bị giản lược đi nên ta nghe có cảm giác tiếng ngựa nó từ tàng tàng, đều đều nhau, chẳng rõ tiếng chân ngựa phi .
Chắc mọi người cũng biết là chũng ta hay download nhạc MP3 ở cá bit rate như 128kbps, 192kbps, 256kbps, 320kbps . Như vậy nhiều anh em đã cho là bit rate quá cao rồi, nhưng thực ra so với âm thanh CD chuẩn (1411Kbps) thì nó chỉ bằng khoảng 1/9 mà thôi, thế nên dung lượng file MP3 so với WAV cũng chỉ bằng khoang 1/9 -1/10 mà thôi .
Cũng có 1 số trường hợp nén nhạc tốt khiến cho không cảm nhận được sự khác biệt giữa file nén đó và file gốc . Các bạn cũng nên lưu ý rằng, việc sử dụng file nhạc dạng nén như MP3,WMA… chỉ là giải pháp tình thế mà thôi, bởi vì nó có thể áp dụng tốt cho dòng nhạc tân thời như POP, ROCK … nhưng khi áp dụng nó với trường hợp nhạc hoà tấu, nhạc cổ điển thì coi như đồ bỏ đi, lý do vì sao ư, đơn giản là như sau :
Các dong nhạc này thường có những nhạc cụ phát ra loại âm thanh rất trầm (tần số cực thấp) hoặc cực bổng (tần số cực cao), do đó khi nén chúng các âm thanh trong dải tần số cực thấp hoặc cực cao này sẽ bị loại bỏ thế nên coi như 1 phần của dàn nhạc đã bị “gã nén hoá” gạt ra khỏ danh sách, he he he . Vậy thì còn đâu là trọn vẹn nữa phải không các bác .
Âm thanh dạng nén mất dữ liệu nó có ưu và nhược điểm như thế đấy, vậy còn âm thanh nén không mất dữ liệu thì sao ?
Lossless Compression (Nén không mất dữ liệu)
Chắc mọi người chẳng xa lại gì với 2 thằng WINZIP và WINRAR. 2 thằng này giúp ta giảm thiểu dung lượng file đáng kể, nhất là file dạng Office . Nén vào rồi bung ra mà dữ liẹu vẫn nguyên si, hay nhỉ !
Vậy nó làm cách nào, thuật toán của nó là gì ?
Thuật toán củanó thật ra cũng chẳng cao siêu gì, an hem ta có khi cũng nghĩ ra, hihi . Đó là nó tìm ra những đoạn dữ liệu trùng lặp sau đó nó tìm cách hiển thị sao cho càng tiết kiệm được số liệu bao nhiêu càng tốt
Ví dụ lien tưởng thực tế 1 chút, còn trong máy tính nó là các chuỗi số 1,0 cơ: Trích từ đoạn thư tôi tán gái có nội dung như sau :
Anh yêu em, anh cần em, anh muốn em
Đoạn này có cả thảy 3 từ “anh”, mỗi từ có 3 chữ, vị chi mất 9 chữ
Tương tự có 3 từ “em”, mỗi từ có 2 chữ, vị chi mất 6 chữ
nếu giờ thay vì viết chữ “anh” ta chỉ cần thay thế bằng chữ “X”, chữ “em” thay bằng chữ “Y” , từ giờ ta ngầm hiểu cứ chữ X là “anh”, chữ Y là “em”
Suy ra : X yêu Y, X cần Y, X muốn Y
Như vậy ta tiết kiệm được tổng cộng 9 chữ cái đấy .
Qúa trình giải nén ra thì làm ngược lại : X -> anh ; Y -> em
Nén file âm nhạc bằng WINZIP, WINRAR cũng làm theo kiểu như thế, nó tìm ra quy luật của âm thanh rồi nén lại . Nhưng các bạn biết đấy, file âm thanh đâu có nhiều đoạn lặp lại, âm thanh nó rất đa dạng nên khả năng nén là rất thấp, do đó dung lượng sau khi nén chẳng thấp hơn ban đầu là bao, không tin các bạn thử nén 1 file WAV mà xem .
Thuật toàn nén không mất dữ liệu luôn dảm bảo chất lượng ban đầu sau khi giải nén vì nó không lược bỏ đi bất kể cái gì, nó chỉ tìm cách hiển thị dữ liệu khác mà thôi, nhưng khi tái tạo lại thì y như ban đầu.
Còn với kiểu nén mất dữ liệu thì không thể tái tạo lại chất lượng ban đầu, vì 1 phần của file gốc đã bị lược bỏ đi khi nén .
Trước tiên, ta tìm hiểu về âm thanh gốc cái đã :
1 CD Audio ( định dạng WAV ) được sử dụng chuẩn định dạng PCM (Pulse-Code Modulation)
Trong tin hiệu, Dạng sóng của tín hiệu Analog là dạng SIN, tín hiệu Digital là những những bậc cao thấp khác nhau 1 cách liên tục (kiểu như dạng bậc thang)nó diễn tả gần đúng dạng song SIN .
Âm thanh dạng PCM là chưa bị nén .
PCM có các chuẩn :
+ Tần số lấy mẫu là 44.1KHz
+ Số bít mã hoá của mỗi mẫu : 16bit
Đôi khi có người tự hỏi, tại sao lưu MP3 vào 1 cái CD thì được hẳn hơn trăm bài, mà Burn thành đĩa nhạc chỉ được có trên 1 chục bài . Câu hỏi này cũng đâu kém phần thú vị phải không ? Dạ thưa nó là thế này :
Bây giờ ta thử tính dung lượng 1 file nhạc dạng WAV trong 1 giây là bao nhiêu nhé (Theo công thức điển hình : Dung lượng = Tần số lấy mẫu X Số bít mã hoá của mỗi mẫu) .
Ta phải để ý : 1 bài nhạc có 2 kênh trái và phải .Nên dung lượng phải nhân 2 (bởi vì 2 kênh độc lập mà) và 16 bit = 2 bytes
Ta có : 44100 Hz X 2 kênh X 2 bytes X 1 giây = 176400 bytes = 172.27Kb
Chú ý : 1 Kb = 1024 byte ; 1 Mb = 1024 Kb ; 1Gb = 1024 Mb
Suy ra : 1 phút nhạc WAV có dung luợng = 172.27 X 60s = 10336.2 Kb = 10.1Mb
Đến đây chắc các bạn hiểu tại sao 1 đĩa CD chỉ lưu được khoảng 70 -80 phút không ?
Bởi vì : 1 CD có dung lượng khoảng 700-800Mb , mỗi phút nhạc mất khoảng 10Mb, vị chi lấy 10Mb nhân cho 70 phút có phải bằng 700Mb – đúng là dung lượng chứa của cái đĩa CD không . Hehe, hay nhỉ . À thì ra là thế !!
Qua cách tính ở trên ta cũng có thể suy ra được tốc độ chuẩn của WAV (file gốc) sẽ là : 44100Hz X 2kênh X 16bit = 1411Kbps (phải là thế này nha các bác)
Lossy Compression (nén mất dự liệu)
Tiêu biểu : MP3,WMA,...
Trong thời đại Internet hiện nay thì nhu cầu chia sẻ thông tin, Multimedia ngày càng lớn. Nhưng người ta không thể nào gửi cả album nhạc đến 700Mb qua internet với tốc độ con rùa 56kps của Dial-Up được, hay tốc độ của ADSL cũng không khả thi.
Người ta luôn cố gắng sang tạo ra các định dạng âm thanh khác nhau, sử dụng phương pháp khác nhau nhằm mục đích giảm thiểu dung lượng của file nhạc nhưng vẫn phải giữ được đặc trưng vốn có của file nhạc gốc . Các bạn có thể thấy ngày nay có rất nhiều định dạng file âm nhạc khác nhau như :
MP3, WMA, AAC, MPC, AMR ... Mỗi định dạng âm thanh đó lại sử dụng một thuật toán khác nhau để lấy mẫu, mã hoá và có cách riêng để giữ lại đặc trưng của file nhạc gốc .
Như các bạn đã biết, tai con người có khả năng cảm nhậm những âm thành có tần số nằm trong khoảng 16Hz -20KHz, âm thanhnằm ngoài dải đó coi như vô nghĩa đối với tai người . Chính vì thế mà người ta tìm cách loại bỏ thành phần tần số nằm ngoài dải đó đi, chính vì vậy giúp cho các định dạng âm thanh nén kiểu mất dữ liệu như MP3,WMA tiết kiệm được số lần lấy mẫu cũng như tiết kiệm được rất nhiều số bit để mã hoá các mẫu đó , dẫn đến tiết kiệm được dung lượng .
Song song với quá trình “tiết kiệm ” trên, các định dạng này cũng phải làm sao để bì đắp vào những phần mà nó đã lược bỏ đi, nó tạo ra những âm thanh méo so với âm thanh chuẩn gốc, với âm thanh nén với tốc độ cao thì không roc rệt lắm, nhưng nếu nén với âm thanh có tốc độ thấp thì hiện tượng này rất rõ rệt tạo cho ta cảm giác mất fê . Bạn hãy so sánh tiếng đàn ngựa phi từ 1 CD gốc và từ 1 file MP3 mà xem, tiếng từ CD gốc được diễn tả chi tiết, đầy đủ nên ta có thể nghe rõ từng bước từng bước chạy của đàn ngựa, những vơi 1 file MP3 thì 1 số thành phần âm thanh đã bị giản lược đi nên ta nghe có cảm giác tiếng ngựa nó từ tàng tàng, đều đều nhau, chẳng rõ tiếng chân ngựa phi .
Chắc mọi người cũng biết là chũng ta hay download nhạc MP3 ở cá bit rate như 128kbps, 192kbps, 256kbps, 320kbps . Như vậy nhiều anh em đã cho là bit rate quá cao rồi, nhưng thực ra so với âm thanh CD chuẩn (1411Kbps) thì nó chỉ bằng khoảng 1/9 mà thôi, thế nên dung lượng file MP3 so với WAV cũng chỉ bằng khoang 1/9 -1/10 mà thôi .
Cũng có 1 số trường hợp nén nhạc tốt khiến cho không cảm nhận được sự khác biệt giữa file nén đó và file gốc . Các bạn cũng nên lưu ý rằng, việc sử dụng file nhạc dạng nén như MP3,WMA… chỉ là giải pháp tình thế mà thôi, bởi vì nó có thể áp dụng tốt cho dòng nhạc tân thời như POP, ROCK … nhưng khi áp dụng nó với trường hợp nhạc hoà tấu, nhạc cổ điển thì coi như đồ bỏ đi, lý do vì sao ư, đơn giản là như sau :
Các dong nhạc này thường có những nhạc cụ phát ra loại âm thanh rất trầm (tần số cực thấp) hoặc cực bổng (tần số cực cao), do đó khi nén chúng các âm thanh trong dải tần số cực thấp hoặc cực cao này sẽ bị loại bỏ thế nên coi như 1 phần của dàn nhạc đã bị “gã nén hoá” gạt ra khỏ danh sách, he he he . Vậy thì còn đâu là trọn vẹn nữa phải không các bác .
Âm thanh dạng nén mất dữ liệu nó có ưu và nhược điểm như thế đấy, vậy còn âm thanh nén không mất dữ liệu thì sao ?
Lossless Compression (Nén không mất dữ liệu)
Chắc mọi người chẳng xa lại gì với 2 thằng WINZIP và WINRAR. 2 thằng này giúp ta giảm thiểu dung lượng file đáng kể, nhất là file dạng Office . Nén vào rồi bung ra mà dữ liẹu vẫn nguyên si, hay nhỉ !
Vậy nó làm cách nào, thuật toán của nó là gì ?
Thuật toán củanó thật ra cũng chẳng cao siêu gì, an hem ta có khi cũng nghĩ ra, hihi . Đó là nó tìm ra những đoạn dữ liệu trùng lặp sau đó nó tìm cách hiển thị sao cho càng tiết kiệm được số liệu bao nhiêu càng tốt
Ví dụ lien tưởng thực tế 1 chút, còn trong máy tính nó là các chuỗi số 1,0 cơ: Trích từ đoạn thư tôi tán gái có nội dung như sau :
Anh yêu em, anh cần em, anh muốn em
Đoạn này có cả thảy 3 từ “anh”, mỗi từ có 3 chữ, vị chi mất 9 chữ
Tương tự có 3 từ “em”, mỗi từ có 2 chữ, vị chi mất 6 chữ
nếu giờ thay vì viết chữ “anh” ta chỉ cần thay thế bằng chữ “X”, chữ “em” thay bằng chữ “Y” , từ giờ ta ngầm hiểu cứ chữ X là “anh”, chữ Y là “em”
Suy ra : X yêu Y, X cần Y, X muốn Y
Như vậy ta tiết kiệm được tổng cộng 9 chữ cái đấy .
Qúa trình giải nén ra thì làm ngược lại : X -> anh ; Y -> em
Nén file âm nhạc bằng WINZIP, WINRAR cũng làm theo kiểu như thế, nó tìm ra quy luật của âm thanh rồi nén lại . Nhưng các bạn biết đấy, file âm thanh đâu có nhiều đoạn lặp lại, âm thanh nó rất đa dạng nên khả năng nén là rất thấp, do đó dung lượng sau khi nén chẳng thấp hơn ban đầu là bao, không tin các bạn thử nén 1 file WAV mà xem .
Thuật toàn nén không mất dữ liệu luôn dảm bảo chất lượng ban đầu sau khi giải nén vì nó không lược bỏ đi bất kể cái gì, nó chỉ tìm cách hiển thị dữ liệu khác mà thôi, nhưng khi tái tạo lại thì y như ban đầu.
Còn với kiểu nén mất dữ liệu thì không thể tái tạo lại chất lượng ban đầu, vì 1 phần của file gốc đã bị lược bỏ đi khi nén .
Điều này cũng tương tự với truyền hình, video. Đa số thì chúng ta chấp nhận sử dụng các định dạng nén mất dữ liệu, nhất là video, truyền hình (vì dung lượng lớn hơn âm thanh), vì so sánh với chất lượng gần như không đổi mấy (mắt thường khó nhận ra), định dạng nén mất dữ liệu cho dung lượng nhỏ gấp hàng chục lần.