PocketへWebページを保存するとページの本文らしき部分を抽出し、Text-to-Speechでそれを読み上げた音声ファイルを作り、プライベートなPodcastとして配信するしかけを作った。

音声合成エンジンとしてVOICEVOXも試したが、手元の環境で安定して動作させるところまでいけず断念。

システムの概要

flowchart TD   
	Podcastアプリ[/Podcastアプリ\] --> |参照|nginx
	Pocket[/Pocket\] --> |新規保存|IFTTT
	IFTTT --> |Webhooks|nginx
	subgraph システムの概要
		nginx
		nginx --> |PodcastのRSSフィード参照|index.rss
		nginx --> |PocketしたURLを通知|sinatra
		subgraph PodcastのRSSフィード生成
			mp3 --> |参照|index.rss
			mp3 --> |参照|dropcaster
			cron --> |5分毎|dropcaster --> |存在するmp3からRSSフィード生成|index.rss
		end
		subgraph 音声ファイル生成
			sinatra
			sinatra --> readability
			readability --> |ページの本文|texttospeech
			texttospeech --> |本文からmp3生成|mp3[(mp3)]
		end
	end
	

使用したライブラリやサービス