2010年のau携帯事情~脱庭してiPhoneにしよう~

この記事は落書きです。

まず記事タイトルを悩んだ挙句、”2010年のau携帯事情”とした。このタイトルにした理由はいまから扱う内容が雑多だけどまぁ必要な人には必要だからです。

自由のないauの庭

auはCDMA2000陣営で3gpp2に参加してます。現在世界的にWCDMA(3gpp)が大勢を占める中、2010年の今から言わせて貰えばauは時代の敗者、選択を誤ったグループです。

で、このauはマルチメディアファイルにも同じ名前の3gpp2(.3g2)というmp4ベースの派生コンテナを採用してるわけですが、これまたゴミである。

3gpp(.3gp)は現在バージョン7ぐらいまで発表され一応コンテナが時代に合わせ進化してきている。ところが問題の3g2は十数年前の初リリースからなにもバージョンアップしていない、進化していないのである。

しかも3gpp2は3Gブロードバンドの時代にナローバンドのためのようなフラグメントを付ける仕様があるようだ。いわゆる断片化とも揶揄されている。このフラグメント(断片化)のせいでPCでもまともに再生できるのはQTだけだろう。他は最初のフラグメントがくる数秒でとまる。

さらに悪いことにネットでいくらあさってもまともな情報がでてこないではないか。

とことんauの採用フォーマット3gpp2はゴミである。

携帯動画変換君の登場

こんなゴミフォーマットにも興味をもってハックしてくれた人がいました。携帯動画変換君の作者です。開発された2005年は今と違ってau輝いていて注目されてたころですね。着うたとかフルとか、QVGAとか、パケット定額とか。

だから時間を惜しんで携帯動画の仕様を理解しようとし、いろんなプログラムを開発してくれた。情報が少ない時代に一人でやりとげたのは本当にすごいことだと思う。

変換君自体は初心者にコマンドラインを意識させないで簡単に変換するバッチ処理プログラムですが、この基本的な仕組みとしてはffmpegでコーデック変換、QT7.2以下のオーサリングツールを利用し3gpとか3g2にさせてると思うのです。QTに受け渡すQT3GPPFlattenなんて本当に凄い。

他に3g2にするツールがQT以外なかったみたいでQT通さないとau携帯で再生できなかったみたいね。うん、mp4boxとかが登場するまで。

2010年の音声事情

どうやら着うたフルプラス(AAC 320kbps)が登場して以来、その対応機種は音声ビットレートを偽装しなくても高ビットレートを再生できるみたいだ。(自分の目で且つ実機で確認済)しかもiTunesでエンコしたM4Aを直接SDに転送して再生できるのである。(自作音楽も著作権ありに勝手にしているので糞auに問い合わせたい。)

つまり3g2コンテナじゃなくてもOKだし、糞LISMOの糞音質ATRACを使わなくてもOKになったようだ。(ダウンロードとかHE-AAC v1 , v2に関しては時間がないので未検証。)

音声にかんしては若干3g2を使わない分融通が利くようになったようだ。しかし、過去の機種を切り捨て最新機種から仕様変更とは流石ガラケー(笑)である。能力的には処理できるのに制限をかけるのはいかがなものか。

2010年の動画事情

ショボイ他社のガラケーでもVGAのAVC/H.264の再生できるのにいまだauはAVCはQVGAまで。爆笑もんですね。iPhoneはフルHD再生できるというのにw

何年前の携帯だよw最新機種なのに再生能力は10年前w

皮肉なもんですね。ここまで酷いと。しかもコンテナは3g2ですよ。尽くゴミ。

未だにQT3GPPFlatten使うのは間違い

まず開発終了してるし。数年前に。
つーかどんなことでもネット上に古い情報がゴロゴロ転がっているのが少しイラつく。
QT7.2以下しか対応していないし、いくら準拠3gpp2が書き出せるとはいえハッキリいってフラグメントつけて断片化するし、いいことない。

今は2010年ですよ。

ということでMP4Boxを使おうか

やっと本題。
フラグメントも付けず、QTに頼らずau携帯で再生できる3g2を作ろうじゃないか。

ドラえもん「エムピーフォーボックス~」

ということで誰もが使ってるMP4Boxをここでは使う。

まず、AVC/AACなMP4を準備しておく。解像度とかフレームレートは機種にあわせて。
音声がHE-AAC v1,v2のときは「-sbr」オプションをつけてmuxしておくと後方互換性がつきSBRのデコードを制限されてるお花畑携帯でもAAC部分だけデコードできるようになる。

MP4Box ?brand 3g2a ?add input.mp4 ?new output.3mp4

とやればブランドが3g2a(AVCに適した3g2)になり、断片化されずまだマシな3g2動画が完成する。

AAC音声だけのときは

MP4Box ?brand 3g2(a) ?add input.mp4 ?new output.mp4

でおk。

上記で再生できないときは音声ビットレート制限にひっかかっているのでビットレートを偽装すると再生できる。

なお、output.3g2にしないのは3gp準拠にさせないためである。3gp準拠すると再生できない。

なにげにいいこと書いたつもり。


auってほんとに糞だな。

コメント

非公開コメント