TensorAudio

כיתה ציבורית TensorAudio

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

הוא שומר על חוצץ צלצול כדי לשמור על יציבות של קלט נתוני אודיו. לקוחות יכולים להזין נתוני אודיו קלט באמצעות שיטות 'טעינה' ולגשת אל דוגמאות אודיו מצטברות באמצעות המתודה 'getTensorBuffer'.

חשוב לשים לב שהסיווג הזה יכול לטפל רק בקלט אודיו בציפה (ב-AudioFormat.ENCODING_PCM_16BIT) או ב-Shorts (ב-AudioFormat.ENCODING_PCM_FLOAT). באופן פנימי הוא ממיר ומאחסן את כל האודיו דגימות בקידוד PCM Float (קידוד Float).

שימוש אופייני ב-Kotlin

   val tensor = TensorAudio.create(format, modelInputLength)
   tensor.load(newData)
   interpreter.run(tensor.getTensorBuffer(), outputBuffer);
 

שימוש נוסף לדוגמה עם AudioRecord

   val tensor = TensorAudio.create(format, modelInputLength)
   Timer().scheduleAtFixedRate(delay, period) {
     tensor.load(audioRecord)
     interpreter.run(tensor.getTensorBuffer(), outputBuffer)
   }
 

מחלקות מקוננות

מחלקה TensorAudio.TensorAudioFormat מופיע על פני מספר קבועים שמתארים את הפורמט של דגימות האודיו הנכנסות, כלומר מספר ואת תדירות הדגימה.

שיטות ציבוריות

סטטי TensorAudio
create(פורמט AudioFormat, int sampleCounts)
יצירת מכונה של TensorAudio עם מאגר נתונים זמני של צלצול שהגודל שלו הוא sampleCounts * format.getChannelCount().
סטטי TensorAudio
create(TensorAudio.TensorAudioFormat, int sampleCounts)
יוצרת מכונה של AudioRecord עם מאגר נתונים זמני של טבעות בגודל sampleCounts * format.getChannels().
TensorAudio.TensorAudioFormat
TensorBuffer
getTensorBuffer()
הפונקציה מחזירה ערך TensorBuffer מסוג מספר ממשי (float) עם כל דגימות האודיו הזמינות ב-AudioFormat.ENCODING_PCM_FLOAT, כלומר.
ריק
load(short[] src)
הפונקציה ממירה את דגימות האודיו src ל-ENCODING_PCM_FLOAT, ולאחר מכן שומרת אותן בטבעת מאגר נתונים זמני.
ריק
load(float[] src, int offsetInFloat, int sizeInFloat)
שמירת דגימות האודיו src במאגר הנתונים הזמני.
ריק
load(short[] src, int offsetInShort, int sizeInShort)
הפונקציה ממירה את דגימות האודיו src ל-ENCODING_PCM_FLOAT, ולאחר מכן שומרת אותן בטבעת מאגר נתונים זמני.
int
load(הקלטת אודיו)
טוענת את הנתונים האחרונים מה-AudioRecord ללא חסימה.
ריק
load(float[] src)
שמירת דגימות האודיו src במאגר הנתונים הזמני.

שיטות שעברו בירושה

שיטות ציבוריות

ציבורי סטטי TensorAudio יצירה (פורמט AudioFormat, int sampleCounts)

יצירת מכונה של TensorAudio עם מאגר נתונים זמני של צלצול שהגודל שלו הוא sampleCounts * format.getChannelCount().

פרמטרים
פורמט AudioFormat שנדרש על ידי מודל TFLite. הוא מגדיר מספר הערוצים וקצב הדגימה.
sampleCounts מספר הדגימות שצריך להזין במודל

ציבורי סטטי TensorAudio יצירה (פורמט TensorAudio.TensorAudioFormat, int sampleCounts)

יוצרת מכונה של AudioRecord עם מאגר נתונים זמני של טבעות בגודל sampleCounts * format.getChannels().

פרמטרים
פורמט TensorAudio.TensorAudioFormat של נתוני האודיו הצפויים נטענים בכיתה הזו.
sampleCounts מספר הדגימות שצריך להזין במודל

ציבורי TensorAudio.TensorAudioFormat getFormat ()

ציבורי TensorBuffer getTensorBuffer ()

הפונקציה מחזירה ערך TensorBuffer מסוג מספר ממשי (float) עם כל דגימות האודיו הזמינות ב-AudioFormat.ENCODING_PCM_FLOAT. כלומר, הערכים הם בטווח של [-1, 1].

ציבורי ריק לטעינה (קצר[] src)

הפונקציה ממירה את דגימות האודיו src ל-ENCODING_PCM_FLOAT, ולאחר מכן שומרת אותן בטבעת מאגר נתונים זמני.

פרמטרים
src קלט דגימות אודיו ב-AudioFormat.ENCODING_PCM_16BIT. עבור בקלט מרובה-ערוצים, המערך הוא משולב.

ציבורי ריק לטעינה (float[] src, int offsetInFloat, int sizeInFloat)

שמירת דגימות האודיו src במאגר הנתונים הזמני.

פרמטרים
src קלט דגימות אודיו ב-AudioFormat.ENCODING_PCM_FLOAT. עבור בקלט מרובה-ערוצים, המערך הוא משולב.
offsetInFloat המיקום ההתחלתי במערך src
sizeInFloat מספר הערכים הצפים להעתקה
קליעות
IllegalArgumentException בגלל פורמט אודיו לא תואם או גודל קלט שגוי

ציבורי ריק לטעינה (short[] src, int offsetInShort, int sizeInShort)

הפונקציה ממירה את דגימות האודיו src ל-ENCODING_PCM_FLOAT, ולאחר מכן שומרת אותן בטבעת מאגר נתונים זמני.

פרמטרים
src קלט דגימות אודיו ב-AudioFormat.ENCODING_PCM_16BIT. עבור בקלט מרובה-ערוצים, המערך הוא משולב.
offsetInShort המיקום ההתחלתי במערך src
sizeInShort מספר הערכים הקצרים שיועתקו
קליעות
IllegalArgumentException אם לא ניתן להעתיק את מערך המקור

ציבורי INT לטעינה (הקלטת אודיו)

טוענת את הנתונים האחרונים מה-AudioRecord ללא חסימה. רק תמיכה ב-ENCODING_PCM_16BIT וב-ENCODING_PCM_FLOAT.

פרמטרים
רשומה מופע של AudioRecord
החזרות
  • מספר ערכי האודיו שתועדו שהגודל שלהם הוא channelCount * sampleCount. אם המיקום לא היו נתונים חדשים ב-AudioRecord או שאירעה שגיאה, השיטה הזו תחזיר את הערך 0.
קליעות
IllegalArgumentException עבור פורמט קידוד אודיו שאינו נתמך
IllegalStateException אם הקריאה מ-AudioRecord נכשלה

ציבורי ריק לטעינה (float[] src)

שמירת דגימות האודיו src במאגר הנתונים הזמני.

פרמטרים
src קלט דגימות אודיו ב-AudioFormat.ENCODING_PCM_FLOAT. עבור בקלט מרובה-ערוצים, המערך הוא משולב.