試作ダウンローダー1号のwiki

ページ名:試作ダウンローダー1号のwiki

●はじめに

NHKラジオ語学講座のネット配信をダウンロードするrubyスクリプトのページです。

Twitter : 試作ダウンローダー1号

試作ダウンローダー1号や、このwikiへのご意見ご感想は、掲示板にお願いします。

●謝意

"Capture Stream", "NHK.hta"の作者様のwikiは、特に参考にさせていただきました。

その他"ffmpeg" 等のツールの関係者の皆様ありがとうございます。

●来歴

"Capture Stream"の改造を手始めに、python, clojureへの書換を試みた後、新形式(json)にも対応が出来たので、公開してみました。

●公開中の版

★今わかっている欠陥★211226版以後

旧(xml)形式で、3月末に新年度の講座が始まった場合に、ファイル名の年の部分が更に一年先になります(4月になれば戻ります)。今の所対策が無いので、個々にファイル名の修正をお願いします。→次版(2月中旬)で対策予定。

◎最新版 : 220110版

リトライ設定の時も ffmpeg の途中経過を表示できます。
リトライの回数を制限します(初期値5回)。

1月始まりの4科目の offset を変更。

○旧版 : 211226版

旧(xml)形式の日付が、1~3月になっても前年のままなのを修正

全ての講座で、曜日を指定してダウンロード出来る様にしました。VR_LIMITER, CCE_LIMITER, CHI_LIMITERは、削除しました。

△旧版 : 211214版

まいにち中国語の金曜日分だけのダウンロードを可能にしました(新旧両形式)。

△旧版 : 211210版

旧形式の主な講座の保存ファイル名に、回数を追加。

それに伴い、新旧両形式で回数の桁を固定長にしました(可変長にもできます)。

△旧版 : 211201版

リトライ版にリトライしない機能を追加統合しました。今後この版をベースに改訂していきます。

その他、LST_KOUZAのデータのチェックを強化、カムカムエブリバディの旧形式対応など。

・リトライの動作

ffmpegのエラー出力を内部で受けて、"HTTP error"の文字列があったら、ファイルを削除し、その講座をキューの最後に追加します。

●特徴

・全語学講座、新旧(新=json=らじるらじる, 旧=xml=NHK語学アプリ)両形式対応。

・windowsで作っていますが、rubyとffmpegが有ればosを問わず実行できる(はず)。

・GUI無し。また、jsonやxmlのライブラリは使わず、stringとregexpで作っています。

・エラー検知が弱いので、ダウンロードに失敗していても成功した様に見えるかもしれません。

●発見

・同じ講座をダウンロード(同じエンコード設定 -c:a copy)しても、新旧形式/再配信で得られたファイルのサイズ/チェックサムは、違う場合がある。

・旧形式(xml)でダウンロードした方が、HTTP errorは少なく、僅かにビットレートが高い=ファイルが大きい(新旧共に -c:a copy)。

試作ダウンローダー1号の掲示板