スマートTVで再生出来ない動画としてファイル名の問題もありました。
最終更新日 2023年04月25日
スマートTVで再生出来ない動画ファイルの原因特定を進めています。
殆どのケースでは動画フォーマットの問題が原因です。
- 拡張子はMP4でないとそもそも再生出来ないスマートTVが多いです。
パナソニックのビエラはそもそも拡張子がMP4でないと「!」を表示して再生出来ません。- 最近のモデルならH.265等の新しくて圧縮率の高いコーディックにも対応出来る様ですが、ちょっと古いとH.264/AVCでないと再生出来ない可能性が高いです。
- 映像部だけで無く、音声部のコーディックにも注意が必要です。MP3なら大丈夫かと思ったら、組み合わせの問題かAAC出ないとダメなケースもあります。
パソコンなら音声が出ないだけで映像を再生することもありますが、スマートTVの場合、「再生出来ません」としてしまうケースの確率が高いようです。合わせて注意が必要です。- CBR(constant bitrate)とVBR(variable bitrate )の違いは重要かと思います。SDカード等に書き込まれた動画であれば、VBRでも再生出来る可能性が高いのですが、DLNAだったりするとCBRで無いと再生出来なかったりします。
或いはVBRだと普通に再生は出来ても早送りだとか、スキップ等が出来ず、クラッシュするという事態に陥ることもあるようです。これだけ注意を払い、動画フォーマット変換して確実に再生出来るはずの動画ファイルを作成したはずなのに、スマートTVで再生しようとすると「再生出来ない動画です」のメッセージがまだ表示されるケースがあります。この原因について調査しています。
スマートTV側にもOSを組み込んで構成されているケースが殆どです。AndroidOSを搭載したスマートTVが多いと思います。
自分の所有するLGの 32LF5800 は独自OS 「webOS」が組み込まれています。このOSにどうも癖があるようです、2バイト文字の変換でWindowsOSやAndroid'OS、iOSでは有効だったファイルパスが、WebOSでは無効の場合があるようです。
画面上、再生動画ファイルの一覧には現れる動画を選択して再生しようとすると 「ファイルを認識できません」と表示されたりします。このメッセージだけですとファイルフォーマットの問題なのか別の原因なのか判りません。
ただ、基本的に対応しているファイルフォーマットの動画の場合、一旦再生動作に入ってから、「未対応の動画です」と出るようで、始めから 「ファイルを認識できません」と表示されるのはファイルパスに問題があるケースが十分に考えられます。Net上の文字コードは基本utf-8かと思いますが、各OS内ではLocalな文字コードに変換して使用しているはずです。そのため文字コード変換をOS/APIを介して変換して使っていますが、この変換で問題が吸収出来ないと「ファイルを認識できません」となってしまうのかと思います。$5C(\)とか意識しなくてはいけない文字コードが内部に含まれてしまって問題を起こします。
今回も其れなりに長いファイル名の一部に使われていた記号が、WindowsOSやNASのファイルシステム、webOSでリスト表示は出来るモノの動画再生時に「ファイルを認識できません」となってしまうようです。
具体的に改善した例を記録に残したいと思います。まず確認方法ですが、UTF-8は1−4バイトの可変長であり、ASCII文字であれば殆どのプラットフォームで基本共通に扱われるはずです。ですから、「ファイルを認識できません」となったファイルに対し、ファイル名をASCII文字のみにリネイムして再生可能かどうか確認します。その上で再生出来た場合、元の文字列内に問題となる文字コードが潜在化していると考えることが出来ます。
今回もまず「ファイルを認識できません」となった動画ファイルについてファイル名をASCII文字のみにして再生出来る事を確認しました。環境ですが、
NAS:LANDISK AAX SMB3.11対応済み スマートTV:LG 32LF5800 有線LANで接続されており、100Mbpsが確保されています。※LG 32LF5800は1000Mbps未対応です。
ファイル名に含まれている文字で問題のありそうな文字を検討します。多分WebOS内APIで文字列コード変換を行って、その返値に問題があったのでしょうが、これを特定するのは結構至難です。特定文字の問題では無く、1バイト文字が途中に挟まっており、それが原因となっている可能性も否定できません。
よく似た現象として、MACOS9の環境で作成したファイルをMACOSXで確認しようとするとファイル名が拡張子以外認識出来ない文字化けになった という状況にも似ています。ファイル名に2バイト文字が使えないと内容を認識するだけの判りやすいファイル名を付けることは困難となります。今時8.3形式で納得できるとは思えません。
特定の文字に影響があることも十分考えられるのですが、特定できていません。
- まずは2バイト文字と1バイト文字の混在を避けるようにすべきかと思います。特に2バイト文字列の途中に1バイト文字が奇数個続くようなファイル名は怪しいので避けたいです。
- ファイル名を極力短くしたいです。
Windowsではファイルパス長が最大256文字という制限があります。
SMBでNASにコピーすると「ファイル名が長すぎます」というアラートが出る場合があります。
LINUXはファイル名の最大が256文字で、パスとしては4096バイトと云う情報があります。
MACOSXではファイル名の最大が255文字 パスの最大は1024文字となっています。
また、NASのHDDはext4でフォーマットしており、更に制限が掛かります。最大85文字となっています。そのため、WindowsOS環境で作成したファイルをNASにコピーすると しょっちゅう「ファイル名が長すぎます」が発生するようです。
※UTF_8の場合、漢字は3バイト割り当てるのが一般で256バイトは85文字になってしまう訳です。今回再生出来なかった動画ファイルですが、ファイル名の途中に『この2人』という文字列が入っていました。この文字列を削除したら再生出来る事を確認出来ました。
文字列不具合の可能性の確認方法を検討してみました。パスをカーソル+矢印キーによる順送り/逆送りして文字区切りを間違えれば問題のある文字列だという事が予想できるかと思います。
もともとHP社(Palm社)が携帯機器向に開発したソフトウエアプラットホームOSでしたが数年でLG社に売却したようです。
その後LG社によって独自に開発が進みスマートTV用OSとして外販もしているようです。しかし、LG以外の導入例を確認出来ていません。
ABEMATVはWebOS版は存在しないようです。FODも存在しないとの事です。
WebOSで対応しているアプリはYoutube/Netflix/Amazonぐらいです。増える気配はないです。
免責事項
本ソフトウエアは、あなたに対して何も保証しません。本ソフトウエアの関係者(他の利用者も含む)は、あなたに対して一切責任を負いません。
あなたが、本ソフトウエアを利用(コンパイル後の再利用など全てを含む)する場合は、自己責任で行う必要があります。本ソフトウエアの著作権はToolsBoxに帰属します。
本ソフトウエアをご利用の結果生じた損害について、ToolsBoxは一切責任を負いません。
ToolsBoxはコンテンツとして提供する全ての文章、画像等について、内容の合法性・正確性・安全性等、において最善の注意をし、作成していますが、保証するものではありません。
ToolsBoxはリンクをしている外部サイトについては、何ら保証しません。
ToolsBoxは事前の予告無く、本ソフトウエアの開発・提供を中止する可能性があります。
商標・登録商標
Microsoft、Windows、WindowsNTは米国Microsoft Corporationの米国およびその他の国における登録商標です。
Windows Vista、Windows XPは、米国Microsoft Corporation.の商品名称です。
LabVIEW、National Instruments、NI、ni.comはNational Instrumentsの登録商標です。
I2Cは、NXP Semiconductors社の登録商標です。
その他の企業名ならびに製品名は、それぞれの会社の商標もしくは登録商標です。
すべての商標および登録商標は、それぞれの所有者に帰属します。