Re: Webラジオの保存方法の質問はこちら【22】 ( No.102 )
日時: 2016/07/09 17:16
名前: りんりん

>>94

私もたかぴーさんと同じ症状が出ていたのですが、原因らしきものが判ったので書き込ませていただきます。

Firefox で取得する URL に「URL エンコード」というものが掛けられていて、エンコードが掛かったものをそのまま FFmpeg に引き渡すと
「Invalid data found when processing input」が発生するようです。

具体的には取得した URL の

 ・トークン部分の後の「=」が「%3D」
 ・トークンの中に出てくることがある(常に出てくるとは限りません)「+」が「%2B」、「/」が「%2F」

にエンコードされています。

ですから、これを元に戻した上で FFmpeg に引き渡してあげれば良いはずです。
ですが、(私の環境だけかもしれませんが)「%2B」が出てきた場合は、「+」に変換しても常に「Invalid data found when processing input」が発生しました
(「%2F」の方は「/」に変換すればほぼ大丈夫でした)。
もし、「%2B」が含まれる URL の場合は、ページを再読み込みした上で URL を再取得するといいと思います。


>>100

(Chrome で問題が解決されたようなので、もう不要かなとも思いますが)開発ツールのウィンドウ内の「ネットワーク(N)」の右の下向き三角をクリックして、
「ログ」にチェックが入っていないようなら、入れてみてください。


>>101

お久しぶりです、おひげさん。

ごめんなさい。32bit 機が使えなくなってしまい、バッチの動作確認が取れていません。
時間があれば復旧して、動作確認を取りたいと思いますが、現在はまったく余裕がありません。ひょっとすると、このまま処分してしまうかもしれませんので、
望み薄だと思っていてください。
ほんとうにごめんなさい。

今回のバッチに関しては、私の環境でもちゃんと動作していますが、おひげさんと同じ環境ですから、あまり参考にはなりませんね。

それと質問なのですが、私の環境ではユーザーエージェントはそのままで URL が取得できるのですが、おひげさんの環境ではそうではないのですね?
Firefox で取得した URL はエンコードがかかっていますか?また、(私は Chrome を使いたくないので、確認を取れていないのですが)Chrome で取得した
URL はどうでしょうか?
それとも、エンコードが掛かったままの URL でもエラーが発生しない FFmpeg をご使用でしょうか?もし、そうでしたら、入手先を教えていただけるととても嬉しいです。

私の環境は Windows 10 Home(64bit)、Firefox 47.0.1(32bit)です。

Re: Webラジオの保存方法の質問はこちら【22】 ( No.103 )
日時: 2016/07/09 19:03
名前: おひげ




>>102 りんりんさん

FireFOXでのURL取得ですが、どのバージョンだったか忘れましたが 40台前半のバージョンまではユーザーエージェントを
携帯端末に変更しなければ響のm3u8が取得できませんでしたが、現在の最新版 47.0.1 だと問題なくデフォルトのままで
m3u8 の取得ができているので現在はユーザーエージェントの変更は行っていません。

Chromeに関しては ガニさん がURLの更新(追加)が動的に行われないということだったので違う解決法がないかを探ってみただけとなります。

現状はどちらのブラウザもユーザーエージェントを変更する必要はないと思います。(XP等で旧バージョンしか使用できない場合を除く)


URLエンコードに関してですが、こちらは特に意識しないでも問題なく表示されている物(%2B,%2Fを含む物)で
ダウンロードができています。

token= の = が %3D になったことはこちらでは無いのでなんともいえませんがtokenの文字列内に %3D を含んだ token の
ダウンロードは所有している ffmpeg でダウンロードはできています。


<ダウンロード可能>
token=Fs%2BoNhr%2FNJ6WXRyQUgFO3%2BUshqPPMR25iPPiqzMosWQ%3D&vms_video_id=****&user_id=**** (Firefox,Chrome で取得した物 tokenに %2B %2F %3D を含む)

<ダウンロード不可>
token=Fs+oNhr/NJ6WXRyQUgFO3+UshqPPMR25iPPiqzMosWQ=&vms_video_id=****&user_id=**** (token中の %2B %2F %3D を + / = に変更してみた)
token=Fs%2BoNhr%2FNJ6WXRyQUgFO3%2BUshqPPMR25iPPiqzMosWQ%3D&vms_video_id%3D****&user_id%3D**** (token=以降の + / = を %2B %2F %3D に変更してみた)
token%3DFs%2BoNhr%2FNJ6WXRyQUgFO3%2BUshqPPMR25iPPiqzMosWQ%3D&vms_video_id%3D****&user_id%3D**** (すべての + / = を %2B %2F %3D に変更してみた)

(**** にはユーザー情報に関する数字が入っています)


使用している ffmpeg は下記URLの物の最新版 b450b82 (2016-07-07) です。

https://ffmpeg.zeranoe.com/builds/

Re: Webラジオの保存方法の質問はこちら【22】 ( No.104 )
日時: 2016/07/10 04:51
名前: りんりん

>>103

おひげさん、情報ありがとうございます!

すいません、私の使っていた FFmpeg のバージョンを書き忘れていました(汗)
おひげさんがお使いのものと入手先は同じですが、去年のもので、「ffmpeg-20151113-git-6f520ce-win64-static」になります。

そして、最新版の「ffmpeg-20160707-b450b82-win64-static」を使ってみましたが、症状は変わりませんでした。
おひげさんが例示してくださったものですと、「<ダウンロード不可>」の方の1番最初のものの状態にしないとダウンロード出来ないんです。
(ただ、例示してくださったものは「+」が含まれているので、私の環境ではきっと「Invalid data found when processing input」が発生したと思います)
おひげさんの環境では、逆にデコードしてしまうとダメなんですね。勉強になりました!

それと、私「トークン」は「token=」の後ろから「%3D&vms_video_id=****」の前までだと思っていたので、No.102 ではそういう意味で使っていました。
ですから、私の言う「・トークン部分の後の『=』が『%3D』」というのは、「token=」の方ではなく「%3D&vms_video_id=****」の方の「%3D」になります。
誤解させてしまってごめんなさい。

もう一つ、「&user_id=****」の「****」部分はログイン後に「-1」から変化するので、ユーザー情報に関する数字なのだと思うのですが、
「%3D&vms_video_id=****」の「****」部分はストリーム固有の番号ではないでしょうか?
2016/07/10 04:33 現在の私の環境でですが、

 ・「今日のつぶやき(ヴァントラ)」が「1968」
 ・「RADIO NEW GAME! 〜コウとりんの進捗報告会!〜」の本編が「1930」、楽屋裏が「1931」
 ・「この素晴らしいラジオに祝福を!」の本編が「1926」、楽屋裏が「1927」

>>55 で、うみねこさんがおっしゃっている「楽屋裏のURLは本編のvideo_idの連番のURLになると思う」というのは、そういうことではないかと思うんです。
私が試した限りでは「ブブキ・ブランキ ― 心と右手をつなぐラジオ ―」と「ラジオ七つの大罪 <豚の帽子>亭ホークトーク」以外では
「楽屋裏は本編に1を足した番号」でした。

>>95 でおひげさん、「過去参照が増えてきたので一度1つの記事にまとめた方がいいのかな?」とおっしゃってますが、新しいクールも始まったばかりですし、
まとめたら喜ばれる方は多いのではないでしょうか。
おひげさん、お時間大丈夫ですか?




トップページ