Компания MS выпустила несколько примеров кода, в которых видео записывается в эмуляторе WP, а затем сохраняется в изолированном хранилище. Готов ли этот файл .mp4 к экспорту из эмулятора WP и воспроизведению в других приложениях? Или его нужно как-то форматировать? Если да, то как это сделать?
http://channel9.msdn.com/Shows/Inside+Windows+Phone/Inside-Windows-Phone-16-Mango-Camera-API
Исходный код для записи видео находится в проекте WP и называется CameraUpload:
https://skydrive.live.com/?cid=bc58fec5c97e307a&sc=documents&id=BC58FEC5C97E307A%21295
http://msdn.microsoft.com/en-us/library/hh394041(v=vs.92).aspx
Редактировать:
Я пытаюсь загрузить видео, записанное в эмуляторе WP, в большой двоичный объект Azure.
Файл загружается, но я не могу воспроизвести этот файл в Zune.
Я хотел бы иметь возможность воспроизводить видеофайл, записанный в эмуляторе WP на Zune, что сделать, чтобы включить это?
Метод в роли службы Azure WCF, который сохраняет видео, выглядит следующим образом: (Пожалуйста, извините, если параметры метода имеют немного неверные и запутанные имена.)
bool SaveImage(int salesItemId, string contentType, byte[] photo);
Видео сохраняется в контейнер больших двоичных объектов с именем firstmay.
Код в телефонном клиенте, сохраняющий видео, выглядит так:
client.SaveImageAsync(77, "mp4", GetPhotoBytes(m_capturedFileName));
public byte[] GetPhotoBytes(string fileName)
{
using (var appStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
IsolatedStorageFileStream isoStream = appStorage.OpenFile(m_capturedFileName, FileMode.Open);
byte[] buffer = new byte[isoStream.Length];
isoStream.Read(buffer, 0, (int)isoStream.Length); isoStream.Close();
return buffer;
}
}
При загрузке видео из клиентского приложения WP сначала записывается видео, а затем загружается, нажав «Сохранить», все это происходит на главной странице.
Клиентское и серверное приложение можно скачать со скайдрайва: