<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title><![CDATA[ No.649 - 電装工芸日記 - 舞台照明機器の製作とか - ]]></title>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi</link>
	<description><![CDATA[ 今年は開発案件を進めたい ]]></description>
	<language>ja</language>
	<copyright>Copyright 2026</copyright>
	<lastBuildDate>Fri, 01 May 2026 20:20:28 +0900</lastBuildDate>
	<generator><![CDATA[ <!-- てがろぐ Version: -->Powered by <a href="https://www.nishishi.com/cgi/tegalog/" target="_top">てがろぐ</a> Ver 3.4.0 ]]></generator>
	<!-- BEGIN ENTRIES -->
	<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　オレメモ ]]></title>
	<description><![CDATA[ 　オレメモ<br /><br />　PythonでVLCを使った音楽再生方法を再整理。<br /><br />　Windows11x64<br />　Python3.7<br />　VLC media player ver.3.0.18<br /><br />　pipでpython-vlcをインストール。<br /><small class="decorationS"><span class="decorationF deco-code">コマンドプロンプト(管理者権限にて)<br />&gt; pip3 install python-vlc</span></small><br />　pipとはPythonのライブラリを提供してくれるリポジトリのこと。先達に感謝。<br /><br />　pythonでvlcによる再生。<br /><small class="decorationS"><span class="decorationF deco-code">import vlc<br /><br />if __name__ == &apos;__main__&apos;&#58;<br />　p = vlc.MediaPlayer()　　 ＃vlc.MediaPlayerのインスタンスを作成<br />　p.set_mrl(&apos;sound.mp3&apos;)　　＃インスタンスに音源ファイルを関連付け 相対パスも可能らしいがフルパス指定を推奨<br />　p.play()　　　　　　　　　＃再生開始<br /></span></small><br />　これだけで音声ファイルが再生されます。<br /><br />　以下基本的なAPI。<br /><small class="decorationS"><span class="decorationF deco-code">p = vlc.MediaPlayer()　　 　　　　＃vlc.MediaPlayerのインスタンスを作成<br />p.set_mrl(&apos;&lt;file_name&gt;&apos;)　　　　　＃インスタンスに音源ファイルを関連付け 相対パスも可能らしいがフルパス指定を推奨 ファイルはVLC media player で扱える物なら何でも。<br />p.play()　　　　　　　　　　　　　＃再生開始　戻り値 0=正常再生/-1=再生出来ない　※ pauseされていれば再生再開<br />p.is_playing()　　　　　　　　　　＃再生中か　戻り値 0=再生していない/1=再生中<br />p.pause()　　　　　　　 　　　　　＃再生中なら一時停止、一時停止中なら再生再開　戻り値無し<br />p.get_length()　　　　　　　　　　＃音源の長さを取得　戻り値 秒数(msec.)<br />p.get_time()　　　　　　　　　　　＃音源の最初からの再生位置を取得　戻り値 秒数(msec.)<br />p.set_time(&lt;msec.&gt;)　　　 　　　　＃再生再開位置を秒数(msec.)で指定　戻り値無し　※ 再生中やpause()中でないと指定出来ない<br />p.audio_set_volume(&lt;パーセント&gt;)　＃0=mute,100=0dB（パーセント指示だと思っていいみたい。100以上も指定可能。）戻り値 0=再生中に設定成功/-1=設定はしたが再生はしていない<br />p.stop()　　　　　　　　　　　　　＃停止　戻り値無し 次回のplay()では最初から始まる<br />※ 最後まで再生しきっても、stop()をしないと次回のplay()はスタートしない。再生終了で必ずstop()を実行する。<br />※ 停止中は次の再生開始秒数を指定出来ないので、特定の秒数(msec.)から再生する場合は、play()に続いてset_time(&lt;msec.&gt;)を実行する。ただし、pause()中は指定可能。<br />p.play()<br />p.set_time(&lt;msec.&gt;)</span></small><br /><br />　複数の音源ファイルをプレイリストとして扱ってくれるクラスもあるのですが、LTCを作るには少し不便がありそうなため、１曲単位で扱うことにしています。<br /><br />　vlc.MediaPlayer()のリストを作成する。<br /><small class="decorationS"><span class="decorationF deco-code">p = ( &#91;vlc.MediaPlayer(), vlc.MediaPlayer(), vlc.MediaPlayer()&#93; )<br />＃ p&#91;0&#93;、p&#91;1&#93;、p&#91;2&#93; などと使える。</span></small><br />　普通にオフジェクトのリストとして扱える。<br /><br />　これだけはメモ。<br />　リストのオブジェクトを追加する。<br /><small class="decorationS"><span class="decorationF deco-code">p.append( vlc.MediaPlayer() )<br />＃ 上記に続いた場合は p&#91;3&#93; が追加される</span></small><br /><br />　再生操作のレスポンスはとても良く、タイムラグはほとんど感じない。<br />　ただ、プレイリスト分のインスタンスを設定するにはメモリに注意かもしれない。<br /><br />参考<br />　<a class="url" href="http&#58;//www.olivieraubert.net/vlc/python-ctypes/doc/" target="_blank" title="http&#58;//www.olivieraubert.net/vlc/python-ctypes/doc/">python-vlcのドキュメント</a><br />　ここの「vlc.MediaPlayer」を参照。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%50%79%74%68%6f%6e" class="taglink" title="Python">#Python</a> -- Posted by 電装工芸 〔1723文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=649</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=649</guid>
	<category>tegalog</category>
	<pubDate>Wed, 14 Jun 2023 13:01:24 +0900</pubDate>
</item>

	<!-- END ENTRIES -->
</channel>
</rss>

