⧅ffmpeg 全てのエンコード(ファイル生成)・デコード(ファイル読み込み)可能なファイル形式 新しいページはコチラ
提供: yonewiki
(→字幕形式) |
(→概要) |
||
1行: | 1行: | ||
+ | [[⧅ffmpeg]]に戻る | ||
== '''概要''' == | == '''概要''' == | ||
もの凄い数のファイル形式が生成できたり、読み取りできたりするffmpeg。どうなってんの?そんなに全てのファイルを網羅したプログラミングって出来るもんなの?凄すぎるっていうリストです。画像と音声と動画ファイルがエンコード・デコード出来ます。 | もの凄い数のファイル形式が生成できたり、読み取りできたりするffmpeg。どうなってんの?そんなに全てのファイルを網羅したプログラミングって出来るもんなの?凄すぎるっていうリストです。画像と音声と動画ファイルがエンコード・デコード出来ます。 | ||
− | ひとつ、豆知識なんですけど、デコード(読み込み)したら編集しやすい可逆ロスレス(情報の欠落が起こらない非圧縮) | + | ひとつ、豆知識なんですけど、デコード(読み込み)したら編集しやすい可逆ロスレス(情報の欠落が起こらない非圧縮)形式に変換されます。例えばjpgならbitmapに変換されてメモリやハードディスクに展開されます。この展開された情報に対して編集をします。圧縮されたまま編集することは、ほとんど無いです。1秒間に何枚かある絵が一枚づつがビットマップやYCbCrあるいはYPbPr形式に展開されます。すくなくとも編集する部分に関しては圧縮を解除するデコードされた状態になっています。YCbCrの色域をの絶対値が0.5以内になるものとして表現した場合はYUVという色域表現と一致します。近年ではYUVは動画における色域表現全般のことを意味しています。YCbCrとYPbPrという表現がが含まれる感じです。定数x(青or赤-輝度)みたいな表現です。 |
− | + | 音声ファイルなら波形ファイルそのものであるwavファイルのような形式に。動画の場合は音声ファイルと動画ファイルがそれぞれの圧縮形式でコンテナと呼ばれる箱のようなものにまとめる規格に収めて使います。なので、コンテナを解釈して、音声ファイルをwavファイルのようなものにし、動画は映像表示のハードウェアが理解できる形式に変換された状態になります。コンテナでは、音声と動画でデータの時間軸において、可変圧縮率が適用されていることで、データ量だけで時間を制御できないためズレが生じないような仕組みがあったりします。同期処理それは、ファイルを解釈する側に工夫が求められる。そこまでややこしくしてでも圧縮する動画情報処理。凄いことなんだけど、迷走しまくってきました。今後も混沌とした動画ファイル形式が渦を巻いていく事だと思います。 | |
− | + | ffmpegのファイル形式を見ると、どれだけの人が圧縮のメカニズムを考えてきたか?そして、私の考えた圧縮・展開の方法が世界一だから標準であるべきだ!いや、標準じゃなくても私の考えたやつの方がすげぇからな!いや、そんなにソフトウェア著作権とか言うなら自分で作るわ!と争ってきたのだと思います。その結果がコレです。OSが乱立するのと同じだと思えばよいです。すべては自由競争なのです。複雑化していくのは仕方のないことです。いろんな味の料理屋さんがあるのと同じです。一番、オーソドックスな味はコレっていう感じのを決めているだけ、情報処理技術の機関は取り仕切っているなと思う。 | |
+ | |||
+ | 動画、字幕、音声、どんな形式だろうとなんでも入れていい箱やらそうじゃない箱があります。使ってやろうと思う形式における仕組みは深く勉強し、散在するファイル形式に対応する必要もある場合はあるので、身の回りにありそうな動画形式については、勉強し続けるしかないよね。理解度はそれぞれのファイル景色に合わせて、深くても浅くてもいい。バランスが必要だね。 | ||
==='''画像形式'''=== | ==='''画像形式'''=== | ||
+ | E列の○はエンコードが出来る事、D列の○はデコードが出来ることを意味しています。 | ||
<syntaxhighlight2 lang="text"> | <syntaxhighlight2 lang="text"> | ||
E_D_Name#Description | E_D_Name#Description | ||
− | 〇_〇_.Y.U.Vone raw file per component | + | 〇_〇_.Y.U.Vone raw file per component % 不明の画像形式 |
− | 〇_〇_Alias PIX#Alias/Wavefront PIX image format | + | 〇_〇_Alias PIX#Alias/Wavefront PIX image format %エイリアスPIXエイリアス/ウェーブフロントRLE画像形式 (ImageMagic、Deark、Xnviweで対応)Autodeskに[https://www.autodesk.com/techpubs/aliasstudio/2010/index.html?url=WS73099cc142f4875535a241551166ac8792f-7d76.htm,topicNumber=d0e246178 ファイル仕様]があります。 |
− | 〇_〇_animated | + | 〇_〇_animated GIF#アニメーションGIF |
− | + | 〇_〇_APNG#アニメーションPNG | |
− | 〇_〇_BMP#Microsoft | + | 〇_〇_BMP#Microsoft ビットマップ画像形式 |
− | _〇_BRender | + | _〇_BRender PIX#3D編集アプリArgonaut BRender 3D の画像処理形式. |
− | 〇_〇_DPX#Digital Picture Exchange | + | 〇_〇_DPX#Digital Picture Exchange % デジタル・フィルム作業のための画像 ファイルフォーマット。ANSIおよびSMPTE標準 |
− | _〇_EXR#OpenEXR | + | _〇_EXR#OpenEXR % VFXとアニメーション、両方のCG業界で非常に幅広く使用されている。HDR処理に強い形式でインダストリアル・ライト&マジック社:アメリカの特殊効果とVFXを制作する会社 によって作成され、オープン標準になっている。 |
− | 〇_〇_FITS#Flexible Image Transport System | + | 〇_〇_FITS#Flexible Image Transport System % オープン標準形式 天文学の分野で活用されている。天体座標情報が埋め込まれた形式 一般にも取得できる画像です。 |
− | 〇_〇_JPEG#Progressive JPEG is not supported. | + | 〇_〇_JPEG#Progressive JPEG is not supported.プログレッシブは対応してないそうな。なんでだろ。これだけ多岐にわたる対応をしているのに |
− | 〇_〇_JPEG 2000# | + | 〇_〇_JPEG 2000# 幻になりかけたJPEG 2000 より圧縮性能が高いものになっている。 |
− | 〇_〇_JPEG- | + | 〇_〇_JPEG-LS#LJPEGと同じく可逆性圧縮(ロスレス)のJPEGです。ロスレスとは情報が切り落とされないという事です。 |
− | 〇_ _LJPEG#Lossless JPEG | + | 〇_ _LJPEG#Lossless JPEG % JPEG-LSと同じです。方式が異なります。JPEG-LSの方が改良されたものとなっています。 |
− | 〇_〇_PAM#PAM is a PNM extension with alpha support. | + | 〇_〇_PAM#PAM is a PNM extension with alpha support. %簡素な2次元ラスター画像形式PNMの透明処理Alpha対応をしたもの。 |
− | 〇_〇_PBM#Portable BitMap image | + | 〇_〇_PBM#Portable BitMap image%簡素な白黒二値の2次元ラスター画像形式 |
〇_〇_PCX#PC Paintbrush | 〇_〇_PCX#PC Paintbrush | ||
〇_〇_PGM#Portable GrayMap image | 〇_〇_PGM#Portable GrayMap image | ||
33行: | 37行: | ||
_〇_PGX#PGX file decoder | _〇_PGX#PGX file decoder | ||
_〇_PIC#Pictor/PC Paint | _〇_PIC#Pictor/PC Paint | ||
− | + | 〇_〇_PNG#GIFの方式を拡張したGIFより多い色見本方式の画像。 | |
− | 〇_〇_PPM#Portable PixelMap image | + | 〇_〇_PPM#Portable PixelMap image%PNMのRGB対応形式 |
− | _〇_PSD#Photoshop | + | _〇_PSD#Photoshop % Adobe社が作った画像編集アプリの画像保存形式 |
− | _〇_PTX#V.Flash PTX format | + | _〇_PTX#V.Flash PTX format % ペンタックス社のカメラ撮影画像のRAWデータ形式 |
− | 〇_〇_SGI#SGI RGB image format | + | 〇_〇_SGI#SGI RGB image format %シリコングラフィックスインターナショナル社(現ヒューレットパッカード:HP社)がワークステーション用に取り決めた規格の画像形式 |
− | 〇_〇_Sun Rasterfile#Sun RAS image format | + | 〇_〇_Sun Rasterfile#Sun RAS image format % サンマイクロシステムズ社が取り決めたSUNラスター(RAS)は、Sun UNIXプラットホームへの形式 |
− | 〇_〇_TIFF#YUV, JPEG and some extension is not supported yet. | + | 〇_〇_TIFF#YUV, JPEG and some extension is not supported yet. % ビットマップ画像の符号化形式の一種。タグと呼ばれる識別子を使った符号化が特徴 |
− | 〇_〇_Truevision Targa#Targa (.TGA) image format | + | 〇_〇_Truevision Targa#Targa (.TGA) image format トゥルービジョン社が取り決めた、アニメーション業界でよく使われる可逆性の画像形式 |
− | E_〇_WebP#WebP image format, encoding supported through external library libwebp | + | E_〇_WebP#WebP image format, encoding supported through external library libwebp % 米Googleが開発しているオープンな静止画像フォーマットPNGを置き換えることを狙う規格。動画にはMebMという規格がある。MebMの1フレーム版がWebPウェッピー |
− | 〇_〇_XBM#X BitMap image format | + | 〇_〇_XBM#X BitMap image format % X Window SystemのGUIにおいてカーソルやアイコンに使用するビットマップ画像 |
− | 〇_〇_XFace#X-Face image format | + | 〇_〇_XFace#X-Face image format % X-Faceは通常は48×48ピクセル、モノクロ二値の小さな画像。メールアイコンとしての役割を担う技術。限られた制限の中での超絶技巧を楽しむことが一部でエモいことになっていた。 |
− | _〇_XPM#X PixMap image format | + | _〇_XPM#X PixMap image format % フランスのソフィア・アンティポリスのブル・リサーチ・センターで働いていた人が作成したXウィンドウ・システムで使用される画像ファイル形式で主にアイコンを作成に利用された。 |
− | 〇_〇_XWD#X Window Dump image format | + | 〇_〇_XWD#X Window Dump image format % X Windowシステムで最小限の構成でスクリーンショットを取ることを目的として作られた画像形式 |
</syntaxhighlight2> | </syntaxhighlight2> | ||
==='''オーディオ形式'''=== | ==='''オーディオ形式'''=== | ||
+ | E列の○はエンコードが出来る事、D列の○はデコードが出来ることを意味しています。特殊記号が付与されている場合はDescriptionで補足事項のとおりの動作になります。 | ||
<syntaxhighlight2 lang="text"> | <syntaxhighlight2 lang="text"> | ||
+ | E_D_Name#Description | ||
_〇_8SVX exponential# | _〇_8SVX exponential# | ||
_〇_8SVX fibonacci# | _〇_8SVX fibonacci# | ||
228行: | 234行: | ||
==='''ビデオ形式'''=== | ==='''ビデオ形式'''=== | ||
+ | E列の○はエンコードが出来る事、D列の○はデコードが出来ることを意味しています。 | ||
<syntaxhighlight2 lang="text"> | <syntaxhighlight2 lang="text"> | ||
+ | E_D_Name#Description | ||
_〇_4X MovieUsed in certain computer games. | _〇_4X MovieUsed in certain computer games. | ||
_〇_8088flex TMV# | _〇_8088flex TMV# | ||
494行: | 502行: | ||
ZMQ E | ZMQ E | ||
</syntaxhighlight2> | </syntaxhighlight2> | ||
+ | |||
+ | |||
+ | |||
+ | ==='''入出力デバイス'''=== | ||
+ | Iは入力、Oは出力 | ||
+ | <syntaxhighlight2 lang="text"> | ||
+ | I_O_Name | ||
+ | 〇_〇_ALSA | ||
+ | 〇_ _BKTR | ||
+ | _〇_caca | ||
+ | 〇_ _DV1394 | ||
+ | 〇_ _Lavfi virtual device | ||
+ | 〇_〇_Linux framebuffer | ||
+ | 〇_ _JACK | ||
+ | 〇_ _LIBCDIO | ||
+ | 〇_ _LIBDC1394 | ||
+ | 〇_ _OpenAL | ||
+ | _〇_OpenGL | ||
+ | 〇_〇_OSS | ||
+ | 〇_〇_PulseAudio | ||
+ | _〇_SDL | ||
+ | 〇_〇_Video4Linux2 | ||
+ | 〇_ _VfW capture | ||
+ | 〇_ _X11 grabbing | ||
+ | 〇_ _Win32 grabbing | ||
+ | </syntaxhighlight2> | ||
+ | |||
+ | |||
+ | |||
+ | ==='''読み書きできるTimecode'''=== | ||
+ | タイムコードを編集するには、以下の形式でないと出来ないということです。タイムコードはフレームレートの扱いを決める方式があります。小数点付きの放送局でよく使われていたような一般的な動画のフレームレートの場合、中途半端になるので、タイムコードが正確に合わせることが出来ません。24.9fpsのような中途半端なフレームでは、フレームと時間の突合せをしようとしても、24.9の10倍の249フレーム毎にしかタイムレコードが付けられず10秒ごとにしか整数の時間が表示できません。このような問題に対応するため、ドロップ(中途半端)になる24フレーム目の映像の後の0.9fps分を欠落さける手法があります。以下の拡張子ではTimeCode情報を書き込むを画像に表示させることを書き込むことが出来るということです。タイムコードを読み込む。指定の時間の動画を読み込むという感じです。 | ||
+ | <syntaxhighlight2 lang="text"> | ||
+ | AVI | ||
+ | DV | ||
+ | GXF | ||
+ | MOV | ||
+ | MPEG1/2 | ||
+ | MXF | ||
+ | </syntaxhighlight2> | ||
+ | |||
+ | |||
==='''ファイル形式'''=== | ==='''ファイル形式'''=== | ||
752行: | 801行: | ||
_〇_Psygnosis YOP# | _〇_Psygnosis YOP# | ||
</syntaxhighlight2> | </syntaxhighlight2> | ||
+ | |||
+ | |||
+ | |||
+ | [[⧅ffmpeg]]に戻る |