纠结的Video Player

简介:

Web项目中需要播放视频。需要支持桌面浏览器,同时支持iPhone,iPad设备,目前还不用考虑Android和微软自家的Windows Phone设备。

桌面浏览器当然首选使用Flash Player播放视频了,iPHone和iPad不支持Flash,当然只能支持HTML5 video了。

需求如下:

1.桌面浏览器:桌面浏览器这一块其实要求挺多的。不要假设所有访问站点的用户都安装了Flash Player。所以有以下场景:

  1. 用户安装了Flash Player,优先使用Flash Player播放视频。
  2. 用户没有安装Flash Player,检测用户当前的浏览器是否支持HTML5 Video;如果支持使用HTML5 Video Player,否则提示用户去Adobe官方网站下载最新版的Flash Player。

2.iPhone和iPad移动设备: 只支持HTML5 video,所以只能使用HTML5 VideoPlayer。

其实对于iPhone和iPad移动设备来说,使用HTML5 Video Player来说,操作相对比较简单,然后它上面的Safari支持的HTML5视频格式只有 .mp4

提示:MPEG4 = 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件

但是其他桌面浏览器对video格式的支持很不一样,所以当然你需要同时支持Flash和HTML5时,视频格式就多起来了。目前项目后台视频数据格式包括以下三种: .flv, .mp4, .3gp。

新版Flash Player支持.flv和.mp4格式的视频文件。参考网站:

http://help.adobe.com/zh_CN/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d46.html

但是桌面Firefox和Chrome,Safari支持情况不统一,如下表:

clip_image001

但是对于内容发布者来说,一个视频需要保存三种不同的格式,在人力和物力成本上都是很大一个消耗。所以目前各大浏览器厂商都在尝试使用.WebM格式开放的视频格式。从上表可以看出Chrome,Firefox以及Opera都对WebM格式的视频进行支持。

在格式大 战尚未统一的情况下,一个站点要支持Flash Player和HTML5 Video的话还是需要很多改进和完善的。这也是国内很多视频为主的网站和应用,在iPhone和iPad上查看在线视频时,就提出开发客户端软件。但是 这样对于那些中小企业的站点来说,还是不现实的。

但是有一些国外的公司已经开发出对Flash和HTML5同时支持比较好的播放器,有开源的,也有商业的。

目录
相关文章
|
人工智能 计算机视觉
教程 |【阿里云.人脸识别】Access Key ID 和 Access Key Secret 查看方法
本章主要介绍阿里云.人脸识别 Access Key ID 和 Access Key Secret 查看方法。
|
6月前
|
人工智能 OLAP 数据处理
解锁数仓内AI流水线,AnalyticDB Ray基于多模ETL+ML提效开发与运维
AnalyticDB Ray 是AnalyticDB MySQL 推出的全托管Ray服务,基于开源 Ray 的丰富生态,经过多模态处理、具身智能、搜索推荐、金融风控等场景的锤炼,对Ray内核和服务能力进行了全栈增强。
|
3月前
|
存储 人工智能 监控
淘宝闪购基于Flink&Paimon的Lakehouse生产实践:从实时数仓到湖仓一体化的演进之路
本文整理自淘宝闪购(饿了么)大数据架构师王沛斌在 Flink Forward Asia 2025 上海站的分享,深度解析其基于 Apache Flink 与 Paimon 的 Lakehouse 架构演进与落地实践,涵盖实时数仓发展、技术选型、平台建设及未来展望。
916 0
淘宝闪购基于Flink&Paimon的Lakehouse生产实践:从实时数仓到湖仓一体化的演进之路
|
9月前
|
机器学习/深度学习 物联网 PyTorch
小白避坑指南:国内用Colossal-AI微调DeepSeek 1.5B的完整踩坑记录(附镜像加速方案)
本文详细记录了使用Colossal-Ai对DeepSeek-Qwen模型进行微调的过程,包括模型下载、环境部署、数据集处理及代码实现等环节。重点介绍了LoRA低秩适配方法和Colossal-Ai分布式训练框架的使用技巧,解决了模型封装后函数调用冲突、梯度检查点配置等问题。通过命令行参数灵活调整训练配置,最终在两块A100 GPU上完成训练,单卡显存占用约11GB,利用率达85%。文章总结了常见问题及解决方法,为后续研究提供参考。
788 15
小白避坑指南:国内用Colossal-AI微调DeepSeek 1.5B的完整踩坑记录(附镜像加速方案)
|
存储 API 图形学
Unity精华☀️二、到底是什么原因导致“万向锁”?旋转翻车的终极解析!
Unity精华☀️二、到底是什么原因导致“万向锁”?旋转翻车的终极解析!
|
前端开发 Linux iOS开发
使用Python推送FLV流
本文介绍如何使用Python推送FLV流,涵盖环境准备、FFmpeg安装、创建Flask应用及前端页面,最后提供运行服务器和查看结果的步骤,适合初学者参考实践。
530 0
|
存储 人工智能 自然语言处理
比Coze AI工作流更简单,用AI数据库打造一个AI笑话大师应用
本文展示如何利用iThinkAir的AI数据库创建一个能生成图文并茂笑话的“笑话大师”。通过构建本地化的数据库,结合多种视图展示形式,并利用AI指令流自动化生成内容。主要步骤包括建立数据库与表结构、定义字段类型如“指令流”以触发AI工作流程。流程涉及条件判断、文本合成与分割、AI模型生成笑话及其插图等内容。最终,笑话大师不仅能生成多样化笑话,还能通过不同方式分享给他人使用,如发布应用、授权协作或备份导出文件。这不仅是一个创意项目示例,也为AI数据库应用开发提供了灵感。
|
存储 数据可视化 API
Python项目开发:Flask基于Python的天气数据可视化平台
Python项目开发:Flask基于Python的天气数据可视化平台
511 0
|
人工智能 自然语言处理 算法
人工智能,应该如何测试?(五)ASR 效果测试介绍
ASR是自动语音识别技术,将语音转化为文本,涉及多学科知识。数据收集是关键,包括特定人/非特定人、词汇量大小、发音方式、方言和情感等多种类别,高质量数据成本高。ASR流程包括数据收集、标注、输入算法得到文本输出并评估。常用评估指标有字错率(WER)、字正确率及插入/删除/替换率。数据标注需严格遵循规范,工作量大,而Levenshtein库可用于自动化效果评测。在AI领域,大部分时间投入在数据处理上。
|
域名解析 缓存 网络协议
如何在 Linux 上刷新本地 DNS 缓存?
如何在 Linux 上刷新本地 DNS 缓存?
1316 0
如何在 Linux 上刷新本地 DNS 缓存?