トップページ⇒linux
1001コメント365KB

Linux でビデオ録画

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
とりあえずビデオの代わりということで、

ある程度リアルタイムで圧縮
多少品質が落ちても構わない

といったものを bttv を使ってやってみたのですが、
なかなか理想の形にできません。

xawtv 付属の streamer: とりあえず録画可能。使える CODEC が限られて
いるのでサイズがでかくなる。
avifile & vcr: Win32 の CODEC を利用したもの。一見ちゃんと動いて
いるようだったが、できたファイルが読めない。

avifile & vcr だと DivX とか使えるので期待してたのですが、うちでは
ちゃんと動きませんでした。こうすればちゃんと動くだの、他にいいツール
があるだの、リアルタイムで圧縮するよりあとから圧縮した方がいいだの
ご意見よろしくお願いいたします。
0249login:Penguin02/10/09 16:02ID:Akg5kzK6
>>248
GATOSはココ。
http://gatos.sourceforge.net/

あと、>>223にあるけど、MonsterTV等のsaa7130/34チップも使えるらしい。
画質は、bt8x8系よりは上と思われ。
http://bytesex.org/saa7134/
0250login:Penguin02/10/20 15:01ID:IOYrUriW
>>246
fusion社製のbt878互換チップがあります(意味無いねw

ハードウェアエンコできるカードで使えるやつってある?
0251login:Penguin02/10/26 21:57ID:LBBtG/7C
ほしゅあげ
0252login:Penguin02/11/22 00:05ID:j+gipdRU
vcr-1.09 avifile0.7-0.7.18
これで録画すると上下反転してしまうんですが普通ですか?
0253マルチメディア向きディストリ02/11/22 02:38ID:yVR15Nz7
ノートパソコンで、マルチモニタが実現できる(ドライヴァが存在する)
ものをどなたかご存知でないでしょうか?
またディストリはマンドレイクかレッドハットを検討しているのですが、
マルチメディア環境の整備が最も整っているのは一体どのディストリなんでしょうか?
ご存知でしたら教えてください。お願いします。
0254login:Penguin02/11/22 02:45ID:4SIDcoz0
>>253
くだらねえ質問はここに書きこめ! Part31
http://pc.2ch.net/test/read.cgi/linux/1037793960/
おすすめのディストリビューションは
http://pc.2ch.net/test/read.cgi/linux/996643721/
0255login:Penguin02/11/22 13:37ID:PrLXHPVu
Win でなく Linuxで録画する利点はなによ?
0256login:Penguin02/11/22 13:43ID:lkdcLMLU
>>255
わざわざ Windows を起動しなくて済む。
0257login:Penguin02/11/22 21:22ID:Qbqrv5H+
>>255
わざわざ Windows を買わなくて済む。
0258login:Penguin02/11/23 02:18ID:6UY06Ni1
>255

仕事中にとある番組を録画し忘れたことを思い出したとする。
そういう時「メールを送ると指定した番組を録画する」というシステムを
Linuxで構築してると激しく幸せ。
0259login:Penguin02/11/23 03:20ID:VwnixOUM
>>255
こういう議論が出来るからさぁ〜(フッ

って言うかavifile0.6系じゃないとvcrは上手く使えないみたいだね。
0.6系を探してインスコするとvcrが使えなくなっちたよ(ワラ

vcr以外でお勧めないっすか?
0260login:Penguin02/11/23 13:59ID:N8Byrfr/
>>259
窓は録画予約録画してもその時間に動いているかどーかわかんねぇからな

と云うかとおもったよ(w
0261login:Penguin02/11/25 10:08ID:ZjFnvClh
http://bellbind.net/debian/multimedia.html
ここのサイトを参考に、現行のHelixProducerでTVを録画
しようと試みているのですが、どうやっても作成された
*.rmファイルを再生出来ません。
うまくいってる方いらっしゃいます?
0262login:Penguin02/11/25 12:13ID:7gSXc8VE
tvtime がうまく作動しない…
0263login:Penguin02/11/25 14:20ID:c0rl02oH
vcrは開発止まっちゃってるのかなあ。
おかげで我が家の録画サーバ計画が頓挫中。
コード書けない人間は悲しいね……

mp1eとかffmpegとかmencoderとかでも録画できるのかなあ。
どーもやり方がわからんのだけど。
0264login:Penguin02/11/26 19:58ID:MB00MTqc
SONYのチャンネルサーバーCocoonのOSがLinuxらしいんですが、
チャンネルサーバーの目玉機能「おまかせ・まる録」のように、
キーワードを指定してTV番組を録画しておくようなソフト作るのって出来ますかねぇ?
0265login:Penguin02/11/27 00:14ID:2c0fK+F3
ってかみんなやってる?
avifileがwinのwm9に対応したって知ってる?

WM9 DMO dlls
Win32_dmo.tgz - Windows Media 9 codecs for Win32 plugin codec
Uncompressed should be located in you win32 directory
(usually: /usr/lib/win32). You could also obtain these codecs by installing
the latest freely available Windows Media Player 9 on your Windows box and locating these dlls in your system (wmv9dmod.dll wmvdmod.dll wma9dmod.dll wmadmod.dll wmspdmod.dll). This codec is only usable with x86 systems.
0266login:Penguin02/11/27 01:15ID:2c0fK+F3
うむぅぅう
出来ないFuck
vcrrcの設定でキャプ画面が逆さまになっちゃう対処できないかな?

[defaults]
framerate = 50
codec = DivX ;-) VKI (Fast-Motion)
# codec = Microsoft MPEG-4

attributes = BitRate=8000,Crispness=100
source = Television
freqtab = japan-bcast
quality = 100
norm = ntsc
audiofrequency = 44
audiosamplesize = 16
audiomode = mono
audiobitrate = 64
init-sound = 90

resolution = 320x240
#aresolution = 640x480

[2ch]
cannel = www.2ch.net

[8ch]
channel = 8
0267login:Penguin02/11/27 13:11ID:5/W+xXmK
mpegの再エンコードって出来ないもんなのでしょうか?

VideoCD作りたいです.
026826102/11/27 14:28ID:h1tGDCvR
未だ録画出来ず....
ttp://service.jp.real.com/help/library/guides/helixproducer/htmfiles/command.htm#33483
ここのマニュアルを見ながら、
producer -vc '/dev/video0' -vp 0 -ac '/dev/dsp' -ap 1 -rs 352x240
-vf NTSC-JP -d 30 -o movie.rm
等とすると、movie.rmというファイルは作成されます。HelixProducer
BASICでは、RealVideo9でしかエンコード出来ないらしいので、VMware上の
WindowsNTのRealOneで再生してみているのですが、エラーが出て再生出来
ません。唯一、サウンドをdisableにして作成したファイルは再生されまし
たが、画面は真っ暗でした。
そこで、エンコードではなくボードからのキャプチャでコケてるんでは?
と思い、streamerで作成したmovie.avi(正常に録画されてるのは確認済)
で、
producer -i movie.avi -o movie.rm
とやってみたんですが、再生時にエラーが出てしまいました。
オーディエンステンプレートで詳細な設定が必要なんでしょうか?
web上を漁っても殆ど情報ないしなあ。旧版のRealProducerが欲しい。

0269login:Penguin02/11/28 00:05ID:ITQovJxu
mencoderで録画やってるよん。Duron800MHzでリアルタイムエンコ可。

mencoder -tv on:driver=v4l:width=400:height=300:norm=ntsc:alsa \
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1600 -fps 29.97\
-oac mp3lame -lameopts cbr:br=64 \
-vop pp=lb,crop=384:288:8:4 -o output.avi

長いね。正直覚えきれん(W
0270login:Penguin02/11/28 18:14ID:dsdwCtv5
mencoder で alsa オプションを有効にすると「メモリが確保できない」という
エラーが出てしまう…

あと、チューナの音声はサウンドカードの CD 端子に入力しているのだけど、
mencoder でこれを指定してやるにはどうすればいいのでしょうか。
0271login:Penguin02/11/29 00:01ID:PXaLn4QZ
ミキサで capture を CD-ROM にすればおけ
mencoderで指定するもんじゃないと思う
0272login:Penguin02/11/29 01:50ID:zhk5E9eF
>>271
いや、それはやっているんですけどね。vcr でも音が入るときと入らないときが
あって、ほとんど博打みたいな状態なんですが、mencoder では何度やっても
音が拾えません。

ところで、alsa オプションをつけると物理メモリ全部を確保しようとしてエラーに
なっている気配なんですが、ALSA の方が悪いのかな。最新のものにしてみるか…
0273login:Penguin02/12/01 01:36ID:BLWazqtT
どのアプリでキャプチャしようとしてもカーネルがクラッシュするんだが・・・
0274login:Penguin02/12/01 01:37ID:emw6JTct
>>273
で?
0275login:Penguin02/12/01 02:01ID:osQyYr7l
LinuxでリアルタイムMPEG1縁故作ってるよん。今のところ符号化できるのは
Iピクチャだけでコマ落ちするから、特殊な目的にしか使えないのさ。

MTV板でも聞いたのだけど、Pピクチャ中の動き予測マクロブロックの定義っ
てのがよくわからんのです。誰もレスつけてくれないし。

マクロブロックの近隣からどこのブロックをコピーしてくるかを指示する
ベクトルを指しているのか、それともデータをどの位置に貼り付けるかと
いうスプライト機能みたいなことを指しているのか、という2つの意味が
あるように思えたので…。
0276login:Penguin02/12/01 17:15ID:Hp54mJus
MTV 板で話題の Novac PrimeTV 1733 買ってきた。
V4L の SAA7134 ドライバには SAA7133 のエントリがないんで
そんなデバイス知らんと言われたけど,勝手にエントリ作って
ドライバのインストールはできた。けど PAL でしか動かん(;´д⊂)
チューナーもなんか動作不良。しばらく Hack すっかー。
0277login:Penguin02/12/02 00:51ID:F5fD0Ot1
洩れもvcrで逆さまに録画してしまう現象発生。なんでだー
うまくいっているひと.vcrrcでなにか工夫してある?
環境はavifile-0.7.22+vcr1.0.9。カードはLeadtecのwinfast tv2000です。
winのメディアプレーヤーでも逆さまだから原因はvcrだよなぁ。
0278login:Penguin02/12/02 10:00ID:8cFCobit
bttv-0.8.46+nvrecで録画していたが、
bttvを0.9.2に上げたら色がおかしくなったりコマ落ちしたり。
0.9系はまだうまくいかないなあ。
0279login:Penguin02/12/02 23:53ID:d8NnTWm1
>277
ahhh
以外なタイミングで仲間が居た(ワラ
やっぱavifile-0.7.*とvcr109じゃ駄目っぽいね。
ちなみに漏れはvineを使ってるよ。

って言うかvcr108を使いたいのでこっちのmakeが上手く出来るようにチャレンジしてみるよ。
028027702/12/03 01:25ID:4tusDKaX
>>279 こちらもvine(2.6)です。
しかしvcrが本当に悪いのだろうか?とか思ったり。
ここらへんの切り分けがしたいところ。
洩れも作業したいが今仕事からかえってきたばかり。もう寝ないと。
279さんvcrがダメなようだったらavifileをいじってみます。
0281login:Penguin02/12/03 04:25ID:y5GAUA0n
MTV2000動かしたい・・・(´・ω・`)ショボーン
0282login:Penguin02/12/03 21:58ID:yMpjiykd
>277
+++ capproc.cc2002-12-03 21:49:25.000000000 +0900
@@ -141,7 +141,7 @@

for (int i = 0; i < c_lines; i++)
{
- memcpy(tmpframe + i*c_bpl, z + (o_y_end -i -1)*o_bpl + o_x_off, c_bpl);
+ memcpy(tmpframe + i*c_bpl, z + (o_y_end +i)*o_bpl + o_x_off, c_bpl);
}
}
ch.data=tmpframe;

あんまり詳しく見てないし、詳しい訳じゃないので勘なんだけどこれでどうかな?
漏れはHDDを取り替えるので明日以降になっちまうんだよね。

でもさ、前にVineで動かした時は問題なく動いたんだけどなぁ〜
0283login:Penguin02/12/03 22:13ID:yMpjiykd
上の
ゴメソ、自分で試した。
やっぱ無理だったよ(ワラ
0284login:Penguin02/12/03 22:57ID:yMpjiykd
キャップタファイルを見たけど左右も逆なんだね(ワラ
知らんかったよ
0285名無しさん@XEmacs02/12/04 05:50ID:XTPR6vY9
>> 282

gcc3でvcrのコンパイル通らなかったんで試せないんだけど,
そこ弄るなら

+++ capproc.cc2002-12-03 21:49:25.000000000 +0900
@@ -141,7 +141,7 @@

for (int i = 0; i < c_lines; i++)
{
- memcpy(tmpframe + i*c_bpl, z + (o_y_end -i -1)*o_bpl + o_x_off, c_bpl);
+ memcpy(tmpframe + i*c_bpl, z + (a.window.y +i)*o_bpl + o_x_off, c_bpl);
}
}
ch.data=tmpframe;

じゃない?
ここで良いのかは知らんけど(たぶん良いのだとは思うけど).

左右逆ならそれも反転させなきゃいけないけど(わら
0286login:Penguin02/12/04 10:36ID:ksysRNSW
>>282
AHHHHHHHHHHHHHHHHHHHHHH
ジャスト、ビンゴ!
サンクス、見事反転が反転してキャプレました。
(正常に取れたって事です、ええ)

いやぁ、perlしか解かんないのにc++のソス見たが難しいです、はい
028727702/12/04 22:19ID:qS4KHEzT
>>282,285さん
わたしもうまくいきました!本当に感謝です。ありがとー!
0288login:Penguin02/12/04 23:09ID:V9uBia60
厨房な質問であれですが、ざっとスレを眺めた感じ結局ハードウェア炎コーディングのボードは使えないってことですか??
0289login:Penguin02/12/05 00:20ID:YwGu0cs3
>>285
神。
0290login:Penguin02/12/05 01:48ID:WJCNqXZY
つーか、何で皆mencoderつかわんの?
029129002/12/05 01:56ID:WJCNqXZY
269さんの設定ではTV録画出来ないね。
-tv :chanlist=japan-bcast:channel=1 等を追加すればOK
0292login:Penguin02/12/07 01:40ID:2816MrLS
今見直すと286で282って言ってるね(わら
ごめんなさい285の間違いです。
あらためてサンクス

せっかくキャプれる用になったので、今度はメールから予約を出来るようにガンバルつもり。
録画までの流れとしては

1)メール送信→
# メールの内容
-------------------
start:19-30
ch:8
end:30
aikotoba:thx285
-------------------

2)メール受信→
メールの内容をゴニョゴニョして「~/vcr/${start}」のファイルを作成
内容は
#!/bin/sh
/usr/local/bin/vcr -t 30m -p 8 ~/vcr/file/${start}_${date}.avi

3)cronにperlで書いた「~/vcr/今の時間」ファイルがあったらsystemで実行を追加しておく

こんな感じでウマーになる?
まぁ、sageつつやっていきます。
最後までやり遂げられる自身が無いのでアゲないでね(わら
0293login:Penguin02/12/13 09:32ID:tuh058En
う〜ん。mencoderで録画してるんだが、なかなか最適な設定が
見つからん。「漏れはコレでうまくいってるぜっ」って設定が
あったら、是非晒してください。
0294login:Penguin02/12/24 10:46ID:Joo/wvmb
>>261
わたしもエラーでうまくいかん。streamerでとったaviを変換しても
だめだった。RealOne Alpha版は起動しないし。だめぽ。
0295login:Penguin02/12/25 01:11ID:wJ70NEdV
どなたかこれを試した方いらっしゃらないか?
http://www.kuroutoshikou.com/products/tvcuner/itvc15.html

まだ自分は購入を考えているだけの段階です。
ハードウェアエンコのくせにあの安さは貧乏な私には目から鱗なのですが
とりあえず自分なりに調べた内容は…

ここhttp://www.shspvr.com/news.htmlに「iTVC15 Linux Drivers」なるものがあって、そのドライバっぽい?
手元にあったRedHat 8.0でコンパイルしたら問題なくmakeはできたんだけど動くのか実物がないから実証不能(当然か)

player6ってのを実行すると/dev/P2Enc0をDeviceOpenしようとして失敗。

なんとも怪しい動きなので動かしている人がいたら是非お聞きしたい。
0296login:Penguin02/12/29 15:24ID:4mKLVQpS
>>275
「マクロブロックの近隣からどこのブロックをコピーしてくるかを
指示するベクトルを指している」が正解と思われ。
0297login:Penguin02/12/29 18:43ID:gHwARjsc
>>295
持っていますが何か?
アーカイブ落としたらConexant純正じゃないですか。
こういうのは再配布OKじゃないはずですが
029829703/01/02 13:38ID:FtlSXv39
試してみますた。
GCC3.2+Kernel2.4.18な環境のため、Driverからコンパイルする必要がありますた。

結果
Player6を動かしたところ、
Board上にI2CDevice 0x44がねぇぞゴラァと言われて終了。
もう少しいじってみます。

環境
RedHat Linux 8.0
Kernel2.4.18-15smp
GCC3.2

CPU AthlonMP1900+ x2
MB Tyan ThunderK7X(760MPX)
Mem ECC Reg 512MB
下から2番目の32bitPCIスロットにiTVC15-STVPCIを刺して運用
029929503/01/03 20:30ID:2qjXLe4d
>>298
ご連絡ありがとうございます。

いろいろ目をこらして読んでみましたが、
player6のまえにloadっていうスクリプトを
実行しておく必要があるようです。

loadを実行すると、/dev/*にI2Cとかがいろいろ作られるようです。

中にはLinux関係のヘッダファイルを自前で用意しているようです。
ので、カーネルのバージョンをあわせるかなにかしないとダメかも・・?

友人からピクセラ製のiTVC15なボード(例の玄人ではない)を借りて調査中です。
030029503/01/03 22:59ID:2qjXLe4d
>>298

>>299にて先走ったようです。失礼いたしました。
カーネルのバージョンは特に関係なさそうです・・・もっと調べねば・・・

ピクセラ製のiTVC15なボード(PIX-MPTV/P2W)
gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
この環境で、解凍後、"make clean && make" にて完了(特に気になるエラー無し)

test下にて

./player6 -l conf.ini -mRECORD -record "rec"

と遣ったところ、こちらでは以下のようなエラーが発生しました。

ERROR -1025: Device ioctl(910) failed (cmd=1002).
ERROR -1025: ERR[-1025]: I2C Write device 0x11 not found (Reg=0x2,Data=0x29)!!!
ERROR -1025: (5)I2C: W ChipID=11 Addr=2 Mode=0 Data=29
(snip)
ERROR -1025: Unable to program I2C using CS53L32A.txt: CS53L32A_Defaults
ERROR -1025: Device ioctl(910) failed (cmd=1002).
ERROR -1025: ERR[-1025]: I2C Write device 0x11 not found (Reg=0x1,Data=0x1)!!!
ERROR -1025: (5)I2C: W ChipID=11 Addr=1 Mode=0 Data=1
ERROR -1025: Unable to program I2C using CS53L32A.txt: CS53L32A_AudioJack
Beginning player loop...
ERROR -1011: : VSync lock Failed, Aborting the Session (Status=3F3)
Shutting down player session...(Err=-1011)
(snip)

> Board上にI2CDevice 0x44がねぇぞゴラァと言われて終了。
 こちらでは、0x11 っということになりますかね?
 7114.txt 7115.txt CS53L32A.txt とかなにやら置いてありますが、これ怪しい。
030129703/01/03 23:16ID:VGX2+cKF
で、PIX-MPTV/P2Wでも駄目ですか。
ChipID 44つーのはSAA7121らしく、こいつはビデオエンコーダと言って
デジタルなビデオ信号をアナログのビデオ信号に変換する奴(DACという奴です)
なんですが、件のiTVC15-STVPCIには乗っていないのでそれで動かないぽ。
で、それが乗っているPixelaのPIX-MPTV/P2WでCS53L32A(AudioADC)でエラーでつか・・・

その辺のデバイス構成をハードコーディングしているっぽ
0302login:Penguin03/01/04 01:57ID:COkJ8YG3
はじめまして。
初めてカキコします。

C言語でプログラムしていまして、
bttvを使っています。
一応1フレーム640×480のRGB値をキャプチャできるとこまでは
つくったんですけど、
これをリアルタイム保存するために
どうすればいいですか?
できればmpegで保存したいです。
ソフトウェアではどうすればいいですか?
いいライブラリ知りませんか?
0303PIX-MPTV/P2W by 29503/01/04 02:23ID:JgarMJvt
>>301
> で、PIX-MPTV/P2Wでも駄目ですか。

あと一歩で動きそうな?雰囲気です。
設定ファイル
[tv]
ScanList=Scan.lst
Scan=0
Input=Air
[General]
BitRate=8M
PeakRate=16M
CBR=0
vTuner
vNTSC
Mode=record
File=test.mpg
FwDownload=3 # これでファームウェアをげっとする?
Loop=0
StreamType=MPEG2TS

でやると、
ERROR -1011: : VSync lock Failed, Aborting the Session (Status=3F3)
ってエラーが出ます。VSyncCheckって関数でエラーを返しているようですが、まだよくわかってません。
ほかにはエラーはなさげです。

> なんですが、件のiTVC15-STVPCIには乗っていないのでそれで動かないぽ。

玄人のやつはやっぱり特殊なのかな(T-T)
0304login:Penguin03/01/04 09:58ID:rDUZUDhP
>>302みたいなのは期待しちゃうね。
俺はプログラマじゃないんで詳しいことはわからないけど、ffmpegとか
avifileとかあたりのぞいてみると嬉しいかもよ。
そいやMAlibなんてのもあったなあ。あれどうなったんだろう。
0305saa7133mitai03/01/04 18:57ID:8iDhsCpd
>> 276
の書き込みをされた方。 その後、いかがですか。うまくいきましたか?

私もエイヤと同じボードを買ったので、Linux, FreeBSD でみたいと
思っています。ただいま、2.4.20 のカーネルをコンパイル中。
はじめてなもんで、ここでつまづいています。このあと、V4Lのパッチ、
SAA7134のパッチのインストールですが、いつになるやら。。
0306login:Penguin03/01/05 17:35ID:JNuAvC8h
http://121ware.com/nsserver/ax/
これハックして英雄になって下さい。
NEC HDDレコーダー PK-AX10【3】
http://hobby.2ch.net/test/read.cgi/av/1040479449/
0307login:Penguin03/01/06 00:23ID:Tuc9bQPf
>>302
CPUは何でつか?
最近の速いCPUならMPEGに出来るかも知れないけど、実際vcrとかで可能か確かめて
からにしてはいかがでしょ。

if(可能そう)
 avifileを見る
else
  motion-jpegでガマン。rtjpegってエンコーダが速いよ。
0308login:Penguin03/01/06 01:52ID:iy8N0st7
能力的にはかなり余裕.
Athlon 2200+ (1.80GHz clock speed)× 2を使ってますから.
まずvcrとは何かから調べてみます.
0309login:Penguin03/01/06 10:49ID:p0IOpkAY
http://oscar.as.wakwak.ne.jp/linux/capture.shtml
のようにvcrをインストールしようとしましたが,
rpm 作れず...
なんか簡単な方法を...
0310login:Penguin03/01/06 10:52ID:p0IOpkAY
>>309の続き
rpm -bb vcr.spec
を実行したら
-bb: unknown option

rpm のバージョンが問題か!?
0311login:Penguin03/01/06 17:16ID:6NlSJeEY
http://monstertv-linux.sourceforge.jp/ にあるsaa7134ドライバを使って
録画に成功してる人いますか?

こちらの環境 (モバアス1800+, SiS740, 2.4.20-xfs + saa7134)だと、
・xawtv-3.81 → 画面が色とりどりのノイズ状になってしまう。静止画キャプチャはできる
・nvrec-20021215 → フレームバッファのタイムアウトが連発して録画不能。

Experimentalな要素満載って話もありますが(w、 とりあえず最低限動いてるぜっていう
例がありましたら教えてください。

# なんかMLのほうは人がいなさそうなので...
0312login:Penguin03/01/06 22:44ID:d4DCyVZY
>>302さん
mpegっていうのが mpeg1であれば、ffmpegに添付(?)の libavcodecか
libfameを使うのが良いのではないでしょうか。

# 映像だけでなく、音の multiplexとかも必要であれば
# libavcodecのほうが良さそうです。
# でも multiplexのサンプルが無くて挫折中です(泣
031331203/01/06 22:53ID:d4DCyVZY
>>276さん
>>305さん
「【BT878】Linuxでのキャプチャを語るスレ」の 41です。
とりあえず xawtvでは動作しますた。
で、自作の v4lアプリだと 311さんご指摘の nvrec-20021215と
同様の問題が発生してうまくキャプチャできません。

# おそらく v4l & mmapを使用した転送に失敗しているのでは
# なかろうかと見当をつけているんですが、v4l2に変えるのも
# /dev/videoを読む方法に変更するのもかったるいので
# ほったらかしにしてます。(BT878なら動くのになぁ・・・)
0314login:Penguin03/01/07 07:20ID:A0niU3V4
>>312さん
libfame?
使用説明のサイトってありますかね?
調べてみます.
0315login:Penguin03/01/07 07:36ID:ygBI5yhQ
MTV2000使いたい・・・

仕様公開しやがれコンチキショー
031631203/01/07 22:44ID:v8itZhSS
>>314さん
FAME公式サイトに recmpegというサンプルがあります。
結構シンプルなものなのでわかりやすいと思います。

ttp://fame.sourceforge.net/

# すでに見つけてしまったかもしれませんが・・・
0317login:Penguin03/01/07 23:18ID:A0niU3V4
>>312さん
ありがとうございます.
みてみます.
031831703/01/08 17:15ID:2BorXPj9
>>312さん
一応recmpegインストールしたんすけど、
結局yuvで出力してからみたいですね。。。<- 調査不足??

関数としてRGB値をどうやって
引数にいれて出力するかわかりませぬ。
0319海外もの03/01/08 17:30ID:z1E84qN/
mencoderで録画はできるんですが、音が録音されないんです。
コマンドは、
mencoder -tv on:driver=v4l:width=400:height=300:norm=NTSC \
:forcdaudio:chanlist=us-cable:channel=99 -ovc lavc
-lavcopts vcodec=mpeg4:vbitrate=350
-fps 29.97 -oac mp3lame -lameopts cbr:br=64
-vop pp=lb,crop=384:288:8:4 -o output.avi -endpos 10
てな感じで10秒間だけ録画しています。
で、走らせて次のように表示されるんですが、
MP3 audio selected
Building audio filter chain for 44100Hz/1ch/16bit -> 44100Hz/1ch/16bit...
Writing AVI header...
Forcing audio preload to 0, max pts correction to 0
Pos: 10.0s 300f ( 0%) 29fps Trem: 0min 0mb A-V:0.000 [374:63]

CBR audio: 8000 bytes/sec, 209 bytes/block

Writing AVI index...
Fixup AVI header...

Video stream: 374.820 kbit/s (46852 bps) size: 468995 bytes 10.010 secs 300 frames

Audio stream: 64.000 kbit/s (7999 bps) size: 79830 bytes 9.979 secs

真中らへんの0%というのは正しいのでしょうか?
環境はDebian Woodyです。mplayerでテレビは見えています。音も出ています。
032031203/01/08 20:50ID:yEpZMntk
>>318さん
というか、RGBでキャプチャしなければいけない理由ってありますか?
放送自体が YUVなハズ(ですよね?)なので、V4L->RGB->MPEGよりも
V4L->YUV->MPEGのほうが変換も少なくて良いのではないかと思ったりします。

# 勘違いならスマソ
0321名無しさん@Emacs03/01/08 21:10ID:5qZM0Y/Q
>>319
capture device に音が来てるかチェックしたらいいかも。
0322IP記録実験03/01/08 21:10ID:DJ5zDJa+
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0323login:Penguin03/01/09 02:40ID:jLaWmJEi
今まで取ってなかったの?
0324login:Penguin03/01/09 03:22ID:ISsnTmLL
てすと
0325login:Penguin03/01/09 04:13ID:QCoHsjPG
誰か、出るっ、出ますうっ のテンプレでセンスのいいやつ考えて。
0326海外もの03/01/09 07:45ID:Yq44YS4O
>>321
おそらくmencoder自体はちゃんと機能していると思うんで、
321さんの言うようなことをチェックしたらいいと思うんですが、
kmixとかのミキサーでラインインや関係のありそうな所は全て
ボリュームアップしているのですが、結果は同じなんですよね。
他にcapture deviceに音が来ているかどうかチェックする方法あるのでしょうか?
0327海外もの03/01/09 08:47ID:Yq44YS4O
音も録音できるようになりました。すげーうれしい。
やっぱりミキサーで録音できるようにしていませんでした。
kmixerを使っているんですが、ラインを録音できるようにして
IGainのボリュームを上げたら、音も録音できるようになりました。
0328login:Penguin03/01/09 11:46ID:brrbmw4B
>>318さん
一応v4l->RGB->MPEGってやりたいつもりです.
YUVでキャプチャしようとも一度は考えましたが,
RGBの方が慣れ親しんでいるので.

#わがままでごめんなさい
032931203/01/09 22:49ID:Y8/Lfx0T
>>328さん
>一応v4l->RGB->MPEGってやりたいつもりです.

であれば RGB->YUV変換をカマすという手があります。
たしか ffmpeg(libavcodec)に RGB->YUV変換の
ライブラリがあったと記憶しているので

v4l->RGB->YUV420->MPEG(recmpeg)

と変換できるハズです。

# それなら libfameでなく libavcodecの mpeg変換を
# 使用するのが良いと思いますが...
0330login:Penguin03/01/10 02:02ID:DszMpP44
>>327
mencoderってman見ても良くわかりません。
オプションの解説して頂けると助かるのですが。。
0331login:Penguin03/01/10 06:51ID:lqiY/P02
vcr1.0.9 + avifile0.7.12 (Debian package) + kernel2.4.18
な環境でvcrで録画しようとすると
Invalid codec name given!
Available codecs:

"Uncompressed RGB" 3
"Uncompressed YUY2" 3
"Uncompressed YV12" 3
"FFMPEG OpenDivX" 3

と出るんですよね。
.vcrrcにはcodec = DivX ;-) low-motion と書いています。で、
codec = FFMPEG OpenDivX とか
codec = OpenDivX とかやっても同じエラーが出てしまうんです。
どなたか同じ境遇にあった方いますか?
過去ログに目を通しましたが同じような方いなかったです。
vcr1.0.8を試しましたが、コンパイルできなかったです。
033232803/01/10 10:43ID:30HLxGjN
>>329さん
libavcodecですか?
いろいろ手間ですねぇ。。。
がんばってみます。
0333login:Penguin03/01/10 23:03ID:ik7mWv55
>>331
vcr-1.0.9 は DivX ;-) high-motion のみで しかも bitrate 指定効かない。だめ杉。
vcr-1.0.8 が make できる環境にもっていくか、nvrec でしょうね。
033432803/01/11 15:40ID:IBov+qvj
>>329さん
結構教えてばっかりですいません。
いつもありがとうございます。

libavcodecでどうやってエンコードするんでしょうか?
033532903/01/12 11:42ID:zhQ+YCDx
ffmpeg(libavcodec)のソースを拾ってきましたか?
中に apiexsample.cというサンプルコードが入ってますから
参照してみてください。

# 0.4.6になってちょっと引数が変わったりして鬱
# あと、誰か multiplexのサンプルコード書いてくれないかなぁ・・・
0336login:Penguin03/01/12 15:15ID:sIX1dA32
>>329
すでに落としました。
参考にしてみます。
033732803/01/12 16:10ID:sIX1dA32
>>329さん
apiexsample.cの
video_encode_exampleっていう関数ですよね?
c->width, c->heightを画像サイズに変更?

/* encode 1 second of video */ 以下を変更すればいいと思ったのですが,
どれがRGBのdataをどこに?
picture->dataが何を指しているかさっぱりです.

#コンパイルするにもgcc aviexsample.c -lm で駄目みたいっすね(汗
0338login:Penguin03/01/12 16:58ID:kvaEgL8v
>>333
nvrecって録画すると音声と画像がずれるのですが…ウチだけでしょうか?
0339login:Penguin03/01/13 00:24ID:V6pOdtMh
debianのwoody(kernel-2.4.18)でAD-TVK55R使っていて、compositeの映像とりこもうとしてるんですけど、
bttvもしくはbttv2をmodprobeして一応映像も音声もしっかりとれるんですが、しばらく(2、3分前後)たつと
ハングするんですが、これって何が原因だと思われますか?
とりあえずi2cやvideodev(videodevX)はモジュールで組みこんでも大丈夫ですが、bttvを組みこんだ途端こんな現象になるんですが…
0340login:Penguin03/01/13 01:53ID:j9l+cA1L
nvrecとかvcrで録画すると、下のエラーが出てクラッシュするんだけど
なんか解決策ない?

Jan 14 04:38:23 prism kernel: bttv0: PLL: switching off
Jan 14 04:38:48 prism kernel: bttv0: irq: OCERR risc_count=0fad7810
Jan 14 04:38:48 prism kernel: bttv0: irq: SCERR risc_count=0fad7810
Jan 14 04:38:48 prism kernel: bttv0: irq: SCERR risc_count=0fad7810
Jan 14 04:38:49 prism kernel: VM: killing process sshd
Jan 14 04:38:49 prism kernel: bttv0: irq: OCERR risc_count=0fad7810
Jan 14 04:38:49 prism kernel: bttv0: irq: SCERR risc_count=0fad7810
Jan 14 04:38:49 prism kernel: bttv0: aiee: error loops
Jan 14 04:38:49 prism kernel: bttv0: irq: SCERR risc_count=05d64014
Jan 14 04:38:49 prism kernel: bttv0: aiee: error loops
Jan 14 04:38:49 prism kernel: bttv0: resetting chip
034132803/01/13 13:28ID:rt/a96c9
>>329さん
libavcodecのapiexsample.cにおいて,
picture->data がYUVのポインタで,
fwriteでoutbufとして出力してるのかなぁ...
outbuf_size = 100000; ってのは適当な大きさなのか?

/* encode 1 second of video */
以下のfor文のiはなぜ25までなのか...

# /* add sequence end code to have a real mpeg file */
#ということはいつのまにかmpegファイルをつくってるみたい??
どういうことかわかりませんか??
034232803/01/13 13:59ID:rt/a96c9
ffmpeg の libavcodecの中の
apiexsample.cのvideo_encode_example関数で
よ?くみると,
RGB値を代入していないですね.
書き込みしかやってないような...
034332903/01/13 14:10ID:cvvoW/Sc
>>337さん

>c->width, c->heightを画像サイズに変更?
はい。エンコード後の画像サイズになります。

>/* encode 1 second of video */ 以下を変更すればいいと思ったのですが,
>どれがRGBのdataをどこに?
>picture->dataが何を指しているかさっぱりです.
コレ、YUVなんです。RGBを MPEG1に変換するには img_convert()を使って
V4L->RGB->YUV->MPEGとしなければダメじゃないかと思います。

>#コンパイルするにもgcc aviexsample.c -lm で駄目みたいっすね(汗
gcc apiexsample.c -lm -lavcodecじゃダメ?
というか、 make apiexsampleで OKだったような記憶が...
034432903/01/13 14:11ID:cvvoW/Sc
>>341さん

>picture->data がYUVのポインタで,
>writeでoutbufとして出力してるのかなぁ...
コレ正解
>outbuf_size = 100000; ってのは適当な大きさなのか?
うーん。私もちょっとわかりません。
まぁ、outbuf_sizeを avcodec_encode_video()に渡しているんだから
内部でよろしくやってくれていると信じてます(w

>/* encode 1 second of video */
>以下のfor文のiはなぜ25までなのか...
これ、PALを想定しているんでしょう。
NTSCなら c->frame_rate = 25 * FRAME_RATE_BASE も 29.97に
変える必要があります。

># /* add sequence end code to have a real mpeg file */
>#ということはいつのまにかmpegファイルをつくってるみたい??
>どういうことかわかりませんか??
ここで作成しているのは、あくまで MPEG1 Videoのデータであって、
MPEG1のストリームとして使うためのシーケンスコードを
ムリヤリくっつけているという意味に理解してます。

# うまく説明できません。識者の解説求む
034532803/01/13 21:13ID:rt/a96c9
>>329さん
>gcc apiexsample.c -lm -lavcodecじゃダメ?
>というか、 make apiexsampleで OKだったような記憶が...
makeの方ならできました.

>>/* encode 1 second of video */
>>以下のfor文のiはなぜ25までなのか...
>これ、PALを想定しているんでしょう。
>NTSCなら c->frame_rate = 25 * FRAME_RATE_BASE も 29.97に
>変える必要があります。

c->frame_rate = 29.97ってことですか?
ならfor文のiについては??

>コレ、YUVなんです。RGBを MPEG1に変換するには img_convert()を使って
>V4L->RGB->YUV->MPEGとしなければダメじゃないかと思います。
img_convert()のどの引数にどれをいれればいいんですか?
RGB値とか.
034632903/01/13 22:55ID:cvvoW/Sc
>>328さん
>>NTSCなら c->frame_rate = 25 * FRAME_RATE_BASE も 29.97に
>>変える必要があります。
>c->frame_rate = 29.97ってことですか?
>ならfor文のiについては??
これ、あくまでサンプルソースなのです。
サンプルソースが何をしたいのか、あなたが何をしたいのかによって
ここは変更されるべきであり、場合によっては存在する必要すら
ないかもしれません。
# 1秒間の MPEGを作成とすることを目的とするならば、
# i = 30とすることにより、ほぼ 1秒の MPEGファイルが作成できます。

>>コレ、YUVなんです。RGBを MPEG1に変換するには img_convert()を使って
>>V4L->RGB->YUV->MPEGとしなければダメじゃないかと思います。
>img_convert()のどの引数にどれをいれればいいんですか?
>RGB値とか.
apiexsample.cが格納されていたのと同じフォルダに
img_convert.cがあります。
それを参考にしていただければ良いのではないかと思われます。

# img_convert()を直接使ったことがないので、
# あいまいな回答です。スマソ
0347禿遅レス03/01/14 19:35ID:VYqoZmDt
>142
at HH:MM mm.dd.yy
034832803/01/14 22:10ID:vpkrREmg
>>329さん
ffmpegのlibavcodec/imgcomvert.cにおいて,
おそらくimg_comvert()の引数は,
AVPicture *dstの
dst->data[0]: Y
dst->data[1]: U
dst->data[2]: V

AVPicture *srcの
src->data[0]がrgbの並び
つまりrgbrgbrgb....

そしてwidth, heightかなぁ...

もしそうならimg_comvert()使わずにはじめから
rgb24_to_yuv420pに代入した方が早そう.
これでyuvのデータに変換ですかな!?

#少し前進?
■ このスレッドは過去ログ倉庫に格納されています