akJ BetasとFFMpegとの相性やakJ Betas側の不具合
ここでは、akJBetasと最新版のFFMpegとの相性について情報交換したいと思います。
現在ですと最新版は、あべちんさんの所の
お気に入りの動画を携帯で見よう
所から入手することになると思いますが
また最新版のFFMpegですが、バージョンではなく、レビジョンで表示されているように単に新しいだけです。
つまり、タイミングによっては、うまく動かないことが多々あります。
またFFMpegの場合、FFMpegのレビジョンだけではなく、他 x264(しょっちゅう、普通では動かない状態でリリース)などのライブラリーのリビジョンの影響も受けます
推奨
まずは、FFMpeg rev.13283 をお試しください。
akJとFFMpeg rev.14913
akJとFFMpeg rev.14913および、rev.14941では、
PSP変換やH.264を使った変換が、動作しません。
PSP変換では、高画質設定でない場合ffmpeg.exeが停止します。
ドロップFFMpegでは映像がh.264の場合
詳細設定1のrc_eqがblurCplx^(1-qComp)または、"blurCplx^(1-qComp)"でない場合は停止します。
不都合がある場合は、rev.14748 または、rev.12939をお使いください。
ただし、rev.14748はakJ Betasの0.6.9.5.3、以降でないと動きません。
akJとFFMpeg rev.15006
akJ BetasとFFMpeg rev.15006
とですと、同じく rc_eqがblurCplx^(1-qComp)がないとクラッシュすることがあります。
akJ Betasの0.6.9.5.4以降ですと、このエラーは出にくいので、必要であればバージョンを上げてください。
ただし、今のところこの辺りのレビジョンまで上げなくても、ほとんどの変換はうまくいくと思います。
akJとh.264での2パス
はじめに、0.6.9.5.3のニコニコ500k/96kにrev.13283以降で変換するとかなり高い確率で2パス目で固まります。
回避策は、詳細1のmaxrateを600kにしてください。同じくqmaxを51にしてください。これは次のバージョンで修正します。
原因は、映像と音声を足した合計がmaxrateに指定している500kを超えているためでした。
またこれはすべてのバージョンに共通ですが、akJでのh.264/avc(mp4)変換の2パスログは、akJBetas.exeと同じ階層にx264_2pass.logというのが作られます。つまり、同時に2つの2パスエンコード処理は不具合が起こります。
(これはlibx264が -passlogfileを無視するのが原因だと思います)
akJとrev.13712と13283
akJ Betaでは現在 FFMpeg rev.13712とrev.13283が正常に動作しません。
これは、コーデック名をうまくとれていません。
ただ、ドロップFFMpegでは手動で、コーデック名を正しくlibx264など指定すると動きます。
akJ 0.6.9.2FLVエクスプロラー
MP3へ変換しようとすると、
Unknown encoder 'mp3'
と出ます。
ドロップFFMpeg の設定MP3 または、 ドロップMP3変換で変換してください。
この不具合は次の0.6.10で修復されます。
akJとrev .15340
-me オプションと -flagsのtrellが無効になりました。
0.6.10未満では、unrecognized option '-me'と出ます。
以前の未満のバージョンでの回避策は以下をどうぞ
http://akj.lib.net/node/3188#comment-3916
この問題は、0.6.10で修復されます。
MPEG変換とrev.15340以降
ドロップ MPEG2変換で、2パス設定をすると以下のようなエラーが出ます。
15340未満をお使いください。
Unable to parse option value "trell": undefined constant or missing (
ffmpeg_bin-15611\ffmpeg.exe: unrecognized option '-flags'
akJとrev .15413
上記、15340と同じです。
FFMpeg rev.15151からは、Blu-rayでも使われている
eac3 - Dolby Digital Plus
Googleの援助で運用されているGoogle of Summer Code 2007の成果物
が扱えるようになったので(品質は未テスト)
使用される方もおられると思います。
akJとrev.15533
このリビジョンあたりから、-brdoと-flags2のbrdoが消えたので
バージョン 0.6.10以下ですと、このエラーが出ます。
unrecognized option '-flags2'
unrecognized option '-brdo'
ドロップFFMpegの場合は、詳細設定1のbrdoの所を空にして、詳細設定2のflags2にbrdoがあればチェックを外してください。
PSP変換の場合は、PSP設定の高画質モードコマンドの所から、-brdo 1 を消してください。
それでエラーは消えます。
品質を前と同じにするには、
変わりとして、-subq を 6から7に上げるといいらしいです。
http://git.videolan.org/gitweb.cgi?p=x264.git;a=commit;h=c89bc900a3bf0d4c4c728ad378703970b4f14e18
によると(subme == subq)
-subq 7 は -subq 6 + brdo
-subq 8 は 前の-subq 7 + brdo
らしいです。
akJとrev.16311
すいません。15533から16311までテストさぼりました。
rev.16311ですが
今現在確認したところ
-loop
-parti*
-chroma
-slice
Invalid value '1' for option 'chroma'
Invalid value '2' for option 'slice'
Invalid value '1' for option 'loop'
のようなエラーが出ます。
-loop 1 は-flags loop
-parti* は-partitions parti4x4+parti8x8
sliceとchromaは自信ありませんが、
sliceは-flags slice、chromaは-cmp chroma で似た結果になる気がします。
(ここは違っていることが多いのでご指摘お願いします)
のように設定を変えるとうまくいきます。
これが原因で、PSP変換時に高画質モードだけエラーが出ます。
これは ウインドウ/設定のPSP設定の高画質モードコマンド を書き換えることで解決可能です。
またドロップFFMpegにおいては、loopの所から0や1を選ぶとエラーがでます。
flagsの中のloopをチェックしてください。
あとそれ以外の変換モードではメンテナンスをサボっているため動作しないことがあります。ほとんどはドロップFFMpegで同等の変換が可能ですのでそちらをお使いください。
また他にエラーが出るオプションがあれば教えてください。
15533から16311までのPSP変換
rev.15533から16311までのFFMpegを使ってのakJでのPSP変換はそのままですと高画質にチェックするとエラーが出ます。
高画質時には、ウインドウ/設定のPSP設定の高画質モードコマンド で指定したコマンドを呼び出しますので
その部分を以下に変更してください。
-refs 3 -flags loop+slice -deblockalpha 0 -deblockbeta 0 -partitions parti4x4+partp8x8+partb8x8 -me_method umh -subq 7 -me_range 21 -cmp chroma -g 250 -keyint_min 25 -sc_threshold 40 -rc_eq "blurCplx^(1-qComp)" -qcomp 0.60 -qmin 7 -qmax 35
またこの内容はakJBetas0.6.13の場合項目の一番下に追加されていますのでそれを選んでください。
ドロップFFMpegとrev.16311辺
バージョン 0.6代のドロップFFMpegは、rev.16311をお使いになると激しくエラーがでるようになります。
できたら、ffmpegはエラーがでないリビジョンをお使いください。
http://akj.lib.net/node/2940
その場合 詳細1タブをチェックして
chromaを空に cmpをchromaへ(全体もそうですが、激しくこの部分自信ないです。空にするだけでいいかも)
loopを空にして、flagsのloopをチェック
brdoを空にして、subqを7に
sliceを空にして、sliceをチェック
現在、対応と過去のバージョンとの互換性をチェック中です。
少し先になるかもしれませんが、お待ちください。
該当するエラー
Invalid value '1' for option 'chroma'
unrecognized option '-brdo'
[エラー]このレビジョンのFFMpegでは-brdo および -flags2 brdo を使えません。-brdo 及び、-flags2 brdoを外して -subq 7 としてください。(PSP変換の場合はPSP設定の高画質モードコマンドの所を修正します) 又は、FFMpeg rev.15413以下をお使いください。
Invalid value '1' for option 'loop'
Invalid value '2' for option 'slice'
rev.17394
いつも利用させて頂いております。
現在、私が試してみているFFMpeg rev.17394での設定等書き込みます。
なおakJ Betasは、ver.0.6.16を使用しています。
H.264形式でのドロップFFMpegの設定は、
rev.16311やrev.16905と同様に
詳細設定1
[ chroma ]を空欄にして、[ cmp ]を[ chroma ]へ変更。
[ loop ]を空欄にして、flagsの [loop ]をチェック。
[ brdo ]を空欄にして、subqを[ 7 ]に変更。
[ slice ]を空欄にして、flagsの[ slice ]をチェック。
詳細設定2
flags2の[ brodo ]のチェックを外す。
で今のところ異常なく変換できています。
また、今までのFFMpegでは、音声がHE-AAC形式の動画を変換する際、
[aac @ 0x16001e0]SBR not implemented. Update your FFmpeg version to the newest one from SVN. If the problem still occurs, it means that your file has a feature which has not been implemented.
というエラーログが出ていましたが
FFMpeg rev.16905以降では出なくなりました。
FFMpegダウンロード元サイトのあべちんさんの説明ですと
「AACのデコードにlibfaacが使用されず、
FFmpeg内蔵のデコーダーが使用されて、
HE-AACが正常にデコード出来ないという問題を修正しました。」とのことです。


最近のコメント
9週 4日前
11週 4日前
14週 1日前
14週 1日前
14週 1日前
14週 4日前
15週 22時間前
16週 12時間前
16週 6日前
16週 6日前