東芝 REGZA 40V30 で再生できる mp4 ファイルを作る

テレビを買いました。

今回買った REGZA 40V30 は DLNA サーバーに置いた mp4 ファイルを再生することができます。が、どうやら再生できるファイルの仕様が細かく規定されているようで、手持ちのファイルはまったく再生することができませんでした。

REGZA 40V30 で再生できるエンコード設定

マニュアルに書かれている仕様

マニュアルに書かれている仕様は以下のとおり。

もう少し詳しく書いてほしいんですけど、欄外に逃げの一文があることから東芝もあまり積極的にサポートする気はないようです。

ということで三日三晩寝ずに試行錯誤した結果、以下の設定でエンコードしたファイルを REGZA で再生することができました。

全般

フォーマット : MPEG-4
プロファイル : Base Media / Version 2
コーデック ID : mp42 (isom/iso2/avc1/mp41)
サイズ : 1,015 MiB
ながさ : 2時 2分
OBR モード : VBR モード
オーバルビットレート : 1,156 Kbps
エンコード日 : UTC 2016-11-04 08:26:20
タグ付け日 : UTC 2016-11-04 08:26:20
使用したエンコーダ : HandBrake 0.10.5 2016021100

ビデオ

ID : 1
フォーマット : AVC
フォーマット/情報 : Advanced Video Codec
プロファイル : Baseline@L3.1
CABAC : いいえ
RefFrames : 1 フレーム
コーデック ID : avc1
コーデック ID/情報 : Advanced Video Coding
ながさ : 2時 2分
ビットレート : 1,021 Kbps
幅 : 640 ピクセル
高さ : 480 ピクセル
解像度 : 4:3
モード : CFR モード
フレームレート : 29.970 (30000/1001) fps
ColorSpace : YUV
ChromaSubsampling/String : 4:2:0
BitDepth/String : 8 ビット
スキャンの種類 : プログレシッブ(PPF)
ビット/(ピクセル*フレーム) : 0.111
ストリームサイズ : 897 MiB (88%)
使用したライブラリ : x264 core 142 r2479 dd79a61
エンコードライブラリの設定 : cabac=0 / ref=1 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=2 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=0 / threads=6 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=300 / keyint_min=30 / scenecut=40 / intra_refresh=0 / rc_lookahead=10 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=14000 / vbv_bufsize=14000 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00
エンコード日 : UTC 2016-11-04 08:26:20
タグ付け日 : UTC 2016-11-04 08:26:20
colour_range : Limited
colour_primaries : BT.601 NTSC
transfer_characteristics : BT.709
matrix_coefficients : BT.601

試行錯誤した結果と合わせて解説すると H.264 Profile は Baseline でなければ再生できませんでした。新しめのツールを使うと自動で main や hight になってしまうので注意が必要です。また H.264 Level は 2.1/3.0/3.1/3.2 のいずれかでなければ再生できませんでした。この設定もデフォルトでは 4.0 になっているツールが多いので注意です。

フレームレートは 29.97 の CFR でなければ再生できませんでした。これもツールによっては VFR がデフォルトになっている場合があるので注意です。また今回エンコードに利用した Handbrake の GUI ツールでは Intel QSV 選択時にフレームレートを固定できないので同様に注意が必要です。

アスペクト比は 4:3 または 16:9 でなければ再生できませんでした。また解像度に関して DVD 規格の 720*480(3:2) が再生できないのはともかく、界隈では一般的な 704*396(16:9) が再生できないのが罠でした。テレビ側で 16:9 に直してくれるので 640*480 とかにするのが良さそうです。

オーディオ

ID : 2
フォーマット : AAC
フォーマット/情報 : Advanced Audio Codec
プロファイル : LC
コーデック ID : 40
ながさ : 2時 2分
ビットレートモード : VBR モード
ビットレート : 128 Kbps
チャンネル : 2 チャンネル
チャンネルの位置 : Front: L R
サンプルレート : 44.1 KHz
フレームレート : 43.066 fps (1024 spf)
ストリームサイズ : 113 MiB (11%)
タイトル : Stereo / Stereo
言語 : 日本語
Default : はい
Alternate group : 1
エンコード日 : UTC 2016-11-04 08:26:20
タグ付け日 : UTC 2016-11-04 08:26:20

オーディオについては AAC(128kbps,44.1kHz,Stereo) であれば問題ないです。ビットレートは変動させても再生できましたが、サンプリングレートは 44.1kHz 固定でないと再生できませんでした。

ffmpeg オプション

今回はお手軽に Handbrake でエンコードしましたが ffmpeg でやるなら以下のような感じになるのでは(未確認)。

$ffmpeg -i FILE -vcodec libx264 -r 29.97 -aspect 16:9 -profile:v baseline -level:v 3.1 -acodec libvo_aacenc -ac 2 -ar 44100 -ab 128k FILE.mp4

(補足)環境について

おま環の可能性も多分にあるので、参考までに我が家の環境についても記しておきます。

  • 簡易 DNLA サーバー:BUFFALO LinkStation LS-CH1.0TL
  • ルーターNEC AtermWR8750N PA-WR8750N-HP
  • ハブ:BUFFALO LSW4-GT-5NS