0
如何使用c#將智能手機的視頻上傳到蔚藍媒體服務?是否有任何第三方編碼器存在用於筆記本電腦/臺式機的wirecast移動設備?我們可以使用rest api來實現嗎?如何將視頻上傳到智能手機的蔚藍媒體服務
如何使用c#將智能手機的視頻上傳到蔚藍媒體服務?是否有任何第三方編碼器存在用於筆記本電腦/臺式機的wirecast移動設備?我們可以使用rest api來實現嗎?如何將視頻上傳到智能手機的蔚藍媒體服務
由於移動設備上的帶寬較低,因此從移動設備上傳視頻並不可取。此外,我不確定是否有任何第三方應用程序實現相同,但可以完成。下面的代碼爲Windows Phone的Xamirin應用程序開發
// Part 1 - Connect to Media Services
// Setup upload progress event
// Upload a video to encode
CloudMediaContext mediaContext =
new CloudMediaContext("[ ACCOUNT NAME ]","[ ACCOUNT KEY ]");
mediaContext.Assets.OnUploadProgress += Assets_OnUploadProgress;
var asset = mediaContext.Assets.Create(
@"C:\windows\Performance\WinSat\winsat.wmv");
// Part 2 - Create a task, specify encoding details
Console.Clear();
IJob job = mediaContext.Jobs.CreateJob("Sample Job");
var expressionEncoder = mediaContext.MediaProcessors.Where(
mp => mp.Name == "Expression Encoder").Single();
var task = job.Tasks.Add(
mediaProcessor: expressionEncoder,
configuration: "H.264 HD 720p VBR");
task.Inputs.Add(asset);
task.Outputs.Add("Sample Task Output Asset");
// Part 3 - Submit the encoding job to begin processing
while (job.State != JobState.Finished)
{
job = mediaContext.Jobs.Refresh(job.Id);
Console.SetCursorPosition(0, 0);
Console.WriteLine("Job Name: " + job.Name);
Console.WriteLine("Job ID: " + job.Id);
Console.WriteLine();
Console.WriteLine("Job State: {0,-20}", job.State);
Console.WriteLine("Task Progress: {0:0.00}% ",
job.Tasks.Single().Progress);
Thread.Sleep(500);
}
Console.WriteLine();
Console.WriteLine("Job Complete!");
Console.ReadLine();
}
不要忘記通過金塊包管理器添加Media Service SDK工作正常。
想澄清問題。您是否嘗試廣播/流式直播活動,或者您想上傳先前錄製的視頻?對於直播,您可以使用支持RTPM協議的組件。使用WireCast在http://azure.microsoft.com/blog/2014/09/18/azure-media-services-rtmp-support-and-live-encoders/上查看工作流程詳細信息。 –
試圖廣播/流直播。我使用wirecast在筆記本電腦上完成了它。但需要通過智能手機來完成。謝謝:) – Krishna
對於iphone你可以檢查http://mingfeiy.com/using-iphone-live-stream-azure-media-services。你的目標是什麼移動平臺? Iphone和Android有第三方庫使用RTMP協議進行流式傳輸。對於Windows手機檢查http://stackoverflow.com/questions/2319378/rtmp-c-sharp-client-library線程 –