カテゴリ別アーカイブ: Tumblr

Tumblr のアニメーション GIF で VJ が出来る GifVJ を Web アプリケーションに移植した

2012年02月09日 00時14分 | JavaScript, Music, Tumblr | By: mitukiii

̃Gg[͂ĂȃubN}[Nɒlj

Tumblr のアニメーション GIF で VJ が出来る GIfVJ1.0 – 反射神経 がクールだったので
アプリケーションをダウンロードしなくても気軽に使えるよう Web アプリケーションに移植しました。

GifVJ – gifvj.co

使い方

元アプリ製作者の方 @bimyoo 作られた参考動画が格好良く, 使用イメージも一発で分かります。

Tumblr の ID を入力

Tumblr の ID を入力すると, 最新200件から最大45枚の GIF アニメーションを読み込みます。
読み込みに CPU とメモリを大量に食うので注意してください。

Tumblr の ID は自分のでなくても構いません。
デフォルトの gif-vj, あるいは bimyoo, dvdp など
クールなアニメーション GIF を集めてる Tumblr ID を入れると楽しいです。

操作方法

読み込み/アニメーション GIF の解析が完了するとプログレスバーが消え自由に操作出来るようになります。
操作方法はオリジナルのものを踏襲しています。

  • enter: アニメーションの再生/停止切替
  • j/→: 次のフレーム(停止時のみ有効)
  • k/←: 前のフレーム(停止時のみ有効)
  • r: 逆再生切替
  • space: リズム同期(キーを叩いた間隔で設定)
  • y/u/i/o/p: アニメーション GIF のブロックを選択(1ブロック9枚)
  • 1-9: アニメーション GIF を選択
  • ?: About & Help を表示

y/u/i/o/p の5つの各キーごとにそれぞれ9枚のアニメーションを 1-9 で選択,
最大で45枚のアニメーションを操作出来ます。

Let’s VJ

後は好きなように弄るだけです。
音楽に合わせて楽しむなり
話の種にするなり
面白アニメーション GIF をスロー/逆再生して楽しむなり
ご自由にお使い下さい。

推奨環境

Chrome / Safari の最新版で動作確認しています。
Firefox も多分動きます。
上記しましたが CPU とメモリを大量に食うので注意してください。

ソースコード

MIT License です。
mitukiii/gifvj – GitHub

技術的なことについては製作中 Gist に書きました。
GIF アニメ分解して Canvas で再生するやつ — Gist

元アプリケーション

クールなアプリケーションを作った @bimyoo に乾杯。
GIfVJ1.0 – 反射神経

上記の紹介記事。
CBCNET:LOG » Blog Archive » GifアニでVJ – GifVJ

合わせて読みたい

WWW.AKIRAFUKUOKA.COM BLOG | 今VJするならブラウザででしょ! HTML5でVJアプリ「Fi-VJ」を制作しました
コンセプトは少し違いますがこれもクールです。
アニメーション GIF ではなく, .mov/.mp4/.m4v ファイルで VJ が出来ます。

̃Gg[͂ĂȃubN}[Nɒlj

Tumblr API v2 の Ruby ライブラリ “tumblife for ruby” アップデートしました

2012年01月08日 17時20分 | Ruby, Tumblr | By: mitukiii

̃Gg[͂ĂȃubN}[Nɒlj

Tumblr API v2 の Ruby ライブラリ “tumblife for ruby” 作りました
更新しました。

使い方/書き方が大幅に変わったのでアップデートする場合は注意してください。

インストール

gem install tumblife

使い方

Tumblr API v2 は OAuth 必須です。
まずは Tumblr にアプリケーション登録をし、OAuth Consumer Key を発行して貰う必要があります。

require 'tumblife'

Tumblife.configure do |config|
  config.consumer_key = '*** consumer key ***',
  config.consumer_secret = '*** consumer secret ***',
  config.oauth_token = '*** oauth token ***',
  config.oauth_token_secret = '*** oauth token secret ***'
end

client = Tumblife.client

avatar = client.avatar('mitukiii.tumblr.com')
avatar.avatar_url # => http://30.media.tumblr.com/avatar_3a8918dc3a7b_64.png

info = client.info('mitukiii.tumblr.com')
info.blog.name # => mitukiii
info.blog.url # => http://mitukiii.tumblr.com/

dashboard = client.dashboard
dashboard.posts.each do |post|
  # ... do something
end

必要なもの

oauth
json(ruby 1.9 未満の場合)
hashie
activesupport

API

このライブラリは API を薄くラップし、レスポンスの JSON を Hashie 形式で返してるだけです。

各 API とメソッドとの対応は以下の通りです。

Tumblife Tumblr
info(base_hostname, params = {}) /v2/blog/{base-hostname}/info
avatar(base_hostname, params = {}) /v2/blog/{base-hostname}/avatar
followers(base_hostname, params = {}) /v2/blog/{base-hostname}/followers
posts(base_hostname, params = {}) /v2/blog/{base-hostname}/posts
queue(base_hostname, params = {}) /v2/blog/{base-hostname}/posts/queue
draft(base_hostname, params = {}) /v2/blog/{base-hostname}/posts/draft
submission(base_hostname, params = {}) /v2/blog/{base-hostname}/posts/submission
create_post(base_hostname, params = {}) /v2/blog/{base-hostname}/post
edit_post(base_hostname, params = {}) /v2/blog/{base-hostname}/post/edit
reblog_post(base_hostname, params = {}) /v2/blog/{base-hostname}/post/reblog
delete_post(base_hostname, params = {}) /v2/blog/{base-hostname}/post/delete
dashboard(params = {}) /v2/user/dashboard
likes(params = {}) /v2/user/likes
following(params = {}) /v2/user/following
follow(params = {}) /v2/user/follow
unfollow(params = {}) /v2/user/unfollow
info_user(params = {}) /v2/user/info

各 API の詳細については下記を参照してください。
API | Tumblr

ソースコード

mitukiii/tumblife-for-ruby – GitHub

ライセンス

WTFPLとします。
どうぞご自由にお使いください。

̃Gg[͂ĂȃubN}[Nɒlj

tumblr developer’s meetup jp 2011 に参加した

2011年12月25日 21時51分 | Study, Tumblr | By: mitukiii

̃Gg[͂ĂȃubN}[Nɒlj

tumblr developer’s meetup jp 2011 on Zusaar
スピーカーとして参加してきました。

Instagram Photo

Tumblife について話した

Tumblife についてアプリやその他の諸々の紹介をしました。僕はトークは全く面白くなくて準備不足と聴衆の想定が間違っていたのは否めません。また上手いことスライドを作って上手いこと喋ろうと思っていたことも裏目に出ました。自分が喋りたいことを盛り込んで、まずは自分が楽しむことが大事だと改めて感じました。次回以降スピーカーとして話す機会がある時に反省材料として活かします。

スライドはこちらに置いてあります。
Tumblife

イベントとしての tumblr developer’s meetup

デベロッパー側の実装の仕方/苦労、または開発にまつわる考え/哲学。リブログモンキー側の Tumblr 論、または Tumblr への思い入れ。イベント/懇親会と、ネット越しで一方的に知っていた人達と実際に顔を合わせて話を出来る場が、ただ純粋に楽しかったです。遠地まで来た甲斐がありました。声をかけて頂いた主催の @honishi と、スピーカーの皆様、そして参加者の皆様にただただ感謝です。

各スピーカーの資料はこちらにまとめられています。
tumblr developer’s meetup jp 2011 | Effective Tumblr

僕にとっての Tumblr

改めて自分にとっての Tumblr とはと考えてみました。考えてみたところで、僕は特に思い入れや哲学もありません。良質なコンテンツ(文章/写真/人)が新旧問わず流れてくる面白いサービスだなくらいにしか思ってません。それも “日本だけのおかしい使い方” で。無論 Tumblr というサービスには好意を持って接してます。デベロッパー側としてそこに何らかの貢献したいという気も無くて、自分が面白半分で作った何かが他の人も便利に使ってくれたら嬉しいなくらいのスタンスです。どなたかも言ってましたが、それぞれ好きに使えば良いんじゃないですか。上手いこと言えませんでした。

その他

イベントに参加したことにより意識が高まってますので気が向いたら自分による自分のための何か作るかもしれません。

合わせて読みたい

tumblr developer’s meetup jp
the whole world is peaceful. – TDM 2011

̃Gg[͂ĂȃubN}[Nɒlj