Yuichiro_S の Twitterでは文字数が足りないもの

Twitterに書くには向いてないことを書きます。文字数制限だとか、検索に引っかからないだとか、流れてしまって読んでもらえないだとか。

mikutter で "だれそれについて" を開くと "ふぁぼが取得できませんでした (undefined method `[]' for nil:NilClass)" を吐く件のメモ

ただのメモ

$ grep -r count_favorite_by .
./core/plugin/profile/profile.rb:    user.count_favorite_by.next{ |favs|
./core/user.rb:  def count_favorite_by

user.rb

127   # ユーザのメッセージが今までお気に入りにされた回数を返す
128   def count_favorite_by
129     Thread.new {
130       open("http://favstar.fm/users/#{idname}"){ |io|
131         m = io.read.match(/<div[\s]+class='fs-value'[\s]*>[\s]*([0-9,]+)[\s]*<\/div>[\s]*<div[\s]+class='fs-title'[\s]*>[\s]*Favs[\s]*Received[\s]*<\/div>/)
132         @value[:favouritesby_count] = m[1].gsub(",", "").to_i } } end

なぜfavstarなんぞを叩いている……

profile.rb

305     user.count_favorite_by.next{ |favs|
306       w_faved.text = favs.to_s
307     }.terminate(_("ふぁぼが取得できませんでした")).trap{
308       w_faved.text = '-' }

とりあえず

profile.rb

305        w_faved.text = '-'
306 #    user.count_favorite_by.next{ |favs|
307 #      w_faved.text = favs.to_s
308 #    }.terminate(_("ふぁぼが取得できませんでした")).trap{
309 #      w_faved.text = '-' }

user.rb

128 #  def count_favorite_by
129 #    Thread.new {
130 #      open("http://favstar.fm/users/#{idname}"){ |io|
131 #        m = io.read.match(/<div[\s]+class='fs-value'[\s]*>[\s]*([0-9,]+)[\s]*<\/div>[\s]*<div[\s]+class='fs-title'[\s]*>[\s]*Favs[\s]*Received[\s]*<\/div>/)
132 #        @value[:favouritesby_count] = m[1].gsub(",", "").to_i } } end

Youtubeで動画に使用されているコーデック(映像・音声それぞれ)の判別をする方法

概要

ブラウザ上から、現在再生している動画の映像と音声のコーデック(ついでに解像度とかも)を判別する方法です。
動画のフォーマット番号を見るお話です。
[2017/11/08 追記] なんかWikipediaの記述が消えてたので、同等の記述を記事に足しました。

前置き

Youtubeで動画や音声に使用されているコーデックが何なのか気になったことはありませんか?
私はありませんでした。そう。あのOpusが既に使われているということを見聞きするまでは。

コーデックが何なのか確かめるためには、生の動画データにアクセスできないと無理だと思っていませんか?
私は思っていました。そう(ry

手順

例示画像は記念すべきOpusが使われていると教えてもらった動画です。
動画を右クリックします。
f:id:Yuichiro_S:20160129232926p:plain
詳細統計情報をクリックします。
なんか出てきます。映像部分がWebMでVP9で1080pなのはもうこの時点で書いてありますけど、見なかったことにして先に進みます。
f:id:Yuichiro_S:20160129232924p:plain
矢印のところの数字を見ます。248/251と書かれていますね。これがフォーマット番号です。 f:id:Yuichiro_S:20160129233725p:plain

YouTube - Wikipedia の Comparison of YouTube media encoding options のところを見ます。

[2017/11/08 追記] Wikipediaの記述消えてます。 YouTube内で4Kで検索して一番最初に出てきたのが Zion National Park. Autumn - 4K Nature Documentary Film - YouTube だったので、これの Format Code を書いておきます。4K動画なら、たぶん全フォーマット網羅してるでしょ? ってことで。

format code  extension  resolution note
139          m4a        audio only DASH audio   66k , m4a_dash container, mp4a.40.5@ 48k (22050Hz)
249          webm       audio only DASH audio   76k , opus @ 50k, 32.86MiB
250          webm       audio only DASH audio   95k , opus @ 70k, 43.32MiB
140          m4a        audio only DASH audio  132k , m4a_dash container, mp4a.40.2@128k (44100Hz)
171          webm       audio only DASH audio  151k , vorbis@128k, 69.07MiB
251          webm       audio only DASH audio  169k , opus @160k, 83.91MiB
160          mp4        256x144    DASH video  113k , avc1.4d400c, 24fps, video only
278          webm       256x144    144p  126k , webm container, vp9, 24fps, video only, 56.18MiB
133          mp4        426x240    DASH video  264k , avc1.4d4015, 24fps, video only
242          webm       426x240    240p  270k , vp9, 24fps, video only, 115.75MiB
243          webm       640x360    360p  521k , vp9, 24fps, video only, 223.46MiB
134          mp4        640x360    DASH video  648k , avc1.4d401e, 24fps, video only
244          webm       854x480    480p  995k , vp9, 24fps, video only, 418.93MiB
135          mp4        854x480    DASH video 1374k , avc1.4d401e, 24fps, video only
247          webm       1280x720   720p 1992k , vp9, 24fps, video only, 865.87MiB
136          mp4        1280x720   DASH video 2539k , avc1.4d401f, 24fps, video only
248          webm       1920x1080  1080p 3410k , vp9, 24fps, video only, 1.49GiB
137          mp4        1920x1080  DASH video 4694k , avc1.640028, 24fps, video only
264          mp4        2560x1440  DASH video 10984k , avc1.640032, 24fps, video only
271          webm       2560x1440  1440p 11569k , vp9, 24fps, video only, 4.90GiB
266          mp4        3840x2160  DASH video 23644k , avc1.640033, 24fps, video only
313          webm       3840x2160  2160p 24086k , vp9, 24fps, video only, 10.62GiB
17           3gp        176x144    small , mp4v.20.3, mp4a.40.2@ 24k
36           3gp        320x180    small , mp4v.20.3, mp4a.40.2
43           webm       640x360    medium , vp8.0, vorbis@128k
18           mp4        640x360    medium , avc1.42001E, mp4a.40.2@ 96k
22           mp4        1280x720   hd720 , avc1.64001F, mp4a.40.2@192k (best)

[2017/11/08 追記ここまで]

248番 が コンテナがWebM、解像度1080p、コーデックVP9、
251番 が コンテナがWebM、コーデックがOpus、ビットレートが160kbps であると分かります。

(Wikipediaの記事の脚注にもあるように、このビットレートは実際のものとは異なります。)

だいたいの動画は、
映像が133, 134, 135, 136, 242, 243, 244, 247, 248
音声が140, 251
あたりな気がします。

余談

比較的新し目の動画で、720p以上の解像度を再生すると、VP9が使われていることが多く、思っていたよりWebMが普及しているんだなぁ、という感想を抱きました。世の中MP4だと思っていたので。
まぁそんなことよりOpusですよOpus。VP8とVP9に比べて知名度ないでしょ。自分も知りませんでしたもん。しかもなぜかわりと使われているし。世の中MP3とAACしかないと思ってましたよ。

Opusはいいぞ。

Android版スクフェスのストレージ使用量

端末の空き容量をわりと切実に圧迫するスクフェス、ちょっと減らせたりしないかなぁ、と思って、ちょろっと初期化してみました。

2016年1月8日に試しました。のんたんスコマ中です。

初回ダウンロード終わった時点

初回ダウンロード終わった時点で 850MB(スクショ忘れました)。

追加ダウンロードデータ:

楽曲データ: 16MB

この時点でダウンロードされてなかった曲は、ミはμ'sicのミ、好きですが好きですか、もしもからきっと、永遠フレンズ、WAO-WAO Powerful day!、Step! ZERO to ONE、思い出以上になりたくて、でした。 f:id:Yuichiro_S:20160111160812p:plain

サイドストーリー: 277MB

f:id:Yuichiro_S:20160111160806p:plain

メインストーリー:414MB

f:id:Yuichiro_S:20160111160758p:plain

やっぱりフルボイスだとサイズが大きいですね。

まとめ

ストーリーを読み返さないなら、一度初期化すれば400MB〜500MBくらいは端末の空き容量が増やせます。 900MB以内で収まりますね。

蛇足

追加ダウンロードデータサイズ的に、たぶん楽曲は128kpbsと推測できます。
カロン曲とかが内部でどうなっているのか分からないので、とりあえず90曲分の楽曲データが入っているだろうと考えると、
(128 kbps) * 2 min * 90 = 172.8 megabytes
なので、アプリ本体の60MBと180MBを初回がダウンロード終わった時点の850MBから引くと、だいたい600MBくらい残りますね。 カード枚数が774枚、全部の画像データ1500枚ちょい、R以上はスキル発動ボイス、これは最初からダウンロードされてますね。
とか考えていくと、ちょっと楽しい気分になります。

おしまい。

Amazonのコンビニ受け取りで、認証メールが届かないときに、バーコードで受け取る方法(ローソン限定)

Amazonのコンビニ受け取りって、コンビニに早朝に届いてても、認証キーのメールが昼過ぎまで来ないですよね。

ネット上を検索すると、ロッピーを使って受け取る方法はたくさん出てきます。
Amazonにおいては、認証キーは注文番号 123-1234567-1234567 の最後の7桁だ、ということはわりと有名な話で、 これと荷物の問い合わせ番号(トラッキングナンバー)をロッピーで入力すれば受け取れる、というのがよくある話です。

しかし、最近のローソンはバーコードで受け取るほうが、サインも要らないし(本人確認とか何もないので心配ではありますが)、かんたんです。

というわけで、バーコードを生成してしまおうという話です。

https://pickup.lawson.jp/bcd/vw.php?JN=12341234123412341234&NN=1234567&CP=001

の、JN=のところに日本郵便の問い合わせ番号(トラッキングナンバー)を、NN=のところに注文番号の最後の7桁(認証キー)を入力して、 それをブラウザで開けばバーコードが出てくるので、それを使って受け取りましょう。

ちゃんちゃん

DreamSpark に登録しようとすると you are not born yet! と言われる件

DreamSpark の学生アカウントを取ろうとするときに、生年月日入力UIをどう操作しても you are not born yet! というエラーが出まして、過去の日付しか指定できないのになにを言っているんだ……

解決方法: マイクロソフトアカウントのほうで生年月日を登録してから、データが反映されるまでしばらく待つ

ブラウザのインスペクタを使っていろいろ確認して、あーなんとなくこれかなー、と、マイクロソフトアカウントの生年月日が未登録だったので登録したりしたわけですが、どうにもならないのでサポートに投げたら、それはもうやったわ! みたいな返信が来ました。
仕方ないので自分でなんとかするかー、とりあえず現状を確認して……あれ、できた。

マイクロソフトからはメールの内容を転載するな引用するなと言われましたので、この内容から察してください。

……なんでこんなに分かりづらいエラーメッセージにしたんだろう。

mikutterでのTwitterの自分宛リプライの特殊仕様の対応

毎回忘れるので備忘録

Twitterでは自分宛のリプライは@つけてなくてもin-reply-toで繋げられるが、mikutterのmessage.rbは@がないと replyだと認識しないので、手元では

define_source_getter(:replyto, /@[a-zA-Z0-9_]/){ |this, result|

define_source_getter(:replyto){ |this, result|

と書き換えて雑に対処して使っている。

Nexus7 1st gen (2012) で Stock ROM (rootless) と CyanogenMod を MultiROM で共存させたメモ; ストレージがなぜか 6GB になる現象の対処メモ

Nexus7 1st gen (2012) で Stock ROM (rootless) と CyanogenMod を MultiROM で共存させたメモ

概要

今回は、ホスト cm11 で、ゲストに Stock ROM の 4.4.4 とか 5.1.1 とかを入れたい感じでした。

結局どうしたか

fastboot で Stock ROM の boot, system, userdata を焼いて、TWRP でバックアップ、バックアップから MultiROM で Add ROM しました。
boot.img と system.img から flashable zip を作ろうとするのは労力の無駄っぽい。

こっから詳細

ハマりポイントとしては、Google から提供されている Stock ROM が fastboot で焼くイメージしかなくて、カスタムリカバリから焼ける flashable zip じゃないという点です。

flashable zip を作る方法としては、ググると出てくるのは

  1. Stock ROM で root を取ってからがんばる
    root 取ったら Stock ROM である意味が個人的になかったのでナシでした。

  2. Android Kitchen でがんばる
    2013 年に更新が止まっているせいか、それっぽいzipを生成してくれるけれども MultiROM patched TWRP がエラーを吐くので諦めました。

Nexus7 1st gen (2012) で、ストレージがなぜか 6GB になる現象の対処

概要

いくら Multi ROM だからってストレージ足りなくなるなんておかしい、と思ったら、なぜか 6GB になっていた。32GB モデルなのに。
どうやら珍しくはない現象らしい。解決したので適当に情報をまとめる。

結論

フルワイプでなおる

こっから拾った情報まとめ

  • ブートローダのバグらしい?
  • fastboot flash userdata userdata.imgすると発生するらしい?
  • fastboot での作業途中に fastboot モードを抜けると発生するらしい?
  • フルワイプするのに rm -rf するだけなやつがあるので mkfs.ext4 してくれるやつを使わないと無駄