写点什么

Moonlight 项目团队的 21 天

  • 2007-06-22
  • 本文字数:1087 字

    阅读完需:约 4 分钟

5 月底收到在巴黎举行的 ReMix07 大会的参会邀请后,Mono 团队开始夜以继日地投入到他们的 Silverlight 实现——Moonlight 项目中。用 Miguel de Icaza 自己的话 说:

5 月 31 日,除了学习 Silverlight、探究如何解码视频、对视频进行简单测试 并开始计划 之外,还没有什么可以演示的东西。

不过仅靠 Silverlight 1.0 API 做为参考,通过 Email 沟通和即时通讯工具(IRC),在三周的时间内他们就完成了下面这些工作:

6 月 14 日

  • 文本渲染(Jeff)
  • 放射变化(Sebastien)
  • 在改变子节点时 Canvas 处理附带属性
  • 实现下载工具(Downloader)(Toshok)
  • 托管下载工具(Miguel)
  • 鼠标移入 / 移出事件(Miguel)
  • 从网络上加载图片
  • Everaldo 实现内嵌型插件,而不是现在正用的 Hack

6 月 15 日

  • 文本中的 Inline 和 Run
  • 性能提升
  • 连接单个对象的鼠标事件
  • 使用 Assembly 从 XAML 文件中装载定制的对象
  • Everaldo 完成用 Javascript 修改界面的插件
  • Sebastien 开始用 Silverlight 将 Surface 导出至 Gtk#

6 月 16 日

  • XAML 依赖文件的装载(Miguel,Jackson)
  • Toshok 使用绑定沙盒优化渲染
  • Jackon 负责 hook 依赖装载
  • Jeff 重构视频引擎,使其可重用
  • C#绑定

6 月 17 日

  • Jeff 实现 VideoBrush
  • Sebastien 实现多种图像属性,可通过特定参数进行渲染
  • 更新 Event 系统,Surface 现在能以正确的顺序得到事件
  • 修复动画解析器,Surface 动画现在可正常定时
  • Everaldo 在 HTML 页面里增加对 XAML 内容的支持(在 URL 里面用#标识)
  • Jackson 实现 XAML 装载时对 x:Class 的支持

6 月 18 日

  • Rolf 实现在 Moon 类型系统和绑定里对 Nullable 类型的支持,以在 C#代码中映射 Nullable 到 C++ Nullable
  • Jeff 实现了对 VideoBrush 共享 MediaElement 的支持
  • Jeff 为 Runs 实现 Brush
  • Paolo 帮助勾画 Moonlight 的 Surface,使交互更平滑
  • Chris 和 Sebsatien 优化屏幕渲染的性能
  • Chris 提高动画和屏幕的刷新,构建基于 Xlib 的图像表面
  • Jackson 实现 Path Data 解析,Sebsatien 完成底层的架构,使得 Sam Ruby 的例子站点上的其他例子可以渲染
  • Jackson 和 Sebastien 实现由于 Path 渲染丢失的不同片段
  • Jason 实现了对 XAML 的支持

6 月 19 日

  • Javascript 桥接 DependencyObject 可用,Javascript 控制的 XAML 时钟事例现在可以运行
  • 实现集合迭代
  • 解决浏览器正常关闭问题
  • Rolf 实现一些丢失的托管绑定

项目的进展确实让人惊讶,在如此短的时间里竟然撰写了超过 3 万 8 千行代码,展示的截屏证明了这一切。在一个应用程序中内置 Moonlight,以让 Linux 应用支持 Silverlight 内容的这个想法令人惊叹。祝贺 Mono 团队,在这么短的时间内就在 Moonlight 项目上取得了如此不俗的成绩!

查看英文原文: Moonlight in 21 days

2007-06-22 08:08830

评论

发布
暂无评论
发现更多内容

揭秘阿里云 RTS SDK 是如何实现直播降低延迟和卡顿

阿里云CloudImagine

阿里云 直播架构 直播技术 视频直播 视频云

20张图让你彻底掌握负载均衡的秘密

负载均衡 编程 程序员 计算机

终于有人!把双十一电商秒杀系统高并发架构全部讲清楚了

Java 程序员 面试 高并发 计算机

去中心化DeFi系统开发

Geek_23f0c3

智能合约 DeFi去中心化系统开发 DAPP智能合约交易系统开发

FastApi-12-Form表单

Python研究所

FastApi 8月日更

啃完这些Spring知识点,我竟吊打了阿里面试官(附面经+笔记

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

微博SDK初始化问题 please init sdk before use it. Wb.install()

mengxn

微博sdk

远程办公一星期,竟等来了阿里新零售视频面(Java岗,已过2面)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

Maven 项目执行的时候提示 JAVA_HOME is not correctly set 错误

HoneyMoose

Java Arrays.asList 和 new ArrayList(Arrays.asList()) 的对比

HoneyMoose

巧用Python访问台达AS228交互

林建

Python Modbus协议 台达 AS228T

原理分析!如何将springboot项目打成war包放入tomcat中运行

Summer

Java 学习 程序员 架构 springboot

Flink CDC 2.0 正式发布,详解核心改进

Apache Flink

flink

金三银四,如何远程面试拿下大厂offer?(附大厂面经+面试宝典)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

什么是工控主机?工控主机安卓主板有哪些配置?

双赞工控

Fil价格今日行情?Fil有投资的价值吗?

区块链 分布式存储 IPFS fil fil价格今日行情怎么样

区块链钱包搭建,去中心钱包搭建,仿IM钱包

疫情之下,延期返工,我竟然“远程面试”了3家公司(备战春招)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

U2Net基于ModelArts Notbook的仿真实验

华为云开发者联盟

开源 modelarts 目标检测算法 U2Net Notbook

【SpringCloud 技术专题】「原生态 Fegin」打开 Fegin 之 RPC 技术的开端,你会使用原生态的 Fegin 吗?(下)

码界西柚

SpringCloud OpenFegin Fegin 8月日更

肺炎在家“闭关”,阿里竟发来视频面试,4面顺利拿下offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

如何在多云环境中建立信任

云计算

iOS 开发技术栈与进阶

iOSer

ios 面试 iOS 知识体系 iOS技术栈

解决安全漏洞扫描,就靠它了

百度开发者中心

产品 最佳实践 企业动态 百度安全

Flutter Android 端 FlutterInjector 及依赖流程源码分析

工匠若水

flutter android 8月日更

最全总结 | 聊聊 Python 数据处理全家桶(PgSQL篇)

星安果

Python 数据库 postgresql PgSQL

中国如何应对中美博弈?

石云升

学习 贸易战 8月日更

初识 C#

若尘

C# 8月日更

更智能更高效!区块链打造更“美” 服装行业

旺链科技

区块链 服装产业

疫情在家“闭关修炼”,读完这些Java技术栈,愿金三银四过五斩六

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

通俗易懂的ReentrantLock,不懂你来砍我

程序猿阿星

AQS 公平锁 非公平锁 独占锁 ReentrantLock;

Moonlight项目团队的21天_研发效能_James Vastbinder_InfoQ精选文章