加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

audio – 在Windows Phone 8中以编程方式下载媒体文件

发布时间:2020-12-14 02:50:15 所属栏目:Windows 来源:网络整理
导读:我们的应用程序是基于视频/音频的应用程序,我们已经在 Windows Azure上传了所有媒体. 但是,需要方便用户按需下载音频/视频文件,以便他们可以在本地播放. 所以我需要以编程方式下载音频/视频文件并将其保存在IsolatedStorage中. 我们为每个音频/视频提供Windo
我们的应用程序是基于视频/音频的应用程序,我们已经在 Windows Azure上传了所有媒体.

但是,需要方便用户按需下载音频/视频文件,以便他们可以在本地播放.

所以我需要以编程方式下载音频/视频文件并将其保存在IsolatedStorage中.

我们为每个音频/视频提供Windows Azure媒体文件访问URL.但我陷入下载媒体文件的第一步.

我用Google搜索并遇到了this article,但是对于WebClient,我没有可以使用的函数DownloadFileAsync.

但是我尝试了其他函数DownloadStringAsyn,并且下载媒体文件是字符串格式但不知道如何将其转换为音频(wma)/视频(mp4)格式.请建议我,我该怎么办?还有其他方式下载媒体文件吗?

这是我使用的示例代码

private void ApplicationBarMenuItem_Click_1(object sender,EventArgs e)
    {
        WebClient mediaWC = new WebClient();
        mediaWC.DownloadProgressChanged += new DownloadProgressChangedEventHandler(mediaWC_DownloadProgressChanged);
        mediaWC.DownloadStringAsync(new Uri(link));            
        mediaWC.DownloadStringCompleted += new DownloadStringCompletedEventHandler(mediaWC_DownloadCompleted);           

    }

    private void mediaWC_DownloadCompleted(object sender,DownloadStringCompletedEventArgs e)
    {
        if (e.Cancelled)
            MessageBox.Show("Downloading is cancelled");
        else
        {
            MessageBox.Show("Downloaded");
        }
    }   

    private void mediaWC_DownloadProgressChanged(object sender,DownloadProgressChangedEventArgs e)
    {
        statusbar.Text = status= e.ProgressPercentage.ToString();
    }

解决方法

要下载二进制数据,请使用[WebClient.OpenReadAsync] [1].您可以使用它来下载字符串数据以外的数据.

var webClient = new WebClient();
webClient.OpenReadCompleted += OnOpenReadCompleted;
webClient.OpenReadAsync(new Uri("...",UriKind.Absolute));

private void OnOpenReadCompleted(object sender,OpenReadCompletedEventArgs e)
{

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读