Upgrade to Pro — share decks privately, control downloads, hide ads and more …

色々聞く

 色々聞く

発表場所:「東海道らぐとLinuxをはじめる春まつり」 https://tokaidolug.connpass.com/event/244245/

source:
https://gitlab.com/matoken/tokaidolug-2022.04/-/blob/master/slide/slide.adoc

Kenichiro MATOHARA

April 16, 2022
Tweet

More Decks by Kenichiro MATOHARA

Other Decks in Technology

Transcript

  1. 鹿児島らぐ2022.03発表 鹿児島らぐ2022.03発表 matoken koedoyoshida「sshd DDOS対策してみた」 kapper , , , 「Torで色々🧅」

    「超格安ジャンクPCでXubuntu22.04にAnboxを入れ てX11指定すると爆安Andorid環境とGooglePlayをLinuxで作 れてとても楽しい」 「ドン・キホーテ格安1,980圓焼き芋メーカーで 石焼き芋を作って堪能してみた」 「ジャンク2,000圓Blu-Rayプレ イヤーとジャンクWindowsタブレットとUbuntu LinuxとWineで 格安Blu-Ray端末してみた」 「100均Candoの330圓テンキーの キーバインドを改造してオリジナルキーボードを作ってみる。 Ubuntuのxevでキーコードを調べてxmodmpに書き込むだけ。簡 単。Windowsでも似たような事が出来る。」 4 / 47
  2. Podcast Podcast 基本的にラジオのような音声メディア 基本的に音声ファイルをダウンロードして聞くので時間や場所を選 ばず聞ける ShowNoteがあったり,文字起こしテキストがあったり,限定コン テンツがあったり Podcast AgregatorでPodcast RSS

    feedを購読 Spotifyなどはストリーミングで聞けて複数デバイスでも視聴一元管 理出来てお手軽に? スマートスピーカーなども対応 要回線 → 圏外で聞けない Androidアプリでは前もってダウンロ ードすることでオフラインで視聴可能だった 6 / 47
  3. 昔 昔 iTunes + iPod mini Songbird + iPod mini

    PCと同期するとファイル,視聴履歴が同期される アプリケーションが重かった 8 / 47
  4. 最近 最近 Rakiten Mini(Android) + Podcast Addict PCで聞くときにもBluetooth A2DPで音を飛ばして視聴履歴を 1つに

    最新5話を保存,1.5倍速再生 podget + audacious podgetで全話保存 特定の話を聞き返したいときなどに利用 (大抵全話公開されてい るが,サーバが死んだりする……) 9 / 47
  5. ダウンロード可能なフォーマッ ダウンロード可能なフォーマッ トを確認&IDをメモ トを確認&IDをメモ $ yt-dlp -F https://www.youtube.com/watch?v=BoFSOt0mtvg [youtube] BoFSOt0mtvg:

    Downloading webpage [youtube] BoFSOt0mtvg: Downloading android player API JSON [info] Available formats for BoFSOt0mtvg: ID EXT RESOLUTION FPS │ FILESIZE TBR PROTO │ VCODEC VBR ACODEC ABR ASR MOR ─────────────────────────────────────────────────────────────────────────────────────────────── sb2 mhtml 48x27 │ mhtml │ images st sb1 mhtml 80x45 │ mhtml │ images st sb0 mhtml 160x90 │ mhtml │ images st 139 m4a audio only │ 20.17MiB 48k https │ audio only mp4a.40.5 48k 22050Hz low 249 webm audio only │ 20.80MiB 50k https │ audio only opus 50k 48000Hz low 250 webm audio only │ 25.84MiB 62k https │ audio only opus 62k 48000Hz low 140 m4a audio only │ 53.53MiB 129k https │ audio only mp4a.40.2 129k 44100Hz med 251 webm audio only │ 48.99MiB 118k https │ audio only opus 118k 48000Hz med 17 3gp 176x144 12 │ 18.87MiB 45k https │ mp4v.20.3 45k mp4a.40.2 0k 22050Hz 14 160 mp4 256x144 24 │ 13.37MiB 32k https │ avc1.4d400c 32k video only 14 278 webm 256x144 24 │ 17.94MiB 43k https │ vp9 43k video only 14 133 mp4 426x240 24 │ 27.53MiB 66k https │ avc1.4d4015 66k video only 24 242 webm 426x240 24 │ 29.36MiB 71k https │ vp9 71k video only 24 134 mp4 640x360 24 │ 48.95MiB 118k https │ avc1.4d401e 118k video only 36 18 mp4 640x360 24 │ 88.97MiB 215k https │ avc1.42001E 215k mp4a.40.2 0k 44100Hz 36 243 webm 640x360 24 │ 56.62MiB 136k https │ vp9 136k video only 36 135 mp4 854x480 24 │ 82.40MiB 199k https │ avc1.4d401e 199k video only 48 244 webm 854x480 24 │ 76.90MiB 185k https │ vp9 185k video only 48 136 mp4 1280x720 24 │ 134.08MiB 324k https │ avc1.64001f 324k video only 72 22 mp4 1280x720 24 │ ~191.73MiB 452k https │ avc1.64001F 452k mp4a.40.2 0k 44100Hz 72 247 webm 1280x720 24 │ 143.82MiB 347k https │ vp9 347k video only 72 137 mp4 1920x1080 24 │ 201.57MiB 487k https │ avc1.640028 487k video only 10 248 webm 1920x1080 24 │ 168.30MiB 407k https │ vp9 407k video only 10 16 / 47
  6. 視聴履歴に残す 視聴履歴に残す --cookies-from-browser BROWSER[+KEYRING][:PROFILE] YouTubeログイン済のブラウザ( brave, chrome, chromium, edge, firefox,

    opera, safari, vivaldi)から cookieを取得 --cookies FILE ブラウザからYouTubeのcookieを書き出したファイル指定, cookie書き出しには拡張機能のcookies.txt利用 リモートで利用時に便利 cookies.txt – Get this Extension for <F0><9F> <A6><8A> Firefox (en-US) 20 / 47
  7. Twitter Spaceアーカイブダウンロ Twitter Spaceアーカイブダウンロ ード ード $ twspace_dl -i https://twitter.com/i/spaces/1ypKdEXLdLqGW

    : $ ffprobe -i ./\(辻\ 伸弘\ \(nobuhiro\ tsuji\)\)ゆくアレ、くるアレ\ #セキュリティのアレ-1ypKdEXLdLqGW : Input #0, mov,mp4,m4a,3gp,3g2,mj2, from './(辻 伸弘 (nobuhiro tsuji))ゆくアレ、くるアレ #セキュリティ Metadata: major_brand : M4A minor_version : 512 compatible_brands: M4A isomiso2 title : ゆくアレ、くるアレ #セキュリティのアレ artist : 辻 伸弘 (nobuhiro tsuji) encoder : Lavf58.76.100 episode_id : 1ypKdEXLdLqGW Duration: 01:13:21.71, start: 0.000000, bitrate: 95 kb/s Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 93 kb/s (defau Metadata: handler_name : SoundHandler vendor_id : [0][0][0][0] 23 / 47
  8. 無音部分をカット 無音部分をカット 1 一定以下の音の部分をカット 01:13:21.71 → 01:09:51.71 になった  ノーマライズを挟むといい

    かも? $ ffmpeg -i ./\(辻\ 伸弘\ \(nobuhiro\ tsuji\)\)ゆくアレ、くるアレ\ #セキュリティのアレ-1ypKdEXLdLqGW.m -af silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB \ -acodec libopus \ ./\(辻\ 伸弘\ \(nobuhiro\ tsuji\)\)ゆくアレ、くるアレ\ #セキュリティのアレ-1ypKdEXLdLqGW.opus 1 別の動画では -90dB でうまくいった. 24 / 47
  9. README.mdにもサンプルが README.mdにもサンプルが echo -n "こんにちは、音声合成の世界へようこそ" >text.txt curl -s \ -X

    POST \ "localhost:50021/audio_query?speaker=1"\ --get --data-urlencode [email protected] \ > query.json curl -s \ -H "Content-Type: application/json" \ -X POST \ -d @query.json \ localhost:50021/synthesis?speaker=1 \ > audio.wav 33 / 47
  10. テキストファイルからを1行毎に テキストファイルからを1行毎に 読み出して.wavに 読み出して.wavに 1 テキストを渡すとwavを返すscript $ count=0 ; cat

    ./文章.txt | while read line; \ do echo ${line} ; \ ./voicevox2wav.bash ${line} > "${count}.wav" ; \ count=$(( ${count} + 1 )); done 1 34 / 47
  11. .wav を結合しつつopus/oggに変換 .wav を結合しつつopus/oggに変換 大分聞きやすい2時間超のものを最後まで聞けた $ find . -name "*.wav"

    -size +1c | sort -V | xargs -n1 basename | xargs -n1 echo file > wav-fi $ time ffmpeg -f concat -i ./wav-files -acodec libopus episode12.ogg 35 / 47
  12. 字幕ファイルの.vttから.txtに変換 字幕ファイルの.vttから.txtに変換 $ awk 'FNR<=4 || ($0 ~ /^$|-->|\[|\]|</){next} !a[$0]++'

    \ ./Ep\ 12\ -\ Crypto\ Wars\ \[lZjciSImVhU\].ja.vtt > \ ./Ep\ 12\ -\ Crypto\ Wars\ \[lZjciSImVhU\].ja.txt 39 / 47
  13. 英語テキストを機械翻訳して読 英語テキストを機械翻訳して読 み上げして聞く み上げして聞く 今回は英語Podcastの書き起こしテキストを変換 htmlをテキストに,無駄な改行を削除 $ w3m -dump |

    tr -s "\n" > text TransShell経由でGoogle翻訳を使い日本語に変換 $ cat ./text | while read line; do trans -b en:ja "${line}" | tee -a text.ja; done https://darknetdiaries.com/transcript/112 42 / 47
  14.  DeepLの利用(失敗) ファイルだと5MB 10万文字までの翻訳が可能.しかし帰っ てきた文章からテキストに戻せない? $ pandoc text.en -o text_en.pdf

    $ : ウェブブラウザのDeepLで翻訳 $ pdf2txt 'text_ja.pdf' | head rM?= 2 DREW8»(cid:220)(cid:215)(cid:238)\(cid:231)(cid:135)[CTI8(cid:11) JACK: 88(cid:135)[M?=(cid:143)¡?]:?(cid:131)?}^8E](cid:10)^(cid:135)?.........(cid:11) DREW88x6(cid:10)Q:^(cid:135)[M|(cid:11) 44 / 47