Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
さぁ、深夜ラジオを聴こう!
Search
poccariswet
December 06, 2017
Technology
0
72
さぁ、深夜ラジオを聴こう!
深夜ラジオ(特にbananamoonGOLD)が大好きな僕が、goでradikoから録音するCLIを作った話
poccariswet
December 06, 2017
Tweet
Share
More Decks by poccariswet
See All by poccariswet
rust for web app
poccariswet
2
330
APNG maker on wasm
poccariswet
1
170
past and future
poccariswet
0
47
ncursesを学ぼう
poccariswet
0
56
shorterql
poccariswet
0
69
i_and_go
poccariswet
0
40
editor
poccariswet
0
77
Aizu-Go
poccariswet
1
130
Other Decks in Technology
See All in Technology
SDNという名のデータプレーンプログラミングの歴史
ebiken
PRO
2
140
Platform Engineering for Software Developers and Architects
syntasso
1
520
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
日経電子版のStoreKit2フルリニューアル
shimastripe
1
150
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
7
690
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
2
230
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
120
CDCL による厳密解法を採用した MILP ソルバー
imai448
3
180
The Rise of LLMOps
asei
9
1.8k
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
297
20k
GitHub's CSS Performance
jonrohan
1030
460k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Ruby is Unlike a Banana
tanoku
97
11k
Rails Girls Zürich Keynote
gr2m
94
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Transcript
さぁ!深夜ラジオを聴こう!
自己紹介! 名前: soeyu 学部: 2年 言語: Golang 趣味: サッカー、深夜ラジオ(bananamoonGOLD...etc)を聞くこと!!
None
とにかく!
最高
今回やったこと!!
ラジオを録音する CLI
なんで??
自己紹介! 名前: 添田 有佑 学部: 2年 言語: Golang 趣味: サッカー、深夜ラジオ(bananamoonGOLD...etc)を聞くこと!!
自己紹介! 名前: 添田 有佑 学部: 2年 言語: Golang 趣味: サッカー、深夜ラジオ(bananamoonGOLD...etc)を聞くこと!!
None
None
None
どうやって??
None
流れ
クライアント取得 ↓ ログイン(プレミアム会員)の認証 ↓ 認証トークンの取得 ↓ 認証キーの抽出 ↓ 番組表のxmlファイルの取得 ↓
M3U8ファイルの取得 ↓ M3U8ファイルからaacファイルの生成 ↓ aacファイルのconcat (ffmpegを使う)
・複数のメディアファイルのパスをプレーンテキスト(テキストファイ ル)で記述した、マルチメディアプレイリストのファイルフォーマット M3U8ファイルって??
None
ffmpeg(エフエフエムペグ)は動画と音声を記録、変換、再生するためのフリーソフトウェ ア 今回は音声ファイル(aac)をつなぎ合わせるために使いました。 こんな感じで↑ ffmpegとは??
demo
感想 ・はじめffmpegでaacファイルをconcatするときに、”Invalid data found when processing input”という処理時のエラーが出てよくわからなかったけど、一度ffmpegで aacファイル ー>aacファイル をしたらうまくいった。
・大好きなbananamoonGOLDをどこでも、いつでも聞けるようになって嬉しい! ・まだまだ改善点や拡張(live streamingなどなど)ができると思ったので、頑張りたい!
Reference ・http://d.hatena.ne.jp/nyanonon/touch/20161211 ・https://ja.wikipedia.org/wiki/M3U ・https://hori-ryota.com/blog/ffmpeg-mp4-concatenate/ ・http://blog.sarabande.jp/post/90736041568 ・https://github.com/soh335/radicast/blob/master/radiko.go