Tôi đã viết một ứng dụng SL4 cơ bản để thu thập dữ liệu âm thanh từ micrô bằng cách sử dụng CaptureSource
. Vấn đề là, đó là đầu ra PCM thô - có nghĩa là rất lớn và không nén.Silverlight 4 - mã hóa dữ liệu PCM từ micrô
Vì tôi cần ứng dụng này chạy hoàn toàn trong môi trường SL4, làm cách nào để nén dữ liệu âm thanh PCM thành dữ liệu có thể được gửi đến máy chủ từ xa dễ dàng hơn?
Về cơ bản tôi cần một giải pháp mà tôi cũng có thể triển khai/bao gồm trong ứng dụng Windows Phone Series 7 cũng như một ứng dụng sẽ hoạt động trong môi trường trình duyệt.
Trong cuộc hội thoại, mọi người đã đề xuất Speex và WMA, nhưng tôi chưa tìm thấy bất kỳ thư viện hoặc ví dụ nào hoạt động mà không yêu cầu tham chiếu đến DLL không hoạt động trong dự án SL4.
Cảm ơn, đây là tất cả các bài viết mà tôi đã thấy mặc dù. Một điều cần ghi nhớ ở đây, là yêu cầu của tôi rằng tôi cần phải "nén dữ liệu âm thanh PCM vào một cái gì đó có thể được gửi đến một máy chủ từ xa dễ dàng hơn". Chuyển đổi PCM sang WAV thật dễ dàng, nhưng việc nén đầu ra thì không. WAV là không mong muốn bởi vì nó là như vậy bloaty, ngay cả khi bạn mã hóa nó như là mono. Blog của Mike Taulty rất tuyệt cho thấy cách sử dụng các bồn để chụp PCM và chuyển đổi sang WAV, nhưng tôi đoán những gì chúng ta thực sự cần ở đây là một MediaStreamSource hoặc một cái gì đó tương tự như kết quả đầu ra như Speex hoặc WMA. – Richard
@Otaku - Tôi đã chấp nhận câu trả lời của bạn; đó là nguồn gốc toàn diện nhất. Vẫn cần phải làm nhiều hơn nữa, và tôi sẽ cố gắng cập nhật bài viết này tại một số điểm trong tương lai với câu trả lời thực tế của tôi. Cảm ơn vì đầu vào của bạn. – Richard
@Richard - cảm ơn bạn! Tôi nghe ya về sự cần thiết cho một cái gì đó nhỏ gọn hơn nhiều so với WAV. Tôi sẽ giữ cho mặt trước của tâm trí cũng như tôi chạy vào mọi thứ và nếu một cái gì đó tốt hơn đến cùng, tôi sẽ cập nhật câu trả lời. –