JavaのHTTPUrlConnectionでヘッダーに「Origin」を追加する

JavaのHTTPUrlConnectionでどうしてもステータス403エラーになってしまっている。curlコマンドでは問題なく動いているのに、その原因を調べた。

まず、 http - How to enable wire logging for a java HttpURLConnection traffic? - Stack Overflow に参考して、ソースコード

System.setProperty("javax.net.debug","all");

を追加して、実際の通信時の送信したヘッダーを調べた。そうすると、ソースコードで指定していた「Origin」ヘッダーが送信されていなかったことが判明した。

そして、

http - Java JSOUP how to send the Origin in the header - Stack Overflow に参考して、ソースコード

System.setProperty("sun.net.http.allowRestrictedHeaders", "true");

を追加したら、期待通り「Origin」ヘッダーが送信されることが確認でき、403エラーも解消した。

2020年3月4日放送東大王難問オセロ

春に関する難読漢字

鬱金香 チューリップ 花篝 はなかがり 筆頭菜 つくし 針嘴魚 さより
スミレ さわら 新葱頭 しんたまねぎ 牡丹餅 ぼたもち 啓蟄 けいちつ 春告魚 にしん
甘蔗 さとうきび はまぐり     朧月 おぼろづき 春告鳥 うぐいす
おたまじゃくし 雛霰 ひなあられ     ふき 春告草 うめ
春紫苑 ハルジオン 東風 こち 枝垂桜 しだれざくら たけのこ 甘藍 キャベツ 内裏雛 つだいりびな
竜髭菜 アスパラガス 瑞香 じんちょうげ 躑躅 つつじ 楤芽 たらのめ

芸能人チームが全滅のため、角の漢字は出なかった。

2020年2月26日放送東大王難問オセロ

鳥の名前に関する難読漢字

伽藍鳥 ペリカン 白頭鳥 ひよどり 鶺鴒 せきれい もず 秧鶏 くいな 蜀魂 ほととぎす
桃花鳥 とき 鸚哥 インコ 禿鷹 はげたか 四十雀 しじゅうから 矮鶏 ちゃぼ
木菟 みみずく かもめ     金糸雀 カナリア ちどり
かささぎ 椋鳥 むくどり     うぐいす 信天翁 あほうどり
翡翠 かわせみ 雲雀 ひばり 十姉妹 じゅうしまつ 鸚鵡 おうむ 啄木鳥 きつつき 玄鳥 つばめ
珠鶏 ほろほろちょう こうのとり 鴛鴦 おしどり つぐみ 山魚狗 やませみ 蚊母鳥 よたか

2020年2月19日放送東大王難問オセロ

水に関わる生き物に関する難読漢字

馬鮫魚 さわら 寄居虫 やどかり 魚虎 はりせんぼん 拳螺 さざえ 儒艮 じゅごん 玉珧 たいらぎ
巨頭鯨 こんどうくじら 権瑞 ごんずい たちうお 鮟鱇 あんこう 鮎並 あいなめ 鷓鴣 しゃこ
海象 せいうち 翻車魚 まんぼう     海豚 いるか 梭魚 かます
海鼠 なまこ 雨虎 あめふらし     水母 くらげ 大口魚 たら
燭魚 はたはた 柳葉魚 ししゃも 海胆 うに 猟虎 らっこ 沙魚 はぜ 海盤車 ひとで
望潮魚 いいだこ にしん 海鞘 ほや 胡獱 とど 菟葵 いそぎんちゃく 竹麦魚 ほうぼう

ffmpegで動画ファイルを連結する

FFmpegで動画を連結する方法 (ffmpeg version 3.4.2) - Kaoru Mori - Medium に実施方法が書かれています。

まず、以下の内容のlist.txtファイルを作成する。

file /Users/kaoru/1.mp4
file /Users/kaoru/2.mp4
file /Users/kaoru/3.mp4 

 次、以下のコマンドを実行する。

 $ ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp4

 

2020年2月12日放送東大王難問オセロ

外来語に関する難読漢字

来路花 サルビア 木栓 コルク 白楊樹 ポプラ 拿林雀 カナリア 鳩琴 オカリナ 食單 メニュー
卓子 テーブル 乾酪 チーズ 硝子 ガラス 手巾 ハンカチ 鳳梨 パイナップル 糖酒 ラム
茫栗 マンゴスチン 排球 バレーボール     型録 カタログ 番紅花 サフラン
獅子女 スフィンクス 熊猫 パンダ     甘蕉 バナナ 大提琴 チェロ
自鳴琴 オルゴール 円舞曲 ワルツ 洋袴 ズボン 送球 ハンドボール 長尾驢 カンガルー 小酒 リキュール
鶏蛋糕 カステラ インチ 果蜜 シロップ 手風琴 アコーディオン センチメートル 嗩呐 チャルメラ

ffmpegでm3u8ファイル変換時のエラー対応

ffmpegでm3u8を普通のファイルへ変換する際に、以下のエラーが発生した。

[hls @ 0x560cb61609c0] Filename extension of 'xxxxx.key' is not a common multimedia extension, blocked for security reasons.
If you wish to override this adjust allowed_extensions, you can set it to 'ALL' to allow all 

 ファイルの中身にはxxxxx.keyに関する記述は下記のように書かれている。

 #EXT-X-KEY:METHOD=AES-128,URI="xxxxx.key",IV=0x??????????????????????

 該当の行は使用されていないかは不明なため、いろいろffmpegのオプションを調べた。下記のサイトに解決法が書かれている。

http live streaming - ffmpeg how to allow a file extension - Stack Overflow

ffmpegのコマンドで下記のように実行すればよい。

ffmpeg -allowed_extensions ALL -i input.m3u8 -c copy output.ts 

普通のコマンドと異なり、ffmpegではオプションの順番にこだわってるようで、オプションの順番が違うとうまく動かないようだ。