Skip to content
Back to Blog
format-comparisons

MP3, AAC và Opus: So sánh các codec âm thanh hiện đại

2026-05-17 9 min read

Tại sao việc lựa chọn codec lại thực sự quan trọng

Hầu hết mọi người chọn một định dạng âm thanh giống như cách họ chọn phông chữ: cứ lấy cái nào quen thuộc nhất rồi thôi. MP3 đã là mặc định quá lâu đến nỗi người ta dễ nghĩ rằng đó là 'định dạng âm thanh' duy nhất. Nhưng việc bạn chọn codec nào sẽ gây ra những ảnh hưởng thực sự. Kích thước file, độ trung thực của âm thanh ở bitrate thấp, khả năng tương thích với thiết bị, và thậm chí cả chi phí streaming đều thay đổi đáng kể tùy thuộc vào việc bạn chọn MP3, AAC hay Opus. Đây là một ví dụ thực tế. Một bài hát pop dài bốn phút được mã hóa ở 128 kbps dưới dạng MP3 có dung lượng khoảng 3,7 MB. Cùng bài hát đó dưới dạng file AAC ở 128 kbps sẽ nghe trong trẻo hơn đáng kể—ngang ngửa với file MP3 160–192 kbps—trong khi chiếm cùng dung lượng. Mã hóa nó sang Opus chỉ với 96 kbps, và bạn thường nhận được chất lượng âm thanh vượt trội cả hai, với kích thước file chỉ gần 2,8 MB. Những khác biệt này cộng dồn lại rất nhanh, dù bạn đang quản lý hàng nghìn bản nhạc, vận hành một mạng lưới podcast, hay streaming âm thanh qua kết nối di động chập chờn. Bài viết này sẽ phân tích những khác biệt thực tế giữa ba codec này. Chúng ta sẽ khám phá thế mạnh của từng loại và cung cấp cho bạn các cài đặt cụ thể để sử dụng khi chuyển đổi. Mục tiêu không phải là để tôn vinh một codec duy nhất, vì không có cái nào là tốt nhất toàn diện. Mục tiêu là cung cấp cho bạn kiến thức để đưa ra lựa chọn sáng suốt cho dự án của mình.

MP3: Codec nhất quyết không chịu 'về hưu'

MP3 (MPEG-1 Audio Layer III) được chuẩn hóa vào năm 1993 và đã thống trị thế giới vào cuối những năm 90. Bằng sáng chế của nó cuối cùng đã hết hạn vào năm 2017, khiến nó hoàn toàn miễn phí sử dụng. Sự tự do đó, kết hợp với ba thập kỷ hỗ trợ phần cứng và phần mềm, là lý do tại sao MP3 vẫn là một phần không thể thiếu của âm thanh kỹ thuật số. Về mặt kỹ thuật, MP3 dựa trên một mô hình tâm âm học để loại bỏ những thông tin âm thanh mà tai bạn ít có khả năng nhận ra nhất. Điều này bao gồm các âm thanh bị che lấp bởi những âm thanh lớn hơn, các tần số rất cao trên ~16 kHz, và một số chi tiết âm thanh nhất thời. Ở các mức bitrate cao (256–320 kbps), kết quả nghe có vẻ hoàn hảo đối với hầu hết mọi người trên hầu hết các thiết bị. Nhưng khi xuống 128 kbps, bạn bắt đầu nghe ra vấn đề. Một khi bạn nhận thấy tiếng dội trước (pre-echo) ở tiếng trống hay kết cấu hơi 'xoáy' ở tiếng chũm chọe, bạn không thể 'bỏ nghe' nó được nữa. Để mã hóa, chỉ cần sử dụng Variable Bit Rate (VBR). Nó gần như luôn mang lại chất lượng tốt hơn Constant Bit Rate (CBR) với cùng kích thước file. Preset V0 của bộ mã hóa LAME (trung bình 220–260 kbps) là đủ trong suốt để nghe thẩm âm. V2 (trung bình 170–210 kbps) là một sự cân bằng tuyệt vời giữa chất lượng và kích thước cho việc sử dụng hàng ngày. Thời điểm duy nhất để sử dụng CBR là cho các phần cứng cũ kỹ yêu cầu nó, như dàn âm thanh xe hơi đời cũ hoặc một số thiết bị theo dõi thể dục. Trong trường hợp đó, 192 kbps là một lựa chọn an toàn. Vậy MP3 yếu ở điểm nào? Chế độ 'joint stereo' của nó có thể làm suy giảm hình ảnh âm thanh nổi ở bitrate thấp, và chất lượng tụt dốc không phanh khi xuống dưới 128 kbps so với các codec hiện đại. Nó cũng thiếu hỗ trợ gốc cho việc phát nhạc liền mạch (gapless playback), một nỗi bực mình thường trực cho bất kỳ ai nghe album live hoặc các bản mix của DJ.

AAC: Người kế nhiệm được kỳ vọng và đã phần lớn thành công

Được phát triển như là người kế nhiệm chính thức của MP3, AAC (Advanced Audio Coding) đã được chuẩn hóa vào năm 1997. Nó có thể đã chìm trong quên lãng nếu không có một cú hích lớn: quyết định của Apple sử dụng nó cho iTunes Store vào năm 2003. Động thái đó đã mang lại cho nó chỗ đứng cần thiết trong thị trường đại chúng. Ngày nay, AAC là tiêu chuẩn cho Apple Music, âm thanh YouTube và hầu hết các kênh phát thanh kỹ thuật số. Các kỹ sư đằng sau AAC đã thực hiện một số nâng cấp thông minh so với MP3. Codec này hỗ trợ tới 48 kênh âm thanh (MP3 thực tế chỉ giới hạn ở stereo), sử dụng một bộ lọc hiệu quả hơn, và xử lý thông tin stereo thông minh hơn nhiều ở các mức bitrate thấp. Bằng chứng nằm ở việc lắng nghe: trong các bài kiểm tra mù (blind test) do các cộng đồng như Hydrogenaudio thực hiện, AAC ở 128 kbps luôn cho âm thanh tốt hơn và gần với bản gốc hơn MP3 ở cùng bitrate. AAC không phải là một giải pháp duy nhất; nó có nhiều cấu hình (profile). AAC-LC (Low Complexity) là lựa chọn chủ lực cho âm nhạc và âm thanh nói chung, được cả iTunes và YouTube sử dụng. Đối với các bitrate rất thấp (32–64 kbps), HE-AAC (High Efficiency) sử dụng một thủ thuật thông minh gọi là Spectral Band Replication để tái tạo các tần số cao, làm cho nó rất phù hợp để streaming giọng nói hoặc radio. HE-AAC v2 còn đi xa hơn một bước với Parametric Stereo, nén ra chất lượng giọng nói có thể dùng được ở mức 24–32 kbps ấn tượng. Đối với âm nhạc của riêng bạn, AAC-LC ở 256 kbps (tiêu chuẩn của Apple) gần như không thể phân biệt được với định dạng lossless trên các thiết bị tiêu dùng. Đối với podcast, 96–128 kbps mono là một mục tiêu tuyệt vời. Nhưng gót chân Achilles của AAC là vấn đề bản quyền. Nó vẫn còn vướng bận bằng sáng chế, đó là lý do tại sao một số bản phân phối Linux mã nguồn mở không bao gồm nó theo mặc định và tại sao các nhà phát triển của một số hệ thống nhúng chỉ đơn giản là bỏ qua nó để tránh các vấn đề pháp lý.

Opus: Thành tựu kỹ thuật đáng kinh ngạc nhưng ít được nhắc đến

Opus là một codec mở, miễn phí bản quyền được IETF chuẩn hóa vào năm 2012 (RFC 6716). Được phát triển bởi những người ở Xiph.Org và Mozilla, nó kết hợp một cách thông minh hai công nghệ khác nhau: SILK cho giọng nói (từ Skype) và CELT cho âm nhạc. Kết quả là một cỗ máy lai mạnh mẽ. Nó có thể mở rộng từ giọng nói dải hẹp trong như pha lê ở 6 kbps cho đến âm nhạc stereo độ trung thực cao ở 510 kbps, tất cả trong khi duy trì độ trễ thuật toán cực thấp (chỉ 2,5 ms). Chất lượng trên mỗi bit thật đáng kinh ngạc. Trong các bài kiểm tra nghe chính thức, Opus ở 96 kbps luôn ngang bằng hoặc vượt trội AAC-LC ở 128 kbps đối với âm nhạc. Ở 64 kbps, Opus thậm chí còn cạnh tranh với AAC 96 kbps. Đây không phải là những khác biệt nhỏ nhặt, mang tính lý thuyết. Đối với bất kỳ ai phải trả tiền cho băng thông hoặc lưu trữ ở quy mô lớn, đó là những khoản tiết kiệm khổng lồ. Vậy tại sao Opus không có mặt ở khắp mọi nơi? Một từ: tương thích. Không có hỗ trợ gốc trên iOS nếu không có thư viện của bên thứ ba, và nó không được hỗ trợ trên Android trước phiên bản 5.0. Hầu hết các máy nghe nhạc chuyên dụng—từ máy nghe nhạc hi-fi di động đến dàn âm thanh xe hơi và TV thông minh—đơn giản là sẽ không phát được file Opus. Điều đó làm cho nó trở thành một lựa chọn mặc định đầy rủi ro nếu bạn đang phân phối âm thanh đến các thiết bị không xác định. Nhưng đối với việc xử lý phía máy chủ, phân phối trên web, hoặc bất kỳ quy trình nội bộ nào mà bạn kiểm soát môi trường phát lại? Thẳng thắn mà nói, bạn nên dùng Opus. Đó là công cụ tốt nhất cho công việc ở các mức bitrate từ thấp đến trung bình.

Đối đầu trực diện: Chất lượng, Bitrate và Kích thước File

Hãy bỏ qua những lời quảng cáo mơ hồ và xem xét những con số thực tế từ các bài kiểm tra nghe và benchmark bộ mã hóa đã được công bố. Các số liệu sau đây sử dụng các bộ mã hóa tham chiếu: LAME 3.100 cho MP3, bộ mã hóa AAC của Apple, và libopus cho Opus, tất cả đều với nhạc stereo thông thường. Ở mức rất thấp 64 kbps stereo, MP3 là một mớ hỗn độn các lỗi âm thanh có thể nghe thấy như tiếng vang kim loại và tiếng bộ gõ bị nhòe. AAC-LC chỉ ở mức chấp nhận được để nghe thông thường. Ở đây, Opus là nhà vô địch không thể tranh cãi, với hầu hết người nghe đánh giá nó tốt ngang một file MP3 96 kbps. Lên đến 128 kbps stereo, bức tranh thay đổi. MP3 trở nên khá ổn nhưng không trong suốt (transparent). AAC-LC đạt rất gần đến độ trong suốt đối với hầu hết các loại nhạc. Tuy nhiên, Opus thực sự trong suốt đối với đại đa số người nghe và thể loại nhạc. Một khi bạn đạt đến 192 kbps, sự khác biệt giữa cả ba trở nên chỉ còn mang tính lý thuyết trên các thiết bị tiêu dùng thông thường. Về kích thước file cho một tệp âm thanh 60 phút: một file MP3 128 kbps khoảng 55 MB. Một file AAC-LC 128 kbps có cùng kích thước nhưng nghe hay hơn. Một file Opus ở 96 kbps cung cấp chất lượng cảm nhận tương tự file AAC 128 kbps nhưng chỉ có dung lượng ~41 MB. Đối với giọng nói, khoảng cách còn rộng hơn. HE-AAC ở 48 kbps mono tạo ra chất lượng giọng nói podcast ổn định. Opus có thể mang lại kết quả tương đương hoặc tốt hơn chỉ với 32 kbps mono. Với một cuốn sách nói dài 10 giờ, đó là sự khác biệt giữa 216 MB và 144 MB—giảm 33% mà không hề giảm chất lượng. Một quy tắc cuối cùng, không thể thương lượng: chuyển mã giữa các định dạng lossy là công thức cho một thảm họa. Chuyển đổi một file MP3 sang AAC hoặc Opus không thể phục hồi thông tin đã bị bộ mã hóa MP3 loại bỏ. Bất cứ ai từng được giao một file MP3 96kbps méo mó và được yêu cầu 'làm cho nó nghe hay lên' đều hiểu rõ nỗi đau này. Luôn luôn, luôn luôn bắt đầu từ một nguồn lossless như WAV, FLAC, hoặc AIFF khi chất lượng là ưu tiên hàng đầu.

Nên chọn Codec nào cho từng trường hợp cụ thể

Codec phù hợp hoàn toàn phụ thuộc vào đối tượng phân phối của bạn, chứ không phải vào codec nào đạt điểm cao nhất trong các bài kiểm tra lý thuyết. Đây là cách để lựa chọn. Khi bạn phân phối nhạc cho người dùng cuối cho thư viện riêng của họ (hãy nghĩ đến các bản download từ Bandcamp, bộ sưu tập cá nhân, USB cho xe hơi), hãy dùng MP3. Một file VBR chất lượng cao (LAME V0) hoặc CBR 320 kbps là lựa chọn tốt nhất của bạn. Khi bạn không thể kiểm soát thiết bị phát lại, khả năng tương thích phổ quát sẽ quan trọng hơn những lợi ích nhỏ về chất lượng của các codec khác. Đối với podcast và nội dung nói, AAC-LC mono ở 96 kbps là lựa chọn tối ưu. Đây là một lựa chọn tương thích rộng rãi mà các nền tảng lớn như Apple Podcasts, Spotify và Pocket Casts xử lý hoàn hảo. Nếu khán giả của bạn chủ yếu là người dùng Apple, AAC là lựa chọn gốc và phát rất mượt mà. Nếu bạn đang streaming âm thanh trên web hoặc trong trình duyệt, Opus trong một container WebM là người chiến thắng rõ ràng về mặt kỹ thuật ở bất kỳ bitrate nào dưới 160 kbps. Chỉ cần đảm bảo kết hợp nó với một phương án dự phòng AAC hoặc MP3 cho người dùng Safari trên iOS cũ nếu phân tích của bạn cho thấy họ chiếm một phần đáng kể trong lượng khán giả của bạn. Khi nói đến việc lưu trữ âm thanh, câu trả lời rất đơn giản: đừng bao giờ dùng định dạng lossy. Lưu trữ các bản gốc (master) của bạn dưới dạng file FLAC hoặc WAV, sau đó mã hóa sang định dạng phân phối khi cần. Bạn có thể sử dụng CocoConvert để chuyển đổi từ FLAC sang MP3, FLAC sang AAC, và FLAC sang Opus để tạo ra các file phân phối này từ các bản gốc lossless của bạn. Đối với giao tiếp bằng giọng nói và âm thanh thời gian thực, câu trả lời là Opus. Chấm hết. Độ trễ thấp và hiệu quả đáng kinh ngạc ở các bitrate giọng nói (6–32 kbps) chính là lý do tại sao mọi ứng dụng VoIP lớn từ Discord đến WhatsApp đều sử dụng nó. MP3 và AAC đơn giản là không được tạo ra cho mục đích này. Trong thế giới tài sản âm thanh của trò chơi điện tử, AAC là một lựa chọn phổ biến trong cả quy trình làm việc của Unity và Unreal Engine. Opus cũng đang dần phổ biến hơn, với sự hỗ trợ gốc trong Unity 2019.3 trở lên. MP3 sẽ hoạt động, nhưng nó không mang lại lợi thế thực sự nào so với AAC trong một game engine hiện đại.

Chuyển đổi định dạng với CocoConvert

Sẵn sàng chuyển đổi chưa? CocoConvert xử lý MP3, AAC (trong container M4A), và Opus (trong OGG hoặc WebM) với các cài đặt bitrate có thể cấu hình đầy đủ. Chuyển đổi một file FLAC sang AAC rất đơn giản. Tải file nguồn của bạn lên, chọn M4A làm đầu ra và chọn bitrate. Đối với âm nhạc, 256 kbps AAC-LC là một lựa chọn mặc định tuyệt vời. Đối với giọng nói, 96 kbps mono sẽ giảm kích thước file đi một nửa mà không làm giảm chất lượng giọng nói một cách đáng kể. CocoConvert sử dụng cấu hình AAC-LC tiêu chuẩn, với HE-AAC có sẵn cho các bitrate dưới 80 kbps. Đối với Opus, bạn sẽ chọn OGG Opus hoặc WebM Opus làm đầu ra. Chúng tôi khuyên dùng bitrate 96 kbps cho âm nhạc hoặc 32–48 kbps cho giọng nói. Việc mã hóa của chúng tôi được xử lý bởi libopus, phiên bản tham chiếu, đảm bảo chất lượng tương đương với những gì bạn nhận được từ các công cụ dòng lệnh. Và đối với MP3 kinh điển, hãy chọn định dạng của bạn và sau đó chọn giữa VBR và CBR. Chúng tôi đặc biệt khuyên dùng VBR ở mức chất lượng V2 (trung bình khoảng 190 kbps) thay vì CBR 192 kbps cố định. Bạn sẽ nhận được chất lượng tương đương với kích thước file trung bình nhỏ hơn một chút. Hãy nói thẳng thắn về một vài hạn chế. CocoConvert hiện không hỗ trợ mã hóa âm thanh vòm đa kênh. Chuyển đổi hàng loạt là một tính năng dành cho tài khoản Pro; người dùng miễn phí bị giới hạn một file mỗi lần. Đối với các file rất lớn (trên 500 MB), kết nối chậm có thể khiến việc tải lên bị hết thời gian, vì vậy chia nhỏ file âm thanh trước là một giải pháp thay thế hiệu quả. CocoConvert cũng không thực hiện chuẩn hóa âm thanh hoặc nhắm mục tiêu độ lớn (LUFS). Nếu bạn cần điều đó, bạn sẽ phải xử lý âm thanh của mình qua một công cụ như FFmpeg hoặc Auphonic trước hoặc sau khi chuyển đổi. Công cụ đề xuất định dạng trong giao diện của chúng tôi mặc định là MP3 để có khả năng tương thích tối đa, nhưng bảng cài đặt cho phép bạn toàn quyền kiểm soát. Không có câu trả lời đúng duy nhất, nhưng những con số và trường hợp sử dụng trong bài viết này sẽ giúp bạn đưa ra quyết định đúng đắn cho quy trình làm việc của mình.