Windows Phone 8.1 多媒体(2):视频

原文:Windows Phone 8.1 多媒体(2):视频

Windows Phone 8.1 多媒体(1):相片

Windows Phone 8.1 多媒体(2):视频

Windows Phone 8.1 多媒体(3):音乐

 



 

(1)拍摄视频

拍摄视频和拍摄相片的方法是基本一致的:

MediaCapture mediaCapture;
MediaEncodingProfile videoEncodingProperties;

protected override async void OnNavigatedTo(NavigationEventArgs e)
{
    HardwareButtons.CameraHalfPressed += HardwareButtons_CameraHalfPressed;
    HardwareButtons.CameraReleased += HardwareButtons_CameraReleased;

    videoCaptrueElement.Source = await Initialize();
    await mediaCapture.StartPreviewAsync();
}

async void HardwareButtons_CameraHalfPressed(object sender, CameraEventArgs e)
{
    if( mediaCapture != null )
    {
        var video = await KnownFolders.VideosLibrary.CreateFileAsync("video.mp4", CreationCollisionOption.GenerateUniqueName);
await mediaCapture.StartRecordToStorageFileAsync(videoEncodingProperties, video);
    }
}

async void HardwareButtons_CameraReleased(object sender, CameraEventArgs e)
{
    if( mediaCapture != null )
    {
        await mediaCapture.StopRecordAsync();
    }
}

private async Task<MediaCapture> Initialize()
{
    mediaCapture = new MediaCapture();
    await mediaCapture.InitializeAsync();

    mediaCapture.VideoDeviceController.PrimaryUse = CaptureUse.Video;

    videoEncodingProperties = MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Vga);

    return mediaCapture;
}

protected override void OnNavigatedFrom(NavigationEventArgs e)
{
    if( mediaCapture != null )
    {
        mediaCapture.Dispose();
        mediaCapture = null;
    }
}

 

(2)编辑视频

视频编辑的 API 在 Windows.Media.Editing 命名空间下,具体可看 MSDN:链接

简单的说就是把某些视频实例化为 MediaClip,然后将这些视频添加到 MediaComposition.Clips 中去,最后将这些视频拼接到一起或添加个 BackgroundAudioTrack 什么的:

MediaClip video = await MediaClip.CreateFromFileAsync(                await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///thanks.mp4")));

MediaComposition videos = new MediaComposition();
videos.Clips.Add(video);

BackgroundAudioTrack bgm = await BackgroundAudioTrack.CreateFromFileAsync(                    await StorageFile.GetFileFromApplicationUriAsync(new Uri("Above Your Hand.mp3")));
videos.BackgroundAudioTracks.Clear();
videos.BackgroundAudioTracks.Add(bgm);

await videos.SaveAsync(await ApplicationData.Current.LocalFolder.CreateFileAsync("video.mp4", CreationCollisionOption.ReplaceExisting));

 

(3)录制手机屏幕视频

录制手机屏幕视频是 WP8.1 新加的 API,使用方法和拍摄视频差不多,只需将录制对象设为屏幕即可:

var screenCapture = ScreenCapture.GetForCurrentView();

mediaCapture = new MediaCapture();
await mediaCapture.InitializeAsync(new MediaCaptureInitializationSettings
{
    VideoSource = screenCapture.VideoSource,
    AudioSource = screenCapture.AudioSource,
});

var file = await KnownFolders.VideosLibrary.CreateFileAsync("screenrecording.mp4", CreationCollisionOption.ReplaceExisting);
await mediaCapture.StartRecordToStorageFileAsync(MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Auto), file);

停止录制:

if( mediaCapture != null )
{
    await mediaCapture.StopRecordAsync();
    mediaCapture.Dispose();
    mediaCapture = null;
}

 

时间: 2024-08-07 12:59:50

Windows Phone 8.1 多媒体(2):视频的相关文章

Windows Phone 8.1 多媒体(1):相片

原文:Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(2):视频 Windows Phone 8.1 多媒体(3):音乐     (1)拍摄相片 1)CaptureElement CaptureElement 是放在应用界面上预览拍照的控件: <Grid> <CaptureElement x:Name="capturePhotoElement"/> <

Windows Phone 8.1 多媒体(3):音乐

原文:Windows Phone 8.1 多媒体(3):音乐 Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(2):视频 Windows Phone 8.1 多媒体(3):音乐     (1)前台 说是前台,其实音乐的播放都是利用系统后台的 BackgroundMediaPlayer: BackgroundMediaPlayer.Current.SetUriSource(new Uri("ms-appx:///djlang59_-_Drops_

网页多媒体嵌套视频无法重复播放

问题描述 网页多媒体嵌套视频无法重复播放 网页多媒体嵌套中,我第一次点击视频播放可以加载视频,等我第二次点击播放视频时播放不了 解决方案 建议试一试把preload属性的值改一下

Windows 7/8中IE10播放视频有声音没图像问题解决方法

我们现在在没有视频的IE10浏览器,然后ie顶部,找到如图所示的"工具"下面的"Intern选项"打开进入: 1. 之后我们在弹出的 Internet选项,找到"高级"选项-"加速的图形"勾选: 2. 点击应用,确定后重启IE并确认 然后我们再播放就会发现视频是可以正常播放了哦.

用windows做服务器可以播放网页视频,而用linux做服务器就不能播放,有大神知道怎么回事吗

问题描述 我截取了两个gif图,大神看下,第一个是在本地的eclipse中直接启动这个工程,网页视频直接可以播放第二张图:这个是将这个javaweb项目打包到linux服务器上后,点击播放居然直接把realone这个播放器弹出来了:可以确定的是,在linux中的路径给出的也是正确的请大神看看 解决方案 解决方案二:路劲咋写的?解决方案三:引用1楼huxiweng的回复: 路劲咋写的? 路径为:/uportal/swf_out/mms_file/9676/8110/251138110/15_285

Silverlight for Windows Phone 7开发系列(3):多媒体开发

前言 在上篇文章讲述了如何新建一个Silverlight for Windows Phone的应用程序,这篇文章讲述如何在Windows Phone上进行多媒体应用的开发.同时介绍当前Windows Phone Beta版本所支持媒体文件格式,以及讲述Windows Phone多媒体开发的一些限制性和注意点. MediaElement控件的使用 使用Silverlight开发一般的多媒体应用,使用MediaElement控件就足够了,MediaElement控件支持音频和视频文件,也支持本地和网

Windows Phone 7镜头应用程序遭禁 无法视频聊天

10月25日消息,据国外媒体报道,<财富>杂志近日披露Windows Phone 7操作系统的研发人员近日陆续接到微软方面颁布的一项禁令,禁令要求研发人员不得围绕Windows Phone 7手机的摄像头研发相关的应用程序.未来研发人员所使用的软件开发工具包将禁止包含有关手机摄像头镜头的所有研发工具及相关资料,这也就意味着 Windows Phone 7手机将无法使用视频聊天等功能. 两家从事Windows Phone 7手机应用软件开发工作的IT企业Layar和Fring近日在接受<财

Windows 8.1预览版抢鲜看 + 开始按钮视频演示,新功能公布支持 NFC 打印及 WiFi 热点

class="post_content" itemprop="articleBody"> 根据国外媒体的报道,微软近日在新奥尔良举办的 TechED 大会上公布了 Windows 8.1 的更多细节功能,其中就包括支持 NFC 打印及 Wi-Fi 热点功能.对企业用户来说,这两个功能的加入无疑会让 Windows 8.1 变得更加实用-- 微软在 Windows Business 和 Springboard 系列博客上都表示,Windows 8.1 将允许 P

Windows 7中如何诊断DirectX的基本问题

如果无法正常运行游戏或播放电影,http://www.aliyun.com/zixun/aggregation/33840.html">DirectX 诊断工具可帮助您查明问题来源.DirectX 是 Windows 中的许多多媒体程序使用的一套技术.  打开诊断工具的步骤:• 单击「开始」按钮,在搜索框中键入 dxdiag,然后按 Enter. 诊断工具完成后,请执行以下三项检查:• 检查视频卡. 某些程序运行很慢或完全不运行(除非打开了 Microsoft DirectDraw 或 D