タグ

ブックマーク / mindcat.hatenadiary.org (8)

  • 「MPEG-DASHとは何か?」のまとめ - 風と宇宙とプログラム

    MPEG-DASHについて勉強する機会があったので、今更ながら簡単にまとめてみた。 はじめに MPEG-DASH、その業界ではDASHと言えば通じる。 DASHはDynamic Adaptive Streaming over HTTPの略。 Adaptive Streaming ... なんかカッコイイ響き。 ISO/IEC 23001-6 で規格化されている。 DASHの目的 HTTPを使ってビデオのストリーミングを行う技術。 ネットワークの帯域やビデオのビットレートや端末の性能などの問題を吸収。 再生が途切れない(再生中にバッファリング状態にならない)ように動的にコンテンツ(ビットレートなど)を切り替える。 環境に応じた最適な高品質のビデオストリームを提供できる。 SkypeやNetflix、Huluなどでも似たような技術を使っている。 DASHは普通のHTTPサーバで実現できるのが利

    「MPEG-DASHとは何か?」のまとめ - 風と宇宙とプログラム
    taninsw
    taninsw 2012/03/15
    面白い
  • ECMAScript Test262 - 風と宇宙とプログラム

    ECMAScriptのテストケースが9/25付けで更新されていたので、各ブラウザについて実行させてみた。 ECMAScript Test262 Test Suite Ver.: ES5 | Test Suite Date: 2011-09-25 ブラウザのバージョンは以下の通り: Chrome Firefox Opera Safari IE 14.0.835.202 m 7.0.1 11.51 5.1.1(7534.51.22) 9.0.8112.16421 結果 Browser Pass Fail % Firefox 10829 187 98 IE9 10693 323 97 Chrome 10589 427 96 Safari 10241 775 93 Opera 7264 3752 66 IE9が随分と健闘している。Operaはちょっと残念な結果。 まだテスト内容を確認していないが、

    ECMAScript Test262 - 風と宇宙とプログラム
  • JavaScriptのメソッドコールの仕組みを深く理解する (参照型とは?) - 風と宇宙とプログラム

    はじめに JavaScriptでは関数もオブジェクトです。このことはよく理解されていると思います。関数とメソッドとの明確な違いはなく、どちらも関数オブジェクトである、というところまではよいのですが、関数コールとメソッドコールの違い、あるいはその仕組みは正確に理解されているでしょうか。先日、職場の後輩に問題を出したところ正確に答えられえなかったので、いまさら?と思われるかも知れませんが、関数コールの仕組みを解説します。 関数とメソッド JavaScriptでは関数とメソッドには質的な違いはありません。オブジェクトのプロパティとして定義される関数を便宜的にメソッドと呼んでいるだけです。parseInt()などのグローバル関数もグローバルオブジェクトのプロパティであり、関数の中でローカルに定義した関数も概念的にはActivation Objectのプロパティなので基的には全ての関数はメソッド

    JavaScriptのメソッドコールの仕組みを深く理解する (参照型とは?) - 風と宇宙とプログラム
  • HTML5 videoでリアルタイム顔認識 - 風と宇宙とプログラム

    以前、、ビデオのリアルタイムなヒストグラム表示を作ってみたが、思ったより高速だったので、もっと処理の重いものをやったらどうだろうと思い、JavaScriptで書かれた顔認識ソフトを利用して、ビデオに対してどのくらい可能なのかを試してみた。 JavaScriptによる顔認識ソフトは以下のものを利用。 Face Detection in JavaScript via HTML5 Canvas | Badass JavaScript 中身を見ると、canvasにdrawImage()した画像をgetImageData()でピクセル情報を取得している。その際、モノクロ画像に変換してから認識している。また、動的にcanvasオブジェクトを生成してオリジナルの部分的な領域を抽出している。その先はちょっとブラックボックス。 で、ビデオのヒストグラム表示でやったときと同じように、ビデオを一旦canvasに

    HTML5 videoでリアルタイム顔認識 - 風と宇宙とプログラム
  • JavaScriptのundefinedというクセ者のいろいろ - 風と宇宙とプログラム

    はじめに JavaScriptの初心者にとってundefinedというのはちょっと混乱を招くものらしい。nullとの違いや使い分けがよく分からなかったり、数値やブール値との比較が不自然だったりするのが原因と思われる。ここでは、そのようなundefinedのいろいろについてまとめてみた。 ECMA262規格では undefinedとnullに関して、ECMA262規格では最初に以下のような記述がある。 4.3.9 undefined value primitive value used when a variable has not been assigned a value. 4.3.11 null value primitive value that represents the intentional absence of any object value. undefinedは変数に

    JavaScriptのundefinedというクセ者のいろいろ - 風と宇宙とプログラム
  • JavaScriptのsetInterval関数の意味を正確に理解するための1つの説明 - 風と宇宙とプログラム

    ECMAScriptの言語仕様と組込関数の動作仕様は非常にきめ細かく規定されていますが、それに含まれていないJavaScriptの関数の仕様はどうもはっきりしないように思えます。そのためか、それを利用するコードも正確なものではないものが見受けられます。その1つがsetInterval関数。何をいまさら?という感じですが、ちょっとググッてみたところsetInterval関数を解説する記事は沢山見つかりますが、そのことについて注意している記事はほとんど見当たりません。 何のことかと言うと、setInterval関数は一定間隔で指定した関数を実行する、とだけ説明されていて、何が一定なの?ということについての説明が抜けているように思われます。例えば、もし、関数が一定間隔でコールされるなら、下のコードを実行した場合、duration=???はいくつと表示されるのが正しいのでしょうか? functio

    JavaScriptのsetInterval関数の意味を正確に理解するための1つの説明 - 風と宇宙とプログラム
  • Canvasのベンチマークテストを作って速度を比較してみた - 風と宇宙とプログラム

    はじめに Canvasのパフォーマンスを測定するベンチマークプログラムはそこら中に転がっていますが、ほんの一部分の測定だったり、逆に中身が複雑過ぎたりと僕が希望するようなものが見当たらなかったので、自分で作って各ブラウザで測定してみました。 測定したブラウザのバージョンは以下です。 Chrome Firefox Safari Opera 9.0.570.1 dev 3.6.12 5.0.2 10.63 ベンチマーク 作成したベンチマークプログラムは単位時間で描画関数を何回繰り返して実行できるかという単純なものです。実行中に描画される絵のいくつかを載せておきます。 hlinebezierfill_arcfill_starsimage_scaleradial_gradient 以下に全測定項目の概要を記します。 hline ひたすら水平方向の直線を描きます。 vline 垂直方向の直線 lin

    Canvasのベンチマークテストを作って速度を比較してみた - 風と宇宙とプログラム
  • FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム

    はじめに JavaScriptは簡単な言語のようでいて、実は奥が深く、初心者にとってなかなかその質がわかりにくい言語です。ここでは、JavaScriptの言語的エッセンスを理解できるようなものをFAQ形式で書いてみました。ご意見や誤り等を指摘してもらえたら嬉しいです。 なお、JavaScriptの標準化であるECMAScriptは、今年末にEdition 5 がリリースされる予定です。このFAQは、現在のバージョンであるEdition 3をベースにしています。 ECMAScriptって何ですか? ECMAはEuropean Computer Manufacturer Association(欧州電子計算機工業会)の略で、標準化団体です。NetscapeのJavaScriptMicrosoftのJScriptをベースに、純粋なプログラム言語部分を抽出したものをECMAで標準化したスクリプ

    FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム
  • 1