MP3 הואאלגוריתם פופולרי לקידוד ודחיסה מאבדת נתונים (lossy compression) שלאותות שמע. מטרת האלגוריתם היא לצמצם במידה ניכרת את כמות המידע הנחוצה לייצוג הצליל, אך לאפשר שיחזור שישמע נאמן למקור לרוב המאזינים. המונח MP3 מתייחס גם לקובציקול אומוזיקה השמורים בפורמט זה[1].
שמירת אותות קוליים (אודיו) בצורה דיגיטלית דורשת נפח אחסון רב. איכות שמע שלתקליטור שקידוד הסאונד שלו מבוצע בטכנולוגיית PCM או "Pulse Code Modulation", מושגת על ידי 44,100 רשימות (דגימות) של 32סיביות (מדובר בסטריאו – שני ערוצים של 16 סיביות כל אחד) עבור כלשנייה. כלומר כ-1.4 מיליון סיביות לשנייה. אלגוריתמי דחיסה כלליים (כדוגמתZIP) אמנם מצליחים להקטין את נפח הקבצים, אבל לא ברמה הנחוצה. בפועל, עבור איכויות המוגדרות טובות (128 ועד 320קילו-סיביות לשנייה), גודל קובצי MP3 הוא כ־10%–20% מהגודל המקורי של הקובץ. לדוגמה, שיר שאורכו 4 דקות, בקידוד רגיל של תקליטור ידרוש נפח של 40MB, אך כשדוחסים את אותו שיר בקידוד MP3 השיר ידרוש נפח של בערך 4MB בלבד.
כדי להקטין את גודל הקובץ, משתמש האלגוריתם במספר מאפיינים שנובעים מהצורה בה המוח והאוזן האנושית מעבדים קול:
סף הרגישות (The minimal audition threshold) – המאזין הרגיל לא ישמע צלילים בעוצמות הנמוכות מסף מסוים. בניסויים בבני אדם נמצא שסף זה תלוי בתדר הצליל. סף זה אינו נכון עבור כל בני האדם, אולם הסף האישי עבור הרוב נמצא קרוב מאוד אליו. לכן ניתן למחוק את כל הצלילים שלא עוברים את הסף ולדעת בסבירות גבוהה כי רוב המאזינים לא ירגישו בהבדל.
הסתרות (The masking effect) – תגובה לצליל מסוים תלויה מאוד במכלול הצלילים שאותם אנו שומעים במקביל. הדבר דומה למערכת הראייה – נגיב באופן שונה לריבוע בצבע מסוים המופיע על גבי רקע בהיר או כהה, תחושת הצבע שלנו תהיה שונה. דוגמה אחרת היא כאשר לא נשים לב להבדלי גוון קטנים. לשם כך נבנומודלים מתמטיים המתארים את תגובת האדם למכלול של צלילים, מודלים הנקראים מודלים פסיכו-אקוסטיים. רעיונותפסיכולוגיים קשים לכימות ולכן ישנם כמה מודלים, שונים זה מזה. לכן ניתן לבחור מודל מסוים ועל פיו להחליט אילו צלילים באמת נחוצים ואילו לא יחסרו למאזינים.
קידודסטריאו מאוחד (Joint Stereo coding) – בני האדם קולטים אותות קוליים דרך האוזניים, הנמצאות במרחק זו מזו. הצלילים הנקלטים די דומים אולם ברוב המקרים אחד מהם עובר דרך קצת ארוכה יותר ולכן מגיע באיחור מה.מוח האדם משתמש בהפרשי הזמנים כדי לפרש את הכיוון ממנו הגיע הצליל (על פי עקרונות הגאומטריה), אולם תחושה זו נפגעת עבור תדרים גבוהים או נמוכים מאוד ויכולתו של האדם לחוש את כיוון מקור הצליל נחלשת. לכן, במקום לשמור את שני הערוצים, ניתן לשמור מידע של ערוץ אחד בלבד ובנוסף מידע מצומצם מאוד על המיקום. חיסכון נוסף עבור סטריאו ניתן להשיג עבור שני ערוצים דומים. במקרה כזה ניתן לקודד את סכומם ואת ההפרש שלהם במקום את הערוצים המקוריים (הסבר מלא לקוח מתורת האינפורמציה).
קוד הופמן (Huffman coding) – קטעי ביטים בעלי סבירות גבוהה מקודדים כמחרוזות קצרות ואילו קטעי ביטים בעלי סבירות נמוכה מקודדים כמחרוזות ארוכות יותר כך שבממוצע מתקבלים פחות ביטים. חלק זה משלים במידת מה את רעיון ההסתרות. בקטע קולי מגוון, ישנן הרבה הסתרות והרבה קטעי ביטים שונים, לכן מתקבל חיסכון בעזרת המודל הפסיכו-אקוסטי אולם ללא השפעה משמעותית של קוד הופמן. במקרה ההפוך, כאשר עובדים עם אותות פשוטים (המורכבים ממספר מצומצם של תדרים שונים), לא מתקבל חסכון משמעותי ממחיקת ההסתרות אולם קוד הופמן ישיג תוצאות טובות יותר.
מאגר ביטים (Bytes reservoir) – חלקים מסוימים עלולים לדרוש יותר סיביות מאחרים כדי להגיע לרמה סבירה של איכות. לחלופין, קטעים מסוימים יכולים להיות פשוטים יותר לקידוד מאחרים. לשם כך ניתן להשתמש במאגר ביטים כדי "להעבירם למקום בו הם נחוצים יותר".
קידוד "MPEG-1 Audio Layer 2" או בקיצור ה-MP2, התחיל את דרכו בפרויקטDAB (אשר פעל מ-1987 עד1994), פרי יוזמתאגודת פראונהופר ובמימוןהאיחוד האירופי (כחלק ממחקר ה-EUREKA, הידוע גם כ-EU-147). ב-1991 הוגשו שתי הצעות לאלגוריתם הדחיסה: Musicam וה-ASPEC, ראשי תיבות של Adaptive Spectral Perceptual Entropy Coding. לבסוף נבחר Musicam להיות MP2 בגלל הפשטות שלו וחסינותו לרעשים. קבוצת מתכנתים, בהםקרלהיינץ ברנדנבורג ויורגן הר שאבה רעיונות מרכזיים מ-Musicam ומ-ASPEC, הוסיפה כמה רעיונות משלה, ויצרה את ה-MP3, אלגוריתם משופר אשר תוכנן להשיג את האיכות של MP2 המקודד ב-192 קילוביט לשנייה (Kb/s) בעזרת 128 קילוביט לשנייה בלבד. פיתוח שני האלגוריתמים הסתיים ב-1992 והוגדרו ב"MPEG-1", אגד התקנים הראשון שלMPEG (השם המלא הוא ISO/IEC 11172-3) אשר פורסם ב-1993[2].
קובציMP2 הופיעו באינטרנט ב-1993. "מחתרת המוזיקה של האינטרנט" (ה-IUMA) נחשבת לתחילת מהפכת המוזיקה המקוונת. ה-IUMA אירח אלפי קבצים חוקיים של MP2. בשנת1995, הפופולריות של קובצי ה-MP3 קיבלה תאוצה אדירה[3]. הצלחה זו של הפורמט הניעה וגם נבעה מהצלחתם של נגני הקבצים (כגוןWinamp שלNullsoft)[4], ותוכנות לשיתוף קבצים אשר התחילו עםנאפסטר, וחברת MP3.com[5][6], שניהן נסגרו בסופו של דבר[7][8].
גודלם הקטן של קובצי MP3 ואיכות השמע הגבוהה יחסית אפשרה את הפריחה חסרת התקדים בשימוש ברשתות שיתוף קבצים באינטרנט. תופעה אשר הפכה את המוזיקה לנגישה לכולם ועוררה שאלות רבות בנוגע לחוקי זכויות היוצרים במציאות החדשה[9].
היורש המתוכנן של MP3, על פיMPEG, הוא אלגוריתם ה-AAC המפורט בתקן 4-MPEG. זאת למרות שהיו ניסיונות ליצור ולהפיץ פורמטים אחרים.ה-AAC לא זוכה לאותה הפופולריות כמו קודמו בגלל הפופולריות העצומה של MP3 – המתבטאת במגוון רחב של תוכנה וחומרה (כגון נגנים ניידים ונגניDVD) התומכים בה[10], כמו גם עליית הפופולריות של שירותיהזרמת מדיה אשר מייתרים את העיסוק בשמירת הקבצים על ידי משתמשי הקצה.
איכות הקידוד המינימלית הנחוצה כדי שקובץ ה-MP3 ישמע קרוב מספיק למקור היא סובייקטיבית. האיכות המקובלת כסף תחתון היא 128Kb/s, זאת למרות שמבחני שמיעה הראו כי עם מעט אימון רוב האנשים יוכלו להבחין בין הקובץ הדחוס למקור באיכות זו.
בעוד שתהליך השחזור (יצירת אותות קול מקובץ ה-MP3) הוגדר היטב וקבוע עבור האלגוריתם, אין אחידות בכל הנוגע לתהליך הקידוד. כתוצאה מכך ישנו מגוון רחב של מקודדים, המשתמשים במודלים פסיכו-אקוסטיים שונים, אשר יוצרים קובצי MP3 שונים. מקודד המיועד לאיכויות גבוהות (כגון LAME) לא יתפקד בהכרח בצורה טובה עבור איכויות נמוכות.