MPMoviePlayerViewController和MPMoviePlayerController的使用

C++(Qt)软件调试---静态分析工具clang-tidy(18) 现在很多人在开发中完全忽略了编译器、IDE的警告提示,这怎么可能写出稳定的程序。 clang-tidy是一个由LLVM项目提供的开源工具,是一个静态分析工具,用于进行静态代码分析和代码质量改进。 阅读详情

源地址:http://blog.youkuaiyun.com/nogodoss/article/details/14161195


ios播放视频文件一般使用 MPMoviePlayerViewController 和 MPMoviePlayerController。这两者的区别就是MPMoviePlayerViewController里面包含了一个MPMoviePlayerController

先说MPMoviePlayerController

首先要包含 #import <MediaPlayer/MediaPlayer.h>头文件和MediaPlayer.framework。

 - (void)createMPPlayerController:(NSString *)sFileNamePath {

  NSURL *movieURL = [NSURL fileURLWithPath:sFileNamePath];

 MPMoviePlayerController *movewController =[[MPMoviePlayerController alloc] initWithContentURL:movieURL];

 [movewController prepareToPlay];

 [self.view addSubview:movewController.view];//设置写在添加之后   // 这里是addSubView

 movewController.shouldAutoplay=YES;

 [movewController setControlStyle:MPMovieControlStyleDefault];

 [movewController setFullscreen:YES];

 [movewController.view setFrame:self.view.bounds];

 这里注册相关操作的通知

 [[NSNotificationCenter defaultCenter] addObserver:self

                                             selector:@selector(movieFinishedCallback:)

                                                 name:MPMoviePlayerPlaybackDidFinishNotification

                                               object:moveViewController.movewController]; //播放完后的通知


 [movewController release];

}

-(void)movieFinishedCallback:(NSNotification*)notify {

    MPMoviePlayerController* theMovie = [notifyobject];

    [[NSNotificationCenterdefaultCenter] removeObserver:self

                                                    name:MPMoviePlayerPlaybackDidFinishNotification

                                                  object:theMovie];

    [theMovie.view removeFromSuperview];

    [theMovie release];

}

//////////////////////////////// end

2.介绍下MPMoviePlayerViewController。 

注意:MPMoviePlayerViewController 必须 presentMoviePlayerViewControllerAnimated方式添加,否则Done按钮是不会响应通知MPMoviePlayerPlaybackDidFinishNotification事件的;

- (void)createMPPlayerController:(NSString *)sFileNamePath {

    MPMoviePlayerViewController *moviePlayer =[[MPMoviePlayerViewControlleralloc] initWithContentURL:[NSURLfileURLWithPath:sFileNamePath]];

    [moviePlayer.moviePlayerprepareToPlay];

    [selfpresentMoviePlayerViewControllerAnimated:moviePlayer]; // 这里是presentMoviePlayerViewControllerAnimated

    [moviePlayer.moviePlayersetControlStyle:MPMovieControlStyleFullscreen];

    [moviePlayer.view setBackgroundColor:[UIColor clearColor]];

    [moviePlayer.view setFrame:self.view.bounds];

    [[NSNotificationCenterdefaultCenter] addObserver:self

                                             selector:@selector(movieFinishedCallback:)

                                                 name:MPMoviePlayerPlaybackDidFinishNotification

                                               object:moviePlayer.moviePlayer];

    [moviePlayer release];

}

-(void)movieStateChangeCallback:(NSNotification*)notify  {

   //点击播放器中的播放/ 暂停按钮响应的通知

}

-(void)movieFinishedCallback:(NSNotification*)notify{

   // 视频播放完或者在presentMoviePlayerViewControllerAnimated下的Done按钮被点击响应的通知。

    MPMoviePlayerController* theMovie = [notifyobject];

    [[NSNotificationCenterdefaultCenter] removeObserver:self

                                                    name:MPMoviePlayerPlaybackDidFinishNotification

                                                  object:theMovie];

    [selfdismissMoviePlayerViewControllerAnimated];

}


以下是资料

 moviePlayer.moviewControlMode = MPMovieControlModeDefault;

 MPMovieControlModeDefault            显示播放/暂停、音量和时间控制

 MPMovieControlModeVolumeOnly         只显示音量控制

 MPMovieControlModeHidden             没有控制器

 

 moviePlayer.scallingMode = MPMovieScallingModeAspectFit;

 你可以使用下列宽高比值:

 MPMovieScallingModeNone            不做任何缩放

 MPMovieScallingModeAspectFit       适应屏幕大小,保持宽高比

 MPMovieScallingModeAspectFill      适应屏幕大小,保持宽高比,可裁剪

 MPMovieScallingModeFill            充满屏幕,不保持宽高比

 

 你会观察到以下通知:

 MPMoviePlayerContentPreloadDidFinishNotification

 当电影播放器结束对内容的预加载后发出。因为内容可以在仅加载了一部分的情况下播放,所以这个通知可能在已经播放后才发出。

 MPMoviePlayerScallingModeDidChangedNotification

 当用户改变了电影的缩放模式后发出。用户可以点触缩放图标,在全屏播放和窗口播放之间切换。

 MPMoviePlayerPlaybackDidFinishNotification

 当电影播放完毕或者用户按下了Done按钮后发出。


无人机正射影像DOM孔洞修补的另一种方法并调整影像色差(附GlobalMapper24安装包(中文注册版)) 之前介绍了用GlobalMapper联合PhotoShop对无人机正射影像DOM进行破洞修补,但是ps修图非常耗时,需要耐心和足够的细心。对于大面积的水域空洞,纹理特征都差不多,没必要修补得那么细致入微,本文介绍另一种直接在Global Mapper中快速修补大面积水域空洞的方法。 一、Global Mapper中检查数据 二、使用“数字化”工具,绘制需要补洞的多边形区域 三、导出绘制好的矢量区域 四、打开影像下载软件,选择影像图源 五、下载影像 六、调整影像的色差 七、合并影像并输出 八、检查结果数据 阅读详情

相关推荐

ARM CMSIS DAP源码分析(二)

今天分析的是RDDI_DAP_GetARMRegs(DWORD *regs, DWORD *rfpu, ULONG64 mask)和RDDI_DAP_SetARMRegs(DWORD *regs, DWORD *rfpu, ULONG64 mask)这两个函数。 以RDDI_DAP_GetARMRegs(DWORD *regs, DWORD *rfpu, ULONG64 mask)为例,代码如下:

pengxiao618的专栏 7977

iPhone开发之音视频的播放——MPMoviePlayerViewController和AVAutoPlayer的使用

新建工程,添加音视频框架 编辑控制器的.h文件如下: &lt;span style="font-size:18px;"&gt;// // ViewController.h // 音视频预习 // // Created by apple on 15/9/4. // Copyright (c) 2015年 LiuXun. All rights reserved. // #import...

iteye_18817的博客 664

矩形口径喇叭天线设计——参数设置

我们建立好矩形口径喇叭天线的模型后(模型建立可参考B站相关视频或者李明洋的《HFSS天线设计》),如何修改参数达到我们的指标呢?

m0_57263863的博客 1万+

iOS--播放音频、视频(1:AVAudioPlayer 2:MPMoviePlayerViewController)

在iOS中有两种方式可以播放音频视频。 一:AVAudioPlayer。它只能播放本地的音频,不能网络音频(即不能在线播放)MP3    1:首先要手动导入音频的框架 AVFoundation.framework。         2:包含头文件    #import 二:MPMoviePlayerViewController (带VIEW,有视图) 和MPMoviePlayerC

转身扭到脖子的专栏 1206

手游功耗优化:从猜想到硬核实测

功耗本质是“硬件在吃电”,要看电流/功率曲线,而不是只看帧率和温度;定量 = 有数字、有曲线、有对比能说“降了 15%”、“峰值从 7W 降到 5.5W”,而不是“我感觉凉快点”;工具方面:大厂会用外接功率仪 + 手机/芯片厂内部平台;平时也会用 Android/iOS/引擎自带的工具做趋势分析;流程上:选典型机型和场景 → 跑脚本采集 → 对齐 Profiler 数据 → 分析 CPU/GPU/网络谁在吃电;再通过版本对比、画质/帧率组合测试,指导配置和优化。这是一个。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 176

YOLOv11改进策略【独家融合改进】| MobileNetV4+BiFPN,轻松实现降参涨点,适用专栏内所有的骨干替换

可扩展的高效物体检测BiFPN(加权双向特征金字塔网络)

Limiiiing的博客 2360

iOS--音频的简单使用

iOS--音频的简单使用

qq_33777090的博客 1992

DeepSeek赋能公文写作:从高效成文到精准传情的全维度指南

摘要:AI赋能公文写作的精准化实践 公文写作长期面临框架混乱、素材匮乏、表达不规范、修改低效等痛点。DeepSeek等AI工具通过"精准指令+分步赋能"模式实现突破:首先明确公文的目的性、逻辑性和规范性特征;其次采用包含场景、类型、目的等要素的指令模板;再分四步实施:框架搭建确保层次分明,内容填充解决素材问题,表达优化适配不同语体,合规校验把关格式规范。典型案例显示,AI能将数据罗列转化为"数据+成果+价值"的生动表述,使公文既规范又具感染力。这种AI赋能的写作方法显

通俗易懂学IT 231

ios学习--MPMoviePlayerViewController和MPMoviePlayerController

ios播放视频文件一般使用 MPMoviePlayerViewController 和 MPMoviePlayerController。这两者的区别就是MPMoviePlayerViewController里面包含了一个MPMoviePlayerController 先说MPMoviePlayerController 首先要包含 #import 头文件和MediaPlayer.framewor

zzzzzdddddxxxxx的专栏 3324

【异常】解决 Cursor 报错 Unexpected seqno: 2 != 1. Please try again, or contact support if the issue 的排坑指南

在使用 Cursor 辅助编程时,你是否遇到过 AI 突然中断输出,并在右下角弹出一个红色的 Network Error 弹窗?今天我们就来彻底解析并解决这个网络断连问题。

奶爸的编程之路,也就一周冷个三天 2474

074.多任务学习:在YOLO基础上同时进行分割、关键点检测

本文探讨了在YOLOv5模型中实现检测、分割和关键点多任务的技术方案。通过分层特征抽取策略(检测用深层、分割用浅深融合、关键点用中层)解决特征共享问题;采用不确定性加权方法自动平衡多任务损失;设计了支持三种标签的数据流处理方式;并分享了推理部署时的后处理技巧。实践表明,合理的多任务设计可以提升主任务性能,但需权衡标注成本和推理效率。最终方案选择在训练时引入分割作为辅助任务,推理时仅保留检测和关键点,实现了检测mAP提升2.3%的优化效果。

2603_95664987的博客 45

MPMoviePlayerViewController和MPMoviePlayerController

http://www.cnblogs.com/hellocby/archive/2012/08/15/2639763.html MPMoviePlayerViewController和MPMoviePlayerController 使用场合不一样 MPMoviePlayerViewController是在iOS3.2以后的平台上使用。MPMoviePlayerControlle

u011248345的专栏 503

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

视频播放器MPMoviePlayerController,MPMoviePlayerViewController

在iOS中可以使用MPMoviePlayerController或者MPMoviePlayerViewController播放视频,你需要加入MediaPlayer.framework。并且#import支持的格式有:.mov, .mp4, .3gp等等。 1、初始化方法    NSString *filePath = [[NSBundle mainBundle] pathForResourc

xin__dong的专栏 880

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

MPMoviePlayerController与MPMoviePlayerViewController

MPMoviePlayerController与MPMoviePlayerViewController Supported Formats This class plays any movie or audio file supported in iOS. This includes both streamed content and fixed-length file

yuanfen139re的专栏 529

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

从MPMoviePlayerViewController到MPMoviePlayerController

由于项目ios客户端需播放在线视频,笔者首先ios自带的控件MPMoviePlayerViewController。但是,由于项目需求是在每个视频播放完后,向用户展示4个推荐视频。此时笔者发现MPMoviePlayerViewController存在一些不足,分为两个方面:一是每次视频播放完后,player(播放器)的状态是stop,且该player view自动释放,回到上一个view。又因为,

oldskywolf的专栏 1029

ios中MPMoviePlayerViewController和MPMoviePlayerController的区别

ios播放视频文件一般使用 MPMoviePlayerViewController 和 MPMoviePlayerController。前者是一个view,后者是个Controller。区别就是MPMoviePlayerViewController里面包含了一个MPMoviePlayerController 先说MPMoviePlayerController 首先要包含 #import 头

Eduora_meimei的专栏 1501

ios-MPMoviePlayerController和MPMoviePlayerViewController的使用

虽然这两个类都已经废弃了,但是这里还是简单的记录下它们的使用 首先其实这两个类,MPMoviePlayerViewController是自带界面的,我们使用它很简单 //1、获取URL地址 NSURL * url = [[NSBundle mainBundle]URLForResource:@"test.mp4" withExtension:nil]; /

rv0p111 885

MPMoviePlayerViewController和MPMoviePlayerController 这个太容易忘了

MPMoviePlayerViewController和MPMoviePlayerController MPMoviePlayerViewController和MPMoviePlayerController 使用场合不一样 MPMoviePlayerViewController是在iOS3.2以后的平台上使用。MPMoviePlayerController在3.2之前使用,虽然

计算机学习园 959

MPMoviePlayerViewController 和 MPMoviePlayerController

ios播放视频文件一般使用 MPMoviePlayerViewController 和 MPMoviePlayerController。这两者的区别就是MPMoviePlayerViewController里面包含了一个MPMoviePlayerController 先说MPMoviePlayerController 首先要包含 #import 头文件和MediaPlayer.framewor

ffblog的专栏 425
上一篇: CocoaPods安装和使用教程
下一篇: iOS开发网络篇—文件下载(暂停和恢复)
直隶码农
博客等级 码龄19年 95粉丝 103原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值