namareco-0.4.3リリース
ダウンロード
変更点
- 長時間配信の再生時間表示がおかしくなる件について修正
- それと結局6時間配信でテストはしていません
- うまくいかなかった場合どなたか教えてもらえるとありがたいです
- 0.4.2でマージしてしまったアラート機能はそのままなのでRuby版は相変わらず導入が面倒です
- すいませんがご注意ください
長時間配信の再生時間表示がおかしくなる件について
長時間配信の再生時間表示がおかしくなる件についてスレで有用な情報を頂いた
934さんどうもありがとうございました!
934 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/04/25(月) 20:52:38.03 ID:6KHGsd410 recoで長時間録画したファイルが再生ソフトなどで少ない再生時間表示になり ちゃんと再生できないファイルを修復するソフトを作りました 長時間とは16777秒(約4時間40分)超えのことです http://osflash.org/flv ここのFLVの仕様を見るとTimestampの3byte分(0xFFFFFF=16777215㍉秒)を超えると また0からはじまり、TimestampExtendedが1増えるのですが recoだとこれが0に固定されていて再生時間がおかしくなります この修復ソフトはTimestampExtendedだけを変更します 使用方法は壊れたファイルをドラッグアンドドロップするだけです http://www1.axfc.net/uploader/Sc/so/227881.zip&key=nico
これで今まで6時間配信できちんとテストなんてしてないことがばればれになってしまったな
それとドキュメントはちゃんと読まないとダメだ
追記
952さんからパッチを頂いた
どうもありがとうございました!
952 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/04/25(月) 23:17:42.05 ID:NIjszGIz0 [2/2] recoだとRtmp内のタイムスタンプは単調増加だから書き出すところで調整すれば終わりかな? timestampextended の次の StreamId 3バイトは >>934 だと always 0 ってなってるけどrecoだと最後 1 になってるね何ぞ diff --git a/scripts/flv.rb b/scripts/flv.rb index 085e869..1e27913 100755 --- a/scripts/flv.rb +++ b/scripts/flv.rb @@ -16,8 +16,8 @@ class Flv def output(type, length, length_str, timestamp, body) @fd.print [type].pack("C*") @fd.print length_str - @fd.print decomp(timestamp, 3) - @fd.print [0x00, 0x00, 0x00, 0x01].pack("C*") + @fd.print decomp(timestamp & 0xffffff, 3) + @fd.print [(timestamp >> 24) & 0xff , 0x00, 0x00, 0x00].pack("C*") @fd.print body @fd.print decomp(length + 11, 4) end
ニコ生に対応したrtmpdumpがついに公開
ニコ生に対応したrtmpdumpがついに公開されたそうだ
Part6スレの373さんが作成
373 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/04/10(日) 18:24:26.43 ID:C6NFWQxn0 ttp://nht.r.ribbon.to/rtmpdump.zip ニコ生の仕様に対応したrtmpdumpを作ってみました 今までの引数に-Nオプションを追加することで録画できます -N [getplayerstatus/stream/contents_list/contentsのrtmp://から始まる文字列] 手動で録画するには最小引数だとこうなります http://watch.live.nicovideo.jp/api/getplayerstatus?v=lv******** から rtmpdump -o out.flv -vr "[getplayerstatus/rtmp/url]/[getplayerstatus/stream/id]" -C S:"[getplayerstatus/rtmp/ticket]" -N "[getplayerstatus/stream/contents_list/contentsのrtmp://から始まる文字列]" ↓ rtmpdump -o out.flv -vr "rtmp://*******.live.nicovideo.jp:1935/liveedge/live_******_**_*/lv********" -C S:"********:lv********:*:**********:****************" -N "rtmp://********.live.nicovideo.jp:1935/publicorigin/**/,lv********?**********:**:****************"
Part5スレの名無しさんによれば
923 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/04/02(土) 14:51:22.22 ID:nreGK+Go0 >>907 今のrtmpdumpでnlplayNoticeを記述できる方法ってないですよね? なんでnlplayNoticeで制限かけるようにしたのだろう やっぱ録画対策か 調べてみたら去年から予見してた人がいてワロタw ># nlplaynoticeかNicoLivePlayNoticeってところかな、 >dump対策に独自ライブラリを組み込んだか >8:05 PM May 14th, 2010 via Tween
ということなのでやはりrtmpdump自体に手を入れる必要があった模様
階層を遡ってみたところこの方は発掘ツールも作成されているようだ
http://nht.r.ribbon.to/
そういえば自分も似たようなツールを作りかけてたなあ
4/7の運営メンテナンスについてのまとめ
注意!現時点でこちらの制限は撤廃されているそうです
4/7の運営メンテナンスによってAPIの取得に制限がかかったそうだ
その制限というのはwatch/lv数字ページをGET後でないと
getplayerstatus APIが取得できずunknown_errorが返ってくるというもの
それに対し狼のけしからんなスレではこんな漢気溢れる対策が示されていた
32 名前:名無し募集中。。。[] 投稿日:2011/04/07(木) 11:47:16.73 0 http://www.dotup.org/uploda/www.dotup.org1505023.png さすがにこの時間に作者はいないからimareco改造置いとくわ バイナリエディタで上の部分を下のように書き換えればwin版も動くよ
その後運営によってこちらの制限は撤廃されたようだ
以下制限や規制に関する個人的な雑感
ver0.4.2からUser-Agent名として「namareco」とここのURLを名乗るようにした
将来User-Agent名でアクセスを弾かれるようになった場合は
その時点で開発の継続を諦めようと思う
これからもある程度自由にできる今の状態が続きますように
namareco-0.4.2(開発版)リリース
注意!リポジトリ操作を誤り開発中のコードをmasterブランチに取り込んでしまいました
- とりあえず動作に特に問題ない方はアップデートしないことをお勧めします
- 具体的にはこの辺とかのアラート機能がマージされてしまっています
- 動作はそこまで不安定ではないと思いますが不要な人には不要なコードだと思います
- またフルで動かすにはruby_gntpにパッチを充ててruby_gntp2.rbとしてscripts以下に保存していただく必要があります
- 他にはEastAsianWidth.txtもDLしていただいてnamareco.rbと同じフォルダに配置する必要があります
- それとya2yamlもgem install ya2yamlしていただく必要があります
- まあこのようにいろいろ面倒だと思います
ダウンロード
変更点
- part5スレの893さんによる修正をマージ
- 893さんどうもありがとうございました!
- アラート機能を(誤って)マージ(してしまった)
- わこつ機能(上記のアラート機能の一部として実装)
- 登録コミュの配信が開始されると「わこつ」(設定によって文言は可変)と挨拶する機能
- こっそり某コミュで使ってみたが性能はいまいちでほとんど1ゲットはできなかった
- (他のツールと思しきコメントに完敗していた)
- cielchan機能(上記のアラート機能の一部として実装)
- いわゆる席取り機能
- ブラウザとアカウントを共有しないと意味がない(user_sessionが異なってしまうため)
- imarecoなどのコマンドライン引数のURLの処理が間違っていたのを修正
- watch/co形式なら問題なく使えていたようだがlv形式では使えていなかった模様
- User-Agentで名前とURLを名乗るようにした
Firefox4対応について
- Firefox4のクッキーを使ったニコ生ログインについて久しぶりにブログを更新
- うまくいかないのはSQlite3のバージョンが原因のようだ
- ちなみに手元でテストしたところ以下のようなエラーが出た
E, [2011-03-24T00:10:40.578125 #744] ERROR -- : #
- 最新のdllとdefファイルをSQlite3ダウンロードリンクから落とし差し替えたところログインできるようになったようだ
- cielchanでのみテスト
- ログイン機能は共通のもの(libnama)を利用しているので多分namarecoでもうまくいくはず
- 謝辞
- この記事は@sakuramiuさんから頂いた情報を元に書きました(というかほぼそれがすべてです)
- 改めてどうもありがとうございました
- 久しぶりにブログを書いたらはてな記法をだいぶ忘れていることに気づいた・・・
- それから常時稼動させていたサーバを節電のために地震以来止めています
- こんなツールを作ってた人間が何をいまさら言うかという感じですができることからやろうかなと
覚書
- namareco
お。これはハートビートがらみっぽいな RT @sea_show: . @koizuka なんだか大会議以降ときどきあるんですが、放送開始60秒前後で放送が切断されることがたまにあるんですーががが
-
-
- http://twitter.com/koizuka/status/22636433219
- ハートビートは以前実装したけど機能をdisableにしたままだったはず
- swfUrl, pageUrlの修正
-
コメント転送ツール- nicoagent.rbのOpera対応
User-Agentに連絡先を追加
ニコニコにAPIやらクロールやらでアクセスしてるプログラムは、User-Agentに連絡先(あるいは、それに繋がる情報)入れて欲しいな〜
-
- http://twitter.com/koizuka/status/22784289203
- 狼ニコ生うらやまけしからんスレ対応済み