chevron_left

メインカテゴリーを選択しなおす

cancel
Wizard Notes https://www.wizard-notes.com/

音専門のエンジニアが書く、音響音楽解析の技術録、音楽のレビューおよび分析、作曲活動に関する雑記です。

Kurene
フォロー
住所
未設定
出身
未設定
ブログ村参加

2014/02/23

arrow_drop_down
  • PyQt: QScrollAreaを使ってスクロールバーを追加する

    PyQt でスクロールバーを追加する方法としては、QScrollAreaがあります。 QScrollAreaの利用シーンとしては、以下の2パターンに分けることができます。 QWidget/QMainWindow 上の特定の領域でスクロールしたい QWidgetを継承・カスタマイズしたオブジェクト自体にスクロールを追加したい 特に 1 のパターンでは、以下の参考ページの方法が参考になります。 dungeonneko.hatenablog.com ここで、widgetとlayoutの包含関係において、 QScrollArea > QWidget > (任意のlaytout) > (任意のQWidg…

  • アンティークな雰囲気のお洒落&多機能な電源タップ Fargo TAPKING DARKWOOD

    mng...?電源タップとしては高価だけど、しっかり木の質感してるし、機能はめちゃ充実 pic.twitter.com/FNvRE15t5Q— Kurene (@_kurene) 2021年2月16日 Fargo エレガントなデザイン、魅惑的な木目調ダークウッド 電源タップ 回転 延長コード ケーブル 国内サポート対応 1年保証付 3.4A USB 急速充電 AC6個口 1.8m アンティーク風の家具が多い為、なるべく木の質感に近いような電源タップを探していた時に、見つけて一目惚れした電源タップです。 6口で値段は約4,000円と電源タップとしては高めですが、デザイン/機能ともに優れています。…

  • Python: PyTagLibで音楽ファイル (wav, flac, mp3, m4a, aac) のタグ情報抽出

    Pythonで音楽ファイルのタグ情報を抽出するライブラリの一つとして、mutagenがあります。 www.wizard-notes.com www.wizard-notes.com mutagenは個々の拡張ファイルに特化したタグ抽出が可能ですが、様々な拡張子をまとめて扱う際には条件分岐が多くなってしまいます。 そこで、様々な拡張子をまとめて扱うのに優れたタグ抽出ライブラリであるPyTagLibを紹介します。 PyTagLib インストール方法 1. C++ライブラリをビルド 2. ver. 1.4.1をインストール 使い方 デモ デモ ソースコード 注意点 PyTagLib PyTagLib…

  • PythonとOpenCVでスペクトログラムを画像データ(jpeg, png)として保存

    オーディオ信号のスペクトログラムをプロット/保存する方法としては、matplotlibのimshow()を使う方法がありますが、今回はスペクトログラムを純粋な画像データとして保存する方法を試してみました。 実装 import librosa import numpy as np import cv2 bitdepth = 8 quality = 95 # jpegの品質, [0, 100], デフォルトは95 filepath = "your_audiofile.wav" y, sr = librosa.load(filepath, sr=None, mono=True) #spec_mag …

  • はてなブログのテーマを"Brooklyn”に変更&カスタマイズ

    以前まで、このはてなブログのテーマとしては、2次元レイアウトであるテーマストアの"Silence"を使っていましたが、 entry-description (記事説明文)を見やすくしたい*1 PC閲覧時のレイアウトをシンプルにしたい という理由で、1次元レイアウトである Brooklynに変更しました。 blog.hatena.ne.jp blog.hatena.ne.jp 参考先 大部分は以下のWebサイトを参考にさせて頂き、カスタマイズしました。どちらの記事も非常に分かりやすいです。 Brooklynをカスタマイズする際はご一読されることをオススメします! nanana015.hatena…

  • PyQt: シグナル/スロットを使ってスレッド中・終了時にウィジェットを描画

    別スレッドで走っている計算処理の終了後、計算終了を通知するメッセージボックスを表示する 別スレッドでオーディオファイルを再生し、再生終了時にQWidgetを操作する というような、サブスレッド終了後にウィジェットを非同期的に操作する処理を書いてみました。 実装方法としては、PyQtのシグナル/スロットを利用します。 具体的な実装の流れとしては、 QWidget/QWindowクラスを継承したクラスで、シグナルsignal=pyqtSignal()をクラス変数として定義 スロット(値を受け渡す関数)を定義 スロットをシグナルにつなぐ signal.connect(self.slot) サブスレッ…

  • PyQt: 複数のQPushButtonに単一スロット(値の受け取り関数)を割り当てる

    PyQt で複数のQPushButton Widget を使う場合、愚直に書くと以下のようになります。 class MainWindow(QWidget): def __init__(self, n_buttons): super().__init__() layout = QVBoxLayout() self.setLayout(layout) button = QPushButton(f"Button 0") button.clicked.connect(self.on_change_bt0) layout.addWidget(button) button = QPushButton(f"…

  • PyQt: setStyleでWidgetのデザインを変更する

    PyQt ではapp.setStyle(style_str)によってWidgetのデザインを変更することができます。 デフォルトスタイルはstyle_str="Fusion"ですが、環境によって"Windows"や"QtCurve"などを使うことができます。 この記事では、Win10で利用可能なPyQtのスタイルを確認し、各スタイルでのWidgetを表示してみました。 利用可能なスタイルの確認 事前にPythonインタプリタを起動し、以下の入力によって自身の環境で利用可能なスタイルを確認することができます。 私の環境(Win10)では、以下の4つのスタイルが使えるようです。 >>> impor…

  • PythonでSSM(自己類似度行列)を使って楽曲構成(Aメロ,サビなど)を分析

    計算機を使った音楽分析技術の一つとして、楽曲構成(Aメロ、Bメロ、サビ)を分析する方法があります。しかし、日本語で技術の具体的な実現方法や実装について説明のある文献はあまり多くありません。また、Pythonの音楽分析ライブラリ LibROSA にはまだ実装されていません*1。 そこで、PythonでLibROSAを使いつつ、楽曲構成(Aメロ、Bメロ、サビ)の分析を実装してみました。 以下の文献および実装を元に書きましたので、技術の細かい所はこちらをご参照ください。 [1] FMP Notebooks on Fundamentals of Music Processing Chapter 4: …

  • Python resampyで音声ファイルや音楽ファイルをリサンプリング

    オーディオファイルのサンプリング周波数変換処理(リサンプリング)は非常によく利用する処理です。 信号処理のプログラムを書いていると、リサンプリングはなるべく高速に処理して欲しくなります。特に大量のデータを扱っている時や、時間的に長いオーディオファイルを扱う時に重要になります。 また、アンチエイリアシングフィルタ(アップ/ダウンサンプリングでエイリアシングのために用いるローパスフィルタ)等によっては、音質に違いが出ます。 今回紹介する Python のライブラリ resampy は、オーディオ信号向けの効率的なリサンプリング処理ができます。 Introduction — resampy 0.2.…

arrow_drop_down

ブログリーダー」を活用して、Kureneさんをフォローしませんか?

ハンドル名
Kureneさん
ブログタイトル
Wizard Notes
フォロー
Wizard Notes

にほんブログ村 カテゴリー一覧

商用