steelwool_oxide

Steel Room 2nd

24 11月

radikoを録音したmp3にid3タグ埋め込んでGoogle Play Musicへアップロードする



スチールです。
ちょっと前(3ヶ月くらい?)にRaspberry Piを購入して、radikoをせっせと録音しております。
録音したファイルの取り扱いをどうしようかなぁと考えていたんですが、個人的に一番しっくりきた方法をご紹介。
(いままで毎回scpで手元に持ってきてて、面倒だったので)

普段からGoogle Play Music使っていて、そこに自動でアップロードできたらよいなぁなんて思っていたのですが、アップロードするMusic ManagerはWindowsかMacか一部のLinuxのみ対応みたいで、Raspbianでは無理そうでした。
最近たまたま検索していたら、どうやら非公式ではありますがPythonからアップロードできるgmusicapiというライブラリがあったので使ってみたらサクッといけたのです。

そういえばまだ米国のみらしいですが、Google Play MusicのiOS版もやっと登場したらしいですね。
登録とかもろもろは「Google Play Music 日本 登録」とかでググってもらえるといいのではと思います。

さて、gmusicapiの簡単な使い方は以下です。
 

簡単ですね。
Raspberry Piだとメモリがきついのか、MemoryErrorが出るときがありますが一応ちゃんとファイルはアップロードされているようです。

ちなみに
mm.perform_oauth()
の部分は、一度認証してしまえばOKです。$HOME/.config/gmusicapi/oauth.cred に認証情報のファイルができているはずです。

これでOKっちゃOKなんですが、せっかくなので、ラジオ名やアートワークを設定したくなってきますよね?
こちらもPythonでeyeD3というID3を編集する便利ライブラリがあったので使ってみました。



こちらも簡単ですね。アルバムアートがpngとかなら、audio_file.tag.images.set()の第3引数のmimeを適当に変えてあげるといいかと思います。 

ちなみに、gmusicapiとeyeD3はpipなりeasy_installなりでインストールできます。

Raspberry Piなんかでradikoを録音する場合、cronにスクリプトを登録するんじゃないかと思いますが、その最後に上記2つを組み合わせてあげれば録りおわった後勝手に登録されて、素敵なradiko視聴ライフを送れますね!

肝心の録音部分を忘れておりましたが、radiko自体の録音はこちらの記事を参考にしました。

23 11月

「秋のエンジニアぶつかり稽古 2013」に行ってきました



今日は「秋のエンジニアぶつかり稽古 2013」に行ってきました。
ざっくりとどんな内容だったかといいますと、「好意ゆえの怒りで吉高由里子がカン拡張されて子供が5人できてめでたい」中、ぶつかり稽古が始まった、という感じです。何を言ってるのかわかりませんが僕もわかりません。

開催中の異空間な感じはtwitterの#ぶつかり稽古を見るとよく分かるんじゃないかと思います。 

で、内容ですが、まずはじめに、「俺の本気を見せるプレゼンタイム」ということで、4名の方が各々の本気を見せるという内容です。


・吉高由里子と僕 by @hisaichi5518

吉高由里子が好きすぎてふさわしい男(バンドマン=クリエイター=Webクリエイター)になるために色々作ったという話。
好きすぎて吉高由里子ドメインまでとってしまったようで、そちらに作品が紹介されています。
動機と内容はともかく、「クリエイターになるって言っても作りたいものないし」→「まず自分のほしいものから作り始める」→「誰かが反応してくれる」、という流れはとてもいいなと思いました。


勤労と感謝とプログラム by @r7kamura

好意ゆえの怒りで、好きだけど、イケてないなーと思うものをカッとなって一日で作り変えて行った話。
「エンジニアは界隈にはもっとモチベーションが必要で、モチベーションがあればなんでも作れる」、「みんな本気出そう、本気出すとフロー状態になって覚えてないことも多いしいいじゃないか」という感じでしょうか。スライドで紹介されていた、家の設計を共有して3dプリンタで家作れんじゃね、というwikihouseがモチベーションの境地な感じ。

あとr7kamuraさんイケメンですね。

先の吉高由里子さんの件とモチベーション大事、というところでつながりそうな感じですが、そうなると新しい吉高由里子さんが生み出される可能性があるのでこれ以上考えるのはやめておこうと思います。


すべてが@__kanになる by @hiratara

同僚である@__kanさんが好きすぎてうっかり拡張してしまった、という話ではなく、最近流行りのカン拡張のお話。みなさん圏論をご存知という前提で大変本気な発表でした(よくわかっていない)。
スライドにある圏論の基礎という本読んだらわかるのでしょうか(不安)。



・文系学部卒アラフォーエンジニアが本気で理系大学生やってる話 by @gosukenator

ペパボでテクニカルマネージャーをやりつつ、お子さん5人を育て、大学にも通ってるぜというパワフルなお話。

話を聞いていてちょっと大学の授業を復習しに行ってみたいなという気持ちにはなりましたが、多分本気で通わないとこういうの続きませんよねぇ、とか思ったり。

学生になると学割が聞いて、Amazon StudentとかGithubとかお得なこともあるみたいですね。


・中入り(休憩)

2連続でこの動画が流れて狂気に包まれました



・魂のぶつかり稽古 by @kentaro , @__kan

本日の発端でもありメインイベントでもある、魂のぶつかり稽古。
内容は、本気でぶつかるとケガをするので、あんちぽさんがテストを書いて、それを満たすコードをkanさんが書くというかわいがり仕様ペアプロ稽古です。 ライブでコード書くの緊張しそうだなぁ(実際にkanさんも言ってた)

ペアプロの様子はこんなかんじで、机の周りがちょっぴり土俵ライクです。



ペアプロはwemuxという、複数人で端末を共有できるtmuxのラッパーをpair modeで使用してました。wemux知らなかったので、あとで見てみようと思います。

コードはperlで、力士インスタンスを作って、勝ち星管理と、取組表を表示するような内容でした。変数が$self, $aiteっていうのすごく新感覚でしたね。
(途中、$kachiboshi, $makeboshiという変数に対して「$shiroboshi, $kuroboshiがいいんじゃないか」というツッコミを入れて、どっちが勝だっけ?という混乱を招いてしまい申し訳なく思います。ちなみにツッコんでおいて、ぼくも白と黒、どっちが勝ちかわかっていませんでした。重ねてお詫びします。)

時間切れ間際、焦って変数名が$foo, $barになったのも、あー、あるあるな感じで見ててすごく楽しかったです。
30分って短すぎじゃ?と思いまして、実際短かったですが、逆に緊張感があって、ちょうどいいのかもしれないですね。1時間だと見てるだけじゃちょっと長いかもしれないですし。


とまぁ、そんなわけで、一体どんなイベントになるんだろうと思っていましたが、ぶつかり稽古面白かったので、2014年春場所あたりを期待したいと思います。企画してくださった、ペパボさんありがとうございました!
(そんなペパボさんが「ペパボの教科書」という本を出すそうですよ!)

ではでは。 

 
16 11月

「GitHub トレーニングチームから学ぶ Git の内部構造」&「GitHub DrinkUp」に行ってきました



スチールです。

11/15の「GitHub トレーニングチームから学ぶ Git の内部構造」とその後のGitHub DrinkUpに行ってきました。場所はYahoo!Japanさんで、ミッドタウンがクリスマス全開で辛い感じでした。

スピーカーはGitHubのMatthew McCullough(@matthewmccul)さんで、今回はGitHub、というよりはGitって実際コマンド打った時何が起こっているのかという内部構造を解説するような感じです。

時間は17:30スタートで大体20:00くらいまでお話して、最後に大質問会という感じ(途中にもちょいちょい 質問タイムがありました)。ちなみに質問するとOctocatシールもらえた感じです。質問はMatthewさんと、同じくGitHubのJohn Britton(@johndbritton)さんもこたえてくれました。

で、肝心の内容なんですが、勉強会中にOrgaChemさんがものすごいスピードでまとめられていて、しかもほぼ網羅している感じです。

内容は先ほどのgistに任せつつ、個人的な感想ですが、今まで仕事、プライベートでgit使っている中、割とチケット単位や実装単位でまとまるまでコミットしないことが多かったんですが、
git reset --hard origin/master
と実行しても
git reflog
には履歴が残っていて、コミットのハッシュから、
git reset HASH
なりしてあげればそこまで戻れるという。 
なので一旦試しに改変してみて納得できなければresetでなかったことにしてもいいし、やっぱり戻ることもできるので、細かくコミットしてあげるのが大事なのかなと思いました(冒頭でMatthewさんも、コミットしまくれ、ブランチ作りまくれって言ってた気がする)。これでまた1つgitが怖くない感じになりました。やったね!
(とはいえ仕事とかだともうちょいコミットログきれいにしたいとかあると思うので、それはある程度の粒度でrebaseするなりしてあげればいいんじゃないかなと。)
あとgit showってあんまり使ってなかったんですが大変便利だとわかったので、忘れないうちに積極的に使っていきたい感じでした。

DrinkUpですが、GitHubのお二方はずっと囲まれていてDrinkどころじゃない感じだったんですが、僕はというとYahooな方とか、近くの席の方とあれこれお話していました。仕事で使っているツールの話(GitHub含め)とか。

今回のGitHubのイベントは、本日の東京の会を皮切りに、大阪や名古屋でも開催されるそうです。
Connpassとかで検索してみると良いのかな?)
スライドを交えて聞くとよりわかりやすいですし、英語も聞き取りやすかったです。gitだけでなく、githubのことも質問できるので、近くで開催される方は是非参加されてみては。
(プレゼンはシェルでの操作を録画したものを使っていたので説明もスムーズで、Air Sketchというアプリで図解してみたりと、本当にわかりやすかったです)

あ、あと会場で配ってたgitチートシートもらいました。どこかに貼っておこうかな。

98ad4922.g
 
六本木ではたらくエンジニア
スポンサードリンク
スポンサードリンク
  • ライブドアブログ