בית תוכנה, פיתוח תוכנות

תהליך פיתוח תוכנת אודיו וידיאו

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

 

הכל בזכות התוכנה

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

 

איך מאפיינים תוכנה כזו?

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

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

 

דחיסת הנתונים

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

 

בניית התוכנה

בניית התוכנה עצמה מתבצעת באמצעות שפות מחשב, כאשר בדרך כלל שפות כמו C, C++, JAVA וכדומה משמשות בבנייתן. במהלך הבנייה לעיתים יש צורך גם לבנות תוכנה שתשמש חומרה מסויימת, כמו למשל טלפון המשמש לשיחות ועידה או מצלמות וידיאו המעבירות את המידע באמצעות חיבור למחשב או לרשת. יש המתחילים מבניית הפונקציונליות של התוכנה באמצעות חלוקה למודולים שונים, וחברות תוכנה אחרות מתחילות דווקא מעיצוב חווית המשתמש, בונות בצורה גרפית את המסכים השונים, ולאחר מכן מוסיפות את המודולים או הפונקציונליות של כל כפתור במסך. לאחר בנייתה התוכנה נבדקת היטב במחלקת בקרת האיכות, ולאחר שתוקנו הבאגים השונים בגרסאות הזמניות, היא משוחרת בגרסתה הסופית.