音声書き起こし
1. オープニング
Guest
こんにちはこんにちはえ、今日もですねytサイドやっていければと思います。え、まず、初めにこのポッドキャストについて紹介させていただきます。
Guest
UIT INSIDEは、ユーザーインターフェースとテクノロジーを愛する開発者たちによる。ポントキャストです。
Guest
最新のえ、ウェブ標準の動向や開発、フレーマークの変遷、またまたurやuxに関することまで
Guest
最新のフロントエンドの情報をキャッチアップすることを目的としております。
Guest
今回はですね、ラインのフロントエンドエンジアのゴールデンウィーク。え、4日目ということで、もうだいぶえ終盤に
Guest
入ってきましたけれども、え、本日はですね。けいしさんをゲストにえお呼びしてですね。ミュージックキッドジェイスをえ、使ったえと、プレイヤーの実装について聞いていきたいと思います。けしさん、よろしくお願いいたします
Guest
よろしくお願いします。
2. Pittan さん自己紹介
Guest
じゃあ、ということで、まずけいしまさん自己紹介からお願いできますでしょうか。
Guest
はい、ライングロステクノロジーとgtのUITの所属のえと、ケシアモンと言います。
Guest
普段はどういった開発とかされてる。
Guest
普段はLINEポイントというプロジェクトの中に入って、開発とかをしています。
Guest
なるほど、なるほどではけしさんよろしくお願いいたします
Guest
お願いします。
3. GWの成果物について
Guest
本日のえ、内容ですけど、今回実際ですね。ゴールデンウィークの自由研究っていう枠で、消しさんどういったことは、ことをされたかっていうところを簡単に説明してもらってもよろしいでしょうか。
Guest
はい、今回一言で言いますと、appleが出してるapplemusicの
Guest
も、今プレイヤーとして再生できるみたいな状態。
Guest
あ、はい、そうですね、今回はちょっとあの、なんていうんですかね。うんと
Guest
ま。フルフルサイズのプレーヤーというよりかは、ちょっと面白いものを作ろうというような。気分で言ったので、ちょっとカセットテープ
Guest
をなんか再現したようなプレーヤーを作りました。
Guest
割と物理的なコンテンツじゃなくなってる時代にあえてこう、これu愛的に出すみたいな感じなんすかね。
Guest
あ、そうですね、い的にもですし。あとは、も共同的にも活動テープをあけをなるべく再現してみようということで
Guest
やってみます。簡単に画面を共有しているんですけど、はいとまあこんな感じでログインします。と
Guest
と、ユーザーが自分のライバルに登録しているプレイリストの一覧がこのように出てきます。はい、で、そうですね、例えば、
Guest
このチルハウスというプレイリストを再生しようとしあ、ちょっとすいません。なんでもいいんですけど。まず、例えば、このプレイリストを再生しようとした時に、
Guest
こんな感じで再生が始まります。で、もちろんカセットテープなので、あの曲ごとの
Guest
頭出しとかっていうのはないので、あの、自分で早送りして、
Guest
ここだというポイントであまた再生を始めてもらうと、このような感じで再生されます。カセットテープなので、もちろんaメビーメンというあの概念を実装してて、
Guest
こんなかあのbメの方も再生できますよ。っていうような感じ、
Guest
結構ま、見た目u愛的にもこれはカセットテープっぽい挙動は自分で実装したっていう感じなんですか。
Guest
そうですね、結構あのcssとかhcmlとかを頑張って、この見た目、あのカセットの中の
Guest
なんて言うんですかね。くるくる回ってるところとか、もっとちゃんとみ。なんか、カセットデートっぽくなるような速度感とか。なるほど、なるほど、あとは、この中のあのテープの残量がちゃんと再生に応じて動いていくみたいなところも
Guest
再現してます。な、
Guest
なかなか面白い初めに選んだ曲が120分以上の曲再生できないっていうのに出るのもめっちゃ面白いですね。
Guest
そうですね、ほんとはここ出さない方がいいかなと思ったんですけど、あえて、やっぱここはなんか出しといた方が、なんかカセットテープ感いるかなとか、
Guest
あとは、なんかこう。自分で、なんか昔だとビックステープとか作ってるみたいな話も聞いたので、なんかその辺とかもなんか
Guest
また思い出すような、はい、感じになればいいなと思って、こんな感じにしてます。
Guest
結構ノスタルジーなん
Guest
なんか、これって、見てる人がアクセスできるっていうことかってあったりしますかね。
Guest
そうですね、これはあの、普通に公開してるものなので、あの、全然皆さん見ていただいて大丈夫だと思います。
Guest
では、後でそのurlも掲載しておこうかなと思いますので、ぜひぜひちょっと触ってみてもらえればと思います。
4. テーマ選定の経緯
Guest
はですね、ちょっとこの実際のテーマについて、ちょっと詳しく聞いていきたいなと思うんですけど、今回はこのミュージックチットを使って、プレイヤー実装するのをテーマに選んだ経緯とかってあるんですかね。
Guest
そうですね、最近、appleがapplemusicのweb版っていうものを、正式にリリースされたっていう
Guest
話を聞いて、で、結構実際自分でも触ってみて、結構よくできてるんですよね。はいはい、なんかこのなんでしょう。画面がちっちゃくなった時に、ちゃんとちっちゃい画面をのur
Guest
なるとか
Guest
っていうあたりが結構。あのま、今後の自分のフロントエンドの実装の方でも、なんか参考になるかなっていうような感じで、最初はこのま同じも全く同じものをちょっと作ってみようかなっていう気持ちで始めてみたんですけど、はいはい
Guest
ま結構あのやることが大変多いんですよね。あの、ゴールデンウィークでは、ちょっと収まらないかもしれないとか、あとはなんでしょう。同じことをやってるまあ、ビュービーで
Guest
同じことやってるようなプロジェクトもあったので、はいはい、はい、ちょっと個人的には、なんかあのモチベーションがなんかなくなっちゃった。なるほど、はい
Guest
っていうことで、なんかちょっと1人ハッカソンみたいな感じで、ちょっとなんか面白いものを作ろうかなっていう感じで、はい、作業方向を変えまして、
Guest
でま、最初に言ってたいい感じのプレーヤーを作るっていう、そのいい感じってなんだろうっていうところにちょっと
Guest
考えてみた結果。はい、なんか、今なんかカセットテープって、なんかま、レコードとかカセットテープって、なんかまだちょっと盛り返してきてる、盛り上がってるみたいなところもあるので、
Guest
なんか、その辺をちょっとやってみようかなという感じで、今回のやつを作ってみました。
Guest
あそこのカセットテープとかが盛り上がってるのって、なんなん。何の流れから来てるん。
Guest
そうですね、なんか、やっぱりモスタルジーとか、なんかそういうところだと思いますね。なんか、やっぱ今まレコードとかと同じ流れだとは思うんですけど。
Guest
はい、
Guest
今、最近はもうみんな割と物理的なコンテンツを持たないで、サブスクとかで曲聴いてる人も多い中であえて、そのその基盤を使って、
Guest
カセットテープっぽく作るっていうのは、結構面白い。取り組み。これ、技術的にはアンギュラーで実装してるんですか。
5. 音楽プレイヤーの裏側
Guest
そうですね、アンゲラとたいアンゲラータタイプ、スクリットとか、アンゲラーでテストしてます。
Guest
ラインだと、アンギュラー業務で使える機会って、そんなに多くない気がするんで、割とごそうですね。下るには結構いいというか、
Guest
はい、なんか普段普段触れない分、触る機会になるのは結構いいですよね。
Guest
そうですね、ちょっと気持ちが切り替わると言いますか。気分転換になるというか、
Guest
すね、なんか、リアクトビル書いてると、まあ、いつもの業務じゃんって気持ちになってしまうっていうのも、やっぱある程度あるかなと思うんで、うちらの場合、特にビジェスとか書いてるとま、業務じゃんってな。なるところもあるかな、とはい、そうです。
Guest
あ、ちょっと使われてる技術の方について、詳しく聞いていきたいと思
Guest
なんですけど。私、海外のけしさん見て、初めてこのミュージックキットってやつかええ、あの、映画作られてるのを知ったんですけど、ざっくりと教えてもらってもいいですかね。これがどういったものかっていうの
Guest
はいミュージックキットjasっていうのは、
Guest
ま、公式のドキュメントには、あ、あの、applemusicplayertobeverpというあるように、webアプリに、applemusicのpriaを埋め込むようなものっていうもので、
Guest
apple公式で、配布されているsdkになります。
Guest
で、こちらを使うには、マップルの。デベロッパーのアカウントが必要だったりとか。ちょっとハードルはま高いっちゃ高いと思うんですけど、ま、それをま
Guest
通り越してしまえば。あとは、数行のコードだけで曲を再生できるようなものとなってます。
Guest
ミュージックキットって、結構最近出たやつなんですか。それとも、結構前からあったのがあった
Guest
そうですね、ちょっと僕の記憶があんまりなこの曖昧なので、ちょっとそこの辺までは、具体的にはわからないですけど。
Guest
なるほど、なるほど、いやま、appleのアカウントさえあれば、初めの申請さえしまえを使えれるって感じなんです。
Guest
そうですね、
Guest
てか、これってなんか単純にapplemusic用のその接続なのか、音声の取り扱いも含めてやってくれるようなライブLINE。なんか
Guest
そうですね、アップamusicのAPIのアクセスと、あと、音楽の再生も含めて、全てやってくれるようなものになってます。
Guest
な、なんか、再生以外だと、どういった操作とかができたりするんです。
Guest
例えば、プレイリストの作成とか、あとはまあ曲の追加とか、曲の削除とかも確かできた気がします。
Guest
基本的に、applemusicのAPIにつなので、できるものであれば、ほぼすべてのことができるかなという認識です。
Guest
結構高機能なのは高機能な
Guest
そうですね、
Guest
ただ、ちょっとドキュメントが、微妙なところがありまして、あのま全てななんていうんでしょう。あの、我々のフロントエンドデベロッパーがよく見るようなnpmだったりとか、ギターブでよく見るプロジェクトのドキュメント
Guest
よりはちょっと不親切なところがあるので、そこがちょっと取り扱う上で難しかったポイントでもあり、ま
Guest
てことはもう完全にあれなんですかね。そのossとかではない感じで提供されている。
Guest
はい、そうです。あの、cdnkuで取ってくるような形で、はい、npmで配布されてないですね。
Guest
もう、普通にアップルのデベロッパーサイトのドキュメント見て、使っていくって感じになるっていうとこですね。はい、
Guest
そうなります
Guest
てことはあれですかね。なんか、アキラだと多分tsでかか書かれてると思うんですけど、タイプでフィニションとかもあのあるわけではないみたいな感じですかね。
Guest
そうですね、
Guest
一応あの非公式であのさん誰かがつかあのつってくれたミュージックキットタイプ、スクリプトっていうプロジェクトがあるにはあるんですけど、ちょっとうまくは使えなかったっていうのもあって
Guest
ま。ちょっとこの際、勉強があったら、自分でもカで書いてみようかなってことで、この辺もチャレンジしてます。
Guest
なるほど、なるほど、
Guest
みちそのもう1個ミュージックキットジースについて聞きたいんですけど、その再生とかのやってくれるってところがあったと思うんですけど、これって、その、あの、オーディオコンテキストのAPIとかとも繋ぎ込むことはできるんですかね。
Guest
そうですね、ちょっとそこまで試してはいないんですけど、このライブの挙動を見る限りだと、ページの中にオーディオタグっていうのを埋め込んでいるようで、
Guest
もしかしたら、ここを何かどうにかこうにかすれば、ちょっといじれるようになるかもしれませんけども、基本的に再生とかっていうのは
Guest
ゆ。あの高度から、その音楽に直で触るようなことはできないので、なんてちょっと道数って感じです。
Guest
ま、ただ、最終的には普通にオーディオタクの中で再生されるっていう答えなので、まあ、オーディオタグへのアクセスでできることってのは、まあできそう
Guest
って感じですかね。
Guest
そうですね、
Guest
じゃ、ちょっと次技術的な部分、そのミュージックキット外の技術的な部分とかにも聞いていきたいんですけど、なんかやってみて、書簡とか、ま、こういうところが
6. フロントエンド技術と所感
Guest
なんかよかったとか、ま、こういうところ、技術的にやってみたいとか、
Guest
いろいろあったら、聞いていきたいなと思うんですけど、なんか、今回のはいま技術選定の理由とか、ミルクキット
Guest
を使った開発をしてみての学びとかあったら、色々聞いていきたいなと思うんですけど、なんかありますかね。
Guest
と、今回、テクニカルの部分のチャレンジっていうところとしては、
Guest
アンゲラcliっていうま、アンギラーの出してる開発ツールの中に、えと、ライバリーを作るっていうngェネレートライバリーっていうま、コマンドがあるんですけど、はいはい、
Guest
それを使って、何かしらのライブラリーの作成にチャレンジしてみたいっていうところがありまして。はいはい、
Guest
実はこのプレイヤーの裏でま。もう1個サイドプロジェクトという感じではあるんですけど、
Guest
あの、musicapplemusicのmusickidjasをangelでラップしたような。ライブラリっていうのを一緒に作っています。
Guest
じゃあ、そのライブラリーを使うデートして、今回のプレイヤーを作っているみたいな。
Guest
そうですね、その意味も含んでますで、今回こちらのその片定義とかも含めて、全て自前で書くので、
Guest
結構ま固定義の練習にもなったなっていうところは、ま、先ほども言ったような感じなんですけど、
Guest
結構ななんでしょうね。あの、まど、どういうラップの設計をしていくか、みたいなところは、結構
Guest
今回作る上で悩んでる部分でもあって、まだちょっと正解が見えてないところでもあるんですけど、はいはい、なんか難しいなと感じた部分ですね。
Guest
まどこまで隠蔽するかとかって感じですかね。
Guest
それで、そうですね、あの、結構なんかこのapplemusickitjaceの、あのプレイヤーっていうインスタンス
Guest
があるんですけど、が、結構なんでしょう。コードに書いてしまうと、ミュージックキットドット、ゲットインスタンスドットプレイヤーって結構深いところにあるんですよね。
Guest
で、それを結構毎回あの巣で書くのも大変だろうなっていうことで、今回はちょっともう少し簡単になるような感じで
Guest
そう。アンゲラのサービスの中にも、インスタンスを置いちゃうとかっていうようなところをやってみたんですけど、この設計は良かったのだろうか、みたいなところとかは結構ある、悩んだ部分ですね、
Guest
結構そういうのはまあ使ってみて、使い心地を確かめないとか、新しく誰かに使ってもらわないと、なかなかこう
Guest
あれっすもんね。あの、まだわからないところがありますもんね。
Guest
そうですね、っていう意味でも、やっぱりこう。自分でデモのアプリも一緒に作っておくと、
Guest
なんか、ライブラリの設計とで、使う側の視点も一緒になんか検証できるので、はい、結構そこは良かったなと思います。
Guest
いや、でもいいですよね、なんか自分でライブラリあの、結構まあ、ライブラリってこう使うものがないと
Guest
イメージしづらいってとこもあると思うんで、ま、同時並行で作っていけるってのは結構面白いですね。
Guest
あ、じゃあもう1点。はい、あのま結構さっきも業務の中だと、いつもリアクトとかビューってがほとんどになるかなっていう中で、今回アンケラを選定した理由とかってあるんですかね。
Guest
あ、はいとそ個人。えと、全職の方でとアンゲラの方をあけ扱っていたので、ま、結構個人的には、このアンゲランの
Guest
技術、スタックみたいなところのキャッチアップをどんどん続けていきたいなっていうところがありました。はいはいで、結構
Guest
片定義とかライブラリを作成するみたいなところが結構ま大変だろうなっていうところを
Guest
なんとなく分かっていたので、まその辺をまuiの部分については、もう割と自分の中で慣れてるフレームワークを使ってま。ちょっと頭の中の領域みたいなものをちょっとあの小さくしたかったっていうのもあ、
Guest
はいはいはい、できるだけ省エネでやりたかった。
Guest
あ、そうですね、はい。
Guest
エシェネレートライブラリーっていう存在を私、初めて知ったんですけど、
Guest
はい、あの、これは結構プロジェクト的には、あの普通アビラって入したらとま。テスト環境を含めて、ドンとアプリケーション作るためのものが出てくると思うんですけど、このライブラリージェネレートの場合は、どういったものが作られるんですか。
Guest
そうですね、この場合はまあらいほんとにクリエイトライバリーという名の通りと、アングラーのまライブラリーを作るようなものを、生成してくれるものになります。
Guest
で、まあ、新しくプロジェクトっていうフォルダーができまして、そこに新しく生成したライブラリーが入ってきて、
Guest
で、そのままビルドすると、あの元のプロジェクトから参照できるような形で、ライブラリーができるというものにな
Guest
で、そこはニューした。普通のアプリケーションプロジェクトの配下にライブラリを受けるって感じなんですかね。これは
Guest
そうですね、はかというよりかま並列というか、はい、
Guest
そうなんですね。なるほど、リアクトとかミューとかって、なかなかコンポリント作りやすい環境がなくて。まあ、
Guest
あの、自前で用意しがちですけど、こういうのがデフォルトで録音されてんのは結構面白いですね。面白いそうですね、
7. これからについて
Guest
いや、ちょっとテクニカルな部分から次発展して、これからの話をちょっと聞きたいなと思うんですけど。
Guest
はい、
Guest
一旦ゴールデンウィークの。自由研究っていう枠は多分終えてま。普段の土日開発みたいな形にみんな戻っていくかなと思うんですけど、ゴールデンウィークやった内容を踏まえて、
Guest
こういうことやっていきたいなとかってあったりしますかね。
Guest
はい、今はですねこの
Guest
カセットテープのアプリは、プレイリストしか。まだ再生できないっていうものになってて、はいはい、ちょっと機能が足りないなと
Guest
感じてる部分があります。はい、例えば、applemusicだと。自分のじゃなくて、他人の公開したプレイリストだったりとか。っていうものも、きっと再生したいなっていう話も出てくると思うので、ま、その辺の拡張をもちろんしたいっていうのは
Guest
ありますし、あとま先ほど言ったように、あの、ライブラリーを作っているものの、デモアプリっていうような面もあるので、そういう意味でも、ちょっと機能が足りない
Guest
なんだろう、デモになってないじゃないか、みたいなところも、はい、結構多いと思います。この辺をもう少しなんかあの拡張していく必要があるかなと感じています。
Guest
なるほど、ございます。確かに、デモアプリという側面とは、1つのプロダクトっていう側面が両方。まあ、こうどんどん進化させていく必要があるって感じですね。
Guest
はい、
Guest
アギャラってすること、結構あのウェブコンポーネンツ、スペポーズとかも簡単にできるんで、あの、昔のブログとかによくあったあの音楽再生ウィジェットみたいなも
Guest
作れるのかなとか思うと、なんか、昔ブログパーツみたいなのいっぱいあったじゃないですか、あの、フラッシュであああいう感じで、ミュージックプレイヤーとか
Guest
踏み込めるとまた面白いのかな。
Guest
そうですね、なんか、そういう方面でも、結構チャレンジできたら面白いかなと思います。
Guest
いや、これからまたなんかアプリとかあったら、このpodcastの枠もありますので、ぜひぜひこういうのというのを話してもらえればと思います。
Guest
あ、はいはいえ、今日はありがとうございました、ありがとうございました
8. クロージング
Guest
というわけでですね、ごLINEのフロントンジアのゴールデンウィーク、4日目はですね。えけしさんに、ミュージックキットジェイスを使って、えと、
Guest
アンギラーセのウェブアプリケーションを作ってもらった話とま、それのライブラリターへの展望みたいな話を聞いていきました。
Guest
ラインのフロントエンド開発室UITではですね。このようなこのような形でま、日々、自己検算やえ、議論などを行っております。
Guest
直近で言うとですね。このラインのフロントエンドンジェラのゴールデンウィークもそうですし。ビーススタディーなんかも。社内のえ学習企画から生まれたものなので、ま。これからもこういったものがあれば、どんどんえ。外部で発信していきたいなと思っておりますので、
Guest
えま、ぜひぜひご興味があれば、これからもお聞きいただければと思います。
Guest
最後にですね。このポートキャストについてのご意見やご感想をお待ちしております。ハッシュタグシャープUIT、アンダースコアインサイド、え、シャープUIT、アンダースコアイサイド見て
Guest
つぶやいていただきます。とまたウスタッフの方で拾わせていただきますので、え、ぜひぜひフィード待っていただきますと幸いです。
Guest
というわけで、え。本日はラインのフロントエンドエンジアのゴールデンウィーク。4日目ということで、えとけしさんにお話を伺いました。けしさん、ありがとうございました、
Guest
ありがとうございました。