トップページ⇒avi
186コメント120KB

MPEG2のことなら俺に聞け!

■ このスレッドは過去ログ倉庫に格納されています
0001まっけんろーNGNG
おれは25歳、MPEG2エンコーダを半年間設計してきた。
MPEG2しか知らないがMPEG2ならど素人には負けない。。。
0002猿2000NGNG

GOPって何
0003名無しさん@お腹いっぱい。NGNG
ど素人には負けないって、ネタ?
0004まっけんろーNGNG
>>2
GOPとはGroup Of Pictureのこと。
MPEG2にはI/P/B pictureがある。
IはJpegと似ていて1frame完結。
Pは前の方のI or P pictureの情報の差分。
Bは前方・後方・あるいは何れかの画の差分情報から成り立つ。

ってことはよく考えてみろ。P/Bとも前の画が無ければデコードできない
ってことだ。前の画。つまり何事もI pictureをデコードしないことには
始まらないんだ。
 これだと例えば17:00:00:00(17時の00分00秒00frame)のデータを
見逃したら17:00から始まる番組は見れないことになる。
それだと困るからGOPと言う考え方を持ってきて、定期的にIpictureを
挿入しているんだ。現在は15frame を1GOPとする(NTSCなら)が一般的だ。
どうだ?難しいけど、GOPというものの必要性がわかったか?
とにかくI pictureが無ければ困るってことだ。
 まぁ、GOP構造のためにMPEG2は編集が出来ない(出来にくい)って
デメリットもあるんだけどね。
0005名無しさんって佑香NGNG
ソフトエンコーダの場合、CPUとハードディスク、
特にハードディスクのスピードが影響するという話を聞くけど、
ハードディスクが影響するんだったらハードエンコードの場合も
同様じゃないの?
0006否1NGNG
>5 ソフトの場合はエンコードしつつ書き出さなあかんが、
ハードは受け取ったデータを書き出すだけで良いのよ。

おもいっきり噛み砕いて言うと、HDDのIFにもよるだろうけど
ソフトの場合はエンコードに処理速度の90%使ったら残り10%で
書き出さなあかんのが、ハードの場合はほぼ100%書き出しだけ
に専念出来るから、ビットレート+α程度の速度が保証されて
れば特に問題にならないんだよ。

ごめん しったか
0007まっけんろーNGNG
>>5
じゃあ、ハードから考えよう。
PCI経由で非圧縮の画(ベースバンドの画)が入ってくる。
これは非圧縮だからbit rateが高い。
 この入力をPCI上のエンコード チップでエンコードし
ストリームにする。このストリームはベースバンドの画の1/7圧縮だとする。
次にPCI経由でメモリーにこのストリームが転送され、メモリーから
HDDに転送される。HDDは遅いストレージだけど、1/7圧縮のデータなら
結構すんなり入ったりする。。。
 つまりHDDは圧縮データだけ受け付けるので楽なわけだ。

じゃあ、ソフトはというと非圧縮の画をいちいちハードディスクに置かないと
いけない。これはHDDにとってつらい。。。
 と言ってたら時間だ。もし、これで分からんかったらまた質問してくれ。
飲み行ってくる。
0008ギ印NGNG
待ってました。お友達きぼんぬ>まっけんろー

早速質問
・一番的なNTSGのMPEG2CODECに必要なASICのゲート数は、どれ位と考えれば良いの?
・MPEG2でありがちなエラー(電送エラーやエンコ/デコ)を教えてください
(故意にMPEGノイズを再現するエフェクトツール作成中)
--守備範囲外かもしれないけれど--
・DVDビデオのフォーマットの規格って何処で入手可能ですか?(VODの構造とかファイル配置とか)
・DVDビデオコンパイラ(って言うのかな)を開発するとしたら、ライセンスとフィーは?
0009ギ印NGNG
>8 タイブミスだらけスンマソ

NTSG -> NTSC
VOD -> VOB
0010名無しさんって佑香NGNG
>>7
どうも。

で、よくわからないんだけど、ソフトでエンコーダする場合って
もとの非圧縮の画もハードディスクに蓄積しているってこと?
カクカクしてしまうのは、リアルタイムにソフトで処理しようとして
CPUの性能がそれに追いつかず、落としてしまうんでカクカクに
なると思ったんだけど、違うの?

0011>1NGNG
いつになったらMacでMPEG2が再生出来るようになるんでしょうか?
0012>1NGNG
どうすればコピーガードを回避出来るのでしょうか?
RealMagicDVRやメル子、愛オーなど、たぶんソフト側で
制御してると思うんだけどねぇ

あと、何でHDD上のaviファイルとかをHW MPEG2でエンコ処理できないの?
っていうか何故出来ないんだ?
0013名無しさん@お腹いっぱい。NGNG
TMPGEncのハードウェア版みたいなのを作ることはできないのでしょうか?
001412NGNG
>>13
そんな感じ。
0015まっけんろーNGNG
飲んできた。酔っ払ってるから嘘つくかもしれん。
>>8
>・一般的なNTSCのMPEG2CODECに必要なASICのゲート数は、どれ位と考えれば良いの?
それは言えない。だいたい画質改善のための仕組みとか付加機能で変わってくるし。
あとバンド幅を減らすための工夫とかあるからやっぱり胃炎。
>・MPEG2でありがちなエラー(電送エラーやエンコ/デコ)を教えてください
>(故意にMPEGノイズを再現するエフェクトツール作成中)
やっぱ。胃炎。だいたい、ありがちなエラーって。。伝送路のエラーは
MPEG特有なわけではないし、エンコーダは画が入ればとりあえずどうとでも
出来るからなぁ。。。デコーダーはいろいろ無効な値を入れればいじめられるけどねぇ。
>・DVDビデオのフォーマットの規格って何処で入手可能ですか?(VODの構造とかファイル配置とか)
DVDは知らん。君、詳しそうだから分かると思うけど俺はストリームのレベルとしてはESしか知らん。
PESとかTSとかにするのは他の奴の仕事。DVDの特殊なフォーマットは知らん。
>・DVDビデオコンパイラ(って言うのかな)を開発するとしたら、ライセンスとフィーは?
・・・知らん。
DVDについては俺も勉強中。詳しい人がいたら俺も聞きたいな。
0016まっけんろーNGNG
>>7
>じゃあ、ソフトはというと非圧縮の画をいちいちハードディスクに置かないと
>いけない。これはHDDにとってつらい。。。
続きを書こうかな。
 1.PCIカードで非圧縮データを受け取る。それをメモリーに転送する。
 2.非圧縮データをメモリーからHDDに転送する。
 3.HDDから1frame分のデータを取り出しCPUでソフトエンコードする。
 4.圧縮データをHDDに転送する。
って感じ。確実にリアルタイムエンコード出来るなら2でメモリーからHDDに転送せず、
直接CPUに送り4に行く。
 ごめん。ここらへんの詳しいことはPCのアーキテクチャーを知らないといけないから
嘘をついてるかも知れんけど、大間違いはしてないと思うよ。
 つまり、HDDの性能が問われるのは2の処理ね。

PCIからデータを吸い出すのでなくてすでにAVIとしてHDDにある場合は
 ・AVIをメモリーに読み出す
 ・メモリーに読み出した非圧縮の画の情報をソフトエンコードする。
の二つの作業をスレッドでまわすとする。スレッドで回すのであるから
エンコードが間に合わないときはAVIのデータを捨てるか、リアルタイムエンコードを
あきらめるかのどちらかをとる必要がある。
 これがこま落ちになるかな?まぁ、これはソフトの作り方如何だな。
じゃあ、続きは明日だ!
0017名無しさんって佑香NGNG
いやあ、勉強になりました
0018>16NGNG
>って感じ。確実にリアルタイムエンコード出来るなら2でメモリーからHDDに転送せず、
>直接CPUに送り4に行く。
ほうほう。こんな方法は、初めて聞きましたね。
どんなシステムで使われてるのでしょうか?
公開可能なら教えていただけませんか?

あの方法では、非圧縮で安定してキャプチャできることが
必要ですよね。そういうシステムでは、
1.非圧縮で必要な範囲全体をキャプチャ。
2.キャプチャ済みファイルを読み出してエンコード。
っていう方法を取るほうが安全だし、確実じゃないですか?

エンコードがリアルタイムで出来ないなら(=多分ソフトエンコード)、
ディスクをテンポラリにしつつエンコードしても、ほとんどメリット
がないきがします。良さそうな点は、キャプチャ中に幾らかエンコードが
出来ることくらいかな?

ディスクを1フレーム単位でシークさせながらファイル読み出しを
するとシーケンシャルアクセス時の数倍遅くなりませんか?
シークタイムが無視されるほどになれば、よいのかもしれませんが、
その場合は、エンコードが極端に遅いということだから、キャプチャと
エンコードをオーバーラップしても、キャプチャ終了時までに
大した分量のエンコードは出来ないと思います。
0019名無しさんって佑香NGNG
また質問。
ハードディスクに送られた非圧縮データというのは
どのタイミングで削除されるものなの?
そのままだと、かなりの作業領域が必要になっちゃうよね。
0020まっけんろーNGNG
>>18
>ほうほう。こんな方法は、初めて聞きましたね。
>どんなシステムで使われてるのでしょうか?
あれ?そうか、今のシステムは大概ハードウェアでエンコードか。。

>ほとんどメリットがないきがします。良さそうな点は、
>キャプチャ中に幾らかエンコードが出来ることくらいかな?
それが最大のメリットだろ。これが>>19への回答になるな。
キャプチャー中にエンコード。エンコードし終わった画は削除。

>ディスクを1フレーム単位でシークさせながらファイル読み出しを
>するとシーケンシャルアクセス時の数倍遅くなりませんか?
遅くなるね。これを回避するためのスレッド化。
あと、シークして読み出すのではなくてシーケンシャルに画を取る。
IBBPBBP・・・ならIBBPを一塊にして画を4frame分一気にとる。
するとメモリーを圧迫しそうだけど、MPEG2の場合は
・前方向の画
・後方の画
・現在の画
と3つのフレームメモリーを持たないと行けないため
うまく使い回しすれば4frame分の画をメモリーに貯えてエンコードってのは
1frame分のメモリーを余計に使うだけでいいことになる。
これはちょっとメモリーの使い方を工夫すればすぐ分かるでしょ?
もちろん、IBBBBBBBPとかにしちゃうとだめだけど、
普通はIBBPBBPだからなぁ。。
これでいいかい?
00218>15NGNG
>まっけんろー氏
ガード堅いっすね。(笑)

ソフトエンコーダは、某C社が猛威を振るってるけど、(SにもPにもMにも
Iにも納めてると豪語しとったが)ハードもがんばってね。

また質問があったらかきまス
0022名無しさん@お腹いっぱい。NGNG
>・DVDビデオのフォーマットの規格って何処で入手可能ですか?(VODの構造とかファイル配置とか)

DVDフォーラムに入会する必要があります。
確か、年会費60万円くらいだったと思います。
東芝が幹事をやってます。
もちろん入会しても守秘義務があり、
DVDの規格について口外することはできません。
0023>ギ印さんNGNG
>>12の後半と>>13についてご意見が聞いてみたいのですが。
0024>20NGNG
>それが最大のメリットだろ。これが>>19への回答になるな。
>キャプチャー中にエンコード。エンコードし終わった画は削除。
ねぇ。ボク足し算できる?

ディスクに非圧縮の中間ファイルを作るのは、エンコードが
リアルタイムでできない前提なんだろ?
なら、ディスクに落としながら、エンコして間に合うわけないじゃん。
キャプチャが終わったときには、非圧縮のでかい中間ファイルと、
ほんの少ししかエンコードできてないファイルができてるだけじゃないの?

それからね、メモリの使い方以前に、非圧縮データを書き込みしながら、
非圧縮データを読み出して、しかも、ソフトエンコしながら圧縮ストリームを
ディスクに書くなんて、正気の沙汰じゃないよ。非圧縮データの流通量だけでも
ざっと40Mバイト/秒だぞ(YUV420 or 411相当で)。

メモリの使い方なんて、あんたが言ってるほどシリアスな
問題じゃないよ。いまどきのPCは128Mくらいメモリが乗ってても
驚くに値しない。10フレームとっても、YUV420とか422なら7Mバイト
、444でも10Mバイトだよ。

それよか、シークさせるコストのほうがよほど高いぞ。ディスクは
メモリと比べると3桁とか4桁のオーダーで遅いからな。
それに、恒常的にかかるシークは、マルチスレッド化しても隠蔽できない
からね。

あと、肝心なことを忘れてないか?キャプチャは時間軸に沿って順番にしか
できないだろ?確かに、エンコードエンジンの中のワークエリアは、
非圧縮2フレーム+1フレーム(or GOP)の圧縮ストリームのサイズ
分だけあれば足りるかもしれないけど、ディスクから、最低限必要になる
フレームを(飛び飛びに)読み出してくるなんて、これも正気の沙汰じゃないぞ。
シーク頻発で遅くなるだろ?
ほんとは移動補償の計算で必要なワークとかも必要だけど、この際無視ね。

だいいち、書き込みと平行して、読み出しをやるなら、どうやってシーケンシャル
アクセスできるんだ?書き込みヘッドと読み出しヘッドがついてるのか?
書き込みポイントと読み出しポイントは常に違う場所になるだろ?
0025名無しさん@お腹いっぱい。NGNG
うちのハードウエア取り込みカード(IBMチップ搭載の半業務用みたいな奴)
だと横スクロールの速い動きがカクカクしちゃうんですけど
IBBPとかGOPとかの設定を詰めれば回避or軽減できるのですか?
0026ギ印NGNG
>23 ご指名ですか(笑)

>あと、何でHDD上のaviファイルとかをHW MPEG2でエンコ処理できないの?
>っていうか何故出来ないんだ?
この制限ってなんなんでしょうかね?チップの仕様かな?
CODECブリッジドライバ作るのが面倒なだけだったりして。

もちろん、AVIにこだわらなければ、H/W CODECを行う製品もありますよ。
カノプーの高い方のヤツとか

ただ、Pen4ならリアルタイムでD1+dtsまでソフトで行けるんでH/Wのコスト
を考えると難しいですね。
0027>25NGNG
予測エンジンが腐ってるかと...
0028>26NGNG
>もちろん、AVIにこだわらなければ、H/W CODECを行う製品もありますよ。
>カノプーの高い方のヤツとか

あくまでエンコードしてくれるだけで、ノイズ除去とかインターレース解除処理
とかはできないですよね。そういう処理をハードウェアで高速でやってくれる
製品が出てくる可能性はないんでしょうか?
aviutlやTMPGEncを使ってるユーザーとしては是非欲しいんだけど。
0029名無しさん@お腹いっぱい。NGNG
>28
それよりは安価な汎用HW圧縮エンジン作ってくれたほうが現実的だし
効果的なのでは?
0030ギ印NGNG
リアルタイム処理とか業務用/局向けなんかは、H/W起こしたりするのが
一般的だけど、

>それよりは安価な汎用HW圧縮エンジン作ってくれたほうが現実的だし
「汎用PCI CPUボード(SHとかRとかが乗ってるPCIカード)使ってCODEC
ボード作ろうとしたら、スペックはどんなもん?」って知り合いに聞い
たら(早い話、CODECとかエフェクトエンジンを全てファームとして登録
する。書き換え可能)
「だいたいx86で作ってみて、実働するスペックは必要だよ」とのこと。
つまり、P3の1GMHz並のスペックが必要と言う訳ですね。そんなもん、数万
で買えねーつーの

安い汎用チップが無ければASICなりで起こす必要があるけど、高いのねん
ロジック単位で売ってるけど、動く・動かないの追い込みにも時間かかるし...
ビデオってマジむずいですよ。
0031名無しさん@お腹いっぱい。NGNG
>ビデオってマジむずいですよ。

なんだかんだ言って、結局その辺のノウハウで
ソニーに勝てないってこと?
0032ギ印NGNG
>ソニーに勝てないってこと?

うーんとソニーさんが云々って訳じゃなくて、ビデオってアナログと
デジタルの結晶だし、高速で動作させないと行けないし、規格も厳し
いし、結構技術力無いとなにも作れない業界なんですよ。
このへんのASICとかも作れる会社って実は町のマイナーな開発会社
だったりと...(業界では有名かもしれないけど、一般的にね)

当時Bt848がBrooktreeの代理店から来た時は大騒ぎっすよ。「あの
画質(業務用には×だけど)でこの値段か!?やつら鬼か?」しかも
リファレンス通りつなぐだけで動くし...
0033名無しさん@お腹いっぱい。NGNG
Zapexって・・・どう?
0034名無しさん@お腹いっぱい。NGNG
>>30
最近の低価格HWエンコボードに載ってるチップでエンジンは作れないんすかね?
別にAVIからのエンコはリアルタイムでなくても良いと思うんだけど。
0035ギ印NGNG
>34
チップの仕様次第でしょうね。ドライバも書かないといけないし。
0036>34NGNG
某社製のハードエンコーダーチップは、
ビデオデコーダーチップからの出力を直入力する口しかないから、
データの入力がリアルタイムを下回るとエンコードできないよん。
なんていう制限があったりして、なかなか難しいのですわ。
0037まっけんろーNGNG
>>24
なんだ、ソフトのことが分かってない中途半端なPCオタクだったのか。
>>キャプチャー中にエンコード。エンコードし終わった画は削除。
>ねぇ。ボク足し算できる?
おまえ、引き算ぐらいできろよ。

>ディスクに非圧縮の中間ファイルを作るのは、エンコードが
>リアルタイムでできない前提なんだろ?
>なら、ディスクに落としながら、エンコして間に合うわけないじゃん。
業務用ならRAID5とかファイバーチャネル使ったシステムがあるぞ。

>キャプチャが終わったときには、非圧縮のでかい中間ファイルと、
>ほんの少ししかエンコードできてないファイルができてるだけじゃないの?
引き算勉強せい。なんのために読み出しスレッドとエンコードスレッドに分けてるか
考えてみろ。
>メモリの使い方なんて、あんたが言ってるほどシリアスな問題じゃないよ。
一番の腕の見せ所なのにな。メモリーインターフェースを甘く見るような
ソフト無能者め。「A+D=P」の「D」はなんだ?言ってみろよ。

>それよか、シークさせるコストのほうがよほど高いぞ。ディスクは
>メモリと比べると3桁とか4桁のオーダーで遅いからな。
得意げになってランダムアクセスのことを言ってるが、おまえばかか?
10Byteのデータのランダムと数MBのデータのランダムのオーバーヘッドの違いがわかるか?
バースト転送って言葉知ってるかい?
>ディスクから、最低限必要になるフレームを(飛び飛びに)読み出してくるなんて、
工夫しろよ。メモリーに並べる時にストリーム順にしてからHDDに落とせばいいだけの
話だろ。頭あんのか?

>だいいち、書き込みと平行して、読み出しをやるなら、どうやってシーケンシャル
>アクセスできるんだ?
ソニーがPentium4を使ってI.Linkでストリームを取り込みリアルタイムデコードして
それをリアルタイムエンコードし、HDDに格納ってデモをintelのショーでやってたぞ。
おまえの理屈じゃ出来ないってことだけどな。

ちっとはうんちくだけじゃなくて頭を使えよ。何のためのDMAだ?
なんのためのマルチスレッドだ?おまえはPIOでシングルスレッドで満足してな。
0038まっけんろーNGNG
・・・謝っておこう。
>>ディスクに非圧縮の中間ファイルを作るのは、エンコードが
>>リアルタイムでできない前提なんだろ?
>>なら、ディスクに落としながら、エンコして間に合うわけないじゃん。
>業務用ならRAID5とかファイバーチャネル使ったシステムがあるぞ。
たしかにその通りだ。すまん。
RAIDとかファイバーとかでベースバンドの画を取り込み
エンコードするシステムもあるんだが、それはベースバンドの画を編集してから
ストリームにするシステムだった。。。

>>キャプチャが終わったときには、非圧縮のでかい中間ファイルと、
>>ほんの少ししかエンコードできてないファイルができてるだけじゃないの?
>引き算勉強せい。なんのために読み出しスレッドとエンコードスレッドに分けてるか考えてみろ。
確かにおまえが言う通り、リアルタイムエンコードが出来ない前提だからそうなるな。

ただ、リアルタイムエンコードできるのにHDDにいちいち落とすシステムもあるかもしれん。。。
ストリームも欲しいし、ベースバンドも欲しい。。。なわけないか。(負荷テストならあるかもしれんが)
確かに俺の自己矛盾だ。すまん。

 ただし、その2点だけ。24が指摘している問題点は確かに分かるけど
負荷の高さをいかにして克服するかのアイディアが全く示されていないのが気にくわんね。
後ろ向きすぎるね。
(こっちはわざわざPatterson/Hennessyで確認して書いてんだ)
0039>38NGNG
> 引き算勉強せい。なんのために読み出しスレッドとエンコードスレッドに分けてるか
> 考えてみろ。
わかってないねぇ。
エンコードしたデータはディスクに書き出すんでしょ?
かなりリッチなディスクシステムなら、
a. 非圧縮データを書き込みつつ、
b. 非圧縮データを読み出しつつ、
c. 圧縮ストリームを書き込んで
d. かつ、CPUはMPEG2エンコードする余裕があるかもしれないけど、

普通、非圧縮データをディスクに書き込むだけで精一杯だぞ。
しかも、a. b.については、物理的に同じディスクになるから、
ヘッドはシークしっぱなしになる。RAIDにしても意味ないところ
だしな。

実際コーディングしたことないだろ?普通のPC環境で。

> ただ、リアルタイムエンコードできるのにHDDにいちいち落とすシステムもあるかもしれん。。。
実用上は、ありえないな。ライブ配信みたいなシステムなら、非圧縮データと
圧縮データ両方をストアしたいってケースもあるかもしれないけどね。
しかし、一般論としてはありえないね。

業務機なら、編集システムから送出して、エンコードだけをするシステム
になるだろうし、コンシューマー向けなら、File->Fileのコンバートか、
アナログ入力->Fileが一般的だろ?

前者なら、もちろん元データは編集システム上にあるわけだから、改めて
キャプチャするなんて必要性はないわけだし、後者の場合は、コストを
考えると今のPCベースじゃ無理だな。

大体Ptterson/Hennessyなんて持ち出さなくてもわかるだろ?
そうそう、全然関係ないけど、"Computer Organization and Design"
とかのエラッタは、チェックしてる?
0040名無しさん@お腹いっぱい。NGNG
>>30-36
うーむ、なるほどー。
そういうことだったんですか。結局HDDのファイルをエンコードするにはカノプあたりの
高価なボード使う以外ないんすね。
これ以上新製品待っててもしょうがないかな・・・。
0041>38NGNG
39に付け足しとこう。

>負荷の高さをいかにして克服するかのアイディアが全く示されていないのが気にくわんね。
>後ろ向きすぎるね。
まずだな、負荷の一番高くなる部分の処理を分散できないか考えるんだな。
あんたのいってるシステム設計は、「わざわざ負荷の高い部分」を意図的に
作って、システム全体のコストを引きあげる設計に見えるぞ。

MPEG2エンコードが非リアルタイムのシステムで安定したキャプチャ性能
を保証するためには、非圧縮、もしくは、エンコードが非常に軽い可逆
圧縮、もしくは、用途によっては非可逆圧縮してディスクにストアして、
それを改めてMPEG2にエンコードするほうが、キャプチャに失敗するかも
しれないシステムよりユーザビリティーが高いと思うぞ。

ま、それ以前の問題として、そういうシステムに需要があるか?という
問題もあるがね。普通、強力なディスクサブシステムがないと使えない
ようなソフトエンコーディングシステムと比べれば、ハードエンコー
ダーをつかって普通のディスクを使うほうが簡単だし、安くならないか?

0042>40NGNG
> そういうことだったんですか。結局HDDのファイルをエンコードするにはカノプあたりの
> 高価なボード使う以外ないんすね。
試したことないから、出来るかどうか分からないけど、パソコンが
2台あるなら、再生機と録画機にすればよいのでは?

アナログアウトがついてるマシンで再生させて、安いハードエンコーダ
をつけたマシンでMPEG2キャプチャする。

だめかな?
004340NGNG
>42
最近発売されたハードエンコーダには失望してます。
720x480でしかキャプチャできないというバカな製品を筆頭に(ファイル
どこに保存せいっちゅーんじゃ)キャプチャ時にまともに画質補正もできない、
クリッピングすらできない、そのくせ編集、加工したらソフトで長時間かけて再圧縮。
なんでそんな製品しか作れないのかがこのスレでやっとわかったわけです。

ファイルからエンコできるボードを買うか(高価だけど)、現状(AVIから時間を
かけてソフトエンコ)で我慢するかを考えますです。
0044>37 その1NGNG
前半しか読んでなかったら、後半にこんなに間抜けなことが書いてあったとは…

>10Byteのデータのランダムと数MBのデータのランダムのオーバーヘッドの違いがわかるか?
>バースト転送って言葉知ってるかい?
わははは。こりゃいいや。
エンコードする時は、1Mほどのメモリをけちることを自慢して、ディスクIOはMB単位で
使い散らかすんだな?

確かに、ディスクIOを適度にバッファリングしてシークを減らすのは、常套手段だよ。
でもね、扱うデータ量がぜんぜん違うんだよ。一般的なディスクシステムで、CPUに
負荷をかけずに40MB/Sがコンスタントに出せたとしても、エンコードしてる時間は
1フレームあたり、せいぜい15mSくらいしかないんだぞ。それは理解してるんだろうな?

何度もいってるが、非圧縮で中間ファイルを作りつつ、同時にソフトエンコード
するのは、ディスク負荷が高すぎて今のPCじゃ実現できないよ。根本的に
帯域が足りないからね。エンコードが間に合わないなら、素直に非圧縮ファイル
を作ればいいんだよ。どうせ、少しばかりエンコードの時間が節約できても
キャプチャ自体に失敗したら意味がないじゃないか。
実際には、非圧縮で安定して取り込める環境を作ること自体が結構大変なんだ
ってことは知ってるよね。速めのSCSIディスク4発でRAID組んであげれば、
そこそこなんだろうけど、そこまでやるなら、素直にハードエンコーダを
買うよ。普通の人は。

おっと、まぬけな返事がくる前に書いとくと、書き込みだけなら、ディスク帯域は、
あんたのいってるシステムの半分以下ですむし、シーケンシャルアクセスだけですむ。
逆に、あんたのいってるシステムだと、書き込みしつつ、離れた場所を読み出しにいくから
かなりうまくバッファリングをしたとしても、データの流通量自体が多いし、シークの
頻発は避けられないからディスクの負荷はとても高くなる。
だから、あんたのシステムだと、ディスクサブシステムにかけなきゃいけないコスト
は桁違いに高いぞ。4発RAIDくらいじゃお話にもならん。

あとバーストなんていってるけど、何が速くなるか分かっていってるの?
物理的にモノが動くところは、CPUやメモリとは桁違いに遅いってことが
理解できないのかね。だから、メモリをつかってバッファリングするんでしょ?

0045>37 その2NGNG
>工夫しろよ。メモリーに並べる時にストリーム順にしてからHDDに落とせばいいだけの
>話だろ。頭あんのか?
エンコードエンジンでほんの少しのメモリをけちってた人が、GOP単位の非圧縮データを
メモリにストアしとくとは思いもよらなかったからな。あんたも、多少は考えてるんだな。

>ソニーがPentium4を使ってI.Linkでストリームを取り込みリアルタイムデコードして
あんた、このデモと、あのシステムとが同じ内容だと思ってるのか?
このデモでは、あのシステムで一番のボトルネックになると何度も指摘している
「ディスク」を経由してないだろ?

あんたの設計じゃ、ディスクIOばかりに時間を取られて、エンコードしてる
暇なんてないよ。そんな事も分からないようじゃ、技術者としてセンスを疑うな。

今買えるヘボイ部類のCPU(600メガくらいの河童セレとかか?)をつかっても、
DVの1フレームのデコードなんざ10mSもあれば出来るわけさ、しかも、MPEGで
圧縮された後のデータは無圧縮と比べれば、恐ろしく狭い帯域しか必要としないし、
シーケンシャルに「書き込みだけすればよい」からディスクもさほどしんどいわけ
じゃない。

あとは、リアルタイムエンコードできればいいんだろ?そこにP4のパワーが必要
になるかも知れんがね。P4つかってDVデコードが倍速くなったとすれば、MPEG2
エンコードに1フレーム換算で25mS以上使えるってことだ。目いっぱい最適化
したDCTのコストをさらに下げるのは難しいから、移動補償でマッチングする範囲を
調整して、リアルタイムでいけるようにすれば、何とかなるんじゃないの?
あまりきれいじゃなくなると思うけどね。

あんたのいってるシステムとはまったく違うシステムだろ?

> ちっとはうんちくだけじゃなくて頭を使えよ。何のためのDMAだ?
> なんのためのマルチスレッドだ?おまえはPIOでシングルスレッドで満足してな。
知識の断片、又聞きの寄せ集め、雰囲気やイメージだけでいけるなんていってるより、
よほど地に足が付いてると思うぞ。

それにな、DMAつかえば、CPUでやるよりかなり速いけどさ、あんたのいってる
システムだと、結局ディスクからの読み出しが終わらなきゃ、エンコードは出来な
いんだよ。サーバー機(もちろんPCじゃないぞ)ならバスが多重化されてて、本当に
DMAが2,3本同時に走るシステムもあるけどね、PCじゃ、バスは基本的にシェアー
ドだから、誰かがつかんだら、そのバスにぶら下がってる他の人は止まってるって
ことを忘れちゃいけないよ。

マルチスレッドもそうだよ。もちろんマルチプロセッサ環境ではある程度速くなるだろう
でもそれは、滞りなくデータが供給されればの話だよ。

0046>39,41,44,45NGNG
ひまだねぇ>おれ

やっぱ、マスターフィックス直前は、現実逃避したくなるのよねん。
0047名無しさん@NGNG
なんの戦いしてんだから素人にはさっぱりわからん。
0048>47NGNG
とりあえず、ヲタが得意分野について一人得意顔でキーボード叩いているのが目に浮かぶようだ。
0049名無しさん@お腹いっぱい。NGNG
なんか2つの話題が平行して続いてるような・・・
ギ印氏関係(?)の話は読んでて面白いがまっけんろー氏関係は子供の
けんかって感じで全然面白くない(レベルは高いのかもしれんが)
とりあえずスレわけろよ。(w
0050>49NGNG
>とりあえずスレわけろよ。(w
そだね。

もともと、まっけんろー氏のスレッドだから、ギ印氏関連を
別スレッドにするのがよかろうと思うがいかがなものだろう?

0051名無しさんNGNG
なぜDVDにはMPEG2が使われてるんですか
0052ギョーカイNGNG
MPEG2って何か知ってるのかな?>51
DVDが片面1層で72GB入ればMPEG2使う必要はないのだ!
両面で非圧縮二時間撮れるからな
さすがに無理だから圧縮するのだ!!!
それに最適なのが(最適=適当=高圧縮でも綺麗=DVDの転送で間に合う)
MPEG2の規格なのだ!
mpeg1でもいいんだけど、320*240じゃ知れてるからね
そこで1枚のDVDで二時間録画できる最高画質は?となると
mpeg2圧縮がちょうど良かったんだよ。
たぶんね。
間違ってたら、訂正頼む!
ちなみにMotionJpegだと統一規格でないから
権利の問題で使用しにくいのかな?
ちなみにMPEG2は信号面でも綺麗なのさ。圧縮率の割には、、、
たぶんね。
0053名無しさんって佑香NGNG
まっけんろーさん、わからないところはわからんと言いながらも
いろいろと想像して答えてくれたところが足すくわれるタネになっているようで
質問したほうとしても申し訳なく思ってます。
つまらない人にはつまらないかもしれないけど、結構ためになりますよ。

>52
MPEG2の規格で最高のビットレートというのは上限が設けられているのですか?
よくわからないけど、圧縮した場合、元に完全に復元できるやりかたと、
元にもどせない圧縮があるじゃないですか。
MPEG2のビットレートをあげていけば、どっかの時点で非圧縮のものと
同等のものになるような気がするんだけど。
VBRにしてけば、元に非圧縮ほどはスペースとらないけど、非圧縮と100%同じ
ものを再生できるレートってのはMPEG2で可能なのですか?
0054>53NGNG
DCTベースの圧縮だと、完全に元に戻るように圧縮するのは、
事実上不可能ですよ。限りなく原画に近い状態に戻るように
しようと思えば、出来なくはないですが、原画よりも大きく
なる可能性大ですね。

それより、もともと可逆な圧縮(LHAとかZIPとかで使われる
ようなもの)で圧縮するほうが、速度的にも有利になるんじゃない
でしょうか?動画のデータは、フレーム内でも、フレーム間でも
エントロピーが低いことが多いですからね。
0055名無しさん@お腹いっぱい。NGNG
>mpeg1でもいいんだけど、320*240じゃ知れてるからね

MPEG1でも720x480の解像度、可能ですよ。
MPEG1規格と、VideoCD規格を勘違いしている人、
多いんだよね。

画質だけなら、MPEG1でもMPEG2と同レベルを実現できるし。
0056>52NGNG
> ちなみにMotionJpegだと統一規格でないから
> 権利の問題で使用しにくいのかな?
Motion JPEGのほうが権利関係は単純だと思いますよ。
あれって、中身は、フレーム単位か、フィールド単位の
JPEGそのままですから。

それより、量産すると安くなるとか、ある程度のクオリティーとか、
最低2時間は記録できる とかそういう条件を総合したらMPEG2が
残ったってことなのでは?と想像します。
0057名無しさん@お腹いっぱい。NGNG
mpeg1ではなくてmpeg2が選ばれた理由は、画質ではなくて、
インターレース画像を考慮した符号化を行えるってことではないか?
画質だけなら同じレベルだよ。
mpeg1のほうが汚いとか思っている思い込み野郎はよく見かけるけど。
0058名無しさん@お腹いっぱい。NGNG
加えて、mpeg2がmpeg1より拡張されている部分は、
同期再生のための時間情報など、記録できる制御情報が増えていること。
(スクランブルの有無や著作権の有無、CRCなど)
それと、主にBS放送などで使われているトランスポートストリームは、mpeg1には無い。
0059名無しさん@お腹いっぱい。NGNG
>mpeg1のほうが汚いとか思っている思い込み野郎はよく見かけるけど。

どっかの雑誌が同ビットレートでもmpeg2の方が綺麗って言い切ってたんで、
信じ込んでましたです。
0060名無しさんって佑香NGNG
たしかに月刊アスキーとかで、画質の比較表とかがでていて
MPEG1が△、MPEG2が◎となっているよね。
ちなみにVHSが△、S−VHSは○となっていたよ。

>54さん、ありがとう。
MPEG2ってビデオとかで行われている3次元処理みたいなものかと
思っていた。
0061名無しさんNGNG
MPEG2の方が綺麗なんですか
MPEG2はなんちゃらノイズがでるとか聞いたんですが
エンコーダによるんかな
0062名無しさん@お腹いっぱい。NGNG
>>60
いや、大抵そういう比較表って、
「MPEG1」というよりは「ビデオCD規格」を使って比べてるんです。
たしかにビデオCDの解像度とビットレートではVHSレベルですね。

MPEG1とMPEG2、どっちが綺麗かって言うのは、自分で圧縮してみればすぐにわかりますよ。
ほとんど同じです。
特に、自分で作った(撮った)映像ソースを使うと画質の違いが良くわかります。
0063ギ印NGNG
同じビットレート当たりの劣化指数はmpeg2の方が少ないかもしれないね。
0064名無しさんって佑香NGNG
>>62
MPEG1とMPEG2がほとんど同じだとすると、AIWみたいなソフトエンコーダを
使ったときにCPUやハードディスクに対する負担というのは、どっちのほうが
大きいのでしょうか?
負担の軽いほうを選択して、ビットレートをあげたほうが画質がいいって
ことになりますよね?
0065名無しさん@お腹いっぱい。NGNG
でももともとmpeg1って、1.5Mbpsのビットレート
(=CDのビットレート=ビデオCDのビットレート)
でのビデオの再生を目標にして作られた規格だよね・・・。
だからそれ以上のサイズ・ビットレートでのmpeg1は、
あくまでも実験的、と思った方がいいのでは。
0066>65NGNG
そもそもMPEG-1の規格ってISO/IEC 11172-2で、こいつの
タイトルが「Information technology - Coding of moving
pictures and associated audio for digital storage media
at up to about 1,5 Mbit/s - Part 2: Video」ですからね。
1.5Mbpsを超えるMPEG-1ってのは規格外ってことになるかな。

あくまで、現在出回っているMPEG-1エンコーダーでこれより上の
ビットレートをサポートする場合が多い、というだけで。
006765NGNG
>66
いや、mpeg1は、1.5Mbpsでの再生を「目標に」作られただけで、
実際には画面サイズ(ドット数)やビットレートについては
規定されていないはずです。
なので、大きい画面サイズや高いビットレートでmpeg1を作っても、
「規格外」というわけではないのですよ。

でもやっぱりmpeg1=ビデオCD=1.5Mbps=1/4VGAと思ってて、
ほぼ間違いないと思いますが・・・
0068名無しさん@お腹いっぱい。NGNG
>CPUやハードディスクに対する負担というのは、どっちのほうが
>大きいのでしょうか?

MPEG2のほうが再生必要スペックだいぶ大きいはず。
それにコーデックがないと再生できないし、
圧縮の仕方にいろいろ種類があるので環境を選ぶ。
だから個人で趣味で使う場合はMPEG1のほうが全然取り回しがいい。
0069名無しさん@お腹いっぱい。NGNG
動画を人に渡すときもMPEG1なら安心ですね。
0070名無しさんって佑香NGNG
>>68
記録時はどうなんでしょうか?

MPEG1よりMPEG2のほうが高圧縮なのですか?
0071名無しさん@お腹いっぱい。NGNG
高圧縮かどうかは、自分でビットレートを選んで決めることでしょ?
0072名無しさん@お腹いっぱい。NGNG
MPEG2のことなら俺に聞け!

じゃあMPEG2ってなんですか?
0073名無しさん@お腹いっぱい。NGNG
>>72
くだらないから放置せよ
0074名無しさん@お腹いっぱい。NGNG
なんというか、2chはこういう有益な情報源の発信者を叩くのが普通になってきたね。
まっけんろー氏に喧嘩腰で噛みついてる奴とか。
0075>74NGNG
> まっけんろー氏に喧嘩腰で噛みついてる奴とか。
しったかぶって、うそこいてるからぢゃないか?>まっけんろー氏
0076しつもーんNGNG
ビットレート固定で640*448のMPEG2(m2v)を作りたいんだけど、一番いいエンコーダってどれかな?
5万以内ならソフトでもハードでも可
0077>74, 75NGNG
まっけんろー氏に噛み付いてた匿名氏(たち?)と72みたいに
たんに茶化してるだけの人を一緒にしてはいけない。>74

うそは少々言い過ぎじゃないですかね。>75

わたし、本業はソフト屋さんなんですけど、匿名氏のいっていることの
ほうが説得力ありましたよ。まっけんろー氏からは、「何を根拠に
実現できる」といっているのかがまったく提示されませんでしたら。
それに引き換え、匿名氏は「なぜ非現実的か」かなり具体的な数字まで
出せてましたから。

たしかに、あの口調は大人げないと思いましたが。
007877NGNG
失礼、勘違いしました。>74さん
0079名無しさん@お腹いっぱい。NGNG
>76
TMPGじゃだめなの?
そういえばTMPGのMPEG2のエンコードの質はどうなんでしょう?
詳しい人教えて。
0080名無しさんって佑香NGNG
>>71
同じビットレートだとどうなの?ってことを聞いているんだけど。
MPEG1とMPEG2は圧縮方法が違うんでしょ?
0081名無しさん@お腹いっぱい。NGNG
http://www.juno.dti.ne.jp/~snowdorp/anime/
0082名無しさん@お腹いっぱい。NGNG
burakuranityuui
0083名無しさん@お腹いっぱい。NGNG
えっと、一応MPEG2ということで・・・
CS→PC ってのは結局デジタル録画は無理なんでしょうか?
i-link端子もD-VHS専用と聞いたこともあるんですが

スレちがいでしょか?
0084名無しさん@お腹いっぱい。NGNG
>同じビットレートだとどうなの?ってことを聞いているんだけど。

うーん・・・同じビットレートなら、
圧縮率は(数学的に)全く同じだけど・・・。
圧縮方法がいかに違っていても。
だから、ビットレートを自分で決めれば、
それで圧縮率が決まってしまうというのは正解だと思う。

同じビットレートならどちらが高画質ですか?なら質問が成り立つ。
その答えは(前の方に既に書いてあるけど)「同等」では?
0085名無しさん@お腹いっぱい。NGNG
>CS→PC ってのは結局デジタル録画は無理なんでしょうか?

カノープスから、CSデジタル放送を直接パソコンで録画するボードが発売されてますよ。
0086名無しさんって佑香NGNG
>>84
ではなんのためにMPEG2があるのでしょうか?
同じビットレートだと圧縮率が同じ、画質も同等、
でも再生はMPEG2のほうが高負荷。
これが事実だとすると、MPEG2のほうが質が悪いということに
なりませんか?
0087名無しさん@お腹いっぱい。NGNG
MPEG2は、MPEG(Moving Picture Experts Group)という専門家グループの
第二段階の活動によって生まれたものです。
第一段階の活動で制定されたMPEG1は、主にCDと同じビットレートである1.5Mbpsで
ビデオを符号化することを目的に制定されました。
その第二段階の活動で制定されたMPEG2は、3〜15Mbps程度でインターレースビデオを、
また20Mbps程度でHDTVを符号化することを目的に制定されました。
つまり、目的と用途がより広範囲になっているということです。

このスレッドの前のほうから(勝手に)抜粋すると、
MPEG2には、MPEG1と比べて
・インターレース画像を考慮した符号化を行える。
・同期再生のための時間情報など、記録できる制御情報が増えている。
(スクランブルの有無や著作権の有無、CRCなど)
・主にデジタル放送などで使われているトランスポートストリームがある。
などの違いがあります。
これらを見ても、MPEG2の方がMPEG1に比べてより広範囲のアプリケーションを
想定して制定されているということが言えるでしょう。
0088名無しさんって佑香NGNG
なんだかインターレース以外は、逆に高画質化のさまたげに
なるような付加情報をいっぱいくっつけたって感じ?
どうも、MPEG1で高ビットレートがあつかえるんだったら
MPEG1のほうがいいってことかな。
0089名無しさん@お腹いっぱい。NGNG
>どうも、MPEG1で高ビットレートがあつかえるんだったら
>MPEG1のほうがいいってことかな。

パソコン上だけで見るのなら、それでいいのかもしれませんね。
コーデックはOSやQuickTimeに標準で付いてるし。
0090名無しさん@お腹いっぱい。NGNG
ノートPCでMPEG扱うの大変なんでPCカードで処理するようにできないんですかねえ
MPEG1でもしんどる
0091ギョーカイNGNG
匿名氏たちの噛み付きもいろいろあるけど
現場で扱っているまっけんろー氏の意見も
あながちウソではないが、その知識が汎用コンピューター
との組み合わせで矛盾してしまうことについて
突っ込むなら、突っ込み方がほかにあるんでないかい?
でも、このスレ勉強になるねぇ。
0092名無しさん23NGNG
MPEG1またはMPEG2→AVIにするには
何のソフトを使えば便利?
0093名無しさん@お腹いっぱい。NGNG
いまHP改装中で落とせないのよぉ
0094名無しさん@お腹いっぱい。NGNG
>なんだかインターレース以外は、逆に高画質化のさまたげに
>なるような付加情報をいっぱいくっつけたって感じ?

「DVD」、のような統一した規格を作るにはいろいろ大変なんだよね。
画質も重要だけどそれよりも重要なものが他にたくさんある。
特にコピーの問題に関しては世間もうるさい。
0095ギョーカイNGNG
というより、うるさいのは
「ハリウッド」
いかにアジア地域での海賊版を無くすかに、
命かけてる(改め、一所懸命)
0096>91NGNG
>突っ込むなら、突っ込み方がほかにあるんでないかい?
言葉づかいが丁寧じゃなかったってことか?

それに奴のいってることは、PCアーキテクチャ上だけで破綻してたん
じゃないぞ。今までも存在しなくて、これからも存在する見込みのない
みょうちくりんなアーキテクチャのマシンでは正当な方法だったのか
もしれないけど、そんなのを一般論として持ち出してしまうセンスの
悪さは、どうにもならん。メモリの使い方の例だけ取ってみても、
自己矛盾の固まりだったからな。

確かに、半年ばかりかじった程度の知識はあったかもしれないけど、
その程度の知識じゃ、技術者として現場で仕事したレベルじゃないよ。
せいぜい、研修期間終了ってレベルだな。
0097>96NGNG
だからそれがうざいっていうのよ
でも、とんでもないすれを作っちゃったね
自分のレベルを大きく見積もりすぎなんだな
0098ギョーカイNGNG
1は詰めが甘かったってことですな
さ、10時だ。明日の朝までお仕事、お仕事。
0099ギョーカイNGNG
さぁ、めしだ、めしだ、、、ただし昼飯!?
このスレも詳しい人が複数出てくると
細かいところのつつきあいだ〜ねぇ
それがいい(面白い)んだけど、、、、、、、、
0100名無しさん@お腹いっぱい。NGNG
>>99
あんまり無駄なこと(や聞いてもいない自分のこと)を書き込みまくると、
評判は下がるだけで上がりはしないぞ
他の板でもそうして有名になった厨房はたくさんいるでしょ
ギョーカイさんも注意してね!
0101帰ってきた まっけんろーNGNG
久しぶり。
さて、あの工夫しない馬鹿の言うことを信じている人が多いけど、
おかしいぞ。あの工夫しない馬鹿はシークのことをあげているけど
だったら追いかけ再生はどうやって説明できるんだ?
 VAIOでもやってるけど、追いかけ再生はストリームをHDDに記録しながらデコードもできるぞ。
録画中の映像を数秒遅れで再生できる。(もちろんぜんぜん別のファイルを再生も出来る)
あの工夫しない馬鹿の言う通り、1frameづつ読み・書きしてたら
間に合うわけないけど、ちょっと工夫すればシークの数回の失敗により
XXXmsecぐらいロスしても平気で書き込みできるぞ。(具体的な値は言わない。)

>>10Byteのデータのランダムと数MBのデータのランダムのオーバーヘッドの違いがわかるか?
>>バースト転送って言葉知ってるかい?
>わははは。こりゃいいや。
>エンコードする時は、1Mほどのメモリをけちることを自慢して、ディスクIOはMB単位で
>使い散らかすんだな?
・・・言葉が出ないほど馬鹿だな。ぜんぜん通じてねぇや。
>確かに、ディスクIOを適度にバッファリングしてシークを減らすのは、常套手段だよ。
んなこと言ってねーよ。数ByteのデータのHDDへの連続アクセスと数MBのデータのHDDへの連続アクセスと
どっちがトータルのシーク時間がかかるのかと聞いてんだよ。

 さて、説明してくれよ。追いかけ再生はどうして出来るかを。

もう一度言うけど、確かにベースバンドの画をHDDに書き込んでからそれを読み出して
エンコードするってのは俺の明確な間違いだ。
CPU負荷率の点からもバンド幅のことからも現実には無理だしメリットがない。
それは前も言っている通り認めるし謝った。
ただし、圧縮ストリームでは現実にそれと似たことをやってる。
おまえの説明だと出来ないってことだけどな。
やり方は俺は知っている。PCのアーキテクチャーでも十分可能だ。ってか出来てるし。
おまえが説明すれば○・×で答えてやるよ。
>>97 おれは無敵だ。
0102まっけんろーNGNG
上の方でMPEG2とMPEG1のことをやってるけど、ちょっと気になるのが「圧縮率」の話。
圧縮率はベースバンドのbit rateとストリームのbit rateで比をとるだけの話で
1frameの画の圧縮率が高いとか低いってのは正確じゃない。ってかおかしい。
なにがおかしいかというとVBVの考え方からだめ。
 たとえば画面全体が黒の画を考えるとこんなもんencodeしたところで
10Mbpsになんてなりっこない。もっともっと小さく出来る。でも
0で埋めるとかしてストリームのサイズを10Mbpsになるまで大きくする。
なぜなら小さすぎるとVBVがオーバーフローしてしまうから。
逆に1frameが大きすぎるとアンダーフローしてしまう危険があるからね。
(但し、DVDとかの場合は特別なVBVの算定でencodeを行うからちょっと違う。)
ってことで>>84さんのおっしゃるとおり。
0103まっけんろーNGNG
あと、MPEG1とMPEG2のアルゴリズムのことだけど、
MPEG2は改善されたVLCテーブルを持ち非線形の量子化コードを持つ。
また、field DCTも出来るようになっているし、オルタネートスキャンも新たに用意された。
そして、DC成分の量子化bitが8-11bitで選べるようになった。(MPEG1は8bitのみ)
同じ画を入力した場合の画質に関係ありそうな特徴はこれぐらいかな?
 結論として、画質に関してはMPEG2の方がよくなる可能性が大きい。
特に最重要のDC成分に関して量子化bitを多めにとるのは効果がある。
 MPEG1,2で画質が明確に違うと言い切れない理由は、レートコントロールの存在があるから。
レートコントロールは各社、独自の方法で実装しているしここの優劣が猛烈に画質に影響する。
0104>101 その1NGNG
>久しぶり。
おかえり。

やっぱ、わかってないよ。
追っかけ再生をやってるのは、普通MPEG1とかMPEG2とかの圧縮ストリームを
ディスクに書き込みつつ、読み出してデコードしてるだけだろ。
しかも、普通圧縮はハードでやっているから、かなりCPUにもIOシステ
ムにも余裕がある状態で動いてる。あんたのシステムと比べるとディ
スクにかかる負荷がけた違いに少ないんだよ。ついでに言うと、
エンコードもデコードも、どちらもソフトでやるとすれば、
デコードのほうがCPU負荷が低いことは、明らかだよな。

しかも、圧縮ストリームだから、非圧縮ストリームと比べれば
同じ量のメモリをIOバッファリング用に確保しても、バッファリングに
よるIOシステムへの負荷低減の効果は大きい。

それが、非圧縮キャプチャを安定してすることですら余裕のない一般的
なPCアーキテクチャで非圧縮ストリームで追っかけ再生的なことを
やろうというのが無理な話なんだ。それは、自分でも認めたことだろ?

話しがあちこち前後してしまうが、許してくれ。
0105>101 その2NGNG
じゃ、シークのコストうんぬんは、どういうことかというと、、、

まず一つ目は、ただでさえ常軌を逸したデータ流通量になることに
加えて、キャプチャだけやっているときと比べるとシークが多発する。
この状況は、安定したキャプチャを実現するために非常に大きな悪影響
を及ぼすことが予想されること。まずは安定してキャプチャできる事が
大前提で、それが実現できて始めて「キャプチャとエンコードとインター
リーブする」などといった付加価値に意味がでてくるからね。

2つ目は、あんた自慢のメモリの使い方とかかわってくる。
まず、エンコードエンジンで使うメモリ量をあんたが言ってる方法で
節約出来ることは万人が認めるだろう。間違っていない。
しかしだな、それを実装するためには、
・非圧縮データを読み出し時にシークして必要なフレームデータを取得
(フレーム単位のシークが必要)
・非圧縮データをディスク上でインターリーブする。
(フレーム単位のシークが必要)
・ディスクに書き込むときにメモリ上でシャッフルして書き込む
(エンコードエンジンで節約したのと同量のめもりがシャッフル
するたに必要)
の三者択一だろ?

前の2つは1フレームずつのシークが必要になって実現するのは非常に難し
くなる、というか無理だろう。3つめは、見込みがあるが、エンコードエン
ジンで工夫してメモリ使用量を少し減らしても、システム全体として減ら
したことにはならない。つまり、必要になるメモリ総量が変わらないなら、
エンコードエンジンでメモリを節約したことはあんたが考えている大きな
メリットにはならない。確かに工夫だろうが、所詮、近視眼的な工夫で
しかないわけだ。
(ここで付け加えるなら、ディスクIOのバッファリングとシャッフル用の
バッファを兼用させるという手法は、有効だといえよう。ただし、
それに至る道のりが非現実的であるため、現時点では実用的アイデアとは
言いがたい。)
0106>101その3NGNG
したがって、あんたの言ってたシステムは、システム全体のメモリ使用量の
ことなぞ考えずに設計したか、がんがんシークしながら読み書きしてあげる
ことを考えてたか、どちらかってことだよな。

可能性として考えられる両方から、システムが破綻、もしくはあんたの
主張が破綻していることを示しただけのこと。それすら考えが及ばないとは…


>んなこと言ってねーよ。数ByteのデータのHDDへの連続アクセスと数MBのデータのHDDへの連続アクセスと
>どっちがトータルのシーク時間がかかるのかと聞いてんだよ。
数バイト単位のディスクアクセスは、最終的には、OSが最低でもクラスタ
サイズ単位でバッファリングするから単純にはいえない。
以下の話は、どんぶり勘定になることを断っておく。

また、問題点をすり替えようとしているフシがあるが、シークすること自体が
非現実的といっているわけではなく、ディスクの転送速度を極限まで必要と
するアプリケーションではシークが増えるようなことは断じてやるべきでない
といっているのである。安定した高IOレートを確保したい時のシークが致命傷
になることは議論する余地のない事実である。そのこともまた前置きとしておく。
0107>101その4NGNG
OSがキャッシュしている範囲から外れるように意図的に仕込んでランダム
アクセスすれば、数バイト単位でもメガバイト単位でもIOのリクエストの
たびに実際にシークする羽目になるから、リクエストの回数に比例するだ
ろう。通常は、粒度の小さいデータアクセスは、あまり遠く離れていない
ところをアクセスする場合が多いと考えられるから、キャッシュ上でのや
り取りになることが多いことが予想される。したがって、シーク自体にか
かるコストは、さほど差が開かない。問題なのは、IOリクエストは、
一般的なOSにおいては、カーネルモードでの作業を大量に必要とし、
カーネルモード、ユーザーモード間の遷移は、軽い作業とは言えない
OSが多い。また、シークすることによる、データIOのスループット低下は
避け難い。

具体的な数値が出しにくいのは、OSがどういうキャッシュアルゴリズムを
使っているかが不明であること、システムに搭載されているメモリ量で
キャッシュに割かれるメモリ量が自動または、手動で変化するのが
一般的OSの実装であること、また(この影響は微小だと思われるが)
ディスク上のキャッシュによる効果が私には見積もれないこと、
などの理由による。

しかし、理解に苦しむのは、なんで数バイト単位のIOの話が出てくるん
だ?(俺が持ち出した話しだったっけ?)

普通のキャプチャソフトだってそんな小さな単位でのIOなんてしないし、
ましてや追っかけ再生をやってるようなソフトはもっと大きな単位での
ディスクIOをやってると思うぞ。

ちょっと凝ったつくりなら、再生側も、録画側も、数Mバイトから場合に
よっては数10Mバイトくらいを、シークせずに読み出せるようにバッファ
リングしてるはず。それくらいのIOバッファリングをしても仮想記憶に
よるスワップが起こらないくらいにはメモリ積んでるだろうからね。
これくらいの単位だと明示的なシークは数秒に一回程度まで減少するから、
シークのコストは限りなく0に近くなる。

さらにつけくわえると、これくらいの分量をバッファリングしている
とすれば、録画と再生の時差が数秒以下になると、さらに工夫の余地が
でてくる。録画用にエンコードされたメモリ上のイメージを直接参照し
て再生することが可能になるから、ディスクからの読み出しは不要になり、
ディスク負荷はさらに下げることができる。ただし、このディスクIO
最適化はちょっと考えただけでも相当複雑な制御が必要になりそう。

あまり凝ったつくりでない場合でも、数フレーム単位かGOP単位程度では
バッファリングしているだろう。その場合は、録画・再生の時差が少ないとき
の工夫はほとんどやる意味がなくなるから、やっていない可能性が濃厚になる。

いずれにしても、おまえが言ってたような途方もないシステムと比べると
ディスクIOは非常に軽い。したがって、実現可能な見込みは非常に高いと
いえるし、実際、実現できている。
0108まっけんろーNGNG
>やっぱ、わかってないよ。
お前がな。
>追っかけ再生をやってるのは、普通MPEG1とかMPEG2とかの圧縮ストリームを
>ディスクに書き込みつつ、読み出してデコードしてるだけだろ。
>>24
>だいいち、書き込みと平行して、読み出しをやるなら、どうやってシーケンシャル
>アクセスできるんだ?書き込みヘッドと読み出しヘッドがついてるのか?
>書き込みポイントと読み出しポイントは常に違う場所になるだろ?
ここがわからんお前には追いかけ再生なんて10年経っても無理かもな。

>しかも、普通圧縮はハードでやっているから、かなりCPUにもIOシステ
>ムにも余裕がある状態で動いてる。あんたのシステムと比べるとディ
>スクにかかる負荷がけた違いに少ないんだよ。
よく考えてみろよ。おまえの理屈だとデータ量が多かろうが少なかろうが
シークの時間がカバーできないと散々言ってきただろうが。
 お前の理屈だとストリームにしたところでシークの問題は何も解決してないだろ。

>エンコードもデコードも、どちらもソフトでやるとすれば、
>デコードのほうがCPU負荷が低いことは、明らかだよな。
分かっていってんのか論理をすりかえたいのか知らんがファイルの書き込み・読み込みの
問題にはこの場合、CPU負荷率は関係ないだろ。おまえあんだけ偉そうに能書きたれて
まだわかんねぇーの?

>話しがあちこち前後してしまうが、許してくれ。
俺はお前に指摘された間違いはもう正したぞ。後はお前が追いかけ再生の説明をして
自分の誤りなり、もしくは自分が正しいことを証明するだけだ。
0109まっけんろーNGNG
>まず一つ目は、ただでさえ常軌を逸したデータ流通量になることに
>加えて、キャプチャだけやっているときと比べるとシークが多発する。
多発ってどのくらいだよ?10回か?20回か?
俺の質問、
>数ByteのデータのHDDへの連続アクセスと数MBのデータのHDDへの連続アクセスと
>どっちがトータルのシーク時間がかかるのかと聞いてんだよ。
がまったく理解できてないいい証拠だな。

>まず、エンコードエンジンで使うメモリ量をあんたが言ってる方法で
>節約出来ることは万人が認めるだろう。間違っていない。
当たり前だ。誰でも当然やることだ。お前はメモリーをケチることを馬鹿にしてたけど
なんでころっと変わる?自分の馬鹿さ加減に気づいたか?
メモリーをケチれるところはケチる。(ケチるといってもMBのデータだけどな)
そして使うところにはじゃんじゃん使う。お前金の使い方が下手だろ?

>前の2つは1フレームずつのシークが必要になって実現するのは非常に難し
>くなる、というか無理だろう。
無理じゃない。まさしくここが追いかけ再生のところだろう。
だいたい、お前分かってんジャン。
>(フレーム単位のシークが必要)
フレーム単位でシークが発生するってことはそれほどシークが「多発」するってことか?

論点外しに必死になってんのか知らんがメモリーのことは簡単だぞ。
お前が書くとやたら難しそうに聞こえるが、

>・ディスクに書き込むときにメモリ上でシャッフルして書き込む
それが?何処が難しい?シャッフルというとすごく大変そうに聞こえるが
画でもストリームでも先頭ポインタをいじるだけだろ。
お前、表示順(BBIBBP)をストリーム順(IBBPBBP)にするのがそんなに大変なのか?
大変だな。お前みたいな使えないのを部下に持つと。

さぁ、追いかけ再生を説明しろよ。分からないなら分からないと言えよ。
問題はシーク時間をいかに隠蔽するかどうかの一点のみだ。
お前が述べてきたCPU負荷率・メモリーの使用方法とはまったく関係ない。
(メモリーは関係あるか。。)

偉そうに能書きをたれてきたんだ。答えられるだろうが?
それを答えれば終わりだ。俺はMPEGの話がしたいんだ!

・・て書いたらあんたまた書いてんのね。。。
じゃあ、また読んで答えるよ。。はぁ。疲れる。。。
0110>101 おまけNGNG
もっと簡単に一口で言ってしまえば、
>ただし、圧縮ストリームでは現実にそれと似たことをやってる。
などといってる時点でアウトだよ。この言いようだと、
圧縮ストリームでも、非圧縮でもたいして変わらない
っていいたいんだろ?

圧縮ストリームのIOと非圧縮ストリームのIOを同列にあげるって事は、
ハードディスクがどれくらいの速度で動いているかぜんぜん分かってない
証拠。

この業界の人ならTarga3000の概要くらいは知ってるだろ?
あれを知ってれば、こんな無茶な話しは持ち出さないか…
失礼した。

それから、誤字脱字、その他日本語が変なところが多々あるのは
許してね。大体、意味は通じそうだし。
0111>109NGNG
本と分からん人だね。

シャッフルして書き込むのは簡単さ。でもそれにはメモリがたくさんいるだろ?
総領が減らせない工夫が無意味だとは言えないけど、シャッフルせずに
普通に書き込んで、エンコードする時にもまとめてどかんと読み込んで、
計算する時にメモリ上で飛び飛びにアクセスするのとどれほどの違いがあるの?

まずはキャプチャできなきゃ意味がないんだから、データの入り口での
処理は極力短時間で済ませられる方法を考えるのが、普通だろ?
0112>109NGNG
> 多発ってどのくらいだよ?10回か?20回か?
不確定要素が多すぎるから、回数は計算できない。

キャプチャする時間と、エンコードにかかる時間、IOバッファリングを
どれくらいでやるか、エンコーダにどういう順序でデータを食わせるか
など多数の要素で決まる。

確実に言えるのは、キャプチャだけしてればいいシステムと比べると
間違いなく多くなるし、非圧縮データはそんなにたくさんのフレーム数を
メモリ上においておくことが出来ないから、必然的にIOバッファを
フラッシュする頻度はあがるから、そのタイミングでシークが必要。
しかも、普通のPCだと非圧縮ストリームを安定して書き込むバンドを
確保するのは容易でないことを考慮すると、キャプチャ中に
不用意にシークするとキャプチャを失敗する可能性が高く
なるってこと。
0113まっけんろーNGNG
>また、問題点をすり替えようとしているフシがあるが、シークすること自体が
>非現実的といっているわけではなく、
なるほど。伝わってなかったわけか。

俺がいった「途方もないシステム」についての問題点は3つ。
1.CPU負荷率がべらぼうに高い
2.データ量がべらぼうに大きい。
3.シークの問題をクリアーしないと読み書きなんて出来るはずがない。
だろ?
1のCPU負荷率の点は確かにそうだ。ただ、俺はchip setがDMAつかってやってくれるだろうから
CPU負荷率はあまり関係ないだろうと思っているからな。
まぁ、どっちにしろ、CPU負荷率の点は時間(1,2年後?)が解決してくれる。

2のデータ量については民生用はどうせ小さい画枠の4:2:0だろうから
ATA66, 100とかだと大丈夫だろうと漠然と思っていた。

まぁ、どっちにしろ、1,2とも「途方もないシステム」が現実的に面白くもなんともないってんで
おれは興味がなくなったわけ。単なる物量だしね。

で、最後の3番が気になっているわけ。これが俺がシークにこだわる理由。
シークの問題については実は最初から分かっていたがある理由があっていえなかっただけ。
まぁいいやと思ってたらVAIOのことを思い出してじゃぁ話しても言いやと思って
追いかけ再生の話を出したんだ。
 追いかけ再生のアルゴリズムを知っていれば俺が言った「途方もないシステム」は
1,2の問題だけになる。1, 2については言った通りできるか分からない。
ただ、これは単に物量の問題だからどうでもいい。
テクニカルな話題はシークだけ。

 「途方もないシステム」については謝ってんだろ!いいかげん、そこから離れろよ。
まったく粘着質だな!

>ちょっと凝ったつくりなら、再生側も、録画側も、数Mバイトから場合に
>よっては数10Mバイトくらいを、シークせずに読み出せるようにバッファ
>リングしてるはず。それくらいのIOバッファリングをしても仮想記憶に
>よるスワップが起こらないくらいにはメモリ積んでるだろうからね。
>これくらいの単位だと明示的なシークは数秒に一回程度まで減少するから、
>シークのコストは限りなく0に近くなる。
おいおい。ホンとかい?メモリーにため込んでまとめて書き出せばほんとに
シークは0近くになるの?いや、シークが少なくなるのは分かるし、
おれも散々そのことを言ってたんだが、
「数ByteのデータのHDDへの連続アクセスと数MBのデータのHDDへの連続アクセスと
 どっちがトータルのシーク時間がかかるのかと聞いてんだよ。 」
の答えはそれだからな。でも本当に0近くになるのか?

お前が書いたやり方だと正解の4割だな。
0114>109NGNG
>当たり前だ。誰でも当然やることだ。お前はメモリーをケチることを馬鹿にしてたけど
メモリをケチることを馬鹿にはしてない。
ただ、あんたの言ってる方法でケチったとして、システム全体での
使用量が押さえられるわけじゃないから、特筆するに価しないといっている。
0115まっけんろーNGNG
あー。もういい。つまらん。
お前もちょっとは問題点を整理して一つづつ片付けていこうとしろよ。。
「問題の切り分け」って言葉知ってる?
 もう、なんとでもいってっちょ。レスしないけどね。
MPEG2のことなら俺に聞け!
0116まっけんろーNGNG
ちなみに114まではしっかり読んだから。
土曜日なのに疲れた。。。。
0117>109NGNG
>1のCPU負荷率の点は確かにそうだ。ただ、俺はchip setがDMAつかってやってくれるだろうから
>CPU負荷率はあまり関係ないだろうと思っているからな。
エンコードはソフトでやるんじゃないの?
CPU負荷は、ディスクIOの負荷だけじゃないよ。

>まぁ、どっちにしろ、CPU負荷率の点は時間(1,2年後?)が解決してくれる。
そうだな。これには同意する。
2年もすれば、普通のPCである程度のクオリティーでリアルタイムソフト
エンコードしながらキャプチャできるようになるだろう。

ただし、2年もするとアナログキャプチャの必然性はぐぐっと下がるから、
あまりありがたくはなくなっているという可能性もある。
コンシューマー系も、業務系も、テープメディアからコンピューター
との親和性の高いランダムアクセスメディアに移っていくだろうから。
そうしたら、データのスタート地点がハードディスクの中なんて状況
が当たり前になるだろうからね。
0118っていうかさ、まっけんろーさんよNGNG
ふつー、無圧縮でキャプった画像をまず最初にメモリに溜めて、
適当にエンコード処理してから、HDDへエンコ済みのデータを
書込むんじゃないの?

数フレームの無圧縮データをなぜ遅いHDDへわざわざ待避するか、意図がわからん。
そんなの、メモリ上でやっちゃえばいいじゃん。

うちの無圧縮カード、ソフトウェアエンコしながらデータを書いても
そんなにHDDギコギコ逝ってないけど。シークばりばりなら一発でわかるし。
ってことはつまり、エンコ済みのデータを書いてるだけでしょ?
0119まっけんろーNGNG
>>118
君はあの匿名君じゃないよな?じゃあ答えよう。
過去スレ>>16を見れ。おれの間違いだ。
ってか、何も考えずに書いてこんな延々続く話になったんだ。。。
0120>113NGNG
> 「途方もないシステム」については謝ってんだろ!いいかげん、そこから離れろよ。
>まったく粘着質だな!
んじゃ、追っかけ再生からも離れなよ。
何度もいってるけど、俺がだめだといってるのは、
その「途方もないシステム」においてだけなんだから。
それ以外のイケテル状況を取り出したところで、
「途方もないシステム」がいけるようになるわけじゃないから、
話題をすり変えようとしてるといっただけ。

あと、ほんとに0近くになるかについては、
「データ転送にかかる時間との比率に対してほぼ無視できる程度」
という意味。

あと、いわゆるキャプチャシステムと、いらなくなったところから
データを捨ててもいい追っかけ再生システムでは性格がまったく違う
からやり方も違って当然。この点に関しては、考えが不足していることは
認める。
0121たまごNGNG
既に終わった話しかもしれないな。

> 2のデータ量については民生用はどうせ小さい画枠の4:2:0だろうから
> ATA66, 100とかだと大丈夫だろうと漠然と思っていた。
民生でも、D1サイズでキャプれるようになってないと売れないよ。
実際にD1サイズでキャプらないとは思うけどねん。
0122まっけんろーさん感謝NGNG
匿名氏です。

あれからちょっと考えて実験してみた。
4割の意味が分かった(とおもう)。

追っかけ再生の時は、データをどう捨てるのかがミソの一つ。
ここは、完全に頭から抜けてたな。

大幅に勘違いしてるかもしれないけど、DVでキャプチャしながら
追っかけデコードするのは旨くいってるわ。あとはオーバーレイに
書けばOKそう。

この件に関しては勉強になったよ。感謝感謝。
0123名無しさんって佑香NGNG
むずかしすぎて、ついていけない…
でも何回か読み返してみると、ためになりそうだね
0124>122NGNG
んが、うまくいったと思ったのに…
まだ、詰めが甘いところがあるか。
出直してくるよ。
0125>124NGNG
ほぼ完了。すこしまずい感じがあるが、大体動く。
しかし、やっぱこれは一般論としては成り立たない特殊ケースだな。
旨く書けばほとんどシークせずに済むアプリケーションだってだけの
話しじゃないか。何を意図して持ち出したのかさっぱり理解できない。
0126>125NGNG
さらにまずい点が…
ま、いいか。とりあえず、追っかけ再生の特殊事情をつかえば、
ディスクIOが旨く最適化できるって事が分かっただけでも収穫だったよ。
しかし、ここでもまっけんろーさんってば、大きなミスをしてるみたいね。
うまく最適化できる前提条件がなにか考えてみたことある?
113に書いてある3がうまく解決できるのは、この条件をクリアした
時だけだよ。ぷぷっ。

しかし、後に何も残らないってのはさっぱりしてていいねぇ。
取りあえず、終了。
0127まっけんろーNGNG
>>126
なんか一生懸命検証してるみたいだから最後に言っておくが、
君のやり方では、気づいてるようだけど、出来る条件がかなりシビアだよ。
 もっといい方法がある。
ある程度時間をロスしても大丈夫なシステムだ。
ある程度の時間ってのは前言った通り、教えられない。
これは理論的な計算と実施テストを繰り返して
「こんだけシークに失敗してXXXXmsecロスしてもOK」ってのを出してある。
結構シビアな制御をしても大丈夫なアルゴリズムだ。
じゃ。もう、この話題には触れないよ。
君がいくら挑発しようとね。
0128>127NGNG
もうでてこないらしいけど、一応書いてみる。

終了っていったけど、「君のやり方」ってのは気になるなぁ。
俺のやってる最適化のキモ部分にはまったく触れてないんだけど、なん
ていう揚げ足は、置いておいて。

理論計算とか、実施テスト以前に、このアプリケーションだからこその
大前提が必要だろ?しかも、その条件が満たされるアプリケーションは、
多分、追っかけ再生くらいだよ。確かに、追っかけ再生に関しては
うまく出来る確証が持てたけどね。

どうも、まっけんろーさんの考えてる「君のやり方」と、俺の実装は、
違うらしいな。
0129名無しさん@お腹いっぱい。NGNG
>>128
おれも人がいいから書いてみよう。
やり方は教えられない。
理由その一。教える気が無い。
理由その二。ノウハウに関係する部分なので教えられない。

ちなみに追いかけ再生に特化したシステムではないぞ。
VAIOでは出来るか知らんけど例えば2chのデコード、1chのエンコードが
できるシステムだ。つまり数ch分の制御が同時にできるってこと。
PCでどこまで出来るかは知らんけど、
1ch encode, 1ch decodeは出来るってことでしょ。

>俺の実装は、違うらしいな。
だから違うって。だれも同じとは言ってない。
0130>129NGNG
うーん。それはPC上での話じゃないんでしょ。

みんな動作環境は一般的なPCというのを前提にして議論しているんだから
ただただあのシステムではちゃんと動くんだぁといっても意味がないよ。
0131>129NGNG
自分の使ってるハードがPCじゃないんなら、それを言ってくれなきゃ。
普通のPCでキャプチャカード以外の特別なハードウェアを使わない前提で
考えてたから、ぜんぜん話がかみ合わないだけじゃないか。
0132名無しさん@お腹いっぱい。NGNG
>>130
いや、だからVAIOで出来てるって言ってんでしょうに。。
わざわざVAIOの例を出したのはなんのためだったんだ?
じゃあ、どうやってエンコードしつつデコードできるの?
ハードウェア・エンコード、デコードでやろうがHDDの問題は解決出来ないでしょ?
話が堂々巡りだな。
 もう、本当にいいや。ここまで。
0133名無しさん@お腹いっぱい。NGNG
ホント、これが最後。
エンコードしてストリームをHDDに書き込みつつ、
HDDからストリームを読みデコードできるシステム。
PCで実現していますね。どうやって書き込みと読み込みをリアルタイムに
実現してるんでしょうね?特別なハードを使う話?
この場合は違いますね。はい。おわり。
0134>132,133NGNG
だからわかってないって言ってるのよ。
ディスクに書き込む分量が少なきゃ、多少無駄なシークをしてても間に合うけど、
ディスクに書き込むだけでぎりぎりの動作をしてる状況で、無駄なシークが
入るのは致命傷だって言ってる。ただそれだけじゃないか。

バイオは、エンコードはハードでやってるから、(非圧縮で書き込むのと比べれば)
ハードディスクはひまにしてるわけ。そこで少々シークしたところで
大した問題は起こらない。何度もそういってるだろ?

MPEG2なら高々15Mbit per secくらいだろ?非圧縮だと20MBytes per sec
オーダーが違うんだよ。それを同じ土俵に乗せるなっつうの。
0135まっけんろーNGNG
だめだこりゃ。
一回のシークの失敗で10-30msecをロスし、
しかも書き込みと読み込みの動作をしていることをぜんぜん理解できてないな。
33msecの間にどうするんだろうね。この人。
データ量の多い少ないは確かに重要なファクターだけど、
33msecという時間と一回のシークのロス時間の割合がぜんぜん頭にないんだな。
こいつ、そんなことも分からずにえんえんとえらそーに能書きを垂れてたんか。。

他の人でなんかMPEG2について質問ないですか?
やさしく教えますよ。
0136>135NGNG
ここまで、いってもまだ理解できないとは…
何度も繰り返すけど、追っかけ再生のシステムが破綻するなんて今まで
一度もいってないだろ?

書き込みだけに専念してもぎりぎりになるケースだと、どんな手段を
使っても、読み出したりしてる暇なんてないだろ?で、おれが非現実的
だといってたのは、まさにそういうケースなんだよ。それ以外のケース
で非現実的だなんていった事はないじゃないか。

134の最後に挙げた例でディスクの平均転送レートが40Mbytes per sec
だったとしてみろ。MPEG2の書き込みだけならディスクは平均的に95%
の時間遊んでるだろ?読み書きしたって、90%は遊んでる。
その間は、シークしまくっててもデータ転送は間に合うよ。もちろん、OS
のオーバーヘッドなんかの細かい(けど確実に影響する)パラメータは
無視してるけど、大筋では違わないだろ?

さらに、何度も何度も繰り返していうけど、俺が非現実的だといった
「非圧縮でキャプチャーしながらエンコードする」ケースは、
20Mbytes per secの平均転送レートが確保できなきゃいけないんだよ。
ディスクが遊べる時間は、50%。

しかも、ディスクの速度を良く知ってる人は分かるはずだけど、CPUに
高負荷がかかるアプリケーションで40Mbytes per secが出せるディスク
システムはとっても高価になる。ふつうのPC環境では、せいぜい
20M bytes per secとか25M bytes per secがいいところなんだよ。
当然だけど、不要なシークの入らない書き込みだけとか、読み出しだけの
シーケンシャルアクセスでね。単純なベンチマークレベルなら、60Mと
か80M位出るシステムでのはなしだよ。
DMA転送だって、CPUがDMAを起動しなきゃ動かないんだし、普通は、
OSがいったんカーネルメモリ上に読み出して、その後ユーザーメモリに
コピーするから、そのあたりのコストはきっちりかかるしね。
ディスクIOがからむとカーネルモードとユーザーモードの遷移が
何度も起こるのが普通だし、遷移には割と大きなコストがかかる。
そういうの状態で実測値で20Mってのはかなりいい成績だよ。

だったら、ディスクは途切れなくキャプチャするためにフル稼動しなきゃ
いけない。だから、それ以上のことをやってる暇がないから、
このケースに関しては、非現実的だといってるだけだ。
何度いったら分かるんだ?それ以外のケースまで含めて非現実的なんて
いったことはないだろ?

だから、何度も言うように、すべてのケースで非現実的なんていった覚えは
なし、追っかけ再生のケースだけに限った話しなら、俺の考えている
IO最適化で、いまのPCで破綻しない程度のIO性能が出せるのも確かめた。

いったい何が気に入らないんだ?
0137>136NGNG
揚げ足を取られないように補足しとくと、

NTならアンバッファードIOを使えば、カーネルメモリを経由せず、
ユーザーメモリにDMAできる。

それと、ページング単位になるけど書き込み時に複製をとるページへの
ロードはユーザーメモリへのコピーが不用になる可能性がある。OSの
仮想記憶のインプリメント次第で変わる。NTはどうだか知らない。
0138>138NGNG
あ、いまおもったんだけど、あんた大きな勘違いをしてないか?

おれが、毎フレームシークさせようと思ってる って思ってる?
(変な日本語だ)
それなら、勘違いもいいところ。
すくなくとも今実証用に書いてみたコードだと、追っかけ再生という
アプリケーションに限っていえば、再生用のデータを読み出すために
明示的にシークする必要はまったくない。普通にOSをつかってディス
クアクセスしてるから、暗黙のうちにヘッドが移動することはあるけど、
ほとんどの場合は、隣のトラックだしね。

ちなみに、再生してる間は、書き込みのためにほんの少しだけシークして
る。今のインプリだと、追いかけてる時差に対して一回だし、もう少し
手間をかければ、追いかけてる時差の数倍の時間に対して一回にする
ことも可能。

10秒差で追いかけ再生するなら、10秒に一回は大きなシークが入って
時間のロスをするけど、十分に先読みできるから再生が途切れることは
ないよ。

ってわけで、こういう最適化が出来ればほとんどシーケンシャルに
アクセスして、シークせずに書き込みと読み出しが出来るのは理解できた。
その点に関しては、勉強になったと思ってるし、あんたに感謝してるよ。

あんたが想定している最適化とアプローチは違うかもしれないけど、
DVくらいのデータレート(知ってると思うけど、25M bits per sec)
なら十分に通用するし、MPEGとかだと、もっと楽になる。
0139>137NGNG
あ、いまおもったんだけど、あんた大きな勘違いをしてないか?

おれが、毎フレームシークさせようと思ってる って思ってる?
(変な日本語だ)
それなら、勘違いもいいところ。
すくなくとも今実証用に書いてみたコードだと、追っかけ再生という
アプリケーションに限っていえば、再生用のデータを読み出すために
明示的にシークする必要はまったくない。普通にOSをつかってディス
クアクセスしてるから、暗黙のうちにヘッドが移動することはあるけど、
ほとんどの場合は、隣のトラックだしね。

ちなみに、再生してる間は、書き込みのためにほんの少しだけシークして
る。今のインプリだと、追いかけてる時差に対して一回だし、もう少し
手間をかければ、追いかけてる時差の数倍の時間に対して一回にする
ことも可能。

10秒差で追いかけ再生するなら、10秒に一回は大きなシークが入って
時間のロスをするけど、十分に先読みできるから再生が途切れることは
ないよ。

ってわけで、こういう最適化が出来ればほとんどシーケンシャルに
アクセスして、シークせずに書き込みと読み出しが出来るのは理解できた。
その点に関しては、勉強になったと思ってるし、あんたに感謝してるよ。

あんたが想定している最適化とアプローチは違うかもしれないけど、
DVくらいのデータレート(知ってると思うけど、25M bits per sec)
なら十分に通用するし、MPEGとかだと、もっと楽になる。
0140>139NGNG
失礼、2回「書き込む」ボタンを押してしまった。
0141>140NGNG
って言うか、レス先間違ったのに気付いて慌てて直したんだよな(藁
0142ぼくにもわかったことNGNG
えむぺぐ2をぱそこんであつかうのはたいへんなのですね。
だから、ぼおどはたかくなるのですね。
0143>141NGNG
そうそう。
IE的には、キャンセルできてたんだけど直して慌てて送ったら、
2つアップされてたのよ。
0144まっけんろーNGNG
>>142
そだね。DVとかは1frame完結だから楽なんだけど
GOP構造をもつMPEGは大変だよ。
でもGOP構造のおかげですごくサイズが小さくなるんだからしょうがないね。
0145まっけんろーNGNG
>おれが、毎フレームシークさせようと思ってる って思ってる?
>>134 を読んだらそうさせても大丈夫だと思っているように読めるけどね。
君、ちょっとは論理的に書いてよ。。ホント、説明が下手だね。

>ってわけで、こういう最適化が出来ればほとんどシーケンシャルに
>アクセスして、シークせずに書き込みと読み出しが出来るのは理解できた。
>その点に関しては、勉強になったと思ってるし、あんたに感謝してるよ。
じゃあ、一件落着じゃん。

>いったい何が気に入らないんだ?
君が「出来た」とは言わず、あーだこーだぐだぐだ言ってるからじゃん。
てっきりまだ出来てないって思ってたんだよ。。。

じゃあ、この話はこれで完結ね?出来るって分かったんでしょ?
ってことで
--------------この話題は無事終了--------------------------------
0146名無しさん@お腹いっぱい。NGNG
ここで長いレスしている人はみんなTARGA+editとD1持っていそうだな。
つか、edit高けえよ!
まっけんろーさん、そのシステムについてお伺いしたいことがあります。
一つは、プレイバックしている時間は瞬時に変えられるのか。
もう一つは、売る気があるのか。
以上です。
回答を御願いします。
0147名無しさん@お腹いっぱい。NGNG
どーでもいいけど
Adobe Premiere6はすごい使い易い。
VegasVideoなみ。
0148キャプチャ厨房NGNG
まっけんろーさんと、匿名さんで、充分議論して
安くて良いボードとドライバ作ってくれ。
0149ギ印NGNG
ウチも乗りたい!
0150名無しさん@お腹いっぱい。NGNG
まっけんろー氏に、符号化以外のこと聞いちゃダメだよ。
PCアーキテクチャ上のエンコードシステムに関する話なら、
匿名氏のほうがよくわかってるね。
0151>150NGNG
自作自演(pu
0152150NGNG
ん? オレ、匿名氏じゃないよ。
つかさ、自作自演ってバレるから、ふつーやらんと思うけど。
削除屋さんには IP見えるんでしょ?
0153名無しさん@お腹いっぱい。NGNG
sage
0154名無しさん@お腹いっぱい。NGNG
レベルの高い話をしてるところですんません。
m2v形式のファイルがWMP7で再生できません。
というか再生は出来るんですけど、画像が出ないで音だけ聞こえます。
どうしたらいいんでしょうか?
0155>152, 145NGNG
暫く見てないうちに、自作自演疑惑まででてるし…
えと、IPを見ることができたとして個人の同一性や非同一性を示す根拠にはら
ないよ。しかも、ここではだれでもはIPを見ることは出来ないから、なおさら
だよね。>152さん
というのはおいておいて、、、

> 君が「出来た」とは言わず、あーだこーだぐだぐだ言ってるからじゃん。
> てっきりまだ出来てないって思ってたんだよ。。。
追っかけ再生は出来たよ。追っかけ再生はね。

うまく最適化できるケースもある ことを示したかった というなら納得だ。し
かし、キャプチャとエンコードをオーバーラップさせるケースでもうまく最適
化出来るようになる という話しならまったく別問題。

後者なら、追っかけ再生と、最初に出来ないっていってたケースが「本質的に
同じ問題に帰着できる」もしくは、「同じ手法で同じような効率で最適化でき
る」ことをまっけんろーさんが示さねばならない。

でも、実装してみて良く分かったのは、うまく最適化できるのは、ある特定の
条件を満たしている必要があるって事。その条件は、問題の定義(もしくは、
要求仕様)のみによって満たせるか満たせいないかが決まる。 その条件は、
まっけんろーさんのほうが良く知ってるはずだね。なんせ半年も携わってたん
でしょ?

ディスクとメモリを無駄使いしてもいいなら同じ効率で実装できるけど、長モ
ノに絶えられなくなるからね。逆に、無駄遣いしても破綻しない範囲をサポー
ト範囲にしてしまうって手もあるか。
0156>154NGNG
多分君じゃ無理。
勿論俺も無理。
0157名無しさん@お腹いっぱい。NGNG
主旨はよかっただけになんか寂しい
やっぱ文字だときついもんね、印象が
だれかここめでの業績をおまとめください
そしてさよな・・・
0158傍から見ててNGNG
いちおうプログラマやってます。でも、完全に専門外です。

で、普通に考えてね、まっけんろー氏&噛み付いている人が
普通に「こうしたら良いですよ」とか、「これでどうかなぁ」
という会話になっていればお互いに意味があるというか効率が良いと思うのですが。
確かに自尊心を大事にしたいのは分かりますけど、喧嘩しながらだと非生産的です。

HDDやらメモリの速さは気になるのに、自分の知識の吸収の早さは
気にならないのかなぁ。
0159>158NGNG
ここで、知識を吸収しようとは思ってないって事なのでは?
0160名無しさん@お腹いっぱい。NGNG
編集できますか?藁
0161150NGNG
> 暫く見てないうちに、自作自演疑惑まででてるし…
> えと、IPを見ることができたとして個人の同一性や非同一性を示す根拠にはら
> ないよ。しかも、ここではだれでもはIPを見ることは出来ないから、なおさら
> だよね。>152さん

だからさー、同時に、自作自演の根拠もないわけでしょ、オレに言うなって(^^;
0162迷っちゃうのNGNG
予算3万5千円くらいでハードウェアエンコードタイプだと
結局どれがお勧めなんでしょうか?
0163名無しさん@お腹いっぱい。NGNG
面白いから上げ
0164権瞑NGNG
わたしのノートpcはk6−2の450Mhzでメモリは64MBですが、DVDソフト再生をコマ落ちなしに再生する為にいい対処方法はありますか?また、今発売されているソフトで一番軽く動くソフトは?それと、今現在でDVD並みの画像を見る場合どのフォーマットが最適ですか?
0165権瞑NGNG
わたしのノートpcはk6−2の450Mhzでメモリは64MBですが、DVDソフト再生をコマ落ちなしに再生する為にいい対処方法はありますか?また、今発売されているソフトで一番軽く動くソフトは?それと、今現在でDVD並みの画像を見る場合どのフォーマットが最適ですか?
0166名無しさん@お腹いっぱい。NGNG
DVDを見たいなら、素直にプレイヤー買った方が良いって。
DVD並のキャプチャをして再生をするならK6-2の450Mhzじゃツライ。
0167にわとりNGNG
突然で大変申し訳ありません。
私の使っているマザーボードのチップセットがVIAのチップセットなのですが、
お友達の話だと「このVIAを使ってキャプチャーに成功したという
話を聞いたことがない」
というお話を聞いてしまいました。
やはりそうなのでしょうか?
どうかご意見、ご指導お願いいたします。
0168ご冗談でしょう?名無しさんNGNG
エンコーダーのソフト完全な形でありませんか
FLASK MPEGとか使うとコンパイルするとエラーがたくさん出るし
ソースと実行形式が完全なかたちでなっているのはないのかな
(自分でエラーを取り除かなければならないのかな)
お願い教えてください
みなさん


0169名無しさん@お腹いっぱい。NGNG
>>168
ちょっとエラーが出ますが、適当に直せばコンパイルできますよ。
0170ご冗談でしょう?名無しさんNGNG
でも FLASK MPEGの場合
なんか ヘッダが足りないみたいなんですけど
なんでヘッダがないの?
いろんなサイト見たけど完全な形はなぜないの?
MP3はあるのに
0171名無しさん@お腹いっぱい。NGNG
バイナリが有れば充分だろ・・・。
ソースコードが無ければ困る事でも有るのか?
0172ご冗談でしょう?名無しさんNGNG
使うよりむしろ仕組みにきょうみがあるのでね
(MPEG2を勉強したいから)
ああ MPEG以上にVCそしてwin32の勉強か
覚えるのが多過ぎる 助けてくれ!
0173名無しさん@お腹いっぱい。NGNG
アホなスレ立てるな。
http://www.mpeg.org/MPEG/MSSG/
↑これのソースでも読め。
0174名無しさん@お腹いっぱい。NGNG
ま、コンパイルエラーでヘッダがないんじゃないかと思うところから
ソース読んでmpeg2を理解するところまではだいぶ時間かかりますからね。
がんばってください。
VC++とWin32は、慣れればプログラマには理想的な環境ですから。

とりあえず、FlasKはソースのアーカイブだけでコンパイルできますよ。
0175ご冗談でしょう?名無しさんNGNG
<<FlasKはソースのアーカイブだけでコンパイルできますよ
できない そのままでは無理みたい
ソースから解析できる人よほど力のあるひとだ
コメントもないしね
0176名無しさん@お腹いっぱい。NGNG
>ご冗談でしょう?名無しさん
プログラム板で聞いたほうが良いかも。
0177ご冗談でしょう?名無しさんNGNG
まあ 次はMPEG4になるのだろうけど
作るつもりある
マッケンローさん それとリアルタイムOS使ってデジタルビデオを
つくるつもりある 
0178名無しさん@お腹いっぱい。NGNG
↑????????????
0179名無しさん@お腹いっぱい。NGNG
パケットサイズって何?
0180名無しさん@お腹いっぱい。NGNG
macでm2vを直接再生したいんですが、
やっぱりどんなに物を知ってる人でもむりなんすかね。
0181名無しさん@お腹いっぱい。NGNG
TmpegEncで作ったM2PがWMP&POWERDVDで再生出ません!
なぜ?なぜ?ドシテ?
0182名無しさん@お腹いっぱい。NGNG
EZDV IIで編集後のDVをMPEG2エレメンタリ出力すると、
WAVとM2Vで再生時間が違う・・・

なんでですかぁ〜〜?
0183182NGNG
CCEでも試しましたが、やっぱりWAVとMPVで時間が違います。
WinDVDおよびCinePlayerのDirectShowフィルタ使用。

ところが、ULEADのMediaStudioPro添付のMPEG2デコーダーだと、
ちゃんと時間一緒です。

・・・うーむ。
0184名無しさんの初恋NGNG
TMPGEncのMpeg2機能が1ヶ月制限で使えなくなって困ってる。
解除方法誰か知りません??
0185名無しさん@お腹いっぱい。NGNG
>>184

b12eが出たばっかりだぜ?
0186非通知さんNGNG
http://www.geocities.com/EnchantedForest/Cottage/1845/images/erika_bom001.jpg
http://www.geocities.com/EnchantedForest/Cottage/1845/images/erika_ts007.jpg
http://www.geocities.com/EnchantedForest/Cottage/1845/images/erika_phsp04.jpg
http://www.fortunecity.com/lavender/chelmsford/933/photo/eri12.jpg
■ このスレッドは過去ログ倉庫に格納されています