פורסם 2011 במאי 2714 שנים הייבתוכנה שלי אני פותח סרט ע"י הפונקצייה mciSendString שבwinmm.dllאת הסרט אני מעוניין לשלוח דרך networkstream, וכאן אני נתקל בבעייהלא מצאתי, ולפי מה שהבנתי, לתוך mciSendString ניתן לטעון רק קבצים שמורים במחשב, לא דרך stream.הפתרון שמצאתי הוא לפרק את הסרט לתמונה וקול בנפרד.את התמונה אני מצליח לשלוח, הבעייה בצליל.קובץ קול שלם אני יודע לשלוח ולהשמיע, אך מכיוון שמדובר בסרט, ועוד מספר סיבות אישיות, אני מעוניין להזרים את הצליל בזמן אמת, או בחבילות קטנות, ולהשמיע אותו בצד השני.האם הפתרון היחיד הוא לשמור קטע קצר(נגיד שנייה) של הצליל, ועז לשלוח את הקטע כל פרק זמן מסויים(שנייה במקרא הזה)?או שיש פתרון יותר פשוט לשמירת קול בזמן אמת למערך bytes(על מנת לשלוח אותו), ולהשמיעו?אם יש פתרון, חיי קלים(אני מניח), אסמך לשמוע מהוא אותו הפתרון.אם לא, סיבוכים בשבילי, כיצד אני עושה את השמירה של שנייה במהלך הסרט דרך mciSendString?תודה מראשמיכאל
פורסם 2011 במאי 2914 שנים מחבר אפשט את הענייןהאם ניתן בעזרת הפונקצייה mciSendString שבתוך winmm.dll, או כל שיטב אחרת, להשמיע קובץ .wav מתוך memorystream? (מערך ביטים שלתוכו טענתי את הקובץ)מיכאל
פורסם 2011 ביוני 214 שנים מחבר שוב אני מתפשר, שאלה חדשה, כיצד אני יכול לחלק קובץ אודיו גדול(נגיד 100MB) לחלקים קטנים(נגיד 10MB) ולשמור על הדיסק?מיכאל
פורסם 2011 ביוני 1014 שנים שלום, למרות שהדיון קצת התיישן, אני מרגיש שאני חייב לעזור לך.בקשר לשמירת קובץ ה-wav ל-MemoryStream,יש תהליך שנקרא Serialization, תהליך זה מאפשר לך להפוךאובייקטים למערך של בייטים. כך שתוכל להפוך אובייקט שאחראילקובץ WAV למערך בייטים, לשמור אותו ב-MemoryStream ואז להפוךאותו בחזרה לאובייקט WAV באמצעות Deserialization.אם אתה מעלה את הקובץ Wav שלך באמצעות מחלקה מסויימת, תהפוך את אותוהאובייקט למערך שלבייטים וחזרה באמצעות התהליך שציינתי. אני לא בטוח שניתןלהפוך כול אובייקט, אבל שווה לנסות.השתמשתי בשיטה הזו באחד מן המאמרים שכתבתי בכדי להעביר תמונה ממקום למקום ברשת:http://www.codeproject.com/KB/audio-video/CamCommunication.aspx
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.