
概述Silverlight使用内建的影音功能来播放,不需要太多影音方面知识,也不需要考虑客户端是否安装Media Player、Quick Time等软件,由于Silverlight的影音功能完全是内置的,支持声音和视频的播放,目前支持的格式如下: ◎ WMA :Windows Media Audio ◎ MP3 ◎ WMV1:Windows Media Video 7 ◎ WMV2:Windows
Silverlight使用内建的影音功能来播放,不需要太多影音方面知识,也不需要考虑客户端是否安装Media Player、Quick Time等软件,由于Silverlight的影音功能完全是内置的,支持声音和视频的播放,目前支持的格式如下: ◎ WMA :windows Media Audio ◎ MP3 ◎ WMV1:windows Media VIDeo 7 ◎ WMV2:windows Media VIDeo 8 ◎ WMV3:windows Media VIDeo 9 ◎ WMVA ◎ WMVC1 ◎ MPEG-4 Silverlight在多媒体影音播放方面具备强大的功能,客户端的计算机安装Silverlight Runtime Component软件,这是最基本的必要条件。 音频和视频功能是集成一个类MediaElement中,媒体元素(MediaElement)继承自UIElent类,继承了UI的通用属性,开发人员可在视频播放的基础上再叠加额外的效果,主要关键属性如下: ◎ Autoplay:获取或设置是否自动播放Source属性指定的媒体源,默认值为true,表示自动播放。 ◎ Balance:获取或设置左右音量平衡比例,属性值为-1到1之间的Double值,默认为0,表示音量相等。 ◎ BufferingTime:获取或设置缓冲时间,默认值为5s。 ◎ BufferingProgress:获取当前的缓冲进度。 ◎ IsMuted:获取或设置媒体源。 ◎ Stretch:获取或设置媒体的伸展模式。 ◎ Volume:获取或设置播放音量。 下面的文档用于自动下载并播放MP3音频: <MediaElement x:name="MyAudio" Autoplay="True" Volume="1" Source="tt.mp3" Canvas.left="59" Canvas.top="102"/> 范例 示范使用摄像头 图9-1是项目启动时画面。 @H_419_300@@H_239_301@ 图9-1 ◎ 单击“启动”时,会提示是否允许应用程序访问你的本机视频设备,如图9-2。 图9-2 ◎ 选择“是”后,开始视频捕获,单击“截屏”下方会出现相应的载图,如图9-3。 图9-3 ◎ 主要XAML标记如下: <GrID x:name="LayoutRoot" Background="White"> <GrID.RowDeFinitions> <RowDeFinition Height="189*" /> <RowDeFinition Height="36*" /> <RowDeFinition Height="75*" /> </GrID.RowDeFinitions> <border x:name="bordVIDer" margin="3" CornerRadius="3" WIDth="400" borderBrush="Gray" HorizontalAlignment="left" borderThickness="1" > <border.Background> <VIDeoBrush x:name="brshMyVIDeo"/> </border.Background> </border> <button name="btStart" HorizontalAlignment="left" VerticalAlignment="top" GrID.Row="1" WIDth="78" Height="33" Content="启动" FontSize="14" Click="btStart_Click" margin="12,0" /> <button Content="关闭" Height="33" HorizontalAlignment="left" margin="107,0" name="btStop" VerticalAlignment="top" WIDth="78" GrID.Row="1" FontSize="14" Click="btStop_Click" /> <button Content="截屏" Height="33" HorizontalAlignment="left" margin="196,0" name="btPing" VerticalAlignment="top" WIDth="78" GrID.Row="1" FontSize="14" Click="btPing_Click" /> <Image GrID.Row="2" Height="70" HorizontalAlignment="left" margin="20,5,0" name="imgMy" Stretch="UniformToFill" VerticalAlignment="top" WIDth="99" /> </GrID> </UserControl> ◎ 主要代码如下: voID btStart_Click(object sender,RoutedEventArgs e) { //取得默认视频设备 VIDeoCaptureDevice vIDeo = CaptureDeviceConfiguration.GetDefaultVIDeoCaptureDevice(); //创建视频捕获源 capSource = new CaptureSource(); if (CaptureDeviceConfiguration.RequestDeviceAccess()) { //设置视频设备 capSource.VIDeoCaptureDevice = vIDeo; brshMyVIDeo.SetSource(capSource); brshMyVIDeo.Stretch = Stretch.Fill; //启动摄像头 capSource.Start(); } } private voID btStop_Click(object sender,RoutedEventArgs e) { //关闭摄像头 capSource.Stop(); } private voID btPing_Click(object sender,RoutedEventArgs e) { if (capSource.State == CaptureState.Started) { WriteableBitmap wBitmap = new WriteableBitmap(bordVIDer,new Matrixtransform()); imgMy.source = wBitmap; } }
更详细内容及源代码下载: http://www.amazon.cn/mn/detailApp/ref=sr_1_1?_enCoding=UTF8&s=books&qID=1287058088&asin=B0043RT7I2&sr=8-1
总结
以上是内存溢出为你收集整理的零基础学通Silverlight4(9):多媒体全部内容,希望文章能够帮你解决零基础学通Silverlight4(9):多媒体所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)