必威体育下载克里斯蒂安·海尔曼

贴有“转换”标签的帖子

使视频转换和嵌入变得容易

星期四,12月1日,2011年

我很幸运有一个vid.ly专业账户来转换视频。幸运的是,最近免费服务开始限制你一个月内观看视频的次数(因为他们受到了来自亚洲大量滥用该服务的流量的冲击)。如果你还没有听说过vid.ly,它是一种将视频转换成几十种格式的服务。HTML5嵌入并给你一个统一资源定位地址将设备重定向到正确的视频格式。

现在,使我的同事更容易转换和嵌入视频HTML5,我构建了一个简单的界面,用于在我们的博客上转换和嵌入视频。为此,我使用美国石油学会,但我想避免把钥匙交给同事使用。

转换视频的界面非常简单:


             
              >
             
            
             >
            视频转换和嵌入>>

             
              >
             
  
             echo$消息;?>
              
               >
              只需在下面添加要转换的视频的URL,就可以得到嵌入代码。一封电子邮件将通知您转换成功。转换可能需要一个小时。>
              
              方法=
              “发布”
              >
             
    
              
               >
              
              
              对于=
              “电子邮件”
              >
             电子邮件:>
              
              类型=
              “文本” 
              身份证件=
              “电子邮件” 
              名称=
              “电子邮件”
              >
              >
             
    
             
              >
             
             
             对于=
             “URL”
             >
            网址:>
             
             类型=
             “文本” 
             身份证件=
             “URL” 
             名称=
             “URL”
             >
             >
            
    
             
              >
             
             
             类型=
             “提交” 
             名称=
             “发送” 
             价值=
             “让它如此”
             >
             >
            
  >
>

视频转换和嵌入

只需在下面添加要转换的视频的URL,就可以得到嵌入代码。一封电子邮件将通知您转换成功。转换可能需要一个小时。

最酷的功能之一美国石油学会它允许您定义一个电子邮件,该电子邮件不是与密钥连接的电子邮件,而是一个接收到转换开始的两个通知的电子邮件,错误和成功电子邮件。这使我的工作容易多了。我所要做的就是把正确的XML把它送到美国石油学会.结果是XML,同样,我需要检查返回的内容并以表格形式给出反馈:


            
$KEY = '在此处添加密钥'
$消息 = 
如果()伊塞特()美元邮报[“发送”]{如果()美元邮报['电子邮件'] !=  & & 美元邮报[“URL”] !=  {
    $查询 =  '
             '.
              '
             
              
               添加媒体
              
              
               四百八十一
              '
             .
              '
             
              '
             .$KEY.''.
              '
             
              '
             .美元邮报['电子邮件'].''.
              '
             
              '
             .美元邮报[“URL”].''.
              '
             
              自动气象站
             '
    $URL = 'http://m.vid.ly/api/'
    每小时美元 = 卷曲初始化()
    库尔斯基塞特()每小时美元克鲁波特$URL
    库尔斯基塞特()每小时美元箭毒柱1个
    库尔斯基塞特()每小时美元卷边返回传输 1个 
    库尔斯基塞特()每小时美元curlopt_邮箱“XML=”.乌伦代码()$查询
    $结果 = 姜黄()每小时美元
    卷曲关闭()每小时美元$XML = simpleXML加载字符串()$结果如果()$XML>成功 {
      $VID = $XML>成功>媒体短链接>短链
      美元视频 = '
             .
               ''
      $消息 = '
             

转换已开始

' . '

视频转换正在进行中。'. '你应该收到一封告诉你的电子邮件和一封何时发送的电子邮件'. '视频URL已就绪。复制粘贴到的代码'. 博客是:

'
. '' } 其他的 { $消息 = '

错误

' . '

转换时出了点问题,'. '请再试一次。

'
} } 其他的 { $消息 = '

错误

' . '

请提供视频URL和电子邮件

'
} } ?>

转换已开始

'.'

视频转换正在进行中。'.“你应该收到一封告诉你的电子邮件,以及一封何时发送的电子邮件。”'视频URL已就绪。复制粘贴到的代码。博客是:

'.' ';其他$message='

错误

'.'

转换时出错了。'请再试一次。

';其他$message='

错误

'.'

请提供视频URL和电子邮件

';}?>

很简单,不是吗?现在我的同事可以添加他们的电子邮件,给出表格A统一资源定位地址要转换的视频在Web上并将得到复制和粘贴HTML对于视频,例如:


              
               控制
               预紧力=
               “没有” 
               风格=
               “宽度:100%;高度:300px;” 
              
海报=“http://cf.cdn.vid.ly/1l5i5M/poster.jpg”>

                
                SRC=
                “http://cf.cdn.vid.ly/1l5i5M/mp4.mp4” 
                类型=
                “视频/MP4”
                >
               

                 
                 SRC=
                 “http://cf.cdn.vid.ly/1l5i5M/webm.webm” 
                 类型=
                 “视频/WebM”
                 >
                

                  
                  SRC=
                  “http://cf.cdn.vid.ly/1l5i5m/ogv.ogv” 
                  类型=
                  “视频/OGG”
                  >
                 

                   
                   目标=
                   “空白” 
                   HREF=
                   'http://vid.ly/1l5i5M'
                   >
                  

                    
                    SRC=
                    'http://cf.cdn.vid.ly/1l5i5m/paster.jpg' 
                    宽度=
                    “500”
                    >
                    >
                   
>

结果是:

HTML5向支持它的浏览器提供视频,并为不支持它的用户提供指向vid.ly的链接:)代码在GitHub上作为一个gist

vid.ly bookmarklet–下载不同格式

星期六,2月19日,2011年

如果你最近在HTML5你会知道我是一个视频转换服务的大粉丝 视频.此服务自动将您的视频转换为几十种不同的格式,并在您调用单个视频时将浏览器和移动设备重定向为正确的格式。统一资源定位地址.

作为一个偏执的开发者,我还想有一种方法来下载经过浏览器优化的视频版本,所以我写了一个书签让你这么做。

只需将以下链接拖动到浏览器工具栏:VID.LY下载

然后,bookmarklet将链接添加到任何vid.ly页面,以下载不同版本:

视频下载链接

在Skype上录制访谈并轻松转换为HTML5友好格式

星期三,1月5日,2011年

明天我将在Mozilla Hacks博客上开始一系列关于HTML5“。我觉得给一些人介绍一下,问他们几个问题,这样就可以让他们对你遇到的那些令人敬畏的人有一个正面的印象。爱尔兰共和国或者在Github上查看。

我发现自己有几个问题要解决:

  • 如何录制高质量的Skype呼叫?
  • 如何将视频转换为HTML5友好的格式(如“人民HTML5“有了Flash电影会有点讽刺)

有趣的是,我发现有了良好的连接和一些网络欺骗,这是非常容易的。检查以下150秒版本的屏幕放映:

我需要做的第一件事就是录制Skype电话。我试着用伊肖乌但这并没有完全做到。

所以我想我应该咬紧牙关花点钱。Skype呼叫录音机我的Mac售价是20美元,工作很顺利——它会自动添加到Skype中,并给你一个录制按钮。它将录音存储为压敏电阻有一个AAC和H.264编码。

一旦我录制了我想转换的视频HTML5嵌入。我发现最简单的事情是MIRO视频转换器–只需将文件拖到上面,选择webm/v8,它会为您(孩子们,这就是为什么你要用Mac!).

一切都很好,但不是全部HTML5浏览器获得WebM,正确的?你还需要一个MP4型版本与A奥格理论一。也,我需要一个空间把录像放在正确的地方哑剧打字,我不付钱。

输入归档文件.如果你把你的视频和录音作为创意共享来发布,你可以把它们放在那里。他们在页面上提供一个上载程序或文件传输协议访问(奇怪的是,一次只能上载一个)。archive.org最酷的一点是,如果你稍等一下,他们会把你的视频转换成MP4型奥格为你!

检查archive.org上的视频页面我只上传了WebM视频,其他格式和动画GIF自动为我创建。

唯一的问题是它没有给你任何正在转换的信息,所以你所能做的就是等待,回到页面,看看魔法是什么时候发生的。

一旦archive.org服务器Pixies完成了他们的工作,您可以使用视频标签来显示您的视频,使用视频页面中的所有源:

       

请注意,作为回退,我指向一个包含Flash电影的站点(YouTube或本例中的站点screener.com网站我曾经录制过这部电影)。

就这样!20美元的应用程序,和免费的网络服务,我们有托管和转换。我们还可以添加字幕,如果我们只是添加通用字幕.我爱网络!

YQL的JSON输出的恼人之处及其原因

星期三,9月22日,2010年

几天前,西蒙·威利森在Twitter上发泄了一件令我恼火的事YQL公司,也是:

与YQL的JSON输出作斗争,其中一个结果的响应与两个结果的响应完全不同

有趣的是它不是betway体育官方网YQL公司bug——相反,它只是通用代码和数据转换的问题。

问题在于YQL JSON结果

让我们举个例子。如果你使用YQL公司例如,获取有关“伦敦”的地理信息你得到了几个结果XML

从geo.places中选择*,其中text=“London”

多位置XML输出

如果你使用杰森当输出格式为数组时,

多位置JSON输出

酷,所以你可以绕过去query.results.place查询.results.place,正确的?不,因为当只有一个结果时,我们有不同的情况。不是数组,地方变成了一个物体

从geo.places中选择*,其中text=“London,UK”

JSON中的单个结果变为对象而不是数组

这就是让西蒙苦恼的原因,因为这意味着你需要编写一个解决这个问题的函数。例如,在地质公园探索者中,我用的是Read()函数来显示每个位置的结果,我使用以下内容来处理杰森输出问题:

函数呈现列表($P)
如果(sizeof($p)>1)
foreach($p为$p p)
$o.=渲染($pp);
}

其他
$O=渲染($P);
}

返回$o;
}

在JavaScript中,您必须检查长度,直接显示结果或循环显示结果。

通用转换与创建单个美国石油学会

转换时出现问题XML杰森-作为结果XML来自地质公园美国石油学会没有包含place的place元素,而是为每个结果重复place元素杰森解析器必须做出决定:如果它只是一个元素,这将成为结果对象的属性。如果有多个place元素,它将成为一个数组属性(因为不能重复相同的属性名)。

如果你建立自己的美国石油学会你知道不同结果的格式,即使只有一个结果,你也可以强制它成为一个数组。如果你不知道XML模式不能假设什么应该是数组,什么不应该是数组。所以一般的解决方案XML杰森未知的转换XML使用1到n的结果将始终创建一个数组。这样你就无法到达place.admin1.代码例如,但你总是必须这样做位置[0].admin1[0].代码[0]–这真的不是明智之举。

ASYQL公司是一个开放的系统XML结果是由开放表定义中的任何人提供的,我能想到的唯一方法是YQL公司在表中,某些元素应始终强制成为数组。

你有解决办法吗?

使用YQL加载和转换RSS源,真的很快。

星期二,12月8日,2009年

我尊敬的同事Stoyan Stefanov目前正在演出日程(每天写博客).今天我在他的博客上看到了一个客人的位置如何使用YQL公司取回五个RSS比任何其他技术都快得多.

检索5个RSS源的速度比较。

如本条末尾所述,你可以使用YQL公司用嵌入的javascript打开表把所有努力的转换工作转移到YQL公司服务器,也是。

这张桌子就是这样。这样,检索速度会减慢一点(如YQL公司需要执行另一个请求以提取表定义):

检索五个RSS提要,并在服务器上使用您执行的YQL对其进行转换。

然而,使用此表检索多个源HTML死得容易:

$data=数组
'http://code.flickr.com/blog/feed/rss/',
'http://feeds.delicious.com/v2/rss/codepo8?计数=15’,
'http://www.stevesouders.com/blog/feed/rss',
'http://www.yqlbog.net/blog/feed/',
'http://www.quirksmode.org/blog/index.xml'

$url='http://query.yahooapis.com/v1/public/yql?Q=';
$query=“使用”http://github.com/codepo8/yql-rss-speed-comparison/raw/master/rss.multi.list.xml'作为m;从m中选择*feeds=“'”.implode(“”,“”,$data)。“'”和html='true'和compact='true'“;
$url.=urlencode($query)。'&format=xml&diagnostics=false';
$ch=curl_init();
卷发($ch,科洛普网址$URL);
卷发($ch,科洛普返回传输,1);
$content=curl_exec($ch);
卷曲关闭($ch);
$content=preg_replace('/..*
$content=preg_replace('/div>.*/'、'div>'、$content);
echo$内容;

要使用打开的表,只需将RSSfeeds作为feeds参数:

使用“http://github.com/codepo8/yql-rss-speed-comparison/raw/master/rss.multi.list.xml”作为m;
从m中选择*,其中feeds=“
'http://code.flickr.com/blog/feed/rss/',
'http://feeds.delicious.com/v2/rss/codepo8?计数=15’,
'http://www.stevesouders.com/blog/feed/rss',
'http://www.yqlbog.net/blog/feed/',
'http://www.quirksmode.org/blog/index.xml'
“和html='true'和compact='true'

试试看吧YQL公司慰问.

这个HTML如果要获取HTML回到桌子上。把它拿出来,得到一个提要列表。

结果为HTML(带有HTML参数)作为源(没有HTML参数).

这个契约参数定义是否要为每个条目返回描述。

结果为HTML(无说明)作为HTML带说明.

通过使用杰森-p-x输出格式(带回调的XML)可以在javascript中很容易使用它

       


如果你想比较一下自己,从github获取所有示例的源代码.