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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
poccariswet
December 06, 2017
Technology
130
1
Share
さぁ、深夜ラジオを聴こう!
深夜ラジオ(特にbananamoonGOLD)が大好きな僕が、goでradikoから録音するCLIを作った話
poccariswet
December 06, 2017
More Decks by poccariswet
See All by poccariswet
rust for web app
poccariswet
2
380
APNG maker on wasm
poccariswet
1
210
past and future
poccariswet
0
93
ncursesを学ぼう
poccariswet
0
84
shorterql
poccariswet
0
100
i_and_go
poccariswet
0
74
editor
poccariswet
0
110
Aizu-Go
poccariswet
1
170
Other Decks in Technology
See All in Technology
個人最適 から 全体最適 へ AI情報共有会・AIギルド・AI-DLC で進める カンリーの組織展開
rfdnxbro
0
1.1k
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
720
[モダンアプリ勉強会]今更聞けないGit/GitHub入門
tsukuboshi
0
190
「速く作る」から「正しく作る」へ ─ 生成AI時代の開発フロー改革の ロードマップと実行 ─
starfish719
0
5.9k
Databricks における 生成AIガバナンスの実践
taka_aki
1
280
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
220
Dynamic Workersについて
yusukebe
2
580
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
210
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
180
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.1k
noUncheckedIndexedAccess、3時間、1万円。 / noUncheckedIndexedAccess, 3 Hours, 10,000 JPY.
kaonavi
1
150
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
830
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
560
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
The Limits of Empathy - UXLibs8
cassininazir
1
350
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
220
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Building Adaptive Systems
keathley
44
3k
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