MP3

מתוך ויקיפדיה, האנציקלופדיה החופשית

MP3 הוא אלגוריתם פופולרי לקידוד ודחיסה מאבדת נתונים (lossy compression) של אותות שמע. מטרת האלגוריתם היא לצמצם במידה ניכרת את כמות המידע הנחוצה לייצוג הצליל, אך לאפשר שיחזור שישמע נאמן למקור לרוב המאזינים. המונח MP3 מתייחס גם לקובצי קול או מוזיקה השמורים בפורמט זה.

השם המלא של האלגוריתם הוא "MPEG-2 Audio Layer 3".

רקע[עריכת קוד מקור | עריכה]

שמירת אותות קוליים (אודיו) בצורה דיגיטלית דורשת נפח אחסון רב. איכות שמע של תקליטור שקידוד הסאונד שלו מבוצע בטכנולוגיית PCM או "Pulse Code Modulation", מושגת על ידי 44,100 רשימות (דגימות) של 32 סיביות (מדובר בסטריאו - שני ערוצים של 16 סיביות כל אחד) עבור כל שנייה. כלומר כ-1.4 מיליון סיביות לשנייה. אלגוריתמי דחיסה כלליים (כדוגמת ZIP) אמנם מצליחים להקטין את נפח הקבצים, אבל לא ברמה הנחוצה. בפועל, עבור איכויות המוגדרות טובות (128 ועד 320 קילו-סיביות לשנייה), גודל קובצי MP3 הוא כ־10%-20% מהגודל המקורי של הקובץ. לדוגמה, שיר שאורכו 4 דקות, בקידוד רגיל של תקליטור ידרוש נפח של 40MB, אך כשדוחסים את אותו שיר בקידוד MP3 השיר ידרוש נפח של בערך 4MB בלבד.

הרעיונות המרכזיים[עריכת קוד מקור | עריכה]

מבנה קובץ MP3

כדי להקטין את גודל הקובץ, משתמש האלגוריתם במספר מאפיינים שנובעים מהצורה בה המוח והאוזן האנושית מעבדים קול:

  1. סף הרגישות (The minimal audition threshold) - המאזין הרגיל לא ישמע צלילים בעוצמות הנמוכות מסף מסוים. בניסויים בבני אדם נמצא שסף זה תלוי בתדר הצליל. סף זה אינו נכון עבור כל בני האדם, אולם הסף האישי עבור הרוב נמצא קרוב מאוד אליו. לכן ניתן למחוק את כל הצלילים שלא עוברים את הסף ולדעת בסבירות גבוהה כי רוב המאזינים לא ירגישו בהבדל.
  2. הסתרות (The masking effect) - תגובה לצליל מסוים תלויה מאוד במכלול הצלילים שאותם אנו שומעים במקביל. הדבר דומה למערכת הראייה - נגיב באופן שונה לריבוע בצבע מסוים המופיע על גבי רקע בהיר או כהה, תחושת הצבע שלנו תהיה שונה. דוגמה אחרת היא כאשר לא נשים לב להבדלי גוון קטנים. לשם כך נבנו מודלים מתמטיים המתארים את תגובת האדם למכלול של צלילים, מודלים הנקראים מודלים פסיכו-אקוסטיים. רעיונות פסיכולוגיים קשים לכימות ולכן ישנם כמה מודלים, שונים זה מזה. לכן ניתן לבחור מודל מסוים ועל פיו להחליט אילו צלילים באמת נחוצים ואילו לא יחסרו למאזינים.
  3. קידוד סטריאו מאוחד (Joint Stereo coding) - בני האדם קולטים אותות קוליים דרך האוזניים, הנמצאות במרחק זו מזו. הצלילים הנקלטים די דומים אולם ברוב המקרים אחד מהם עובר דרך קצת ארוכה יותר ולכן מגיע באיחור מה. מוח האדם משתמש בהפרשי הזמנים כדי לפרש את הכיוון ממנו הגיע הצליל (על פי עקרונות הגאומטריה), אולם תחושה זו נפגעת עבור תדרים גבוהים או נמוכים מאוד ויכולתו של האדם לחוש את כיוון מקור הצליל נחלשת. לכן, במקום לשמור את שני הערוצים, ניתן לשמור מידע של ערוץ אחד בלבד ובנוסף מידע מצומצם מאוד על המיקום. חיסכון נוסף עבור סטריאו ניתן להשיג עבור שני ערוצים דומים. במקרה כזה ניתן לקודד את סכומם ואת ההפרש שלהם במקום את הערוצים המקוריים (הסבר מלא לקוח מתורת האינפורמציה).
  4. קוד הופמן (Huffman coding) - קטעי ביטים בעלי סבירות גבוהה מקודדים כמחרוזות קצרות ואילו קטעי ביטים בעלי סבירות נמוכה מקודדים כמחרוזות ארוכות יותר כך שבממוצע מתקבלים פחות ביטים. חלק זה משלים במידת מה את רעיון ההסתרות. בקטע קולי מגוון, ישנן הרבה הסתרות והרבה קטעי ביטים שונים, לכן מתקבל חיסכון בעזרת המודל הפסיכו-אקוסטי אולם ללא השפעה משמעותית של קוד הופמן. במקרה ההפוך, כאשר עובדים עם אותות פשוטים (המורכבים ממספר מצומצם של תדרים שונים), לא מתקבל חסכון משמעותי ממחיקת ההסתרות אולם קוד הופמן ישיג תוצאות טובות יותר.
  5. מאגר ביטים (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.

קובצי MP2 הופיעו באינטרנט ב-1993. "מחתרת המוזיקה של האינטרנט" (ה-IUMA) נחשבת לתחילת מהפכת המוזיקה המקוונת. ה-IUMA אירח אלפי קבצים חוקיים של MP2. בשנת 1995, הפופולריות של קובצי ה-MP3 קיבלה תאוצה אדירה. הצלחה זו של הפורמט הניעה וגם נבעה מהצלחתם של נגני הקבצים (כגון Winamp של Nullsoft) ותוכנות לשיתוף קבצים אשר התחילו עם נאפסטר.

גודלם הקטן של קובצי MP3 ואיכות השמע הגבוהה יחסית אפשרה את הפריחה חסרת התקדים בשימוש ברשתות שיתוף קבצים באינטרנט. תופעה אשר הפכה את המוזיקה לנגישה לכולם ועוררה שאלות רבות בנוגע לחוקי זכויות היוצרים במציאות החדשה.

היורש המתוכנן של MP3, על פי MPEG, הוא אלגוריתם ה-AAC המפורט בתקן 4-MPEG. זאת למרות שהיו ניסיונות ליצור ולהפיץ פורמטים אחרים. ה-AAC לא זוכה לאותה הפופולריות כמו קודמו בגלל הפופולריות העצומה של MP3 - המתבטאת במגוון רחב של תוכנה וחומרה (כגון נגנים ניידים ונגני DVD) התומכים בה, כמו גם עליית הפופולריות של שירותי הזרמת מדיה אשר מייתרים את העיסוק בשמירת הקבצים על ידי משתמשי הקצה.

איכות השמע והמקודדים[עריכת קוד מקור | עריכה]

איכות הקידוד המינימלית הנחוצה כדי שקובץ ה-MP3 ישמע קרוב מספיק למקור היא סובייקטיבית. האיכות המקובלת כסף תחתון היא 128Kb/s, זאת למרות שמבחני שמיעה הראו כי עם מעט אימון רוב האנשים יוכלו להבחין בין הקובץ הדחוס למקור באיכות זו.

בעוד שתהליך השחזור (יצירת אותות קול מקובץ ה-MP3) הוגדר היטב וקבוע עבור האלגוריתם, אין אחידות בכל הנוגע לתהליך הקידוד. כתוצאה מכך ישנו מגוון רחב של מקודדים, המשתמשים במודלים פסיכו-אקוסטיים שונים, אשר יוצרים קובצי MP3 שונים. מקודד המיועד לאיכויות גבוהות (כגון LAME) לא יתפקד בהכרח בצורה טובה עבור איכויות נמוכות.

חלופות[עריכת קוד מקור | עריכה]

ישנם אלגוריתמי דחיסת קול מאבדי מידע נוספים, בהם MPEG-4 AAC, AC3, ATRAC, MP3PRO, MPC, Vorbis, QDesign, AMR-WB+, RealAudio, Windows Media Audio

כמו כן, ישנם הרבה אלגוריתמי דחיסת קול משמרי מידע, בהם: FLAC, Monkey's Audio, SHN, TTA, Wavpack

לפי מבחני שמע, האלגוריתמים החדשים משיגים תוצאות טובות יותר עבור איכויות נמוכות ואילו לאחר 128Kb/s רוב המאזינים לא מצליחים להבחין בהבדלי איכות.

תגי מידע[עריכת קוד מקור | עריכה]

ניתן לאחסן בקובץ MP3 תג אשר מכיל מידע על הקובץ, כגון: שם התקליטור, האמן, האלבום, מספר הרצועה ועוד. התגים הנפוצים הם ה-ID3 וה-APEv2.

ראו גם[עריכת קוד מקור | עריכה]

  • FLAC – דחיסת שמע ללא איבוד נתונים
  • Mp3music – אתר אינטרנט בתחום המוזיקה

קישורים חיצוניים[עריכת קוד מקור | עריכה]

קישורים לתוכנות: