FC2ブログ
timamuの部屋
ソフトウェアや映画やその他興味のあることを書いていきます。
201810<<123456789101112131415161718192021222324252627282930>>201812
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
PSP変換君FE 開発日記(1/17)
前の記事へのコメントで、"アスペクト比4:3の動画を720x480に変換すると、再生時のアスペクト比がおかしい(ちょっと太っちょになる)"の件についての続報です。

ffmpegに"-aspect 4:3 -fixaspect"をつけてもダメで、ちょっと太っちょになります。
その後はちょっとバタバタしてたので、あまり深く追求していなかったのですが、padleftやpadrightオプションで横に帯を入れてもダメでした。

で、ググってみたら結構でてきました。同じ悩みの方は多いというか、ffmpeg系ツールだけでなく、他の変換ツールでもダメなケースが多いらしい。

まず、PspWikiでは、

720x480の動画はSARをしても、ノーマルで3:2、フルで16:9になる。
コンテナにPARを指定すると4:3表示が可能。(Ver.3.71において確認)


ふむふむ。まさにこれです。
ただ、この記述だけだと、ちょっとどうすればいいかわからんっすね。
"PAR"って何?とか、調べると、こことかここに詳しく書いてあります。

難しいのですが、まとめるとこういうこと。
・アスペクト比と一言でいっても、SAR(Screen Aspect Ratio)と、PAR(Pixel Aspect Ratio)と、DAR(Display Aspect Ratio)がある
・720x480(いわゆるDVDサイズというか、D1)は特殊で、3:2のフォーマット(だから問題になるわけだが)
・スクリーン全体の縦横比を設定しても、720x480の場合はピクセル等倍とはいかないので、PARの設定が必要

でね、このPARですが、ffmpegで設定することができないんですよ。
PspWikiで、「コンテナにPARを指定」と書いているのは、MP4ファイル形式にMUXするためのMP4boxというツールのことを言っているんだと思うんですよね。
ということで、このままでは対応できません。
ただ、MP4の"avcC"というatomに書かれている・・・というところまではつきとめたので、直接変更(つまりバイナリエディット)することで対応できるかもしれませんが・・・

2chなんかで他の方も発言されていますが、そもそもPSPの再生がヘボイというかダメだと思います
aspectオプションだけでPC上は正しく再生できるのにね。

一番いいのは640x480の解像度に対応してくれることなんですけどね。
iPodに合わせちゃえばいいのにね。

ということで、引き続き検討はしますが、あまり期待できないという残念なお知らせでした。
スポンサーサイト
コメント
この記事へのコメント
aspect 40:33もだめでした。
>一番いいのは640x480の解像度に対応してくれることなんですけどね。

そうなんですよね。

こっちとしてやりたいことは、4:3SARでエンコードしておいて、16:9SARのレタボの物はフルスクリーンで見たいってだけなんですけどね。(苦笑)

こっちでも、色々試してみたんですが、やっぱりだめでした。

引き続き色々やってみて、何か進展がありましたら、コメントででも報告いたします。
2008/01/23(水) 14:50:33 | URL | pangaia #-[ 編集]
よろしくお願いします。
ffmpegでできれば一番いいですが、MP4ファイルのここをいじればいいよ・・・などの情報でもありがたいです。
2008/01/24(木) 00:34:59 | URL | timamu #.bZiV.3s[ 編集]
情報提供
-s 640x480 -padleft 40 -padright 40
でうまくいってますよ。左右に黒帯が入りますが。できあがりのファイルは720×480になります。
2008/04/27(日) 21:33:28 | URL | とおりすがり #gJtHMeAM[ 編集]
情報提供ありがとうございます。

padleftとpadrightも試したんですけどねぇ。。。
もう一回調べてみようかなぁ。

-aspectオプションはつけられましたか?
あと、元動画の解像度とアスペクト比ってどんなヤツですか?
2008/04/27(日) 22:08:45 | URL | timamu #.bZiV.3s[ 編集]
情報提供続き
私が640×480など4:3の元ファイルを720×480に変換するときに使用しているセッティングです。ご参考になれば。

Title=720x480/29.97fps/ 700kbps/ステレオ from 4:3
TitleE=720x480/29.97fps/ 700kbps/Stereo from 4:3
Command0=""<%AppPath%>coresffmpeg" -y -re -i "<%InputFile%>" -timestamp "<%TimeStamp%>" -bitexact -vcodec h264 -coder 1 -vlevel 21 -bufsize 128 -g 250 -s 640x480 -deinterlace -r 29.97 -me full -sc_threshold -8000 -b 700 -hq -acodec aac -ac 2 -ar 48000 -ab 32 -f psp -padleft 40 -padright 40 "<%OutputFile%>.MP4""
Command1=""<%AppPath%>coresffmpeg" -y -re -i "<%InputFile%>" -f image2 -ss 5 -vframes 1 -s 160x120 -an "<%OutputFile%>.JPG""
2008/04/28(月) 13:29:22 | URL | とおりすがり #gJtHMeAM[ 編集]
大丈夫なようなダメなような・・・
とおりすがりさん、詳しい情報ありがとうございます。

試したみたところ、アスペクト比が埋め込まれていない解像度が4:3の元動画ならOKでした。
前々から試している、アナログTVを録画した720x480でアスペクト比が埋め込まれている動画の場合はうまくいきませんでした。(おそらく、DVDからリッピングした4:3の動画も同じ条件なのでダメでしょう。元々議論のあったヤツはこの条件なんです。)

ずっとこの条件の動画で試していたので、padright,padleftでもダメだと思っていましたが、元動画しだいでは大丈夫なんですねぇ。
元動画のアスペクト比が影響しているということがわかったのは収穫でした。

題名どおり、「大丈夫なようなダメなような・・・」ですが、左右に黒帯をつける・・・というのも(制限つきになりますが)要望はありそうなので、次の版あたりで考えたいと思います。

改めて情報ありがとうございました!
2008/04/30(水) 01:00:18 | URL | timamu #.bZiV.3s[ 編集]
PSPwikiでPARのこと書いた者ですが、
PARの指定はMP4boxをGUIにしたYAMBという、ソフトによって行いました。
wikiには書かなかったのですが、
PSPはコンテナのPARは読んでくれるらしく、4:3だけでなく16:9も、指定すれば、
720x480をフルに手動で変えずとも16:9で表示されました。
詳しく調べてないのですが、バイナリ違いは1カ所だけでなく数カ所にありました。
あと、PARを指定したmp4ファイルですが、PSPでは再生可能ですが、ffdshowを導入した環境のWMPでは再生できなくなってしまいました。
2008/05/15(木) 23:22:05 | URL | YTR01 #eKGdh342[ 編集]
情報ありがとうございます
なるほど。YAMB経由でMP4box使われたんですね。
やっぱMP4box&memcoderにも対応すべきなのかなぁ。。。
バイナリ違いも複数個所ということで、バイナリ書き換えはやはり難しそうですねぇ。

いろいろ調べた結果、以下の二つの方法が有効であることがわかりました。

①左右に黒帯をつける(40どっと)
②アスペクト比を20:11にする

今度ブログできちんと報告しようと思うのですが、①の方法は、携帯動画変換君付属のffmpegではうまくいかないケースがあります。
②の方法は携帯動画変換君ffmpegでも、rev9133の本家ffmpegでもうまくいくのですが、PC上で再生する際にはアスペクト比がくずれるので、アスペクト比が変更できるプレイヤーでないとダメです。
対応方法は見つかったので、いろんな動画で試してみたいとは思っていますが、PS3だとどうなんだ?が知りたいところです・・・
元々720x480の解像度は、PS3と共有化すること、PSPをTV出力すること・・・がポイントだと思うので。
2008/05/16(金) 00:11:58 | URL | timamu #.bZiV.3s[ 編集]
コメントを投稿する

管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
copyright © 2004-2005 Powered By FC2ブログ allrights reserved.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。