python:mutagen

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
次のリビジョン両方とも次のリビジョン
python:mutagen [2020/01/29 07:24] ともやんpython:mutagen [2020/03/24 04:42] – [音楽ファイルフォーマット] ともやん
行 1: 行 1:
 +<html>
 +  <style>
 +    #mincode pre {
 +      /*height: 300px;*/
 +      overflow: scroll;
 +      overflow-x: hidden;
 +      font-size: 10px;
 +    }
 +    #mintbl table {
 +      font-size: 12px;
 +    }
 +    .dokuwiki .plugin_wrap table {
 +      width: auto;
 +    }
 +  </style>
 +</html>
 ====== Mutagen ====== ====== Mutagen ======
 {{python:mutaggen_logo.svg?400|Mutagen Logo}}\\ {{python:mutaggen_logo.svg?400|Mutagen Logo}}\\
行 17: 行 33:
 [[http://docs.puddletag.net/|Home — puddletag]]\\ [[http://docs.puddletag.net/|Home — puddletag]]\\
 [[https://github.com/keithgg/puddletag|keithgg/puddletag: Powerful, simple, audio tag editor for GNU/Linux]] - github\\ [[https://github.com/keithgg/puddletag|keithgg/puddletag: Powerful, simple, audio tag editor for GNU/Linux]] - github\\
 +
 +===== 基礎知識 =====
 +
 +==== 音楽ファイルフォーマット ====
 +
 +=== .mp3 (MPEG-1 Audio Layer-3) ===
 +MP3 (エムピースリー、英: MPEG-1 Audio Layer-3) は、音響データを圧縮する技術の1つであり、それから作られる音声ファイルフォーマットでもある。ファイルの拡張子は「.mp3」である。\\
 +[[wpjp>MP3|MP3 - Wikipedia]] より\\
 +<WRAP prewrap 100% #mincode>
 +<code python>
 +PS > py
 +Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
 +Type "help", "copyright", "credits" or "license" for more information.
 +>>> import mutagen
 +>>> ft = mutagen.File(r"B'z\048.15.2006.MONSTER\01 - ALL-OUT ATTACK.mp3")
 +>>> ft.info.pprint()
 +'MPEG 1 layer 3, 192000 bps (CBR?), 44100 Hz, 2 chn, 251.37 seconds'
 +>>>
 +</code>
 +</WRAP>
 +
 +=== .m4a (MPEG-4 audio ALAC/AAC-LC) ===
 +.m4a、.m4b、.m4v、.m4p、.m4r は Apple 社が決めた拡張子である。\\
 +<WRAP prewrap 100% #mintbl>
 +^  拡張子  ^  形式  ^  補足  ^
 +| [[https://fileinfo.com/extension/m4a|.m4a]] | MPEG-4 Audio File  | AAC/Apple Lossless エンコーダ, DRM保護なし  |
 +| [[https://fileinfo.com/extension/m4b|.m4b]] | MPEG-4 Audio Book File  | iTunes ストア オーディオブック ファイル, Apple FairPlay DRM保護  |
 +| [[https://fileinfo.com/extension/m4v|.m4v]] | MPEG-4 Video File  | Apple FairPlay DRM保護/保護なし  |
 +| [[https://fileinfo.com/extension/m4p|.m4p]] | MPEG-4 Music Store Audio File  | Apple Music, Apple FairPlay DRM保護  |
 +| [[https://fileinfo.com/extension/m4r|.m4r]] | MPEG-4 Ringtone File  | iOS 着信音ファイル  |
 +</WRAP>
 +[[wpjp>Apple_Lossless|ALAC]] (Apple Lossless Audio Codec)\\
 +※iTunes で **Apple Lossless エンコーダ** を選択して **.m4a** を生成するとこのコーデックが使用される。\\
 +[[wpjp>AAC|AAC]] (Advanced Audio Coding)\\
 +AAC-LC (AAC Low Complexity)\\
 +※iTunes で **AAC エンコーダ** を選択して **.m4a** を生成するとこのコーデックが使用される。\\
 +\\
 +[[wpjp>AAC|AAC - Wikipedia]] より\\
 +[[wpjp>MP4|MP4 - Wikipedia]] より\\
 +<WRAP prewrap 100% #mincode>
 +<code python>
 +PS > py
 +Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
 +Type "help", "copyright", "credits" or "license" for more information.
 +>>> import os
 +>>> import mutagen
 +>>> import wave
 +
 +>>> wf = wave.open(r"B'z\DINOSAUR\01 Dinosaur.wav", 'r')
 +>>> wf.getparams()
 +_wave_params(nchannels=2, sampwidth=2, framerate=48000, nframes=14940800, comptype='NONE', compname='not compressed')
 +>>> '{:,}'.format(os.path.getsize(r"B'z\DINOSAUR\01 Dinosaur.wav"))
 +'59,763,244'
 +
 +>>> ft = mutagen.File(r"B'z\DINOSAUR\01 Dinosaur.m4a")
 +>>> ft.info.pprint()
 +'MPEG-4 audio (ALAC), 311.27 seconds, 972145 bps'
 +>>> '{:,}'.format(os.path.getsize(r"B'z\DINOSAUR\01 Dinosaur.m4a"))
 +'37,853,103'
 +
 +>>> ft = mutagen.File(r"B'z\054.20.2017.DINOSAUR\01 Dinosaur.m4a")
 +>>> ft.info.pprint()
 +'MPEG-4 audio (AAC LC), 311.33 seconds, 320000 bps'
 +>>> '{:,}'.format(os.path.getsize(r"B'z\054.20.2017.DINOSAUR\01 Dinosaur.m4a"))
 +'13,562,702'
 +>>>
 +</code>
 +</WRAP>
 +^  ^  .wav  ^  .m4a(ALAC)  ^  .m4a(AAC-LC)  ^
 +^ ビットレート |  1,536.0 kbps |  972.145 kbps |  320.0 kbps |
 +^ サイズ(byte)  |  59,763,244\\ (100%) |  37,853,103\\ (63%) |  13,562,702\\ (22%) |
 +※ビットレート\\
 + 44100Hz × 16bit × 2ch(ステレオ) = 1,411.2kbps\\
 + 48000Hz x 16bit × 2ch(ステレオ) = 1,536.0kbps\\
  
 ===== 参考文献 ===== ===== 参考文献 =====
 +[[https://www.tunemobie.net/resources/aac-m4a-m4b-m4p-m4r.html|AAC、M4A、M4B、M4PとM4Rとは?iTunes音声形式の説明 - TuneMobie]]\\
 +[[https://align-centre.hatenablog.com/entry/2014/04/28/222154|デジタルオーディオの仕組み - 音声圧縮の原理 MP3, AAC, ATRAC, etc. - White croQuis]]\\
 +[[https://blog.goo.ne.jp/jsp_job/e/b2cbf680f1e9fbc374ecb6f0f1837237|サンプリング周波数とビットレート - Smile Engineering blog ( スマイルエンジニアリング・ブログ )]]\\
 +\\
 [[https://stackoverflow.com/questions/44895095/is-it-possible-to-add-id3-tags-to-m4a-files-using-mutagen|python - Is it possible to add ID3 tags to m4a files using mutagen? - Stack Overflow]]\\ [[https://stackoverflow.com/questions/44895095/is-it-possible-to-add-id3-tags-to-m4a-files-using-mutagen|python - Is it possible to add ID3 tags to m4a files using mutagen? - Stack Overflow]]\\
 +[[https://python-discid.readthedocs.io/en/latest/|python-discid 1.1 — python-discid 1.1 documentation]]\\
 +[[http://www.kuma-de.com/blog/2018-05-03/7404|[日記] CDの曲情報ってどうやって取得しているの? CDDB / TOC « きんくまデザイン]]\\
 +\\
 +**ID3タグ**\\
 +[[wpjp>ID3タグ|ID3タグ - Wikipedia]]\\
 +[[http://eleken.y-lab.org/report/other/mp3tags.shtml|MP3 ファイルのタグについての解説 (id3v1, id3v2, MPEG フレームヘッダ, XING ヘッダ) - Y-Lab. Electronics]]\\
 +\\
 +**ID3 マッピングテーブル**\\
 +[[http://wiki.hydrogenaud.io/index.php?title=Tag_Mapping|Tag Mapping - Hydrogenaudio Knowledgebase]]\\
  
  • python/mutagen.txt
  • 最終更新: 2021/10/05 01:13
  • by ともやん