ספריית GO בחינם להשמעה ולכידת אודיו

ספריית GO בקוד פתוח המאפשרת למפתחי תוכנה לנגן, להקליט, לקודד, לקרוא ולהמיר קובצי אודיו.

Malgo היא ספריית אודיו מיני גו בקוד פתוח שימושית מאוד התומכת באופן מלא בתכונות עיבוד שמע בסיסיות כמו גם מתקדמות. ניתן להשתמש בספרייה בכל הפלטפורמות הגדולות וכללה תכונות מתקדמות רבות לניגון ולכידת קבצי אודיו. הספרייה יציבה מאוד ואין לה באגים או נקודות תורפה. ניתן להשתמש בספרייה בכל הפלטפורמות הגדולות כגון Windows, Linux, macOS, Android ועוד.

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

Previous Next

תחילת העבודה עם מלגו

הדרך המומלצת להתקין את Malgo בפרויקט שלך היא באמצעות GitHub. אנא השתמש בפקודה הבאה להתקנה חלקה.

התקן את Malgo מ-GitHub

go get -u github.com/gen2brain/malgo 

לכיד נתוני אודיו מהמיקרופון באמצעות Go

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

לכידת אודיו באמצעות Go API


    // Capturing will commence writing the samples to the writer until either the
    // writer returns an error, or the context signals done.
    func Capture(ctx context.Context, w io.Writer, config StreamConfig) error {
        deviceConfig := config.asDeviceConfig()
        deviceConfig := config.asDeviceConfig(malgo.Capture)
        abortChan := make(chan error)
        defer close(abortChan)
        aborted := false
    @@ -32,5 +32,5 @@ func Capture(ctx context.Context, w io.Writer, config StreamConfig) error {
            },
        }
        return stream(ctx, abortChan, malgo.Capture, deviceConfig, deviceCallbacks)
        return stream(ctx, abortChan, deviceConfig, deviceCallbacks) 

השמעת סאונד באמצעות Go Library

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

השמע צליל אודיו באמצעות Go API


    // Playback will commence playing the samples provided from the reader until either the
    // reader returns an error, or the context signals done.
    func Playback(ctx context.Context, r io.Reader, config StreamConfig) error {
        deviceConfig := config.asDeviceConfig()
        deviceConfig := config.asDeviceConfig(malgo.Playback)
        abortChan := make(chan error)
        defer close(abortChan)
        aborted := false
    @@ -38,5 +38,5 @@ func Playback(ctx context.Context, r io.Reader, config StreamConfig) error {
            },
        }
        return stream(ctx, abortChan, malgo.Playback, deviceConfig, deviceCallbacks)
        return stream(ctx, abortChan, deviceConfig, deviceCallbacks) 

בצע מיקס פשוט באמצעות Go API

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

 עִברִית