FFMPEGを利用してM3U8形式(拡張子 .m3u8)から動画を抽出する際に[Filename extension of … is not a common multimedia extension]が表示された場合の原因を備忘録的に投稿しておきます。
FFMpegでファイル変換
動画の作成や編集、変換を行う[FFmpeg]は、動画ファイルから音声や映像のみを抽出も可能です。
詳しい内容は別記事をご覧ください。
[is not a common multimedia extension]エラー
例えば[FFmpeg]を利用して次のオプションで、M3U8形式のファイルからMP4形式を作成します。
ffmpeg -protocol_whitelist file,http,https,tcp,tls -i "sample.m3u8" -c copy "sample.mp4"
実行時に[[Filename extension of … is not a common multimedia extension]]が表示され作成されない場合があります。
エラーの概要は、「ファイルの拡張子がメディア関連のファイルではありません」です。
つまり、実行で利用するファイルにメディアに関連したファイルがあるという状態です。
暗号化されている場合、M3U8形式ファイルの内容に追加されている鍵ファイルが対象になる場合があります。
M3U8形式のファイルをメモ帳などで開くと、[#EXT-X-KEY]が設定された行が見つかるはずです。
#EXT-X-KEY:METHOD=AES-128,URI="encryption.key"
この行があれば、このファイルがエラーの原因になっている可能性があります。
エラーを回避するには[-allowed_extensions]オプションを追加します。
ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -allowed_extensions ALL -i "sample.m3u8" -c copy "sample.mp4"
とりあえず、全部の拡張子を許可する “ALL” を指定しておけば、他のファイルが原因の場合でも回避できる可能性があります。
ブロックしているファイルを許可することになるので、オプションの利用は自己責任でお願いします。
まとめ
FFMPEGを利用してM3U8形式(拡張子 .m3u8)から動画を抽出する際に[Filename extension of … is not a common multimedia extension]が表示された場合の原因について書きました。
[FFmpeg]で暗号化された元ファイルから、複合するための鍵ファイルなどの拡張子が対象になっている場合があります。
エラーを回避するには[-allowed_extensions]オプションを追加します。
[FFmpeg]で “Filename extension of … is not a common multimedia extension” エラーが発生する人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。
