質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.36%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

2902閲覧

【Python】動画タグを編集する方法について

netz-eng

総合スコア105

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/08/14 13:34

編集2021/08/28 16:46

前提・実現したいこと

Pythonを用いて、.mp4形式の動画タグ(以下)を編集したいのですが、方法がわかりません。

画像タグを操作するpiexifでは、下記のように「JPEGとTIFF形式以外は操作できません」というエラーが出てしまいました。
動画タグを操作するライブラリないし方法をご存じの方、ご回答よろしくお願いします。

イメージ説明

該当のソースコード

python

1import piexif 2 3path = r"任意の動画パス" 4ed = piexif.load(path) 5 6>>> piexif._exceptions.InvalidImageDataError: Given file is neither JPEG nor TIFF.

試したこと

ffmpyというライブラリを試してみましたが、結果としてタグは取得できませんでした。
動画タグに「Dragon」、コメントに「DD」と入れて下記を実行したところ、取得できたのはコメントだけでした。

python

1import subprocess 2import ffmpy 3import json 4from ffmpy import FFprobe 5 6path = r"任意の動画パス" 7 8tup_resp = ffmpy.FFprobe( 9 executable=r"***\bin\ffprobe.exe", 10 inputs={path: None}, 11 global_options=[ 12 '-v', 'quiet', 13 '-print_format', 'json', 14 '-show_format', '-show_streams'] 15).run(stdout=subprocess.PIPE) 16 17meta = json.loads(tup_resp[0].decode('utf-8')) 18 19print(meta) 20>>>{'streams': [{'index': 0, 'codec_name': 'h264', 'codec_long_name': 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', 'profile': 'High', 'codec_type': 'video', 'codec_tag_string': 'avc1', 'codec_tag': '0x31637661', 'width': 1280, 'height': 720, 'coded_width': 1280, 'coded_height': 720, 'closed_captions': 0, 'has_b_frames': 2, 'sample_aspect_ratio': '1:1', 'display_aspect_ratio': '16:9', 'pix_fmt': 'yuv420p', 'level': 31, 'chroma_location': 'left', 'refs': 1, 'is_avc': 'true', 'nal_length_size': '4', 'r_frame_rate': '25/1', 'avg_frame_rate': '25/1', 'time_base': '1/90000', 'start_pts': 0, 'start_time': '0.000000', 'duration_ts': 13327110, 'duration': '148.079000', 'bit_rate': '949626', 'bits_per_raw_sample': '8', 'nb_frames': '3702', 'disposition': {'default': 1, 'dub': 0, 'original': 0, 'comment': 0, 'lyrics': 0, 'karaoke': 0, 'forced': 0, 'hearing_impaired': 0, 'visual_impaired': 0, 'clean_effects': 0, 'attached_pic': 0, 'timed_thumbnails': 0}, 'tags': {'language': 'und', 'handler_name': 'VideoHandler', 'vendor_id': '[0][0][0][0]', 'encoder': 'dailymotion/hls.js'}}, {'index': 1, 'codec_name': 'aac', 'codec_long_name': 'AAC (Advanced Audio Coding)', 'profile': 'LC', 'codec_type': 'audio', 'codec_tag_string': 'mp4a', 'codec_tag': '0x6134706d', 'sample_fmt': 'fltp', 'sample_rate': '44100', 'channels': 2, 'channel_layout': 'stereo', 'bits_per_sample': 0, 'r_frame_rate': '0/0', 'avg_frame_rate': '0/0', 'time_base': '1/44100', 'start_pts': 0, 'start_time': '0.000000', 'duration_ts': 6529005, 'duration': '148.050000', 'bit_rate': '113059', 'nb_frames': '6376', 'disposition': {'default': 1, 'dub': 0, 'original': 0, 'comment': 0, 'lyrics': 0, 'karaoke': 0, 'forced': 0, 'hearing_impaired': 0, 'visual_impaired': 0, 'clean_effects': 0, 'attached_pic': 0, 'timed_thumbnails': 0}, 'tags': {'language': 'und', 'handler_name': 'SoundHandler', 'vendor_id': '[0][0][0][0]'}}], 'format': {'filename': '###任意の動画フルパス###', 'nb_streams': 2, 'nb_programs': 0, 'format_name': 'mov,mp4,m4a,3gp,3g2,mj2', 'format_long_name': 'QuickTime / MOV', 'start_time': '0.000000', 'duration': '148.080000', 'size': '19751188', 'bit_rate': '1067054', 'probe_score': 100, 'tags': {'major_brand': 'mp42', 'minor_version': '0', 'compatible_brands': 'isomiso2avc1mp41mp42', 'comment': 'DD'}}}

補足情報(FW/ツールのバージョンなど)

Windows10
piexif 1.1.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

.mp4形式の動画タグとはいわゆるid3タグの事でしょうか?

であれば、たとえばこれで編集できるのではないでしょうか?(使った事はないので詳細はわかりません)

https://mutagen.readthedocs.io/en/latest/

投稿2021/08/14 14:16

udon-ken

総合スコア657

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

netz-eng

2021/08/14 15:31

ご回答ありがとうございます。 ご提案いただいたid3タグですが、調べてみたところ.mp3ファイルに付けるものらしく、私の求めているものとは違うようです。 説明が不十分で申し訳ありません。 質問文に画像を追記しました。 Windows環境では.mp4動画のプロパティを開くと、このようにタグを編集する画面が出てきます。このタグが今回私が操作したい対象です。
udon-ken

2021/08/14 15:43

ふーむ、、追加されたスクショのやつですか・・・ mp4にもid3タグは使用できるようですし、mutagenもmp4に対応しているような事をうたっています。 が何かそれじゃないような感がありますね。 そもそも、そのプロパティ表示で出てくるものがどこにどういう風に格納されているのかよく分からないですね。。
netz-eng

2021/08/14 16:35

考えてくださってありがとうございます。 もう少し自分でもリサーチしてみようと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問