NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:08610

评论

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

了解 Java 中的锁 Lock

Ayue、

ReentrantReadWriteLock ReentrantLock lock

AI新手语音入门:认识词错率WER与字错率CER

华为云开发者联盟

语音识别 词错率 WER 字错率 CER

群聊泄密敲响警钟,WorkPlus织密信息安全“防护网”

WorkPlus

TCP 两次握手为什么无法阻止历史连接?

华为云开发者联盟

TCP 报文 握手 RST 报文 两次握手

Log4j2 消停了,Logback 开始塌房了?

程序猿DD

Java 日志 漏洞

拿捏SQL数据分析:从基础破冰到面试题解

博文视点Broadview

前端开发之JS中编写For循环的方法

@零度

JavaScript 前端开发

Linux之tail命令

入门小站

Linux

使用 USE 方法分析系统性能瓶颈

耳东@Erdong

监控 28天写作 use 12月日更

Flutter 完美的验证码输入框(2 种方法)【Flutter专题25】

坚果

flutter 28天写作 12月日更

PassJava 开源(五) :SpringCloud Alibaba 组件简介 #私藏项目实操分享#

悟空聊架构

SpringCloud 28天写作 passjava 悟空聊架构 12月日更

Azkaban工作流调度

恒生LIGHT云社区

工作流 工作流调度 任务调度 Azkaban

给弟弟的信第22封|写技术博客有哪些益处?

大菠萝

28天写作

腾讯云商用密码合规解决方案,亮相2021商用密码应用创新高端研讨会

腾讯安全云鼎实验室

商用密码 云上安全 数字生态 安全服务

Linux之tail命令

入门小站

Linux

图解带你掌握`JVM`运行时核心内存区

华为云开发者联盟

Java JVM 内存 堆内存

react源码解析16.concurrent模式

buchila11

React

从科技出发,中科柏诚信云链为中小企业融资注入新动能

联营汇聚

小红书基于 StarRocks 构建广告数据中心的实践

StarRocks

数据库 数据分析 StarRocks

打造“智慧之眼”与“创新之轮”,华睿科技助推制造业智能升级

科技新消息

“数”驰天下,华为云DRS 高效支撑T3出行平稳迁移

华为云开发者联盟

数据库 数据迁移 华为云DRS T3出行

Java开发之线程、多线程,线程池面试题

@零度

多线程 线程池 JAVA开发

服务器数量从21台降至3台,TDengine在跨越速运集团的落地实践

TDengine

数据库 tdengine 时序数据库

Java泛型可行与不可行

编程江湖

如何用建木CI生成Allure报表

Jianmu

CI/CD Allure 国产开源

如何有效使用预训练语言模型

云智慧AIOps社区

算法 智能运维 云智慧 语言模型 南加州大学

学习乐器的好处

Tiger

28天写作

React vs Angular,到底那个更好用

编程江湖

前端开发

Gartner技术成熟曲线详解

Kafka中文社区

Linxu云计算这样学效率更快,Linux基础篇,expect-正则表达式-sed-cut的使用

学神来啦

Linux centos sed linux运维 expect

DM 分库分表 DDL “乐观协调” 模式介绍丨TiDB 工具分享

PingCAP

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